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 commands/intentdriven/abcd/ingestgit clone --depth 1 https://github.com/intentdriven/abcdWhat 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.00092 | $0.01045 |
| Opus 5 | $0.00046 | $0.00522 |
| Sonnet 5 | $0.00018 | $0.00209 |
| Haiku 4.5 | $0.00009 | $0.00104 |
Grade A, and why
ingest 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 yesterday.
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.
How it starts
The opening of the file, as written. The whole thing — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Ingest a source
Register a URL or local document in the corpus at ~/.abcd/sources/. The
script does the deterministic half (fetch, convert, store, guard); you do the
judgment half (clean metadata, real keywords, confidentiality, quality check).
Corpus contract: ~/.abcd/sources/README.md. The confidentiality hard rule
from /abcd:consult applies here in full. If the corpus is absent, say so and
stop — this command never creates it.
1. Read the document first
- URL: WebFetch it (metadata + a skim of the content). A local fetch for storage happens in step 3 regardless — WebFetch is for your judgment only.
- Local file: Read it (PDFs via the Read tool; big files: first pages suffice).
Extract: exact title (no site suffixes), authors (each as Family, Given),
publication year, venue, canonical URL. Map the type to CSL: article-journal
(papers), webpage (posts/docs), book, report (white papers, internal
docs), motion_picture (video).
2. Decide class and key
- Class. Web content is
publicby default. Signals for--confidential: the user says so; it is their own unpublished/submitted work; internal or NDA material; AI-generated content (never citable); a private repo's documentation. When confidential, ask the user for every identifying name variant (--aliases— repo names, codenames, domains) and pick--permission:no-public-citation,internal-never-cite,ai-generated-never-cite, orask-author. - Titles of confidential entries become banned phrases (whole title, whitespace-flexible). For internal artifacts whose natural title reads like normal prose, register a distinctive title instead — e.g. "meeting-notes-2026-07 (internal)" — so the ban cannot trip on legitimate text.
- Key:
<authorfamily><year><distinctiveword>, lowercase ASCII (e.g.naur1985theory). Check uniqueness:jq -r '.[].id' ~/.abcd/sources/sources.json.
3. Register
~/.abcd/sources/bin/add-source --key <key> --title "<title>" \
--type <csl-type> [--author "Family, Given"]... [--year YYYY] \
--keywords "<k1, k2, ...>" [--aliases "a,b"] [--confidential] \
[--permission <status>] [--url <url>] [file]
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.
- yesterday First seen · 81 lines · 92 tokens per session scan A e6a787ad8e2f
ingest is a command published in the GitHub repository intentdriven/abcd (3 stars, last pushed 2d ago), licensed MIT. It adds 92 tokens to every session and 1,045 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
legal
Primary entry point for all BetterCallClaude requests — classifies intent, resolves jurisdiction (via swiss-legal-research), runs inline briefing for complexity 4–6, activates full briefing session when complexity ≥ 7 (via legal-intake skill), and routes to specialist agents or workflow pipelines. Invoked explicitly…
briefing
Structured pre-execution briefing session -- collects case context through specialist panel, builds execution plan, supports resume and depth control.
help
Show complete BetterCallClaude command reference, available agents, skills, and usage examples.
legal-5step
Execute the BetterCallClaude 5-step Swiss legal framework: intake → research → strategy → adversarial → draft. A complete end-to-end pipeline for any Swiss legal matter, from document analysis through final legal output.
legal-loop
Iterate a worker-evaluator cycle against a Goal Record until the success condition is met or a stop limit is reached. The evaluator (a different agent than the worker) judges each iteration using MCP verification tools. Produces an auditable verdict trail and a final MET / NOT MET status.
workflow
Define and execute multi-agent legal workflows -- due diligence, litigation prep, contract lifecycle, real estate closing.