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/agentsys
enhance-claude-memory
Use when improving CLAUDE.md or AGENTS.md project memory files.
75debate
Structured AI debate templates and synthesis. Use when orchestrating multi-round debates between AI tools, 'debate topic', 'argue about', 'stress test idea', 'devil advocate'.
63learn
Research any topic online and create learning guides. Use when user asks to 'learn about', 'research topic', 'create learning guide', 'build knowledge base', or 'study subject'.
60consult
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.
54sync-docs
Sync documentation with code. Use when user asks to update docs, check docs, fix stale documentation, update changelog, or after code changes.
53perf-investigation-logger
Use when appending structured perf investigation notes and evidence.
51