Silent seat protocol vs workshop files
Where Orchemax injects the seat contract at SessionStart, what lives in .orch/ORCH_RUNTIME.md, and why public */skills/orch-* folders stay out of your workshop by default.
Goal#
Tell apart the silent seat protocol Orchemax injects when a CLI starts from
the workshop files you own and edit. Default private mode keeps sealed
orch-* skill folders out of browsable (and commit-prone) */skills/ trees.
What is injected (not a workshop skill folder)#
On Claude-family SessionStart, the notify hook adds a short
additionalContext blob: the compact seat contract (Chair vs worker). Depth
stays on disk in .orch/ORCH_RUNTIME.md, which dispatch / seat ensure refresh
when a seat opens.
Cursor cannot rely on SessionStart the same way, so Orchemax writes an
alwaysApply rule at .cursor/rules/orch-protocol.mdc at launch. That rule
carries the same compact protocol — still not a durable
.cursor/skills/orch-* tree.
Continuity (take context / last session) points at .orch/LAST_SESSION.md and
the same runtime contract — not at public skill names.
What you own in the workshop#
- Project doctrine:
CLAUDE.md,DEV_PRACTICES.md,GATES.md, your own.cursor/rules/*.mdc, agent digests you choose to keep. - Disk memory:
.workflow/LEDGER*.md,BOARD.md,RESUME.md,.orch/LAST_SESSION.md. - Config:
orch.yamland gateway / agent settings you set.
Orchemax regenerates seat runtime under .orch/ and the compact protocol
injection. Treat sealed product protocol as harness surface, not something to
fork under skills/orch-*.
Escape hatch (one release)#
If you still need durable skill folders on disk for dogfood:
ORCH_LEGACY_SKILLS=1
With that env set, seed/install may write */skills/orch-* again. Leave it
unset (the default) so launch sweeps leftover sealed orch-* dirs from known
vendor trees and keeps protocol private.
Related#
- Memory and ledger — on-disk memory and LAST_SESSION
- Hooks and guards — how SessionStart hooks get wired
- Configure agents — which CLI reads which tree
- Same CLI, many projects —
--nameandto_project - MCP server ids in
.orch/mcp.json:orchemax(preferred) ororch(alias). If another tool is namedorch, invoke Orchemax asorchemax. - Community: SEAT-INJECTION.md