Skip to content
Agent Memory
Skill

/brain-taxonomist

Filing gate for ALL brain writes. Consulted before creating any new brain page to determine the correct path. Reads the ACTIVE schema pack via `gbrain schema show --json` — no hardcoded directory table. Also runs periodic taxonomy drift detection via `gbrain schema

From plugin
gbrain
33k80 skills

Claude Code

$ npx -y skills add garrytan/gbrain --skill brain-taxonomist --agent claude-code

SKILL.md

brain-taxonomist.SKILL.md
name: brain-taxonomist
version: 1.0.0
prompt_version: 1
description: |
  Filing gate for ALL brain writes. Consulted before creating any new
  brain page to determine the correct path. Reads the ACTIVE schema pack
  via `gbrain schema show --json` — no hardcoded directory table. Also
  runs periodic taxonomy drift detection via `gbrain schema review-orphans`.
triggers:
  - "where does this brain page go"
  - "file this in the brain"
  - "brain taxonomist"
  - "taxonomy check"
  - "refile brain page"
  - "create brain page"
  - "which directory does this go"
  - "which directory does this page go"
mutating: false

brain-taxonomist

Purpose

**Gate function:** Before creating ANY new brain page, consult this skill to determine the correct filing path. This prevents misfiling at write time rather than cleaning up drift after the fact.

**Drift function:** Periodic scan for pages that have outgrown their current location.

Contract

This skill guarantees:

  • Every new page is filed at the path determined by the ACTIVE schema pack — never against a hardcoded directory table baked into this skill.
  • The decision is reproducible: invoking brain-taxonomist twice on the same content produces the same recommended path.
  • Ambiguous cases surface to the user via `skills/ask-user/` rather than silently picking a default.
  • Per-source overrides via `--source <id>` are honored — multi-brain users (Persona B) get a different recommendation per source if their packs diverge.
  • When no matching `page_types[]` entry exists in the active pack, the skill signals to EIIRP Phase 3 (SCHEMA CHECK) rather than picking the closest-fitting fallback.

Critical: this skill reads the ACTIVE schema pack as data

`brain-taxonomist` has NO hardcoded directory table. Every decision is driven by `gbrain schema show --json`. This means:

  • A user who runs `gbrain schema use gbrain-recommended` gets the full

recommended directory set (deal, meeting, concept, project, source, daily, personal, civic, original, place, trip, conversation, writing, plus all gbrain-base types).

  • A user who authored a custom pack via `gbrain schema init` + edit gets

filing recommendations based on THEIR taxonomy, not gbrain's defaults.

  • Per-source overrides (tier 3 in the 7-tier resolution chain) are honored

when `--source <id>` is passed to brain-taxonomist.

This is the single-source-of-truth principle (D9 from the v0.39 plan-eng-review).

When to Consult (MANDATORY)

Run the taxonomist check before writing to the brain in these cases:

1. **New brain page** — any `type` (person, company, concept, book, meeting, etc.) 2. **Bulk import** — before committing a batch of new pages 3. **Uncertain filing** — when the primary subject is ambiguous

You do NOT need to consult for:

  • Updating an existing page in place (same path)
  • Appending to a Timeline section
  • Meeting entity propagation to existing pages

Decision Protocol

Step 1: Identify primary subject type

Walk these questions in order: 1. Is the primary subject a NAMED PERSON? → person-typed directory 2. Is the primary subject a NAMED ORGANIZATION? → company-typed directory 3. Is it about a TIME-BOUNDED EVENT (meeting, deal, trip)? → temporal-typed directory 4. Is it a REUSABLE MENTAL MODEL? → concept-typed directory 5. Is it RAW MEDIA (article, video, book, PDF)? → media-typed directory 6. Is it BULK SOURCE DATA? → source-typed directory 7. None of the above → consult EIIRP Phase 3 for schema-pack candidate creation.

Step 2: Look up the directory for that type in the active pack

gbrain schema show --json | jq '.page_types[] | select(.primitive == "entity")'

Each `page_types[]` entry has a `path_prefixes:` array. The first prefix is the canonical path. If multiple types match (e.g. both `person` and `founder` exist in the pack with `expert_routing: true`), prefer the more specific one (the one with the more specific path prefix).

Step 3: For books — determine sub-category

The `gbrain-recommended` pack treats books as `media/books/<category>/<slug>.md` where category is one of: psychology, philosophy, spirituality, business, media-and-society, family-and-divorce, heritage, science, fiction, biography, arts-and-design. If your active pack has a different scheme, walk it from `gbrain schema show --json` instead of hardcoding here.

Step 4: Construct the slug

  • kebab-case, descriptive
  • no author name unless disambiguation is needed
  • match the canonical path prefix exactly (no leading slash)

Step 5: Validate before writing

  • [ ] Path follows the active pack's `page_types[].path_prefixes`
  • [ ] Slug is kebab-case, descriptive
  • [ ] Frontmatter includes `type:` matching one of the pack's `page_types[].name`
  • [ ] Cross-links to related pages are included

If the active pack doesn't have a type for what you're trying to file, DON'T pick the closest-fitting one. Instead, signal to EIIRP that a new type is needed and let the schema-pack cathedral handle the proposal flow.

Integration with Other Skills

  • `eiirp` — calls this skill as Phase 2 TAXONOMY for every output in its inventory.
  • `ingest` — article/media ingestion consults brain-taxonomist for filing.
  • `repo-architecture` — delegates the filing decision to this skill.
  • `book-mirror` — after generating a mirror, files it via brain-taxonomist.

Periodic Drift Detection

# Which pages have no type matching the active pack? Counts untyped pages AND
# pages whose type the pack neither declares nor aliases (undeclared_types).
gbrain schema review-orphans --json

# Per-type audit of the stored corpus (stored_type_undeclared / stored_type_is_alias).
gbrain schema lint --with-db --json

Both commands run locally. Over MCP, the `run_doctor` report carries the same verdict as its `schema_pack_consistency` check (an undeclared type warns with code `page_type_undeclared`).

When undeclared types show up, declare them in the pack (`gbrain schema add-type <type> --p

