Skip to content

Give Ernesto guided setup, clearer UI and sharper banter - #30

Merged
wsdt merged 4 commits into
mainfrom
codex/ernesto-getting-started
Oct 14, 2026
Merged

wsdt merged 4 commits into
mainfrom
codex/ernesto-getting-started

Conversation

@wsdt

@wsdt wsdt commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

Change

Getting started previously required locating the helper, writing JSON and enabling QA each session. This 0.2.0 candidate adds guided /ernesto setup and /ernesto doctor, conventional default config and default-on QA observation with a remembered workspace override. Explicit --setup creates defaults without tests; --init creates missing defaults and runs the first check. Existing config, filters and custom inputs are preserved. Config appearing during a session connects automatically.

Ernesto now uses clearer turquoise pixel art in normal and compact terminal sizes, a steady portrait during routine comparisons, and a structured evidence pane. The pane leads with result, completion, counts and a next action; a keyboard disclosure expands the complete scope and record. At narrow widths, evidence appears ahead of compact controls. Interactive /ernesto evidence opens the pane without dumping the full record into the conversation; non-interactive output and /ernesto refresh retain full textual evidence. Ernesto also has a bundled bank of sharper sarcastic lines and playful insults,
rotating on activity rather than redraws or snapshot polling. Quiet mode suppresses
this banter, including chocolate replies. Hide and reduced motion remain available.

Default scope includes conventional code/test inputs plus recognized config and lock paths, even when initially absent. Nonstandard inputs still need review. Hooks remain read-only and never run tests, install dependencies or call models/network services. Evidence schema, strict correlation and failure/unknown/freshness guards remain unchanged. Documentation distinguishes this candidate from published 0.1.0. A regenerated
46-second 1080p actual-terminal demo shows default-on setup, explicit real pass,
expanded scope, stale edit, explicit real failure, quiet mode and sarcastic
chocolate. The poster, seven screenshots and EN/DE/ES/ZH captions/transcripts
match the current runtime. The video labels editorial overlays and its unreleased
candidate status; original tagged release media remains intact.

Validation

  • Source and demo npm ci --ignore-scripts --legacy-peer-deps, with local caches: passed.
  • npm run format:check, git diff --check, example restoration: passed.
  • npm test: 33 passed, including real Vitest pass/failure/negative paths, default scope, exclusive/concurrent setup, unsafe paths, deterministic packages, responsive UI, reduced motion, bounded banter rotation and truthful next steps.
  • npm run test:host: 30 official host tests passed, including default-on observation, persistence, startup races, record disclosure, compare/close controls, sarcastic banter/quiet behavior, poll stability, stale/unknown/correlation and original-tool-result preservation.
  • npm run validate: strict validation passed; API call inventory still has no writes, processes, models or network calls.
  • npm audit --audit-level=moderate: zero vulnerabilities; dependency pins unchanged.
  • Deterministic archive/content checks: passed, 81 reviewed files. SHA256: f64cc90eca5e41ae246a30af0cf8b80ec69e77258c8314a9246d718bed6a0767.
  • Clean-profile local upgrade from the verified published 0.1.0 archive: passed. All 81 installed hashes matched; installed strict validation and all 30 host tests passed. Scoped uninstall/catalog cleanup preserved the unrelated sentinel.
  • Actual Claude Code 2.1.296 macOS terminal: 36x28, 80x40 and 150x45 dark layouts plus 80x40 light layout passed. The result was visible before scrolling, keyboard disclosure/Page Down/close worked, and quiet, chocolate, QA off and hide/show remained usable. Zero model assistant messages. An additional actual terminal smoke check confirmed the new initial banter, rotating chocolate quips, neutral quiet-mode reply, resumed sarcasm and preserved passing evidence, with zero model messages. Earlier setup checks covered explicit default creation, a real passing first run and restart persistence.

Not run: public 0.2.0 installation/publication, new production deployment or directory submission, other real OS/runners, formal screen-reader certification or a fresh performance benchmark. Linux CI harness results do not establish real Linux terminal support. The new candidate video passed full H.264 decode (552 frames at 12 fps), exact
46-second duration, runtime/media checksum reconciliation and all four subtitle
timelines. All 15 unique captured frames and seven decoded stage samples were
reviewed, with launcher/login footer/private paths outside the crops. The real
helper exited 0 for pass and 1 for failure; no model prompts or calls were used.
Original 0.1.0 release media remains historical and unchanged.

Review and release

  • Baseline: 350d19f215364e1e5bb99e2dd4da9f8f44ed931d. Candidate head: 4e2034bbef7c661526c1b3ecd848b10da1d8b606, branch codex/ernesto-getting-started.
  • Review setup/helper changes, hooks/register.js, ui/view.js, ui/mascot.js and their tests. Requirements remain Claude Code 2.1.296, Node 24 and local Vitest 4.1.11. Generated scope is a starting point; snapshot matching is bounded local evidence, not business acceptance or protection against same-user fabrication.
  • QA defaults on; /ernesto qa off remembers a workspace override. Reduced motion defaults on. Pane sizing is advisory and follows the host's available space and user resize preference.
  • Ready for review, version 0.2.0 remains unreleased. No new tag/release or website availability claim was made. Concrete release approval remains separate; immutable stable 0.1.0 is unchanged.
  • Recovery: pause QA or disable the mod. Existing project config is preserved; no recursive project cleanup is needed. A public downgrade has not been tested.

@wsdt wsdt changed the title Simplify Ernesto setup with QA defaults and guided first run Make Ernesto easier to start and clearer inside Claude Code Oct 14, 2026
@wsdt wsdt changed the title Make Ernesto easier to start and clearer inside Claude Code Give Ernesto guided setup, clearer UI and sharper banter Oct 14, 2026
@wsdt
wsdt merged commit 138b2b1 into main Oct 14, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant