/review-claudemd
Review recent conversations to find improvements for CLAUDE.md files.
Claude Code
$ npx -y skills add ykdojo/claude-code-tips --skill review-claudemd --agent claude-code
Codex
$ npx skills add ykdojo/claude-code-tips --skill review-claudemd -a codex -y
Cursor
$ npx skills add ykdojo/claude-code-tips --skill review-claudemd -a cursor -y
Gemini CLI
$ npx skills add ykdojo/claude-code-tips --skill review-claudemd -a gemini-cli -y
GitHub Copilot
$ npx skills add ykdojo/claude-code-tips --skill review-claudemd -a github-copilot -y
OpenCode
$ npx skills add ykdojo/claude-code-tips --skill review-claudemd -a opencode -y
Windsurf
$ npx skills add ykdojo/claude-code-tips --skill review-claudemd -a windsurf -y
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.
More skills from other plugins.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
ask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Questions about review-claudemd.
- Which coding agents can use review-claudemd?
- review-claudemd installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

