Codebase Knowledge - Domain Mapping System
Purpose
This skill provides cached knowledge about project domains:
- •Maps files by domain/feature area
- •Tracks connections between components
- •Records recent commits per area
- •Caches architecture decisions
How It Works
Domain Files Location
code
.claude/skills/codebase-knowledge/domains/ ├── [domain-name].md # One file per domain └── ...
Domain File Template
markdown
# [Domain Name] ## Last Update - **Date:** YYYY-MM-DD - **Commit:** [hash] ## Files ### Frontend - `app/[path]/page.tsx` - Description - `components/[path]/*.tsx` - Description ### Backend - `server/trpc/routers/[name].router.ts` - Router - `server/db/models/[name].model.ts` - Model ### Types/Schemas - `lib/validators/[name].ts` - Zod schemas ## Connections - **[other-domain]:** How they connect ## Recent Commits | Hash | Date | Description | | ------ | ---------- | ----------------- | | abc123 | YYYY-MM-DD | feat: description | ## Attention Points - [Special rules, gotchas, etc]
Workflow
BEFORE Implementation
- •Identify which domain is affected
- •Read
domains/[domain].mdfile - •Check affected files listed
- •Verify recent commits for context
- •Note connections with other domains
AFTER Implementation
- •Update the domain file
- •Add new commit to "Recent Commits"
- •Add/remove files if changed
- •Update connections if affected
Commands
Check Recent Commits by Domain
bash
git log --oneline -10 -- [list of domain files]
Check Uncommitted Changes
bash
git diff --name-status main..HEAD
Create New Domain File
bash
# Copy template cp .claude/skills/codebase-knowledge/TEMPLATE.md .claude/skills/codebase-knowledge/domains/[name].md
Rules
MANDATORY
- •READ domain before implementing - Always check cached knowledge
- •UPDATE after implementing - Keep cache current
- •VERIFY connections - Changes may affect other domains
- •RECORD commits - Maintain history
FORBIDDEN
- •Ignore cached knowledge - It exists to accelerate development
- •Leave outdated - Old docs are worse than none
- •Modify without recording - Every commit should be noted
Integration with Agents
The analyzer agent MUST use this skill:
- •Check which domain is affected
- •Read domain file for context
- •Report affected files and connections
- •Update domain after implementation
Version
- •v2.0.0 - Generic template (no project-specific domains)