Skills

Skills are project-specific rules that shape what agents build. They start as templates with universal defaults, get enriched with your project's conventions during setup, and grow as you add rules or promote verification findings.

Reading time · 7 minLast reviewed · 2026-05-25

What Anatomia adds

You've used Claude Code skills. Anatomia generates them from your scan — matched to your stack, pre-populated with rules and gotchas, and structured so agents load them automatically. Five core skills install for every project. Up to three conditional skills install when the scan detects their triggers.

Four-section structure

Every skill file has the same four sections:

  1. Detected — machine-populated during ana init from scan data. Framework versions, patterns found, config paths.
  2. Rules — the actionable constraints. Each rule is a concise directive. Agents follow these during build and verify.
  3. Gotchas — stack-specific traps. Populated from the gotcha library when triggers match on fresh init.
  4. Examples — short code snippets showing the right way. Added from development and debugging sessions.

Ownership model

Detected is machine-owned — refreshed on every ana init with current scan data. Rules, Gotchas, and Examples are yours — preserved across re-initialization. Your edits are safe. ana init will never overwrite a rule you added or a gotcha you customized.

You can also create entirely new skills. Add a directory to .claude/skills/ with a SKILL.md — any skill without an ENRICHMENT.md is treated as user-created. Learn won't auto-enrich it, but agents can load it via frontmatter.

How skills grow

Init scaffolding. Template rules ship on ana init. Universal, correct for any project, but not specific to yours. coding-standards starts with 7 rules. testing-standards starts with 5.

Setup enrichment. Running claude --agent ana-setup investigates your actual codebase and adds project-specific rules. Each skill ships with an ENRICHMENT.md — the setup agent's investigation playbook for that skill. In Anatomia's own repo, setup took coding-standards from 7 template rules to 11 enriched rules.

Manual editing. Skills are your files. Add rules, add gotchas, add examples. The files are markdown — edit them directly or let an agent help. Custom skills work the same way.

Finding promotion. When a verification finding describes a pattern worth encoding permanently, ana proof promote turns it into a skill rule. The finding becomes a constraint that shapes every future build.

How agents use skills

Plan and Verify always load coding-standards and testing-standards. Build always loads git-workflow. Other skills are loaded on demand when the work requires them — Ana loads any skill when the conversation calls for it, and Build can invoke skills manually if the spec doesn't cover a situation.

The key mechanism: Plan curates the relevant rules from your skill files into a Build Brief at the end of the spec, filtered to what matters for this specific change. Build reads the Brief first. A rule you add to coding-standards reaches the next build automatically — Plan picks it up and passes it through.

All skills

SkillDescriptionTemplate rulesType
coding-standardsNaming conventions, error handling, type safety, import style.7Core
testing-standardsBehavior over implementation, real over mocks, never weaken tests.5Core
git-workflowCommit discipline, staging practices, descriptive messages.3Core
api-patternsValidate at boundary, consistent errors, thin handlers.4Conditional
data-accessSingleton client, transactions, no N+1, IDOR prevention.5Conditional
ai-patternsCentralized client, no prompt injection, structured output, observability.7Conditional
deploymentPlatform-specific. Populated by setup based on detected platform.0Core
troubleshootingGrows from real debugging sessions. Empty scaffold at init.0Core

Conditional matching

Core skills install for every project. Conditional skills only install when the scan detects their triggers: ai-patterns installs when an AI SDK is detected, data-access when a database ORM is found, and api-patterns when a web framework (not a CLI framework) is detected.

The gotcha library

15 pre-curated gotchas ship with Anatomia. Each matches when all trigger conditions are satisfied — compound triggers prevent irrelevant advice.

typescript
{
  id: 'prisma-serverless-singleton',
  triggers: { database: 'Prisma', platform: 'Vercel' },
  skill: 'data-access',
  text: 'Prisma in serverless (Vercel, Lambda) exhausts connection
         pools fast. Export a singleton from lib/prisma.ts with
         global caching: globalThis.prisma ??= new PrismaClient().'
}