claude-md-updater · git:20260624.eda682d · 2026-06-24 · sha256 1380a24eb4000c28
claude-md-updater git:20260624.eda682dA
Immutable. This exact content is served forever at /api/v1/blob/1380a24eb4000c28.
--- name: claude-md-updater description: Use this skill when the user asks to update CLAUDE.md, save a lesson, or persist something from the current session: phrases like "update claude.md", "what should we remember", "save this lesson", or "add to context". Scans the conversation for hard-won lessons, new file paths, infrastructure changes, and new workflows, then proposes scoped edits to the project's CLAUDE.md for approval before writing. --- # CLAUDE.md auto-updater Analyze the current conversation to identify information worth persisting in CLAUDE.md for future sessions, then propose the edits for approval before writing anything. ## What to look for ### 1. Hard-won lessons - Debugging sessions that revealed non-obvious causes - Workarounds for platform or tool limitations - Anti-patterns discovered through failure - "The real problem was..." moments ### 2. New infrastructure - New services deployed - New endpoints or URLs - New file paths or directories - New credentials or tokens (reference only, never the values) ### 3. New workflows - Commands that solve recurring problems - Multi-step processes that work well - Integration patterns between systems ### 4. Updated information - Changed ports, IPs, or URLs - New capabilities added to existing systems - Deprecated or removed features ## Analysis process 1. **Scan the conversation** for keywords: - "fixed", "solved", "the issue was", "turns out" - "deployed", "set up", "configured", "installed" - "new endpoint", "new service", "new path" - "doesn't work", "limitation", "workaround" 2. **Categorize findings.** Only durable facts belong in CLAUDE.md: - Hard-won lessons go to the "Hard-won lessons" section - Infrastructure changes update the relevant section - New workflows go to the appropriate section - Transient, session-specific notes do **not** go in CLAUDE.md (see "What not to persist") 3. **Build the exact diff.** Produce a unified diff against the current CLAUDE.md showing the precise lines and sections to be added or changed. This diff is what the user approves, not a summary of it. 4. **Present the diff for approval** and write nothing until the user approves. ## Output format Show the exact patch first, then a short summary grouped by category: ```` ## Proposed CLAUDE.md updates ```diff --- a/CLAUDE.md +++ b/CLAUDE.md @@ section being changed @@ existing context line +new durable lesson, infra fact, or workflow ``` Summary of the diff above: - Hard-won lessons: [one line, if any] - Infrastructure updates: [one line, if any] - New workflows: [one line, if any] Apply this diff? Nothing is written until you approve. ```` ## What not to persist CLAUDE.md is team-shared (checked into git) and advisory: it loads into every session, so it is for durable, infrequently-changing facts, not a running log. Per the project-memory skill, keep these **out** of CLAUDE.md: - Transient "what we did today" session summaries - Anything that changes frequently - Things Claude learns over time through corrections Route those to **auto memory** (`~/.claude/projects/<project>/memory/`, which Claude maintains on its own) or to a gitignored `CLAUDE.local.md` for personal notes. Putting them in CLAUDE.md bloats shared context and loads stale per-session facts into future sessions. ## Rules 1. **Never add sensitive values.** Reference where a credential is stored; never include the actual token. 2. **Keep it concise.** CLAUDE.md should stay scannable; target under 200 lines. 3. **Avoid duplication.** Check whether the information already exists before adding it. 4. **Match the existing style.** Follow the tone and format of the current file. 5. **Durable facts only.** Persist hard-won lessons, infrastructure facts, and workflows. Session-specific notes belong in auto memory or a gitignored `CLAUDE.local.md`, never the committed CLAUDE.md.