Claude configuration
Subsystems
| Folder | Contents | Pages |
|---|---|---|
| hooks/ | 119 registered hook commands over 70 scripts, plus other hook modules | 99 |
| skills/ | 82 SKILL.md skills in 12 sources | 82 |
| commands/ | 14 slash commands | 14 |
| tools/ | Python CLI utilities and the session-management package | 22 |
Hook lifecycle
Hook types in a $HOME-rooted session are counted on the hooks index.
Where skills load from
Notes
This section documents the Claude Code configuration on this host from the live files: every hook command, every skill and every slash command has its own page, written from the registrations and the scripts themselves and refreshed by scripts/gen-claude-pages.py in this repository. The generator reads ~/.claude/settings.json and settings.local.json, the installed plugins' hooks.json (orchestrata 1.5.0, tmux-status 1.2.0, turn-navigator 1.1.3, codetools 0.1.0), the worktree's repo-scoped settings, every SKILL.md and the commands directory, and rewrites only the generated parts of each page: the hand-written text between the prose markers is kept byte for byte.
How the pieces fit. Hooks are the mechanism: a script runs at an event and can inject context, run a side effect, ask, or deny. Skills are instruction packs the model loads when their description matches. Commands are instruction files the user invokes by name. The rulings (RUL-014: a ruling needs a mechanism) are what most hooks enforce, so the page for a guard links the ruling it implements. The policy side lives in workflow, gates and briefs, the project in Orchestrata Ultimate and the tooling in codetools. The session tools under tools (the session CLI and the file tools) are what the session hooks and commands call.
Reading order for a newcomer: the hook lifecycle to see what fires when; the shell-guards skill to learn what to do when a call is refused; then the skills and commands indexes for what is available and what is dead on this host.
Earlier documentation
Documented from the orchestrata-ultimate-architecture repository: .claude/skills/, .claude/hooks/, and claude/ (tools + Python hooks). Every page carries the full source, a per-function reference (what each function does and its parameters), and a zoomable diagram — click any diagram to open the full-size SVG in a new tab.
Subsystems
| Folder | Contents | Pages |
|---|---|---|
| skills/ | Agent-invocable capability packs (SKILL.md) |
4 |
| tools/ | Python CLI utilities and the session-management package | 22 |
| hooks/ | Event-driven guards and injectors (shell + Python) | 48 |
How the pieces fit
Notable findings from documentation
Documented verbatim, not fixed (source defects flagged on the relevant pages):
-
Several files use the unparenthesized multi-exception form
except A, B:— valid syntax under PEP 758 (Python 3.14+), not a defect:Verified 2026-08-12: all eight files
ast.parse()clean under the measured interpreter (CPython 3.14.6), which is the only interpreter this project supports (requires-python = ">=3.14,<3.15"). They are aSyntaxErroronly under ≤3.13 — a deployment concern for copies shipped to older hosts (which is why the environment-replication installer parenthesizes its 17 sites), not a defect in the source.blackruns withtarget-version = ['py314']and strips the parentheses back off, so "fixing" these in place is churn the next format reverts.claude/tools/kg_sync_jsonl.py,claude/tools/statusline_session.py,claude/tools/session/context.py,claude/hooks/instruction_enforcer_hook.py,claude/hooks/read_throttle.py,claude/hooks/session_open_hook.py,claude/hooks/error_gate/checks_structure.py,claude/hooks/error_gate/utils.py. -
claude/hooks/context_graph/schema.pystill reads the retiredNEO4J_*env vars (superseded byKG_ROUTING_URI/KG_DATABASEas of 2026-07-27). -
claude/hooks/session/prolog_interface.py(and others) contain bareexcept Exception: passblocks, contrary to the project rule against silent exception swallowing.