Agent skill
repomix-config
Repomix AI-friendly codebase compression configuration (.repomix.config.json) template and validation logic. Achieves 70% token reduction through XML compression and repository-type-specific include patterns. Includes 5 critical standards (XML output format, include patterns by repo type, gitignore integration, exclude patterns, security checks). Use when creating or auditing .repomix.config.json files for optimal LLM context compression.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/repomix-config
SKILL.md
Repomix Configuration Skill
This skill provides .repomix.config.json template and validation logic for AI-friendly codebase compression.
Purpose
Manage .repomix.config.json to:
- Achieve 70% token reduction through XML compression
- Configure repository-type-specific include patterns
- Integrate with .gitignore for automatic exclusions
- Exclude build artifacts and prevent recursion
- Enable automatic security checks for sensitive data
Usage
This skill is invoked by the repomix-config-agent when:
- Creating new .repomix.config.json files
- Auditing existing Repomix configurations
- Validating .repomix.config.json against standards
Templates
Repository-type-specific templates are located in:
templates/.repomix.config.json.template
The 5 Repomix Standards
Rule 1: XML Output Format (CRITICAL)
Must configure XML output with compression:
{
"output": {
"filePath": ".repomix-output.txt",
"style": "xml",
"showLineNumbers": true,
"compress": true
}
}
Requirements:
style: "xml"- Enables Tree-sitter compression (70% token reduction vs plain text)compress: true- Activates compressionshowLineNumbers: true- Maintains code traceabilityfilePath: ".repomix-output.txt"- Standard output location
Validation:
# Check XML output configuration
grep -q '"style": "xml"' .repomix.config.json || echo "VIOLATION: Missing XML format"
grep -q '"compress": true' .repomix.config.json || echo "VIOLATION: Compression disabled"
grep -q '"showLineNumbers": true' .repomix.config.json || echo "VIOLATION: Line numbers disabled"
Rule 2: Include Patterns by Repository Type (CRITICAL)
Must configure include patterns matching repository type:
| Repository Type | Include Patterns |
|---|---|
| Turborepo | apps/**, packages/**, services/**, prisma/**, .github/**, scripts/** |
| Library | packages/**, components/**, config/**, .github/**, scripts/** |
| Plugin Marketplace | plugins/**, .claude-plugin/** |
| Python | tools/**, providers/**, *.py, .github/**, Dockerfile |
| Shell | *.sh, scripts/**, .github/** |
Validation:
# For Turborepo (example)
grep -q '"apps/\*\*"' .repomix.config.json || echo "VIOLATION: Missing apps/** pattern"
grep -q '"packages/\*\*"' .repomix.config.json || echo "VIOLATION: Missing packages/** pattern"
Rule 3: Gitignore Integration
Must enable gitignore and default patterns:
{
"ignore": {
"useGitignore": true,
"useDefaultPatterns": true
}
}
Settings explained:
useGitignore: true- Automatically respects .gitignore patternsuseDefaultPatterns: true- Includes Repomix default exclusions
Validation:
# Check gitignore integration
grep -q '"useGitignore": true' .repomix.config.json || echo "VIOLATION: Gitignore disabled"
grep -q '"useDefaultPatterns": true' .repomix.config.json || echo "VIOLATION: Default patterns disabled"
Rule 4: Exclude Patterns (CRITICAL)
Must exclude build artifacts and prevent recursion:
{
"ignore": {
"customPatterns": [
"node_modules/**",
".git/**",
"dist/**",
"build/**",
".turbo/**",
".next/**",
"coverage/**",
".repomix-output.*",
"*.log"
]
}
}
Critical exclusions:
.repomix-output.*- Prevents including previous outputs (recursion)- Build artifacts - Reduces noise and context size
- Log files - Excludes runtime logs
Validation:
# Check critical exclusions
grep -q '".repomix-output.\*"' .repomix.config.json || echo "VIOLATION: Missing .repomix-output.* exclusion"
grep -q '"node_modules/\*\*"' .repomix.config.json || echo "VIOLATION: Missing node_modules exclusion"
Rule 5: Security Check
Must enable automatic security scanning:
{
"security": {
"enableSecurityCheck": true
}
}
Validation:
# Check security enabled
grep -q '"enableSecurityCheck": true' .repomix.config.json || echo "VIOLATION: Security check disabled"
Repository Type Detection
Use /skill scope-check to determine repository type if not provided.
Validation
To validate .repomix.config.json:
- Check that file exists at repository root
- Detect repository type
- Read .repomix.config.json content
- Validate against 5 standards
- Verify include patterns match repository type
- Check .gitignore excludes
.repomix-output.* - Report violations
Validation Approach
# Check file exists
[ -f ".repomix.config.json" ] || echo "VIOLATION: Missing .repomix.config.json at root"
# Rule 1: XML output
grep -q '"style": "xml"' .repomix.config.json || echo "VIOLATION: Missing XML format"
grep -q '"compress": true' .repomix.config.json || echo "VIOLATION: Compression disabled"
# Rule 2: Include patterns (repo-specific)
# Example for Turborepo
grep -q '"apps/\*\*"' .repomix.config.json || echo "VIOLATION: Missing apps/** pattern"
# Rule 3: Gitignore integration
grep -q '"useGitignore": true' .repomix.config.json || echo "VIOLATION: Gitignore disabled"
# Rule 4: Exclude patterns
grep -q '".repomix-output.\*"' .repomix.config.json || echo "VIOLATION: Missing output exclusion"
# Rule 5: Security
grep -q '"enableSecurityCheck": true' .repomix.config.json || echo "VIOLATION: Security disabled"
# Check .gitignore
grep -q ".repomix-output.\*" .gitignore || echo "VIOLATION: .gitignore missing .repomix-output.* exclusion"
Repository Type Considerations
- Turborepo: Includes apps, packages, services
- Library: Focuses on packages and components
- Plugin Marketplace: Includes plugins and .claude-plugin
- Python: Includes tools, providers, .py files
- Shell: Includes scripts and .sh files
Best Practices
- Root only - .repomix.config.json at repository root
- Match repo type - Use appropriate include patterns
- Always exclude .repomix-output.* - Prevents recursion
- Enable compression - Critical for 70% token reduction
- Update .gitignore - Add
.repomix-output.*exclusion - Re-audit after changes - Verify compliance
- Use security check - Auto-detect sensitive data
.gitignore Integration
CRITICAL: Always add to .gitignore:
# Repomix output
.repomix-output.*
This prevents committing compressed output to version control.
Integration
This skill integrates with:
- Repository type provided via
scopeparameter. If not provided, use/skill scope-check /skill audit-workflow- Bi-directional comparison workflow/skill remediation-options- Conform/Update/Ignore choices
Didn't find tool you were looking for?