tmb_push-gate

tmb_push-gate is a skill for Claude Code from trustmybot/plugin. It costs 59 tokens per session (951 once invoked), scanned A, original, MIT.

A push-check process that coordinates review of each task before pushing commits and creating a pull request.

In plain words
What is it for?
Use it to start reviewers, check changes against their specifications, assess their fit with the wider system, and complete push, pull-request, and cleanup steps after approval.
Why use it?
It prevents unsigned or insufficiently reviewed changes from reaching the shared repository.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: names the AskUserQuestion tool.

Part of the tmb plugin — 13 skills, 6 commands, 7 agents, 8 hooks, 1 MCP server shipped together

Good fit Use it to start reviewers, check changes against their specifications, assess their fit with the wider system, and complete push, pull-request, and cleanup steps after approval.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/trustmybot/plugin/tmb_push-gate
Install

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.

Any agent
npx skills add trustmybot/plugin --skill tmb_push-gate
Clone the repo
git clone --depth 1 https://github.com/trustmybot/plugin

Made for: Claude Code.

Or install tmb, the plugin that ships this one along with the rest of its 13 skills, 6 commands, 7 agents, 8 hooks, 1 MCP server.

Wrote 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.

agentmods badge for tmb_push-gate

README.md
[![agentmods](https://agentmods.dev/badge/skills/trustmybot/plugin/tmb_push-gate/github.svg)](https://agentmods.dev/skills/trustmybot/plugin/tmb_push-gate)
Your own site
<a href="https://agentmods.dev/skills/trustmybot/plugin/tmb_push-gate"><img src="https://agentmods.dev/badge/skills/trustmybot/plugin/tmb_push-gate/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.

agentmods 80×15 button for tmb_push-gate

Your own site · 80×15
<a href="https://agentmods.dev/skills/trustmybot/plugin/tmb_push-gate"><img src="https://agentmods.dev/badge/skills/trustmybot/plugin/tmb_push-gate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 59 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 951 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00059 $0.00951
Opus 5.5 $0.00024 $0.00380
Sonnet 5.5 $0.00012 $0.00190
Haiku 4.5 $0.00006 $0.00095

Measured 4d ago against content hash b579664dc9f5, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

tmb_push-gate 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 4d 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.

skills/tmb_push-gate/SKILL.md · 53 lines

How it starts

The opening of the file, as written. The whole thing — 53 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Push-gate orchestration

pr-reviewer judges each diff against its own spec; you judge the change at the system level — does it fit the architecture, disturb a cross-cutting surface (agents, schema, hooks, public API), and is the overall scope right?

A. Spawning pr-reviewer

The verdict row is always authored by pr-reviewer itself — via validation_record when MCP is available, via the fallback script otherwise (pr-reviewer's tmb_review owns that fallback).

Clean spawn prompt example:

task_id=42 commit_sha=abc123def branch_id=fix/foo repo=plugin repo_path=<repo path> attempt_n=<attempt #> subagent_session_id=<spawned reviewer session id>

Push-gate review. Load the brief, verify each Success Criterion against the diff, and record your verdict — fail if any check fails.

No-MCP fallback (Bash-only spawn, no mcp__... tools in the reviewer's tool list): just spawn pr-reviewer as above. The reviewer writes its own verdict through tmb_review's fallback script, which records mcp_available = 0 on the row; you do not hand it a DB-access pointer.

B. Push-gate orchestration (loaded reactively)

This loads when the push guard blocks unsigned commits, or when the Human asks to review before pushing.

Reap commits → local feature branch

worktree_commits_fetch fetches each unsigned task's detached HEAD into the main checkout and reports per task whether the fetch landed.

Spawn pr-reviewer per unsigned task (parallel)

Use subagent_type='pr-reviewer' (no-namespace form resolves project-local override). Tasks are independent; spawn in parallel where possible.

Each Agent call carries effort equal to the configured reviewer_effort (default high); the spawn gate denies a mismatch. The reviewer's job is catching fail-open misses, so it is the one place lower effort costs more than it saves.

Read the full file on GitHub · 53 lines

Changes

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.

  1. 4d ago Changed · +2 lines b579664dc9f5
  2. 5d ago Changed · +1 lines 490bb42369c8
  3. 6d ago Changed · +2 lines dc302bb6289e
  4. 12d ago Changed d1f79bf092af
  5. 1mo ago First seen · 48 lines · 59 tokens per session scan A 763d56447b06

Subscribe to this mod's changes

tmb_push-gate is a skill published in the GitHub repository trustmybot/plugin (6 stars, last pushed 3d ago), licensed MIT. It adds 59 tokens to every session and 951 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.

Related

Other skills, from other repositories

subagent-reports-complete-but-pr-unmerged

Catch the systematic gap between sub-agent "completed" status and the actual end state of a PR-merge orchestration task. Use when: (1) you've dispatched multiple parallel sub-agents (general-purpose or specialist) to open + review + merge PRs, (2) the parent receives with status: completed but the sub-agent's last…

wan-huiyan/agent-traffic-control · 372 tokens

release

Cut a brooks-lint release: set the version in package.json, propagate it across all four plugin manifests and every version-bearing text file (README badges, docs site metadata), write the CHANGELOG entry, validate, then commit, push, tag, and publish the GitHub release. Triggers when the maintainer asks to "release"…

hyhmrright/brooks-lint · 135 tokens

han-release

Cut a Han release: update CHANGELOG.md with the changes since the last release, bump and tag every plugin that changed as {plugin-name}--v{version} so a version-constrained dependency can resolve, and publish a GitHub release crediting every merged pull request and closed issue to the people behind it. Use when…

testdouble/han · 172 tokens

deploy-landed

A deployment verification procedure that checks whether the intended code revision is actually running, its environment settings are present, and the product works. A deployment is the process of putting new software on a server or hosting platform.

avelikiy/great_cto · 103 tokens

signing-preflight

Before the first commit of a session, check that commit signing will work — the key is loaded and unlocked — and ask the operator to unlock it once, up front, instead of discovering it after a hundred unsigned commits. Never disables signing silently, never re-signs history without asking. Use at the start of…

avelikiy/great_cto · 105 tokens

pre-release-review

Run the pre-release gate for this multi-plugin monorepo: establish each plugin's release boundary from its last reachable tag to HEAD, audit every changed plugin's [Unreleased] changelog against the actual code diff, identify contract-surface and breaking changes, and, per the objective the user picks up front, either…

gtapps/hermitd · 188 tokens