repo-mapping
Repo Mapping Skill
Build and maintain a cached AST-based map of repository symbols and imports using ast-grep.
Parse Arguments
const args = '$ARGUMENTS'.split(' ').filter(Boolean);
const action = args.find(a => !a.startsWith('--')) || 'status';
const force = args.includes('--force');
Primary Responsibilities
- Generate map on demand (
/repo-map init) - Update map incrementally (
/repo-map update) - Check status and staleness (
/repo-map status) - Validate output with the map-validator agent
Core Data Contract
Repo map is stored in the platform state directory:
- Claude Code:
.claude/repo-map.json - OpenCode:
.opencode/repo-map.json - Codex CLI:
.codex/repo-map.json
Minimal structure:
{
"version": "1.0.0",
"generated": "2026-01-25T12:00:00Z",
"updated": "2026-01-25T12:05:00Z",
"git": { "commit": "abc123", "branch": "main" },
"project": { "languages": ["typescript", "python"] },
"stats": { "totalFiles": 142, "totalSymbols": 847 },
"files": {
"src/auth/login.ts": {
"hash": "deadbeef1234abcd",
"language": "typescript",
"symbols": { "exports": [], "functions": [], "classes": [] },
"imports": [ { "source": "./utils", "kind": "named" } ]
}
}
}
Behavior Rules
- Never run ast-grep without user approval if it is not installed
- Never install dependencies without explicit user consent
- Always validate map output with
map-validatorafter init/update - Prefer incremental update unless map is stale or history rewritten
When to Suggest Repo Map
If a user asks for drift detection, documentation alignment, or repo analysis and repo-map is missing:
Repo map not found. For better analysis, run:
/repo-map init
Staleness Signals
- Map commit not found (rebased)
- Branch changed
- Git hooks marked stale
- Commits behind HEAD
Output Expectations
Keep outputs concise:
- init/update: file count, symbol count, commit, warnings
- status: staleness, commits behind, last updated
More from avifenesh/awesome-slash
deslop
Use when user wants to clean AI slop from code. Use for cleanup, remove debug statements, find ghost code, repo hygiene.
2perf-baseline-manager
Use when managing perf baselines, consolidating results, or comparing versions. Ensures one baseline JSON per version.
2web-auth
Authenticate to websites with human-in-the-loop browser handoff. Use when user needs to log into a website, complete 2FA, or solve CAPTCHAs for agent access.
2consult
Cross-tool AI consultation. Use when user asks to 'consult gemini', 'ask codex', 'get second opinion', 'cross-check with claude', 'consult another AI', 'ask opencode', 'copilot opinion', or wants a second opinion from a different AI tool.
2enhance-docs
Use when improving documentation structure, accuracy, and RAG readiness.
2discover-tasks
Use when user asks to \"discover tasks\", \"find next task\", \"prioritize issues\", \"what should I work on\", or \"list open issues\". Discovers and ranks tasks from GitHub, GitLab, local files, and custom sources.
2