David
Blumenau
Menu
The agent workbench story

Workbench Lab / A small deliberate mistake

Share a setup
and keep local choices.

I built metacodex to share agent setup between machines while keeping local settings separate. Here, the configuration manager uses two disposable test setups: a conflicting manual edit stops an update until it is deliberately adopted.

Follow the setup update Actual manager execution · 14 October 2026

Your experiment / about a minute

01 / 06
01Pack the useful parts02Assemble03Refuse drift04Adopt05Update06Verify
Portable workbenchOne maintained skill. One shared base.
base 01
A
The studio desk

Fictional home / real manager

generated configuration
Shared model
demo-model
Reasoning
medium
Local status line
model + current folder
Ready to assemble

Local auth & session files Stay at this desk

B
The travel desk

Fictional home / real manager

generated configuration
Shared model
demo-model
Reasoning
medium
Local status line
model + context window
Ready to assemble

Local auth & session files Stay at this desk

same-page / a shared skillOne source, two desks

Pack the useful parts

Two desks.
One useful setup.

What should travel together, and what should each desk keep? Make two choices, then compare them with a real run.

A maintained skill should…
A desk’s status line should…

Interactive illustration of the recorded run. Your choices stay in this page; these buttons replay observed results.

JavaScript is off. Read the full execution receipt and transcript below; the experiment needs JavaScript.

Inspect the actual command output install / exit 0
Captured CLI output · paths replaced with $FIXTUREexit 0
[desk-a] $ metacodex install
link: installed $FIXTURE/desk-a/.agents/skills
link: installed $FIXTURE/desk-a/.codex/hooks.json
link: installed $FIXTURE/desk-a/.codex/AGENTS.md
link: installed $FIXTURE/desk-a/.codex/rules/metacodex.rules
link: installed $FIXTURE/desk-a/bin/codex-digest
link: installed $FIXTURE/desk-a/bin/codex-trust-everything
apply: generated config (values redacted)
[exit 0; 64.768 ms observed]

[desk-b] $ metacodex install
link: installed $FIXTURE/desk-b/.agents/skills
link: installed $FIXTURE/desk-b/.codex/hooks.json
link: installed $FIXTURE/desk-b/.codex/AGENTS.md
link: installed $FIXTURE/desk-b/.codex/rules/metacodex.rules
link: installed $FIXTURE/desk-b/bin/codex-digest
link: installed $FIXTURE/desk-b/bin/codex-trust-everything
apply: generated config (values redacted)
[exit 0; 54.446 ms observed]
Download the complete transcript

Executed, then exhibited

The proof is
in the refusal.

This is a real run of the metacodex configuration manager from a committed source revision. A controlled fixture supplies harmless settings and two disposable homes.

The interactive desks above illustrate those observed results. The film below records a browser terminal viewer replaying the captured output; its display pacing is editorial.

01 / Exit 1

A manual edit survived refusal.

Applying over an unadopted reasoning change returned an error. Both the live config and generated snapshot retained their exact hashes.

02 / Exit 0

Adoption made a local preference durable.

Desk A’s high setting moved into its machine overlay and survived the next portable base update. Desk B received the new low default.

03 / Six matching hashes

Private state stayed at each desk.

Two fake auth files, two fake sessions and two fake secret overlays remained byte-for-byte unchanged. The shared skill hash matched on both desks.

Recorded replay / actual CLI output

The run, in its own words

A browser terminal viewer replaying actual captured output. Display pacing is editorial.Eight real manager commands: installation, drift refusal, explicit adoption, a portable base update and doctor checks. Fixture paths are replaced with $FIXTURE. Observed command durations appear in the replay and receipt.
Read the complete captured output

The recording displays one command at a time, followed by the verified configuration and hash results. The deliberate drift refusal is a successful boundary check, with exit 1. All other manager invocations return exit 0.

Open the full text transcript

Execution receipt

A claim you can inspect.

Full machine-readable receipt
Source revision
f034947811e9227f3c50f41f0aa8c0d410293b0a
Observed run
Actual manager commands
8 invocations · 7 successful · 1 deliberate refusal
Manager SHA-256
ed4fce0fddfaba59d668c376c651ebb0e43fe9f6bd0fa6d2c866414f3faa2bcc
What the fixture substitutes
  • Actual unmodified bin/metacodex from git archive of the committed revision.
  • Tracked config.base.toml replaced with two fictional settings; model_catalog_json omitted, so the catalog helper is never invoked.
  • hooks.json replaced with an empty hook object. The doctor check therefore verifies this controlled fixture, not installed hook prerequisites.
  • Original skills, managed resource links and helper executables retained. Helpers and skills are not executed.
  • Task-specific METACODEX_USER_HOME, METACODEX_HOME and METACODEX_BIN_HOME select two disposable homes. HOME and CODEX_HOME are not reassigned. Inherited CODEX_HOME and AGENTS_HOME are required to be unset.
  • No update, sync, remote command, agent runtime, network request or real account used.

The fixture uses the archived commit and two disposable homes.

Inspect the protected-file hashes

Studio desk / A

.codex/auth.jsonBefore and after match7a7e2046385715873a2d0f5a1b397c04037c1b7dbff62bc9f82985585962b701
.codex/sessions/demo.jsonlBefore and after match2c412ea2f4c5d77ad650d9a46893980c90c09db4d12e049a130e1fad3160b16a
.codex/config.secrets.tomlBefore and after matchc1ec09356c8648afc182b27787a483be0a3043f2b893d5e9c881ba0520cc6a9a

Travel desk / B

.codex/auth.jsonBefore and after matchd08dc9f5d783c6b3a25fd9fd2fb156c305231334fcc4e40e26d7d4dbb2146275
.codex/sessions/demo.jsonlBefore and after matcha967365169f3407f2a9cac44273d7451b8453060de55df0bd26cbcb6b78791b9
.codex/config.secrets.tomlBefore and after match6deac5654cd41c2d0afe49649aceaceab11aee837760ced50885844ba4c3a801
Every command, exit code and observed duration
  1. desk-ametacodex installexit 0 / 64.768 ms
  2. desk-bmetacodex installexit 0 / 54.446 ms
  3. desk-ametacodex applyexit 1 / 47.514 ms
  4. desk-ametacodex apply --adoptexit 0 / 55.419 ms
  5. desk-ametacodex applyexit 0 / 76.236 ms
  6. desk-bmetacodex applyexit 0 / 77.538 ms
  7. desk-ametacodex doctorexit 0 / 69.99 ms
  8. desk-bmetacodex doctorexit 0 / 73.497 ms
Complete captured transcript
What this run establishes
  • Runs the configuration manager only; it does not launch a Codex session or execute the shared skill.
  • No fleet synchronization, authentication or production installation is exercised.
  • The terminal view replays these captured commands and outputs; display pacing is editorial, not measured execution time.

The shared skill is linked and readable; this run does not execute its workflow. The doctor result applies to this fixture, including its empty hook configuration.