Files
chemenu/kb/entities/systems/CLAUDE.md.md
T
torben 18ae28f918
CI / verify (push) Failing after 32s
Release / release (push) Successful in 38s
Chemenu 2.1.0 - deterministischer Wissenskompiler
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.
2026-09-01 16:26:14 +02:00

98 lines
4.5 KiB
Markdown

---
type: types/entity.md
entity_type: system
tags: []
created: 2026-08-31
modified: 2026-09-01
related: [AGENTS.md, ENVIRONMENT.md]
sources: [Source - Conversation - ENVIRONMENT.md as an Optional Third Session-Level File Session 2026-08-31]
confidence: 0.50
confidence_base: 0.50
provenance: sourced
summary: Datei, die Claude Code beim Sitzungsstart laedt; importiert AGENTS.md/USER.md/SOUL.md und seit 1.8.0 ENVIRONMENT.md, traegt selbst keine Regeln
---
# CLAUDE.md
**Typ:** System
## Beschreibung
`CLAUDE.md` ist die Datei, die [[Claude Code]] beim Sitzungsstart automatisch lädt. In
[[Chemenu]] enthält sie **keine eigenen Regeln**, sondern ausschließlich Importe:
`@AGENTS.md`, `@USER.md` und `@SOUL.md`, seit Stack-Version `1.8.0` zusätzlich
`@ENVIRONMENT.md`[^s-conversation-environment-md-as-an-optional-third-session-level-file-session-2026-08-31]. Ihr einziger Zweck ist, die Kontrollebene in ein
Harness zu bringen, das sie sonst nicht sieht.
Der Grund ist eine Asymmetrie zwischen den Agenten-Werkzeugen: Codex CLI, GitHub Copilot und
Mistral Vibe lesen [[AGENTS.md]] nativ, Claude Code nicht. Solange keine `CLAUDE.md` existierte,
lief jede Claude-Code-Sitzung ohne Invarianten, Routing und Gate-Regeln - es sei denn, der Agent
öffnete `AGENTS.md` von sich aus. Der Defekt blieb unbemerkt, weil er unter keinem anderen
Harness auftrat.
## Kerndaten
- **Zweck:** Kontrollebene und Personalization Plane in Claude-Code-Sitzungen laden
- **Status:** Aktiv, eingeführt mit Stack-Version `1.1.1`
- **Version:** eingeführt 2026-08-30, Commit `adfa220`
- **Sprache/Technik:** Markdown mit `@pfad`-Importsyntax
- **Standort:** Repo-Wurzel: `/CLAUDE.md`
- **Ausgeliefert:** ja, über die Root-Allowlist von `dist export`
## Beziehungen
- **importiert:** [[AGENTS.md]]
- **importiert:** [[ENVIRONMENT.md]]
## Details
### Warum keine eigenen Regeln
Eine Regel in `CLAUDE.md` wäre eine zweite Kopie einer bereits existierenden Regel und damit ein
Verstoß gegen Invariante 8 von [[AGENTS.md]]. Sie wäre zugleich die am schnellsten driftende
Kopie, weil nur ein einziges Harness sie liest: eine Abweichung fiele unter Codex oder Copilot
gar nicht auf. Die Datei beschränkt sich deshalb auf Importe und die Begründung, warum sie
existiert.
### Auslieferung
`CLAUDE.md` steht in `ROOT_FILES` von `tools/chemenu/commands/dist_cmd.py` und geht damit in
jede Distribution - aus demselben Grund wie `.claude/settings.json`: eine ausgelieferte Instanz
unter Claude Code hätte sonst denselben Defekt. Anders als bei `USER.md` und `SOUL.md` wird die
Datei selbst ausgeliefert und nicht als Template, weil sie keinen persönlichen Inhalt trägt.
### Kein doctor-Check
Für `CLAUDE.md` gibt es bewusst keinen `wikitool doctor`-Check. Die Datei ist
harness-spezifisch; eine Instanz, die ausschließlich unter Codex CLI betrieben wird, braucht sie
nicht, und ein `FAIL` wäre dort schlicht falsch. Das unterscheidet sie von `USER.md` und
`SOUL.md`, die jedes Harness liest und die deshalb geprüft werden - siehe
[[Personalization Plane]].
### Verhalten während der Installation
Während des Setups einer frischen Instanz existieren `USER.md` und `SOUL.md` noch nicht; sie
entstehen erst im Personalization-Schritt. Die Setup-Sitzung löst daher nur `@AGENTS.md` auf.
Ob Claude Code einen fehlenden `@import` still überspringt oder meldet, ist **unbestätigt** und
wurde in der einführenden Sitzung nicht geprüft.
Mit [[ENVIRONMENT.md]] wiegt diese offene Frage seit `1.8.0` schwerer: jene Datei ist optional
und gitignored, ein unaufgelöster Import ist dort also kein Übergangszustand während des Setups,
sondern der Normalfall[^s-conversation-environment-md-as-an-optional-third-session-level-file-session-2026-08-31]. Auch die Sitzung, die den Import einführte, hat das
Verhalten nicht beobachtet - sie fügte ihn einer laufenden Sitzung hinzu, deren Kontext bereits
geladen war.
## Historie
- 2026-08-30 - Angelegt mit Stack-Version `1.1.1` (Commit `adfa220`), nachdem aufgefallen war,
dass `AGENTS.md` Claude Code nie erreicht hatte
- 2026-08-03 - Die Seite [[AGENTS.md]] führte `CLAUDE.md` bereits als „analoge
Konfigurationsdatei für Claude Code" - zu diesem Zeitpunkt gab es die Datei im Repo nicht
## Siehe auch
- [[AGENTS.md]]
- [[ENVIRONMENT.md]]
- [[Source - Conversation - ENVIRONMENT.md as an Optional Third Session-Level File Session 2026-08-31]]
## Fußnoten
[^s-conversation-environment-md-as-an-optional-third-session-level-file-session-2026-08-31]: [[Source - Conversation - ENVIRONMENT.md as an Optional Third Session-Level File Session 2026-08-31]]