OMP Workbook

Read the source. Follow the evidence.

A conversation fork is not a worktree or a cloned runtime

The word fork names a relationship between histories. It does not, by itself, tell you which files, processes, settings, tools, or permissions became independent.

Continuity and Tan both preserve earlier conversation material, but they do so for different operating purposes. Extension branch state adds a third use of ancestry without creating another worker at all.

Compare the actual operations

OperationConversation effectWorkspace and runtime boundary
Session-tree navigationSelects a path within the same journal; target handling depends on entry type.It does not create a checkout or another worker. Branch-aware extensions must reconstruct their state.
Interactive /forkCreates a new persistent identity from the current session, retaining live conversation and ordinary queues on the fork path.The workspace remains shared. Session artifacts are copied best-effort.
Startup --forkCreates a new identity from saved history and rebuilds context using the launch cwd.It does not clone an old process’s queues or copy workspace files.
Initial /tanCreates a contextual child conversation and an initial background run from persisted Main history.Main and the child can run concurrently in the same directory. Their live runtimes are not one cloned object.

The full continuity fork carries all existing non-header journal entries, not only the visible leaf. The tangent launch also starts from persisted history, not a synchronized stream of Main’s unfinished text, unsent draft, or pending queues. Both facts matter for privacy and for expectations about what the new conversation knows.

Task ownership is not isolation

The Tan controller clears the clone’s inherited todo list and supplies a tangent-specific responsibility boundary. That helps keep the child from taking over Main’s unfinished work. It does not make the filesystem read-only.

Lantern Library’s ownership table is therefore more than prompt-writing style. It assigns one writer to each file, identifies shared inputs, and tells other workers what to leave alone. When Main changes an input, the relevant tan must reread it; the file can be shared while the explanation of its change is not.

For review, compare the current file and diff with the intended outcome. An agent’s report is evidence to inspect, not a substitute for inspecting the shared result. If actual workspace isolation is required, it needs a separately chosen and verified mechanism. The source explicitly does not establish task.isolation.* as an automatic /tan control.

Do not inherit safeguards by assumption

The initial tan receives model, prompt, settings, and enabled-tool information through specific construction paths. Main’s live extension instances, editor, shell state, and active provider request are not copied as a complete runtime. Initial extension discovery is disabled, but custom-tool discovery and supplied MCP proxy tools are separate paths.

The recorded subagent helper defaults unattended approval to yolo, with explicit per-tool policies still inherited. A narrow assignment is therefore not proof that Main’s interactive approval experience or extension-based safeguards are reproduced unchanged.

Package Lab gives the corresponding builder rule: prepared factories can be rebound, but already-bound extension instances close over their original runtime. Sharing those instances with an independently constructed SDK session is not equivalent to constructing a fresh capability for the child.

Artifacts have their own fork behavior

Continuity’s full fork attempts a recursive copy of the session artifact tree; copy failure can leave a valid child journal with missing artifacts. The initial Tan instead nests its transcript under the parent artifact tree and captures Main’s local:// mapping without recursively copying that tree. Its artifact allocation is not universally identical to Main’s, and cold revival introduces further current-host resource boundaries.

Use actual returned links and inspect required files. Neither a fork acknowledgement nor an existing transcript is a verified backup.

Source trail: Decision Desk forking, Understand the fork, Start from Main, and Package Lab. Their anchors include packages/coding-agent/src/session/session-manager.ts — fork, forkFrom, copySessionArtifacts; modes/controllers/tan-command-controller.ts — TanCommandController.start; and extensibility/extensions/loader.ts — bindPreparedExtensions.

Related chapters:

Connections and next steps · Unified editorial chapter; connects the recorded source material without rerunning it.

Read this chapter as Markdown

Your lesson ticks

A self-reported reading checklist, not proof of real OMP behavior. Only these ticks are saved in this browser. Reading a milestone does not resume, fork, reset or export a session.

Chapters I have worked through
Start here 1
Sessions, resets, and reviewable history 19
Memory and reusable knowledge 14
Tangent work and live control 17
Tool permissions and approvals 15
Extensions inside those boundaries 23
Connections and next steps 8
0 of 97 checked

Checklist saving needs JavaScript and available browser storage.