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/watt-mind/factory/merge-plangit clone --depth 1 https://github.com/watt-mind/factoryWrote 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/watt-mind/factory/merge-plan)<a href="https://agentmods.dev/agents/watt-mind/factory/merge-plan"><img src="https://agentmods.dev/badge/agents/watt-mind/factory/merge-plan.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 | $0.00000 | $0.00294 |
| Opus 5 | $0.00000 | $0.00147 |
| Sonnet 5 | $0.00000 | $0.00059 |
| Haiku 4.5 | $0.00000 | $0.00029 |
Grade A, and why
merge-plan 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 3d 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.
What it actually says
merge-plan — deterministic batch planner
This is a closed action definition, not a model prompt. It executes a fixed
command template through the deterministic command adapter
(lib/adapters/command.mjs). No model runs.
bun {factoryRoot}/event-runtime/lib/merge-reviews.mjs plan
The command reads ./input.json and writes ./result.json. It lists live
open, non-draft, base-targeting PRs, looks each (github, pr, headSha, baseSha)
up in the merge_reviews ledger, and keeps only MERGE-verdict hits whose live
head is still MERGEABLE, required CI is green (merge-ci-proof.mjs), and
neither GitHub nor Linear holds an escalation/security/Blocked flag. Those
candidates are ordered by PR number and truncated to policy.merge.batch_size
(default 4). Zero candidates is a NOOP with reason.
Never modify the checkout, GitHub, or Linear. Write only ./result.json in
the workspace root.
Result envelope
./result.json is always a factory.agent-result/v1 wrapper. On a completed
plan, put the factory.merge-plan/v2 artifact under artifact. A nonempty
plan[] chains one factory.merge-apply.requested. An empty plan[] is a
NOOP and emits nothing.
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.
- 3d ago First seen · 28 lines · 0 tokens per session scan A 389fd24bae2b
merge-plan is an agent published in the GitHub repository watt-mind/factory (10 stars, last pushed 3d ago), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 294 tokens. 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 agents, from other repositories
ap-execharness-resolver
L3 executor - EXECHARNESS RESOLVE. Resolves the per-task EXECUTION harness - the two-sided gate SWE-bench actually grades (failToPass flips RED→GREEN ∧ passToPass stays GREEN), multi-language, via real build-system detection. Ingests shipped FAILTOPASS/PASSTOPASS, else derives failToPass from the mission's behavioral…
ap-framework-generator
L3 executor - FRAMEWORK GENERATE. When the SELECTOR returns MISS, generates a one-off custom framework for the exact task shape - classifies the orthogonal axes, composes the gate sequence from the GATE-LIBRARY with the correct axis-specific gate, emits the gen- leaf with the BLOCKED invariant verbatim, binds an…
ap-juror
L4 terminal leaf - G7 SIGN-OFF. One independent sign-off panel seat that saw none of the intermediate work. Binary PASS/FAIL on opened evidence; default-FAIL. A FAIL naming a P0/P1 blocker is NOT arbitrable into PASS.
ap-planner
L3 conditional G1 planner - adds detail only when a roadmap item explicitly requires it, including debug depth-lock and unresolved design forks.
ap-re-anchor
L4 terminal leaf - RE-ANCHOR. Confirms mission and roadmap frontier alignment after resume or compaction using the three-file governance state.
ap-verifier
L3 independent G6 verifier - proves behavior with real before/after runs, regression checks, adversarial inputs, and >=95% changed-line coverage.