slopcourier
Open, babysit, and merge a change request, then watch what the merge runs.
Skill by uinaf
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/uinaf-slopcourier
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/slopcourier
What's inside
- Skill name
slopcourier- Description
- Open, babysit, and merge a change request, then watch what the merge runs. Use when opening or updating a PR or MR, when asked to get one merged or babysit it, or to watch the runs a merge, direct push, or dispatched workflow starts.
- License
- MIT
- Instructions
- 121 lines in SKILL.md · view on GitHub
Before installing
- Instructions read files in your home folder (~/.ssh, ~/.aws…)
Files (39)
- SKILL.md
- openai.yaml · agents/
- criteria.json · evals/attach-review-media/
- task.md · evals/attach-review-media/
- criteria.json · evals/authorized-continuation/
- task.md · evals/authorized-continuation/
- criteria.json · evals/bot-never-started/
- task.md · evals/bot-never-started/
- criteria.json · evals/changes-requested-concrete-fixes/
- task.md · evals/changes-requested-concrete-fixes/
- criteria.json · evals/changes-requested-design-question/
- task.md · evals/changes-requested-design-question/
- criteria.json · evals/codex-review-running/
- task.md · evals/codex-review-running/
- criteria.json · evals/compose-change-request/
- task.md · evals/compose-change-request/
- criteria.json · evals/fix-feedback-and-merge/
- task.md · evals/fix-feedback-and-merge/
- criteria.json · evals/merge-at-green/
- task.md · evals/merge-at-green/
- criteria.json · evals/merge-pressure-bot-reviewing/
- task.md · evals/merge-pressure-bot-reviewing/
- criteria.json · evals/older-unresolved-finding/
- task.md · evals/older-unresolved-finding/
- criteria.json · evals/open-only-stops-at-open/
- task.md · evals/open-only-stops-at-open/
- criteria.json · evals/post-merge-deploy-failed/
- task.md · evals/post-merge-deploy-failed/
- criteria.json · evals/trigger-watch-and-merge/
- task.md · evals/trigger-watch-and-merge/
- criteria.json · evals/unsupported-forge-stop/
- task.md · evals/unsupported-forge-stop/
- visual-evidence.md · references/
- go.mod · scripts/bodycheck/
- main.go · scripts/bodycheck/
- main_test.go · scripts/bodycheck/
- go.mod · scripts/prwatch/
- main.go · scripts/prwatch/
- main_test.go · scripts/prwatch/
SKILL.md (first lines)
# Slopcourier Three lanes. Start where the request starts, stop where it stops: | Request | Lanes | |---|---| | "open the PR" | Open, then stop | | "get it merged", "babysit" | Open (if needed), Babysit, After merge | | review or CI feedback on an open PR | Babysit, After merge | | direct push or dispatched workflow | After merge | `git remote get-url origin` picks the forge: github.com uses `gh`, GitLab uses `glab`. Any other host: stop and say so. Check auth for that host (`GH_HOST=github.com gh auth status`, `glab auth status --hostname <host>`). ## Open 1. **Gates.** The repo's required checks pass on this revision. Proof fits the change: a bug fix has a check that fails without the fix; a refactor runs the same checks before and after; docs are checked against their sources. 2. **Branch.** One task branch. If it already has a PR, update that PR. Open ready for review unless asked for a draft. 3. **Title.** The user-visible outcome, in the shape of recent merged titles. 4. **Body.** Repo template first, then the owner's `<owner>/.github` default template, else: outcome sentence, one visual aid, a few one-line bullets for what the aid doesn't show. Describe the change as it stands. Leave out: file lists, test counts, command logs, review history, finding counts, fix hashes, reviewer names, and iteration narrative. CI shows proof; add proof only where CI can't. 5. **Visual aid.** Screenshot or short recording for UI, Mermaid for a flow, table for numbers, before/after code for an API. How to capture and upload: [visual-evidence.md](references/visual-evidence.md). 6. **Bodycheck.** From the target repo: `go run <this skill's dir>/scripts/bodycheck/main.go body.md`, adding `-before <current body file>` for an edit and `-footer <line>` when an attribution line is required. Fix what it flags or say why it's wrong. Done when the PR is open: report its URL and head commit. ## Babysit ### Watch Wait with prwatch, not a polling loop: ```bash go run <this skill's dir>/scripts/prwatch/main.go [-R owner/repo] [-since <since>] <number or URL> ``` - **Flags go before the number or URL.** Go stops parsing flags at the first argument. - It exits on the first thing to act on. The first output line is the state: `ready`, `checks-failed`, `activity`, `pushed`, `blocked`, `closed`, `error`, or `timeout` (30 minutes). - Act, then rerun with `-since <its since: line>` so nothing between runs is missed. - One background run per PR. For several PRs, start one each. - **Forge.** prwatch reads it from the URL or origin host. For a self-hosted host named without `github` or `gitlab`, pass `-forge gitlab` or map it once in `$XDG_CONFIG_HOME/ffss/prwatch.yaml` (else `~/.config/ffss/prwatch.yaml`): `forges:` then ` git.example.com: gitlab`. - **No Go:** poll `gh pr view` / `gh pr checks` (or `glab mr view`) for the same evidence, and say prwatch didn't run. Read everything it surfaces: a `CHANGES_REQUESTED` review can have no inline thread, and bots often post top-level comments. A requested human reviewer who hasn't submitted is still pending. An unrelated push doesn't answer older feedback. ### Bots - Bots are advisory. - A bot is pending only while it visibly works on the current head (eyes reaction, running check, "reviewing" comment, review request), or for a few minutes after a push when it reviewed an earlier head of this PR. A bot that never touched this PR is not pending. - prwatch waits up to 5 minutes for a pending bot (`-bot-wait`; lower it to meet a user deadline), then moves on. Name the skipped bot in the report. - A usage-limit or quota notice means the bot is unavailable. Say so and move on. - Bots are summoned only when the user asks. ### Triage - **A human's design question or ambiguous point:** stop rework on that PR, post nothing, and hand it back to the user with the evidence. - **Concrete fixes** (from humans or bots): validate each against the code. Fix the real ones in one pass, run the gates, push, reply on each thread with the commit, and re-request review from anyone who requested changes or approved an older head. Out-of-scope findings become tracker items. After the third fix round on one PR, stop patching, reconsider the approach, and tell the user if it changes. - **Failed check:** read the log. Fix what this change broke. If the base has since fixed it, bring in the base. A flake or infra failure gets one rerun; the same failure twice is real. - **slopguard:** only when the user asks or the repo has no review bot or required review; once, on the final head. On the forge, post only thread replies and re-requests; status goes to the user. Update the title and body only when the rework changes what the PR does. ### Merge Merge when the latest head has green required checks, no pending human or bot review, and no open threads or blocking reviews. Use the repo's merge method and report the merged commit. Hold only when asked. ## After merge - **Merged PR:** run prwatch on it once. It finds the merge commit and waits for the runs it starts: `runs-passed`, `no-runs`, `runs-failed`, or `timeout`. - **Direct push or dispatched workflow:** run prwatch with `-commit <full sha>` instead of a number. - **On failure:** report the run link, the likely cause from the failed job's log, and the revert command for the user to run: `gh pr revert <number>` (GitLab: a revert branch and `glab mr create`), or `git revert <sha>` where the default branch takes direct pushes (`-m 1` for a merge commit).
From uinaf/ffss, MIT.
More from uinaf/ffss
- 0.592score
slopskills
uinaf
Pick and install repo-local skills for a repository's stack.
SkillAFreshness: A★ 1Claude Code +9 - 0.592score
slopguard
uinaf
Review a finished change with the slopguard CLI and close out its findings.
SkillAFreshness: A★ 1Claude Code +9 - 0.589score
slopaudit
uinaf
Audit a person's whole agent setup: loaded rules and skills, session logs, shipped work, and the repos, machines, MCP servers, and pipelines agents touch.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
slopclean
uinaf
Remove AI tells from prose, code, or tests; prune low-value tests from a suite; or fix docs and agent guides that drifted from their sources.
SkillAFreshness: A★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 1
- Open issues
- 1
- Last commit (this folder)
- Oct 21, 2026 (7 days ago)
- Last release
- Oct 23, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/uinaf/ffss
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from uinaf
- 0.592score
slopskills
uinaf
Pick and install repo-local skills for a repository's stack.
SkillAFreshness: A★ 1Claude Code +9 - 0.592score
slopguard
uinaf
Review a finished change with the slopguard CLI and close out its findings.
SkillAFreshness: A★ 1Claude Code +9 - 0.589score
slopaudit
uinaf
Audit a person's whole agent setup: loaded rules and skills, session logs, shipped work, and the repos, machines, MCP servers, and pipelines agents touch.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
slopclean
uinaf
Remove AI tells from prose, code, or tests; prune low-value tests from a suite; or fix docs and agent guides that drifted from their sources.
SkillAFreshness: A★ 1Claude Code +9
Cite this page
slopcourier skill. Agent Mart. https://agentmart.dev/skills/uinaf-slopcourier (last updated 2026-10-24)