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.
git clone --depth 1 https://github.com/neXenio/bifrost-pluginWrote 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/commands/nexenio/bifrost-plugin/bifrost-candidates)<a href="https://agentmods.dev/commands/nexenio/bifrost-plugin/bifrost-candidates"><img src="https://agentmods.dev/badge/commands/nexenio/bifrost-plugin/bifrost-candidates/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/commands/nexenio/bifrost-plugin/bifrost-candidates"><img src="https://agentmods.dev/badge/commands/nexenio/bifrost-plugin/bifrost-candidates.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.00017 | $0.01223 |
| Opus 5.5 | $0.00007 | $0.00489 |
| Sonnet 5.5 | $0.00003 | $0.00245 |
| Haiku 4.5 | $0.00002 | $0.00122 |
Grade A, and why
bifrost-candidates 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 1mo 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 — 95 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/bifrost-candidates
Review the findings this project's sessions recorded, and decide which become shared team knowledge.
Candidates live in .bifrost/candidates.md in the project root (git-ignored). They are
written by the Stop hook's periodic memory check-in and are local and unreviewed —
nobody else can see them, and nothing reads them automatically. This command is that
reader.
Why this step exists
The shared corpus has no read permission model. memory_search does take filters —
wing, room, tier, agent_id, conversation_id, include_expired — but every one
of them is the caller's own retrieval narrowing, chosen per query and dropped just as
easily on the next one. Nothing a writer can set keeps an entry away from a reader. So
anything written to the corpus is recalled by every colleague immediately, as settled
team knowledge. Combined with correction machinery that exists but has never once been
used, a wrong entry is effectively permanent. Shared submission is therefore deliberate
and privacy-gated—never automatic retrieval. luca-memory v0.42 removed the collective
review workflow that once staged submissions for a vote, so a store now lands in the
corpus directly. Nothing downstream will catch a bad entry; this gate is the only one.
Procedure
1. Read the file. If .bifrost/candidates.md does not exist or holds only its
header, say so and stop — nothing has been recorded here yet.
2. Summarize. List each candidate with its date. Group near-duplicates; the same finding often gets recorded by more than one session.
3. Triage each one. For each candidate, judge:
- Still true? Check it against the current code. A finding recorded three weeks ago may already be stale, and stale is the failure mode that matters most here.
- Durable, or transient? A convention or root cause is worth keeping. "Fixed the auth test" is not.
- General, or session-specific? It must make sense to someone who was not there.
- Safe to share? No secrets, credentials, customer or personal data. Everything
promoted is recalled into colleagues' prompts and therefore sent to the model
provider — treat it as publishing to the whole company.
Run the classification check in
guidance/memory-classification.mdbefore promoting anything. First failing gate decides; when unsure, leave it in the spool.
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.
- 1mo ago First seen · 95 lines · 17 tokens per session scan A 3a96a978a85e
bifrost-candidates is a command published in the GitHub repository neXenio/bifrost-plugin (4 stars, last pushed 2d ago), licensed MIT. It adds 17 tokens to every session and 1,223 once invoked, about $0.0001 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 commands, from other repositories
recall-save
Generate / overwrite .recall/context.md with Recall's local offline summarizer.
show
Show this project's saved Recall context (.recall/context.md).
ccc-context-budget
Show how full the context window is, which components use the most of it, and when to save the session and compact. Use when the session feels slow, long or near its context limit.
updatespec
Use when a session ends with code or decisions the spec does not reflect yet, or after /ccf:check passes to mark a task done. Refreshes the CCF spec (.claude/rules + CLAUDE.md) AND system memory with what was learned this session, so future sessions start fresh and repeat fewer mistakes. Also records new tools with…
ashlr-compact
Identify stale tool results accumulating in the conversation history and surface a recompression plan.
context
Write or refresh docs/agents/project-context.md, the binding rules file executor agents load before code.