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 feniix/pi-extensions --skill mergegit clone --depth 1 https://github.com/feniix/pi-extensionsWrote 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/feniix/pi-extensions/merge)<a href="https://agentmods.dev/skills/feniix/pi-extensions/merge"><img src="https://agentmods.dev/badge/skills/feniix/pi-extensions/merge/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/skills/feniix/pi-extensions/merge"><img src="https://agentmods.dev/badge/skills/feniix/pi-extensions/merge.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Anti-Refusal · line 34 Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.Fix: Remove instructions that suppress warnings, disclaimers, or ethical commentary. Let the agent surface safety-relevant caveats to the user.
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.00052 | $0.01055 |
| Opus 5 | $0.00026 | $0.00528 |
| Sonnet 5 | $0.00010 | $0.00211 |
| Haiku 4.5 | $0.00005 | $0.00105 |
Grade A, and why
merge 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 9d 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 — 106 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Merge PR Workflow
Merge or squash-merge a pull request and optionally request best-effort source-branch cleanup.
Tool Restrictions (Critical)
Use ONLY these tools:
devtools_check_ci- Check CI status before mergingdevtools_merge_pr- Standard merge (merge commit)devtools_squash_merge_pr- Squash mergedevtools_get_repo_info- Get current PR info
Process
Step 1: Identify the PR
If user provides PR number, use it. Otherwise:
- Call
devtools_get_repo_infoto get current branch - Find PR for current branch via
gh pr list
Step 2: Check CI Status
Important: Always check CI before merging.
Call devtools_check_ci:
- If checks are failing or pending: warn the user and ask whether to proceed or wait
- If checks are passing: continue
- If no CI checks exist for the PR: continue without warning or additional confirmation
Step 3: Merge PR
Ask user for merge strategy:
- Merge commit (
devtools_merge_pr): Preserves all commit history - Squash merge (
devtools_squash_merge_pr): Combines all commits into one
Default: Squash merge (cleaner history).
Call the appropriate tool with:
prNumber: The PR number (or detect from current branch)deleteBranch: true to request best-effort remote and local cleanupsquash: true for squash merge
Step 4: Report Merge and Cleanup
Branch first on mergeStatus before interpreting any cleanup fields:
- When
mergeStatusispending, the merge is queued or auto-merge is pending. Explicitly report that it is pending and that cleanup was skipped; do not report the PR as merged or describe cleanup as incomplete after a successful merge. - When
mergeStatusisunknown, the merge command was accepted but its result could not be confirmed. Report the uncertainty and skipped cleanup, and do not retry the merge automatically. - Only when
mergeStatusismerged, report the successful merge and then inspectremoteCleanupandlocalCleanupseparately.remoteCleanupreports whether the remote head ref was deleted, skipped, or failed.localCleanupreports whether the local branch was deleted, retained by one or more worktrees, skipped, or failed. When it isretained, report each retaining worktree path and state. UsecleanupCompleteto summarize whether all requested cleanup completed.
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.
- 9d ago First seen · 106 lines · 52 tokens per session scan A f8ad743b2be3
merge is a skill published in the GitHub repository feniix/pi-extensions (23 stars, last pushed 5d ago), licensed MIT. It adds 52 tokens to every session and 1,055 once invoked, about $0.0003 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 skills, from other repositories
pi-package-sandbox-test
Use when verifying that published Pi packages install and load for normal users, including pi.dev package compatibility checks, release validation, Daytona sandbox tests, and package installability audits.
agentplane-release-and-packaging-operator
Use when preparing, validating, publishing, auditing, or recovering an Agentplane release, especially package build ordering, version parity, npm/GitHub/GHCR/external distribution publication, public install smoke tests, hosted publish evidence, or release CI failures.
agentplane-task-closure-recovery
Use when Agentplane task completion, direct finish, branchpr integration, hosted-close, close-tail PRs, PR metadata, dirty task artifacts, or remote branch divergence need diagnosis or recovery.
coding-agents-farm
To orchestrate parallel coding-agent farms (Claude, Codex, Copilot, Gemini, etc.) on isolated git worktrees.
pi-release-workflow
Use when preparing or validating Pi monorepo releases, including Changesets, pnpm lockfile updates, package previews, release-age policy, and installability checks.
pi-review-gated-delivery
Use when coordinating review-gated delivery of discrete GitHub issues between one implementation peer and a review-only lead, with user-owned Changesets and approval-gated commits.