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 yongjip/mergetrain --skill candidategit clone --depth 1 https://github.com/yongjip/mergetrainWrote 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/yongjip/mergetrain/candidate)<a href="https://agentmods.dev/skills/yongjip/mergetrain/candidate"><img src="https://agentmods.dev/badge/skills/yongjip/mergetrain/candidate.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.00060 | $0.00587 |
| Opus 5 | $0.00030 | $0.00293 |
| Sonnet 5 | $0.00012 | $0.00117 |
| Haiku 4.5 | $0.00006 | $0.00059 |
Grade A, and why
mergetrain 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.
This is a copy
88% identical to mergetrain — 8 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 46 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Integrate parallel coding-agent branches
Purpose: Serialize committed local task branches through one merge/test/push/verify runner.
Rules
- Work on a task-specific branch and worktree.
- Commit a clean HEAD before handing work off.
- Read mergetrain status --json and follow its next action before changing queue state.
- Enqueue every named finished branch in the requested order using only its task and branch; mergetrain resolves the worktree and captures the exact commits. Stop after the last successful enqueue unless the user explicitly authorized validation or the complete validation-and-deployment workflow.
- Never push configured integration refs directly. One authorized runner owns validation and deployment; recovery and destructive actions require their stated approval.
Safety boundary
- A task agent enqueues every named finished branch, then stops. "Queue for validation" authorizes enqueue only; only an explicit request to run validation or the complete end-to-end workflow authorizes
validate. - Only a separately authorized runner uses
deployor a daemon. - Deployment requires either confirmation of the human-readable exact plan or prior bounded unattended approval. Agents never select train IDs or supply plan hashes; structured evidence may include identifiers for inspection.
- Unattended approval is bound to the exact destination and execution policy. Any change blocks before push.
- Recovery and destructive cleanup require their stated approval. Follow
status.next_action; never rewrite permanent deploy audit refs.
Stable machine contract
- Every JSON payload carries
contract_version; ignore unknown keys and fail closed on unknown safety actions. deploymeans the atomic Git ref update plus configured verification. A downstream provider release is separate.
Use the plugin's MCP tools when they are available. Start with
mergetrain_status; its next action is guidance, not deployment authority.
Routine task agents call mergetrain_enqueue for every named committed, clean
branch in order and stop after the last successful handoff.
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 · 46 lines · 60 tokens per session scan A 0e6d64df7287
mergetrain is a skill published in the GitHub repository yongjip/mergetrain (3 stars, last pushed 2d ago), licensed MIT. It adds 60 tokens to every session and 587 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 88% identical to mergetrain, differing in 8 lines, and is treated as a copy.
Other skills, from other repositories
subagent-driven-branch-ref-froze-stranded-commits
Diagnose and recover from "PR merged, but half my work is missing from main" cases in superpowers:subagent-driven-development (or similar one-fresh-subagent-per-task) sessions, where committed work survives in the worktree's HEAD chain but never makes it into the pushed branch ref. Use when ANY of these appears: (1)…
git-add-u-after-async-post-commit-hook
Prevent (and recover from) git add -u + git commit --amend + git push --force-with-lease catastrophically rolling thousands of unrelated tracked-file deletions into an amended commit when the project has an async post-commit hook that mutates tracked files (e.g. regenerates docs/site/.html, docs/site/index.html…
async-post-commit-hook-commit-orphaned-by-squash-merge
In a repo with an ASYNC/background post-commit hook (one that fires after a commit and creates its OWN follow-up commit — [auto-docs] …, a docs/site regen, a changelog/checkbox tick), the hook's commit can land LOCAL-ONLY after your git push already captured just your work commit, so it is never in the PR and gets…
working-tree-edits-stranded-on-squash-merge
Diagnose and prevent "I made the fix but it's not on main" cases where the fix was applied in the working tree via Edit / Write but never git added before the squash-merge. Use when: (1) you squash-merged a PR and the user reports the issue is back, (2) git status after the merge shows uncommitted changes for files…
sidecar
Use the sidecarsync CLI to read, update, and synchronize Sidecar notes or state in repos with .sidecar configurations. Covers peer selection, standalone repos, per-file rules, and fork recovery.
git-amend-hits-async-post-commit-hook-commit
Use when a git commit --amend silently rewrites the WRONG commit in a repo that has an async/background post-commit hook. Trigger: after a normal commit, git log shows an unexpected extra commit on top that a background hook created ([auto-docs] ..., a docs/site regen, a changelog/checkbox tick) — and a later --amend…