Read more
@garrytan
Ships withgbrain

Garry's Opinionated OpenClaw/Hermes Agent Brain

Stars on GitHub

Momentum

stars in total
33.0k
Star history of garrytan/gbrain on GitHub, a chart by star-history.com

Other skills on gbrain.

brain-ingest-gate

brain-ingest-gate

Pre-write quality gate for content entering the brain. No raw copies: a bare cp/mv into the brain repo is a bug. Before any new…

@garrytan@garrytanInstall Skill
brain-link-discipline

brain-link-discipline

When you report a brain page to the user — created, edited, committed, or relayed from a subagent — a working link is part of the…

@garrytan@garrytanInstall Skill
brain-ops

brain-ops

Brain knowledge base operations. The core read/write cycle: brain-first lookup, read-enrich-write loop, source attribution,…

@garrytan@garrytanInstall Skill
concept-synthesis

concept-synthesis

Deduplicate and synthesize raw concept stubs into a tiered intellectual map (T1 Canon to T4 Riff), tracing idea evolution across…

@garrytan@garrytanInstall Skill
context-audit

context-audit

Token-hygiene audit of the always-loaded context stack — CLAUDE.md, AGENTS.md, auto-memory MEMORY.md, and the bootstrap-rendered…

@garrytan@garrytanInstall Skill
correction-pipeline

correction-pipeline

When the user corrects a factual error, root-cause it immediately. Don't just note the correction — trace the error to its…

@garrytan@garrytanInstall Skill

More skills from other plugins.

agent-cost-report

agent-cost-report

Believable agent cost report for any period, default the last 7 full days PT, not counting today. Measured tokens from Claude…

@thedotmack@thedotmackInstall Skill
bot-handoff

bot-handoff

Keep a durable record of work passed between Bots in the shared Hindsight memory bank. Use when handing work to another Bot, when…

@vectorize-io@vectorize-ioInstall Skill
mempalace

mempalace

Install, configure, and operate MemPalace, including a private local palace, a shared-brain hub, or a client joining an existing…

@mempalace@mempalaceInstall Skill
mempalace

mempalace

Install, configure, and operate MemPalace, including a private local palace, a shared-brain hub, or a client joining an existing…

@milla-jovovich@milla-jovovichInstall Skill

Questions about brain-taxonomist.

Which coding agents can use brain-taxonomist?
brain-taxonomist installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.