Cross-tool adoption. Codex, Gemini Code Assist, and any AI tool honouring
the AGENTS.md convention can now read the same instructions as Claude,
without the user maintaining two files by hand.
hooks/claude-to-agents.py (new, standalone, idempotent):
- argparse: --mode={symlink,copy,inline-chain} (default symlink),
--source (default CLAUDE.md), --output (default AGENTS.md), --force.
- Symlink mode: ln -s CLAUDE.md AGENTS.md. Windows falls back to
--copy with a stderr notice.
- Copy mode: byte-for-byte snapshot via shutil.copyfile.
- Inline-chain mode: depth-first walk of @path imports, recursive,
cycle-safe (each file read at most once). Output flattens every
chained sub-file under <!-- inlined from <rel> --> markers and
strips two flavours of Claude-only scaffolding:
• The @path import lines themselves (other tools don't resolve
them).
• Backlink quote-blocks ("> Parent context: ..." /
"> Chained import: `@../CLAUDE.md`") that we emit on every
sub-CLAUDE.md.
- Safety: existing AGENTS.md (file or symlink) is renamed to
AGENTS.md.backup.<UTC-ts> before overwrite. --force skips the
backup. Microsecond timestamp precision so back-to-back writes
don't collide.
- Exit codes: 0 success, 1 user error (missing source / unknown
mode), 2 filesystem error (symlink failure).
command/claude-to-agents.md (new slash command):
- allowed-tools: Read, Write, Glob, Bash(python3:*), Bash(ls:*),
Bash(test:*), Bash(readlink:*).
- disallowedTools: WebFetch, WebSearch (no exfiltration vector).
- argument-hint and when_to_use surface the three modes.
- Body specifies a heuristic: default to --symlink for single-file
projects, recommend --inline-chain when find . -name CLAUDE.md
returns more than one. Documents per-mode verification commands.
.claude-plugin/plugin.json:
Registers ./command/claude-to-agents.md alongside the existing two.
install.sh + install.ps1:
Banner and uninstall sections list the new command. The command
install loop already iterates command/*.md so the file itself is
copied automatically.
README.md:
/claude-to-agents added to "What's Included" under Slash commands
with a one-paragraph description covering all three modes.
Quick Stats: "2 slash commands" -> "3 slash commands".
CHANGELOG.md:
New "wave 5" entry under [Unreleased].
Verified (7/7 integration checks):
- Plugin manifest registers the command; all 9 referenced paths
resolve on disk.
- Slash command frontmatter has all required fields including
WebFetch in disallowedTools.
- Script has executable bit set.
- Both install scripts list claude-to-agents.md.
- install.sh passes bash -n.
- End-to-end against a synthetic chained CLAUDE.md tree with a
deliberate back-import cycle: symlink mode creates valid symlink;
copy mode produces bytewise-identical AGENTS.md and backs up the
prior symlink (1 backup); inline-chain mode inlines both
sub-files, strips backlinks AND chain-import lines, handles the
cycle (each file read once), backs up the prior file (2 backups
total).
- Missing source returns rc=1 with stderr message.
/enhance-claude-md Slash Command
Initialize or enhance CLAUDE.md files using the claude-md-enhancer skill with interactive workflow and 100% native format compliance.
Features
- Multi-Phase Discovery: Automatically detects if CLAUDE.md exists and determines appropriate action
- Interactive Workflow: For new projects, explores repository and asks for confirmation before creating files
- Quality Analysis: For existing projects, analyzes current CLAUDE.md and provides actionable recommendations
- 100% Native Format Compliance: Generates files with project structure diagrams, setup instructions, architecture sections
- Modular Architecture Support: Creates context-specific CLAUDE.md files (backend/, frontend/, database/)
- v2.0.0: Enhanced hooks support with background execution and conditional triggers
Installation
Option 1: Project-Level (Current Project Only)
# Copy command to your project
cp -r command /path/to/your/project/.claude/commands/
# Or create symlink
ln -s $(pwd)/command /path/to/your/project/.claude/commands/enhance-claude-md
Option 2: User-Level (All Projects)
# Copy command to user commands directory
cp -r command ~/.claude/commands/
# Restart Claude Code
Usage
Basic Usage (Auto-Detect)
/enhance-claude-md
Claude will:
- Check if CLAUDE.md exists in your project
- If not found: Run interactive initialization workflow
- If found: Analyze and offer enhancement recommendations
New Project (No CLAUDE.md)
When you run /enhance-claude-md on a new project:
Phase 1: Discovery
- Checks for existing CLAUDE.md files
- Examines project structure
- Reviews git status
Phase 2: Analysis
- Detects project type (web_app, api, fullstack, etc.)
- Identifies tech stack (TypeScript, Python, React, etc.)
- Estimates team size and development phase
Phase 3: Task
- Shows you the discoveries
- Asks for confirmation
- Creates customized CLAUDE.md file(s)
- Applies native format (project structure diagrams, setup, architecture)
Example Output:
Based on my exploration, here's what I discovered:
📦 Project Type: Full-Stack Application
🛠️ Tech Stack: TypeScript, React, Node.js, PostgreSQL
👥 Team Size: Small (5 developers)
🚀 Development Phase: MVP
📋 Recommended Structure:
- Root CLAUDE.md (~100 lines)
- backend/CLAUDE.md (~150 lines)
- frontend/CLAUDE.md (~175 lines)
Would you like me to create these files?
Existing Project (CLAUDE.md exists)
When you run /enhance-claude-md on an existing project:
Phase 1: Discovery
- Finds existing CLAUDE.md
- Checks for modular files
Phase 2: Analysis
- Analyzes current file for quality
- Calculates quality score (0-100)
- Identifies missing sections
Phase 3: Task
- Shows quality report
- Recommends improvements
- Offers to enhance with missing sections
Example Output:
Current CLAUDE.md Quality Score: 65/100
Missing Sections:
- Project Structure (ASCII diagram)
- Setup & Installation
- Architecture
Issues:
- File length: 320 lines (recommend <300)
- No project structure diagram
- Missing setup instructions
Would you like me to enhance your CLAUDE.md with these sections?
Command Structure
The command follows the Multi-Phase Pattern (similar to codebase-analyze):
Phase 1: Discovery
- Checks for CLAUDE.md existence
- Examines project structure
- Reviews git status
Phase 2: Analysis
- Determines appropriate workflow (initialize vs. enhance)
- Provides context about current state
Phase 3: Task
- Invokes
claude-md-enhancerskill - Executes appropriate workflow based on analysis
Prerequisites
Required:
claudeforge-skillmust be installed- Project-level:
.claude/skills/claudeforge-skill/ - User-level:
~/.claude/skills/claudeforge-skill/ - v2.0.0: Auto-migrates from old
claude-md-enhancername
- Project-level:
Recommended:
- Git repository (for better context detection)
- Project files in place (package.json, requirements.txt, etc.)
Advanced Usage
Specify Project Type
/enhance-claude-md
"I need a CLAUDE.md for my Python FastAPI project with PostgreSQL"
Request Modular Architecture
/enhance-claude-md
"Create a modular CLAUDE.md setup with separate files for backend, frontend, and database"
Analyze Only
/enhance-claude-md
"Just analyze my current CLAUDE.md, don't make changes yet"
Enhance Specific Sections
/enhance-claude-md
"Add Project Structure and Setup & Installation sections to my CLAUDE.md"
Output
The command can invoke either the claudeforge-skill directly OR the claude-md-guardian agent (recommended for maintenance).
Option A: Direct Skill Invocation
The skill generates:
For New Projects
- Root CLAUDE.md: Navigation hub with native format sections
- Context Files (if modular): backend/CLAUDE.md, frontend/CLAUDE.md, etc.
Native Format Sections Included:
- Overview
- Project Structure (ASCII tree diagram)
- File Structure (directory explanations)
- Setup & Installation
- Architecture (for complex projects)
- Core Principles
- Tech Stack
- Development Workflow
- Testing Requirements
- Error Handling
- Common Commands
For Existing Projects
- Quality Report: Score, missing sections, issues, recommendations
- Enhanced CLAUDE.md: Updated with missing sections (if requested)
Option B: Agent Invocation (Recommended for Maintenance)
The claude-md-guardian agent provides:
- Auto-Sync: Detects changes and updates CLAUDE.md automatically
- Smart Detection: Only updates when significant changes occur
- Targeted Updates: Modifies specific sections based on detected changes
- Token-Efficient: Uses haiku model for routine updates
- Concise Reporting: Reports only what changed
Agent triggers on:
- Feature completion
- Major refactoring
- New dependencies added
- Architecture changes
- Manual invocation via this command
Agent output:
✅ CLAUDE.md updated:
- Tech Stack: Added 2 dependencies
- Project Structure: Updated diagram
- Setup: New environment variable
Changes: 3 sections modified, 12 lines changed
Validation
The command enforces the critical validation rule:
"Always validate your output against official native examples before declaring complete."
All generated CLAUDE.md files:
- Follow official
/update-claude-mdslash command format - Include project structure diagrams
- Have setup & installation instructions
- Document architecture for complex projects
- Match native Claude Code format 100%
Examples
Example 1: New TypeScript React Project
/enhance-claude-md
Claude Response:
Discovered: TypeScript + React + Node.js project
Team size: Small (5 devs)
Phase: MVP
I'll create:
- CLAUDE.md (~125 lines) with full native format
Proceed?
Example 2: Existing Project Missing Sections
/enhance-claude-md
Claude Response:
Quality Score: 55/100
Missing:
- Project Structure diagram
- Setup & Installation
- Architecture section
I can add these native format sections to improve quality to ~85/100.
Proceed?
Example 3: Large Full-Stack Project
/enhance-claude-md
Claude Response:
Discovered: Full-stack TypeScript project
Recommend: Modular architecture
I'll create:
- Root CLAUDE.md (~100 lines)
- backend/CLAUDE.md (~200 lines)
- frontend/CLAUDE.md (~225 lines)
Proceed?
Troubleshooting
"Skill not found" error
Solution: Install the claudeforge-skill first:
cp -r skill ~/.claude/skills/claudeforge-skill/
# Note: v2.0.0 auto-migrates from old claude-md-enhancer name
Command not recognized
Solution: Ensure command is in correct location:
- Project:
.claude/commands/enhance-claude-md/enhance-claude-md.md - User:
~/.claude/commands/enhance-claude-md/enhance-claude-md.md
Then restart Claude Code.
No project structure detected
Solution: Ensure project has recognizable files:
- Node.js:
package.json - Python:
requirements.txt,pyproject.toml - Go:
go.mod - Rust:
Cargo.toml
Integration with claude-md-guardian Agent
This slash command can invoke the claude-md-guardian agent for automatic CLAUDE.md maintenance:
How They Work Together
/enhance-claude-md (command)
↓
Discovery → Analysis → Task
↓
Invokes claude-md-guardian (agent)
↓
Agent uses claudeforge-skill (skill)
↓
CLAUDE.md updated and synchronized
v2.0.0 Enhancement: Hooks can now trigger background validation checks. Example:
{
"hooks": {
"AfterCommit": {
"command": "/enhance-claude-md",
"run_in_background": true,
"timeout": 10000,
"description": "Validate CLAUDE.md after commits"
}
}
}
When to Use the Agent
Via this command:
- After feature completion
- After major refactoring
- When new dependencies added
- After architecture changes
- For periodic synchronization
Automatic (with SessionStart hook):
- Beginning of each session
- Silent if no significant changes
- Updates only when needed
See: agent/README.md for complete agent documentation
Related Resources
- Skill Documentation: ../skill/README.md
- Skill Examples: ../skill/examples/
- Agent Documentation: ../agent/README.md
- Official Slash Command Reference:
documentation/references/slash-command-update-claude-md-example.md
Version
- Version: 2.0.0
- Last Updated: January 2026
- Compatible: Claude Code 2.1.4+
- Dependencies: claudeforge-skill v2.0.0+
- Migration: See docs/MIGRATION_V2.md for upgrade guide
Quick Start: Run /enhance-claude-md in any project to initialize or enhance your CLAUDE.md file with 100% native format compliance!