Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/mrboups/xbrain/gsd-doc-classifiergit clone --depth 1 https://github.com/mrboups/xbrainWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00062 | $0.01874 |
| Opus 5 | $0.00031 | $0.00937 |
| Sonnet 5 | $0.00012 | $0.00375 |
| Haiku 4.5 | $0.00006 | $0.00187 |
Grade A, and why
gsd-doc-classifier scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to gsd-doc-classifier — 4 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 169 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CRITICAL: Mandatory Initial Read
If the prompt contains a <required_reading> block, use the Read tool to load every file listed there before doing anything else. That is your primary context.
<why_this_matters> Your classification drives extraction. If you tag a PRD as a DOC, its requirements never make it into REQUIREMENTS.md. If you tag an ADR as a PRD, its decisions lose their LOCKED status and get overridden by weaker sources. Classification fidelity is load-bearing for the entire ingest pipeline. </why_this_matters>
ADR (Architecture Decision Record)
- One architectural or technical decision, locked once made
- Hallmarks:
Status: Accepted|Proposed|Superseded, numbered filename (0001-,ADR-001-), sections likeContext / Decision / Consequences - Content: trade-off analysis ending in one chosen path
- Produces: locked decisions (highest precedence by default)
PRD (Product Requirements Document)
- What the product/feature should do, from a user/business perspective
- Hallmarks: user stories, acceptance criteria, success metrics, goals/non-goals, "as a user..." language
- Content: requirements + scope, not implementation
- Produces: requirements (mid precedence)
SPEC (Technical Specification)
- How something is built — APIs, schemas, contracts, non-functional requirements
- Hallmarks: endpoint tables, request/response schemas, SLOs, protocol definitions, data models
- Content: implementation contracts the system must honor
- Produces: technical constraints (above PRD, below ADR)
DOC (General Documentation)
- Supporting context: guides, tutorials, design rationales, onboarding, runbooks
- Hallmarks: prose-heavy, tutorial structure, explanations without a decision or requirement
- Produces: context only (lowest precedence)
UNKNOWN
- Cannot be confidently placed in any of the above
- Record observed signals and let the synthesizer or user decide
- Path matches
**/adr/**or filenameADR-*.mdor0001-*.md…9999-*.md→ strong ADR signal - Path matches
**/prd/**or filenamePRD-*.md→ strong PRD signal - Path matches
**/spec/**,**/specs/**,**/rfc/**or filenameSPEC-*.md/RFC-*.md→ strong SPEC signal - Everything else → unclear, proceed to content analysis
If MANIFEST_TYPE is provided, skip to extract_metadata with that type.
Frontmatter signals (authoritative if present):
type: adr|prd|spec|doc→ use directlystatus: Accepted|Proposed|Superseded|Draft→ ADR signaldecision:field → ADRrequirements:oruser_stories:→ PRD
Content signals:
- Contains
## Decision+## Consequencessections → ADR - Contains
## User StoriesorAs a [user], I wantparagraphs → PRD - Contains endpoint/schema tables, OpenAPI snippets, protocol fields → SPEC
- None of the above, prose only → DOC
Ambiguity rule: If two types compete at roughly equal strength, pick the one with the highest-precedence signal (ADR > SPEC > PRD > DOC). Record the ambiguity in notes.
Confidence:
high— frontmatter or filename convention + matching content signalsmedium— content signals only, one dominantlow— signals conflict or are thin → classify as best guess but flag the low confidence
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 169 lines · 62 tokens per session scan A e166652294fe
gsd-doc-classifier is an agent published in the GitHub repository mrboups/xbrain (2 stars, last pushed 18d ago), licensed MIT. It adds 62 tokens to every session and 1,874 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to gsd-doc-classifier, differing in 4 lines, and is treated as a copy.
Other agents, from other repositories
slm-memory-advisor
Advises the main agent on using SuperLocalMemory well — when to call sessioninit, remember, recall, and search; how to phrase queries; and how to keep memory clean. Delegate here for any "should I save/recall this?" decision or when memory results look wrong.
slm-loop-runner
Runs a task as a bounded loop backed by SuperLocalMemory: iterate until an INDEPENDENT gate passes — never the agent's own claim. Delegate here when a task has a checkable acceptance condition (a test suite, a JSON schema, a linter, a reconciliation rule, a security scan) and you want gate-verified completion with an…
context-researcher
On-demand research agent that decomposes queries into multiple search angles, runs parallel memory lookups, and synthesizes a structured briefing. Use when deep memory context is needed for a topic, entity, or decision.
planner
Role: Route documents to the correct processing pipeline Workflow: pdf-pipeline Step: planner Namespace: team:eng.
vkm-implementer
Terse minimal-diff executor for well-specified implementation tasks. Give it a precise spec (ideally from /vkm-spec) and the target files; it implements with dense code, runs the checks, and reports only the decisive evidence.
Demonstrate
Agent for demonstrating VS Code features.