Update the project's CLAUDE.md to match its current structure and conventions.
Current CLAUDE.md
cat CLAUDE.md
$ARGUMENTS
Goals
- Delete guidance about structure or conventions that no longer exist
- Update outdated commands, paths, and names
- Add guidance for conventions Claude can't derive from the code
Workflow
- If the project has no CLAUDE.md, suggest
/init and stop
- Break CLAUDE.md into individual claims: commands, paths, tool choices,
workflow rules, style rules. One claim per bullet
- Verify each claim against the repo:
- Commands: confirm the script, target, or binary exists (package.json
scripts, Makefile targets, lockfiles). Don't run mutating commands
- Paths and names: confirm the files and directories exist
- Conventions: sample a few recent source files and check they follow it
- Reconcile the project structure section (see "Project structure section")
- Explore for undocumented conventions worth recording: tool choices not
implied by config files, commands with non-obvious flags, layout rules,
gotchas a newcomer would trip on
- Edit CLAUDE.md: delete stale claims, fix outdated ones, add missing guidance.
Match the file's existing structure and tone, and admit only facts that pass
"What belongs"
- Report each deletion, fix, and addition with the evidence for it. Flag claims
you couldn't verify instead of guessing
Project structure section
CLAUDE.md should have a shallow tree-style code block of the layout:
- Annotate each entry with a one-line purpose comment. An unannotated listing is
derivable and doesn't belong
- Keep it shallow: top-level directories and key files. Collapse directories
with uniform contents into one glob entry (e.g.
**/<name>/) annotated with
the pattern its contents follow
- Add the section if missing. Prune entries that no longer exist, rename moved
ones, and add new key entries
What belongs
CLAUDE.md should record only facts Claude can't cheaply derive:
- Keep: the annotated structure tree, tool and command choices among
alternatives, conventions not enforced by tooling, invisible constraints
(deploy quirks, protected files, ordering requirements)
- Cut: unannotated file listings, anything a config file already states, lint
rules the linter enforces, standard tool usage
These aren't exhaustive. Judge anything they don't cover by whether Claude can
derive it.
1---2name: reconcile-claude-md3description: Update the project's CLAUDE.md to match its current structure and conventions.4---56Update the project's CLAUDE.md to match its current structure and conventions.78# Current CLAUDE.md910```!11cat CLAUDE.md12```1314$ARGUMENTS1516# Goals1718- Delete guidance about structure or conventions that no longer exist19- Update outdated commands, paths, and names20- Add guidance for conventions Claude can't derive from the code2122# Workflow23241. If the project has no CLAUDE.md, suggest `/init` and stop252. Break CLAUDE.md into individual claims: commands, paths, tool choices,26 workflow rules, style rules. One claim per bullet273. Verify each claim against the repo:28 - Commands: confirm the script, target, or binary exists (package.json29 scripts, Makefile targets, lockfiles). Don't run mutating commands30 - Paths and names: confirm the files and directories exist31 - Conventions: sample a few recent source files and check they follow it324. Reconcile the project structure section (see "Project structure section")335. Explore for undocumented conventions worth recording: tool choices not34 implied by config files, commands with non-obvious flags, layout rules,35 gotchas a newcomer would trip on366. Edit CLAUDE.md: delete stale claims, fix outdated ones, add missing guidance.37 Match the file's existing structure and tone, and admit only facts that pass38 "What belongs"397. Report each deletion, fix, and addition with the evidence for it. Flag claims40 you couldn't verify instead of guessing4142# Project structure section4344CLAUDE.md should have a shallow `tree`-style code block of the layout:4546- Annotate each entry with a one-line purpose comment. An unannotated listing is47 derivable and doesn't belong48- Keep it shallow: top-level directories and key files. Collapse directories49 with uniform contents into one glob entry (e.g. `**/<name>/`) annotated with50 the pattern its contents follow51- Add the section if missing. Prune entries that no longer exist, rename moved52 ones, and add new key entries5354# What belongs5556CLAUDE.md should record only facts Claude can't cheaply derive:5758- Keep: the annotated structure tree, tool and command choices among59 alternatives, conventions not enforced by tooling, invisible constraints60 (deploy quirks, protected files, ordering requirements)61- Cut: unannotated file listings, anything a config file already states, lint62 rules the linter enforces, standard tool usage6364These aren't exhaustive. Judge anything they don't cover by whether Claude can65derive it.