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 skills add jordiboehme/crystalline --skill crystalline-routinggit clone --depth 1 https://github.com/jordiboehme/crystallineWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/jordiboehme/crystalline/crystalline-routing)<a href="https://agentmods.dev/skills/jordiboehme/crystalline/crystalline-routing"><img src="https://agentmods.dev/badge/skills/jordiboehme/crystalline/crystalline-routing/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/jordiboehme/crystalline/crystalline-routing"><img src="https://agentmods.dev/badge/skills/jordiboehme/crystalline/crystalline-routing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What 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.1 | $0.00055 | $0.03412 |
| Opus 5.5 | $0.00022 | $0.01365 |
| Sonnet 5.5 | $0.00011 | $0.00682 |
| Haiku 4.5 | $0.00006 | $0.00341 |
Grade A, and why
crystalline-routing 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 8d 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.
How it starts
The opening of the file, as written. The whole thing — 160 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Crystalline Routing
Crystalline organizes what you have been taught into Domains, each with a MANIFEST.md describing its scope. Before you act on a task, know which domain(s) it lives in and search rather than guessing from memory or pre-trained knowledge.
Start from the routing block
At session start you are handed a routing block - injected as a session prompt in some harnesses, served as the MCP server's own instructions in others - with one routing line per registered domain summarizing when to use it, built from its MANIFEST.md ## When to Use bullets, plus the crystalline MCP tool names (search_engrams, write_engram and the rest) those domains route through. Treat each routing line as a targeting aid, not a complete catalog - a domain that looks unrelated at a glance may still hold the answer.
Either way, list_domains with include_routing: true re-fetches the same index mid-session. In a harness with the per-prompt hook, a prompt may arrive with a short "Knowledge that may apply" block naming engrams by crystalline:// address: read the ones that fit with read_engram (the address is the identifier), and treat the block as a head start, not as the search you would otherwise run - a topic it does not name is still searched.
A line naming a domain that "ships artifacts to provision" with no decision yet is a pending provisioning decision, not routine routing information: summarize in one sentence what the domain would ship, ask the user whether to allow it and only then apply their answer with the provision tool or crystalline provision allow <domain> / deny <domain> - never decide on the user's behalf.
Decide scope first
- Narrow - the task clearly belongs to one product, service or team, and a domain obviously owns it. Search that domain directly. A topic match without a named domain is still narrow: if the question's own words match what a routing line describes, scope to that domain rather than sweeping.
- Broad or unclear - cross-cutting questions ("how do we generally handle X"), unclear ownership, or comparisons across domains. Sweep everything first, then narrow.
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.
- 8d ago Changed · +1 lines e27532e59c5d
- 25d ago Changed · +1 lines b3247cbc7183
- 28d ago Changed · +2 lines c91ff0f152be
- 1mo ago Changed 74fa1a169cd5
- 1mo ago First seen · 156 lines · 55 tokens per session scan A aba31b50f6a0
crystalline-routing is a skill published in the GitHub repository jordiboehme/crystalline (17 stars, last pushed 2d ago), licensed MPL-2.0. It adds 55 tokens to every session and 3,412 once invoked, about $0.0002 per session on Opus 5.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 skills, from other repositories
define-jumbo-goals
Add Jumbo goals liberally to decompose objectives into finite units of work with bounded context. Use when defining new Jumbo goals from user requests, or to augment your own work to maintain scope while ensuring complementary work is registered.
refine-jumbo-goals
Use when Jumbo goals need refinement before implementation. Curates relations to project entities so the implementing agent receives optimal architectural context.
jumbo-design-goal
Pre-definition collaborative discovery. Aligns a proposed goal with project audience, pains, and value propositions; surfaces design gaps and open questions before handing off to define-jumbo-goals.
codify-jumbo-goal
Use when a Jumbo goal has been approved by QA review and needs architectural reconciliation before closing. Captures new learnings, updates stale entities, and ensures documentation reflects the work performed.
start-jumbo-goal
Use when starting a Jumbo goal. Loads goal context, scope, and architectural constraints, then guides the agent through disciplined execution within defined boundaries.
review-jumbo-goal
Use when a Jumbo goal needs QA review after implementation. Runs the review protocol, verifies every objective, criterion, and related entity constraint, and approves the goal for codification or rejects it with feedback.