Agent consolidation 2026-05-15 — selection tree, dedup, memory wiring
What was done
Consolidated every Claude Code subagent and skill on this machine into one selection tree, removed exact duplicates, and wired every agent to the shared persistent-memory contract so they learn across projects.
Final inventory
| Bucket | Where | Count | Status |
|---|---|---|---|
| User-level agents | C:\Users\IT_Admin\.claude\agents\*.md | 10 + AGENTS_INDEX + README | Authoritative |
| Project-scoped (TaxProfessional) | d:\Vault\TaxProfessional\.claude\agents\*.md | 7 | All now pin to learning protocol |
| Plugin agents (ruflo) | ~/.claude/plugins/cache/ruflo/<plugin>/<ver>/agents/ | 5 | Managed by plugin system |
| Reference / experimental | C:\Users\IT_Admin\Desktop\My First Agent\.claude\agents\ | ~171 | Project-scoped third-party collection; not in firm-wide loop |
| Deleted duplicates | d:\Vault\DesignFirm\*.md | 5 | Stale 4-specialist firm (superseded by 8-specialist user-level) |
22 first-class agents (10 user-level + 7 project-scoped tax + 5 plugin) all share the Obsidian memory protocol.
Where the canonical artifacts live
- Master selection tree:
C:\Users\IT_Admin\.claude\agents\AGENTS_INDEX.md— symptom→agent table, tree, full catalog, skills, deprecation log - Learning protocol (every agent pins here):
d:\Vault\AI Vault\System\agents-learning-protocol.md— query/save/log/re-index 5-step loop + canonical tag table - Global pointer (loaded in every session):
C:\Users\IT_Admin\.claude\CLAUDE.mdnow has an## Agent registrysection right after Cross-agent presence - Project pointers:
D:\Projects\3dCreation\CLAUDE.md,D:\Projects\IncomeProject\CLAUDE.md,D:\Vault\TaxProfessional\CLAUDE.mdall carry a one-paragraph block surfacing AGENTS_INDEX.md
Canonical tag table (new additions for the tax cluster)
tax-research(tax-researcher)tax-strategy(tax-strategist)tax-entity(entity-tax-specialist)tax-salt(state-tax-specialist)tax-curation(tax-knowledge-curator)tax-updates(tax-update-watcher)bookkeeping(bookkeeper)
Pre-existing: marketing-firm, brand-strategy, copywriting, web-design, seo, cro, analytics, a11y, performance, windows-sysadmin.
Reusable lesson
When the same agent lives in two places (user-level and a project-local mirror), the user-level copy is almost always newer because it gets updated more often. Verify before assuming the project mirror is canonical — and prefer the user-level home so every project gets the agent for free without duplication. Project scope should be reserved for agents whose context is genuinely project-bound (the 7 tax agents qualify because they read/write TaxProfessional/... paths).
Context
- Date: 2026-05-15
- Triggered by: operator request to consolidate agents/skills, dedupe, build a selection tree, and wire persistent memory firm-wide
- Tools used: Glob, Grep, Read, Edit, Write, Bash, Obsidian Local REST API
- Outcome: all four sub-goals met
Related: agents-learning-protocol, AGENTS