Captures project-specific patterns and anti-patterns into CLAUDE.md for smarter future Claude sessions. Auto-loaded by skills like bug-killer discovering qualifying knowledge.
npx claudepluginhub sequenzia/agent-alchemy --plugin agent-alchemy-dev-toolsThis skill is limited to using the following tools:
Capture project-specific patterns and anti-patterns into the project's CLAUDE.md. This creates a self-improving feedback loop where discoveries from debugging, development, and review make future Claude sessions smarter.
Extracts reusable strategic knowledge from session history (architecture, patterns, ops) and updates local CLAUDE.md. Triggers on 'learn', 'save knowledge', or session ends.
Guides effective maintenance of CLAUDE.md files: adding lessons learned, updating conventions, restructuring instructions. Covers when to update/remove rules, structure templates, hierarchy, and size limits.
Guides identifying learnings, gotchas, architectural decisions for documentation in CLAUDE.md. Assesses significance, classifies sections, skips trivial changes.
Share bugs, ideas, or general feedback.
Capture project-specific patterns and anti-patterns into the project's CLAUDE.md. This creates a self-improving feedback loop where discoveries from debugging, development, and review make future Claude sessions smarter.
CRITICAL: Only project-specific knowledge qualifies. Generic programming advice does not belong in CLAUDE.md.
Determine if the finding qualifies as project-specific. The finding must pass at least ONE of these criteria:
| Criteria | Example That Qualifies | Example That Doesn't |
|---|---|---|
| Would a developer unfamiliar with this project likely hit this issue? | "The processOrder() function expects amounts in cents, not dollars" | "Always validate function inputs" |
| Is this pattern specific to this codebase's architecture, APIs, or conventions? | "The UserProfile type has an optional metadata field that is always present at runtime" | "Use TypeScript strict mode" |
| Is it something Claude's training data wouldn't cover? | "Never call db.query() without the timeout option — the default is infinite" | "Use async/await instead of callbacks" |
If NO to all criteria → STOP. Do not add generic programming knowledge to CLAUDE.md. Return to the calling skill and report that no project-specific learning was found.
If YES to any → proceed to Step 2.
Find the project's CLAUDE.md:
.claude/ directoryParse existing content:
If a similar entry already exists → STOP. Report to the calling skill that this knowledge is already captured. Do not create duplicates.
Identify placement:
## Known Gotchas or ## Project-Specific Patterns)Write a concise, actionable instruction following these rules:
Format:
Templates:
For bug patterns:
- **[Area/Component]**: [What to do/avoid] — [why, with specific details]
For API gotchas:
- `functionName()` in `path/to/file`: [What's surprising about it] — [consequence if ignored]
For architectural constraints:
- [Constraint description] — [why it exists and what breaks if violated]
Examples of well-formatted learnings:
processOrder() — it expects cents, not dollarsdb.query() in src/database.ts: Always pass the timeout option — the default is infinite and has caused production hangs (30 second timeout recommended)internal/ directories in src/api/ — the build system treats these as separate compilation units and circular dependencies will silently break HMRPresent the proposed addition via AskUserQuestion:
Show:
Options:
If the user confirmed (or provided edited text):
If the user chose "Skip":