Borrowing it
Nothing to install: this file belongs to xsovad06/sova. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/xsovad06/sova/main/.agents/skills/sova-after-merge/SKILL.mdgit clone --depth 1 https://github.com/xsovad06/sovaWrote 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/xsovad06/sova/sova-after-merge)<a href="https://agentmods.dev/skills/xsovad06/sova/sova-after-merge"><img src="https://agentmods.dev/badge/skills/xsovad06/sova/sova-after-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/xsovad06/sova/sova-after-merge"><img src="https://agentmods.dev/badge/skills/xsovad06/sova/sova-after-merge.svg" alt="Reviewed on agentmods" width="80" 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.00032 | $0.00916 |
| Opus 5.5 | $0.00013 | $0.00366 |
| Sonnet 5.5 | $0.00006 | $0.00183 |
| Haiku 4.5 | $0.00003 | $0.00092 |
Grade A, and why
sova-after-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 14d 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 — 74 lines — stays where its author put it; the contents beside it link to each section on GitHub.
After Merge Cleanup
The sova-integrate-pr skill is the preferred path (it merges, audits and cleans up in one run); this command is kept for PRs merged outside it.
Run this after a PR has been merged to clean up local state and capture learnings.
Instructions
Each shell block below runs as its own shell invocation, so each one assigns every variable it reads.
-
Get the PR from
the arguments provided when this skill is invoked(PR number or branch name). If empty, check for recently merged PRs:gh pr list --author @me --state merged --limit 5 -
Switch to the base branch and pull (from the primary checkout, not a worktree):
BASE=$(gh pr view <PR_NUMBER> --json baseRefName --jq .baseRefName) git checkout "$BASE" git pull origin "$BASE" -
Clean up worktrees (if any exist for this ticket). Do this before deleting the branch: git refuses to delete a branch that a worktree still has checked out.
git worktree listRemove worktrees for the merged ticket. Do not pass
--force: if a worktree has uncommitted changes, leave it in place and report it rather than discarding the work.git worktree remove .claude/worktrees/<ID>Prune dangling worktree references (directories removed but entries remain):
git worktree prune -
Delete the merged branch locally:
git branch -d <branch-name>If
-drefuses ("not fully merged", expected after a rebase merge), confirmBASE=$(gh pr view <PR_NUMBER> --json baseRefName --jq .baseRefName); git diff "origin/$BASE" <branch-name>prints nothing, thengit branch -D <branch-name>. If the diff is non-empty only because the base branch moved on after the merge, compare against the PR's merge commit instead (gh pr view <PR_NUMBER> --json mergeCommit --jq .mergeCommit.oid); if that is not empty either, keep the branch and report it. -
Close linked issue and clean up labels:
gh issue close <ISSUE_NUMBER> 2>/dev/null || trueRemove stale workflow labels that are no longer meaningful on a closed issue:
gh issue edit <ISSUE_NUMBER> --remove-label "agent:in-review" --remove-label "agent:in-progress" --remove-label "sova:revise" --remove-label "sova:block" 2>/dev/null || true
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.
- 14d ago Changed 6d24bb5bff2e
- 16d ago Changed · +11 lines · +3 tokens per session 5fb5bad1c2b4
- 22d ago First seen · 63 lines · 29 tokens per session scan A 3c2d7ebe30b2
sova-after-merge is a skill published in the GitHub repository xsovad06/sova (2 stars, last pushed yesterday), licensed Apache-2.0. It adds 32 tokens to every session and 916 once invoked, about $0.0001 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-10-08.
Other skills, from other repositories
4x-autopilot
An owner-only automation mode for the 4x feature pipeline, which manages tracked development tasks from selection through completion and merging. It runs one feature at a time and reads project settings to determine the repositories and workflow.
autofix-pr
Watch a pull request and fix it from a worktree of its own - CI failures, review feedback from trusted authors and merge conflicts are fixed, pushed to the PR branch and answered on the PR under the user's git and gh identity. Usage - /autofix-pr [ | ] [--once] [--every ] [--no-reply] [--yes] [instructions]…
work
Handle issue/PR work items with worktree isolation. Triggered by "/work [issuelink|description]" to start focused work.
pdd-small-change
PDD small-change workflow. Use when the person asks for a small, contained change that is easy to undo, such as a typo, a config value or a small fix. Plan it, make it, verify it, one PR.
do
Work a SpecWeave increment task by task - claim, implement inside its Files, test, commit, done with evidence - alone, unattended or in lanes, then close. Use for "implement", "next task".
loop-gh-pr
A recipe for a scheduled GitHub pull-request watcher. It checks open pull requests for new activity and prepares read-only review drafts without posting comments or merging anything.