Chemenu kompiliert Rohnotizen zu einem verlinkten, quellengebundenen Wiki: raw/ -> types/ + tools/ -> kb/ -> reports/. Was mechanisch ist, macht tools/wikitool; was Urteil braucht, macht ein Agent unter Contracts, deren Grenzen in Code durchgesetzt sind statt im Prompt. Dieser Commit ist der Startpunkt der oeffentlichen Historie. Die vorherige Entwicklung fand in einer privaten Instanz statt und ist nicht Teil dieses Repositorys; ihre Erzaehlung steht vollstaendig in CHANGES.md, das mit 44 Eintraegen von 0.1.0 bis 2.1.0 erhalten geblieben ist. Der mitgelieferte Korpus ist ein Testbett und eine Demo: 170 Seiten ueber den Stack selbst - Gates, Lint, Versionierung, Suche, das Wiki-Muster. Er dokumentiert das Werkzeug mit den eigenen Mitteln des Werkzeugs. Lizenz: AGPL-3.0 fuer den Stack (tools/, types/), CC-BY-4.0 fuer die Inhalte. Die Grenze zwischen beiden ist der Dateiplan, den dist export berechnet - siehe NOTICE.
2.3 KiB
CLAUDE.md
Claude Code loads this file automatically and does not load AGENTS.md.
The other harnesses (Codex, Copilot, Vibe) read AGENTS.md natively, so this
file exists to close that one gap and nothing else.
It therefore holds no rules of its own - only the imports below. A rule written here would be the second copy invariant 8 forbids, and it would be the copy that drifts, because the harness that reads it is not the harness the rest of the repo is written for. Importing is not that: the rule stays at exactly one place and is pulled in from here, which is the only way a Claude-Code-only instruction can reach a session at all - AGENTS.md would carry it into every other harness too.
@AGENTS.md @USER.md @SOUL.md @ENVIRONMENT.md @instructions/claude-code-model-selection.md
USER.md and SOUL.md do not exist until the Personalization step of
instructions/setup-instance.md has run, so
the setup session itself resolves only @AGENTS.md. Every session after it
gets all three - which is what makes the "Always, every session" rows in
AGENTS.md's file-naming table true for Claude Code rather than aspirational.
ENVIRONMENT.md is the one import that may legitimately never exist. It is
optional and gitignored (AGENTS.md § Environment), so an unresolved import is
its normal absent state, not a broken reference - the same tolerance the two
above rely on before setup, used deliberately rather than transitionally. It
earns an import rather than a link because what it holds - which MCP server
answers which question, which remote publish talks to, which harnesses this
checkout is shared with - is consulted in passing, mid-task, at the moment
nobody would stop to open a document. That is the same bar the last import
below clears, and it is the whole test: a session that has to go look the
answer up will instead ask the user again, which is the cost the file exists
to remove.
The last import is the harness-specific one: model and effort selection is decided while spawning a subagent or starting a review, not at a point where anyone stops to open a document, so it is imported rather than linked. That costs standing context in every session, which is the bar a further Claude-Code-only import has to clear too: import what is decided in passing, link what is looked up deliberately.