/review-claudemd
Review recent conversations to find improvements for CLAUDE.md files.
$ npx -y skills add ykdojo/claude-code-tips --skill review-claudemd --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/review-claudemd
Context preview
The summary Claude sees to decide when to auto-load this skill.
Review recent conversations to find improvements for CLAUDE.md files.
SKILL.md
review-claudemd.SKILL.mdname: review-claudemd
description: Review recent conversations to find improvements for CLAUDE.md files.
Review CLAUDE.md from conversation history
Analyze recent conversations to improve both global (~/.claude/CLAUDE.md) and local (project) CLAUDE.md files.
Step 1: Find conversation history
The project's conversation history is in `~/.claude/projects/`. The folder name is the project path with slashes replaced by dashes.
# Find the project folder (replace / with -)
PROJECT_PATH=$(pwd | sed 's|/|-|g' | sed 's|^-||')
CONVO_DIR=~/.claude/projects/-${PROJECT_PATH}
ls -lt "$CONVO_DIR"/*.jsonl | head -20Step 2: Extract recent conversations
Extract the 15-20 most recent conversations (excluding the current one) to a temp directory:
SCRATCH=/tmp/claudemd-review-$(date +%s)
mkdir -p "$SCRATCH"
for f in $(ls -t "$CONVO_DIR"/*.jsonl | head -20); do
basename=$(basename "$f" .jsonl)
# Skip current conversation if known
cat "$f" | jq -r '
if .type == "user" then
"USER: " + (.message.content // "")
elif .type == "assistant" then
"ASSISTANT: " + ((.message.content // []) | map(select(.type == "text") | .text) | join("\n"))
else
empty
end
' 2>/dev/null | grep -v "^ASSISTANT: $" > "$SCRATCH/${basename}.txt"
done
ls -lhS "$SCRATCH"Step 3: Spin up subagents
Launch parallel subagents to analyze conversations. Each agent should read:
- Global CLAUDE.md: `~/.claude/CLAUDE.md`
- Local CLAUDE.md: `./CLAUDE.md` (if exists)
- Batch of conversation files
Give each agent this prompt template:
Read:
1. Global CLAUDE.md: ~/.claude/CLAUDE.md
2. Local CLAUDE.md: [project]/CLAUDE.md
3. Conversations: [list of files]
Analyze the conversations against BOTH CLAUDE.md files. Find:
1. Instructions that exist but were violated (need reinforcement or rewording)
2. Patterns that should be added to LOCAL CLAUDE.md (project-specific)
3. Patterns that should be added to GLOBAL CLAUDE.md (applies everywhere)
4. Anything in either file that seems outdated or unnecessary
Be specific. Output bullet points only.
Batch conversations by size:
- Large (>100KB): 1-2 per agent
- Medium (10-100KB): 3-5 per agent
- Small (<10KB): 5-10 per agent
Step 4: Aggregate findings
Combine results from all agents into a summary with these sections:
1. **Instructions violated** - existing rules that weren't followed (need stronger wording) 2. **Suggested additions - LOCAL** - project-specific patterns 3. **Suggested additions - GLOBAL** - patterns that apply everywhere 4. **Potentially outdated** - items that may no longer be relevant
Present as tables or bullet points. Ask user if they want edits drafted.
Read more
name: review-claudemd description: Review recent conversations to find improvements for CLAUDE.md files.
Review CLAUDE.md from conversation history
Analyze recent conversations to improve both global (~/.claude/CLAUDE.md) and local (project) CLAUDE.md files.
Step 1: Find conversation history
The project's conversation history is in `~/.claude/projects/`. The folder name is the project path with slashes replaced by dashes.
# Find the project folder (replace / with -)
PROJECT_PATH=$(pwd | sed 's|/|-|g' | sed 's|^-||')
CONVO_DIR=~/.claude/projects/-${PROJECT_PATH}
ls -lt "$CONVO_DIR"/*.jsonl | head -20Step 2: Extract recent conversations
Extract the 15-20 most recent conversations (excluding the current one) to a temp directory:
SCRATCH=/tmp/claudemd-review-$(date +%s)
mkdir -p "$SCRATCH"
for f in $(ls -t "$CONVO_DIR"/*.jsonl | head -20); do
basename=$(basename "$f" .jsonl)
# Skip current conversation if known
cat "$f" | jq -r '
if .type == "user" then
"USER: " + (.message.content // "")
elif .type == "assistant" then
"ASSISTANT: " + ((.message.content // []) | map(select(.type == "text") | .text) | join("\n"))
else
empty
end
' 2>/dev/null | grep -v "^ASSISTANT: $" > "$SCRATCH/${basename}.txt"
done
ls -lhS "$SCRATCH"Step 3: Spin up subagents
Launch parallel subagents to analyze conversations. Each agent should read:
- Global CLAUDE.md: `~/.claude/CLAUDE.md`
- Local CLAUDE.md: `./CLAUDE.md` (if exists)
- Batch of conversation files
Give each agent this prompt template:
Read: 1. Global CLAUDE.md: ~/.claude/CLAUDE.md 2. Local CLAUDE.md: [project]/CLAUDE.md 3. Conversations: [list of files] Analyze the conversations against BOTH CLAUDE.md files. Find: 1. Instructions that exist but were violated (need reinforcement or rewording) 2. Patterns that should be added to LOCAL CLAUDE.md (project-specific) 3. Patterns that should be added to GLOBAL CLAUDE.md (applies everywhere) 4. Anything in either file that seems outdated or unnecessary Be specific. Output bullet points only.
Batch conversations by size:
- Large (>100KB): 1-2 per agent
- Medium (10-100KB): 3-5 per agent
- Small (<10KB): 5-10 per agent
Step 4: Aggregate findings
Combine results from all agents into a summary with these sections:
1. **Instructions violated** - existing rules that weren't followed (need stronger wording) 2. **Suggested additions - LOCAL** - project-specific patterns 3. **Suggested additions - GLOBAL** - patterns that apply everywhere 4. **Potentially outdated** - items that may no longer be relevant
Present as tables or bullet points. Ask user if they want edits drafted.
Here are my tips for getting the most out of Claude Code, including a custom status line script and Claude Code running itself in a container. Also includes the dx plugin: skills for everyday dev workflows.
Other skills on dx.
- /gha
Analyze GitHub Actions failures and identify root causes
Open skill - /half-clone
Clone the later half of the current conversation, discarding earlier context to reduce token usage while preserving recent work.
Open skill - /handoff
Write or update a handoff document so the next agent with fresh context can continue this work.
Open skill - /hn-summarize
Fetch and summarize Hacker News / hckrnews.com top stories, articles, and their comment threads. Use when asked to summarize HN front-page stories, a specific HN story plus its discussion, or "the top N from hckrnews".
Open skill - /private-github-search
Full-text search across all of the user's GitHub repos (including private ones) using a local mirror and ripgrep. Use for "where did I put X", "which repo has X", or any search spanning the user's repos - gh search code / the REST API cannot reliably search private repos.
Open skill - /quarter-clone
Clone the last quarter of the current conversation, discarding earlier context to reduce token usage while preserving recent work.
Open skill

