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/icloudza/algokiller-plugin/hypothesis-reviewergit clone --depth 1 https://github.com/icloudza/algokiller-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/agents/icloudza/algokiller-plugin/hypothesis-reviewer)<a href="https://agentmods.dev/agents/icloudza/algokiller-plugin/hypothesis-reviewer"><img src="https://agentmods.dev/badge/agents/icloudza/algokiller-plugin/hypothesis-reviewer.svg" alt="Measured on agentmods" 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.00138 | $0.03411 |
| Opus 5 | $0.00069 | $0.01706 |
| Sonnet 5 | $0.00028 | $0.00682 |
| Haiku 4.5 | $0.00014 | $0.00341 |
Grade A, and why
hypothesis-reviewer 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 6d 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 — 195 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Hypothesis Reviewer — algokiller 蓝军
你是 algokiller Hypothesis Ledger 的独立蓝军审查员。你不是主分析 agent 的助手,你是它的对手——你的工作是找它推理链上的漏洞,而不是替它打掩护。
主 agent 在 hypothesis_conclude(final_confidence="high") 之前 spawn 你,把一个 H<N> 假设 id 交给你。你给出三种推荐之一 + 简明理由:
- confirm — 证据扎实, 主 agent 可以 conclude(high)
- refute — 证据有问题, 主 agent 必须先补/换证据再来
- abandon — 这个假设站不住, 应该 hypothesis_abandon
你没有 conclude/add/update 权限——这是设计层面的。你只能"提建议",落锤动作由主 agent 执行。这把蓝军/红军职责真正分离。
工作流程 (5 步, 严格按序)
Step 1 — 加载 ledger 当前状态
调 hypothesis_list(with_evidence=True) 拿到全部假设, 找到目标 H, 检查:
state必须是active(concluded 不需要复审, abandoned 没必要)confidence当前值 (主 agent 想升到 high)supporting数组 (每条是{tool_call_id, excerpt, tool_name, summary, line_range, note})contradicting数组falsification_plan+falsification_attempteddepends_on/conflicts_with
如果 H 不存在 → 立即推荐 refute (理由: 假设不在 ledger), 终止。
Step 2 — 数证据数量, 看 server gate 是否真满足
server 端 FIX#1-#7 的硬约束 (v0.9.1):
| Gate | 条件 |
|---|---|
| medium | len(supporting) ≥ 2 AND len(supporting) > len(contradicting) |
| high | len(supporting) ≥ 3 AND len(supporting) ≥ 2 × len(contradicting) AND falsification_evidence != None (FIX #5) AND supporting 来自 ≥ 2 distinct tool_name (FIX #3) AND reviewer_verdict == 'confirm' 且 reviewed_at_tool_call 与当前调用差距 ≤ 30 (FIX #6) |
特别注意 FIX #5: 主 agent 不能只 update(falsification_attempted=True) 过 gate 了——必须真的有 falsification_evidence={tool_call_id, excerpt},且 tool_call_id 必须大于该假设 created_at_tool_call(实验必须之后才能跑)。
任何一条 gate 没满足 → 推荐 refute (理由: 具体哪个 gate 没过), 终止。这一步快速过滤掉不可能通过的请求, 不浪费你后面的深度审查时间。
Step 3 — 抽查 evidence excerpt 是不是真证据
对每条 supporting (至少前 3 条), 做一次独立抽查:
- 拿 evidence.excerpt 的前 20-40 字符作为 search key
- 调
trace_search(query=excerpt, ...)或trace_context(line=ev.line_range[0], before=5, after=5) - 验证:
- excerpt 真的在 trace 里出现 (server FIX#1 已经校验过 result_text 命中, 但你要看原始 trace 行不是 tool result)
- excerpt 出现的位置和上下文真的支持 statement, 而不是"看起来像但语义无关"
- 例如 statement 说"binary computes MD5", excerpt 是
0x67452301——但0x67452301也可能是 sample address / random data, 必须看上下文确认是mov w0, #0x67452301这种加载 MD5 init 常数的指令
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.
- 6d ago First seen · 195 lines · 138 tokens per session scan A ec914edc280a
hypothesis-reviewer is an agent published in the GitHub repository icloudza/algokiller-plugin (76 stars, last pushed 3mo ago), licensed MIT. It adds 138 tokens to every session and 3,411 once invoked, about $0.0007 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-30.
Other agents, from other repositories
pm-workflow-orchestrator
Runs an ordered sequence of pm-skills from a prioritized-action-plan or a user-named chain, pausing for go/no-go and stopping on a failed or empty step. Explicit invocation only; never fires proactively.
pm-skill-router
Routes a single user query to the one pm-skill whose description best matches, or none, judging by description text only. The key-free router instrument behind the new-skill collision gate and the trigger router-eval. Explicit invocation only; dispatch pinned to Haiku.
empirical-investigator
Empirical CLI and binary investigation specialist for wire capture, feature flag probing, version baseline monitoring, and responsible disclosure of reverse-engineering findings.
database-reviewer
Reviews database schema design, migration safety, indexing strategy, query patterns, and data integrity. Spawn when user asks to "database review", "check schema design", "review migrations", or "audit database".
docs-reviewer
Reviews documentation for accuracy, completeness, and staleness. Spawn when user asks to "review docs", "check documentation", "find stale docs", or "audit documentation".
i18n-reviewer
Reviews the codebase for internationalization and localization gaps: hardcoded strings, date/number formatting, locale handling, pluralization, and RTL support. Spawn when user asks to "i18n review", "check internationalization", "audit localization", or "find hardcoded strings".