Memory Optimizer
Restructures .claude/CLAUDE.md using progressive disclosure to minimize startup tokens.
Decision Table
| Signal in CLAUDE.md | Extract To | Frontmatter |
|---|---|---|
File extensions (.ts, .py) or directories (src/api/) | .claude/rules/{topic}.md | paths: {glob} |
| Multi-step workflow (3+ steps) | .claude/skills/{name}/SKILL.md | name:, description: |
| User-triggered template | .claude/commands/{name}.md | description: |
| Specialized task needing limited tools | .claude/agents/{name}.md | name:, description:, tools: |
| Essential for ALL interactions | Keep in CLAUDE.md | — |
Workflow
- •Analyze: Read CLAUDE.md, count lines
- •Categorize: Apply decision table to each section
- •Plan: Present extraction table for approval
- •Extract: Create files with proper frontmatter
- •Refactor: Reduce CLAUDE.md to <50 lines
- •Report: Show before/after line counts
Extraction Plan Format
Present before creating files:
markdown
| Content | Extract To | Type | Trigger/Path | | -------------- | ------------------------------ | ------- | ------------------- | | TS conventions | .claude/rules/typescript.md | Rule | `**/*.ts` | | Deploy process | .claude/skills/deploy/SKILL.md | Skill | "deploy", "release" | | PR template | .claude/commands/review.md | Command | `/review` | | Security check | .claude/agents/security.md | Agent | security tasks |
File Templates
Rule
yaml
---
paths: src/**/*.ts
---
# {Topic}
{ Instructions }
Skill
yaml
---
name: {kebab-case}
description: {What it does}. Use when {triggers}.
---
# {Name}
{Instructions}
Command
yaml
---
description: { Brief description }
---
{ Prompt template with $ARGUMENTS }
Agent
yaml
---
name: {name}
description: {When to delegate}. Use proactively for {triggers}.
tools: Read, Grep, Glob
---
# {Name}
{Instructions}
Refactored CLAUDE.md Target
markdown
# {Project}
{1-2 sentence overview}
## Commands
- Build: `{cmd}`
- Test: `{cmd}`
## References
- @README.md
- @docs/architecture.md
Goal: <50 lines, ideally 20-30
Validation
After extraction, verify:
- •CLAUDE.md line count reduced
- •Each file has valid YAML frontmatter
- •Rules have
paths:, skills havedescription:with "Use when"
Description Formula
{Verb} {what}. Use when {trigger1}, {trigger2}, or {trigger3}.
Bad: Helps with code review
Good: Reviews code for security and performance issues. Use when reviewing PRs, checking code quality, or after major changes.