Agent skill

Choruz PR

by inclusionAI in inclusionAI/Choruz

Use before opening or completing a pull request in this repository — classify the change, add the tests its type requires, run exactly what CI will run, label it, merge only on a green "CI (linux)…

Apache-2.0Auto-check passedDevelopment

Install Choruz PR

skills CLI
$ npx skills add inclusionAI/Choruz --skill choruz-pr -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install inclusionAI/Choruz choruz-pr --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/inclusionAI/Choruz.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/choruz-pr .claude/skills/choruz-pr && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
choruz-pr
GitHub stars
1k
Token cost
~2.6k tokens
SKILL.md length
1,433 words
Files
2
Skills in repo
11
Repo updated
First seen
Licence
Apache-2.0

At a glance

Use before opening or completing a pull request in this repository — classify the change, add the tests its type requires, run exactly what CI will run, label it, merge only on a green "CI (linux)…

  • Works in 7 steps: Classify the change → Prove the affected behaviour → Independently audit the change → …
  • Tasks that involve Pull requests
  • SKILL.md covers 1. Classify the change, 2. Prove the affected behaviour, Naming new packages and files and 3. Independently audit the…, plus 5 more sections
  • Runs Shell scripts from its folder; calls gh, bash and git

What it does

Choruz PR is an agent skill from inclusionAI/Choruz. Use before opening or completing a pull request in this repository — classify the change, add the tests its type requires, run exactly what CI will run, label it, merge only on a green "CI (linux) required", and clean up completed branches safely.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `pr-plan.sh`).

It sits in Development, covering Pull requests. It works with Linux. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Pull requests

Example prompts

  • “CI (linux) required”
  • “/choruz-pr”

Requirements

  • A Bash shell

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Classify the change
  2. Prove the affected behaviour
  3. Independently audit the change
  4. Simplify the diff
  5. See what CI will run, and run it locally
  6. Open the PR
  7. Merge only on green, then clean up the branch

What it can do on your machine

Read from SKILL.md and the folder at commit 7509c40. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • gh
    • bash
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Choruz PR loads about 2.6k tokens when it runs. Until then it costs about 64 tokens; SKILL.md has 1,433 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~64
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from inclusionAI/Choruz at commit 7509c40, republished under its Apache-2.0 licence (© inclusionAI). 1,433 words, ~2,648 tokens.

Download SKILL.mdSave it as .claude/skills/choruz-pr/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
choruz-pr
description
Use before opening or completing a pull request in this repository — classify the change, add the tests its type requires, run exactly what CI will run, label it, merge only on a green "CI (linux) required", and clean up completed branches safely.

Opening a pull request

When loaded from a personal skills directory, resolve repository links from this skill's canonical .agents/skills/choruz-pr/ location in the active Choruz checkout, not from the installed copy.

The rule of this repository (docs/testing/pr-test-policy.md): CI runs what the changed paths need; the type you declare tells reviewers what tests to expect and labels can only add gates. This skill walks a change from "done on a branch" to "merged" without a person having to babysit it.

1. Classify the change

Pick one type from the policy table and keep it in mind for every later step:

TypeTests you must add before the PR exists
featureUnit/integration tests for the new behaviour; an e2e spec for a new user-facing flow
bugfixA regression test that fails without the fix
refactorNone new; the touched module's existing tests must pass
uiComponent/unit test when behaviour changes; e2e for a critical path
api / databaseTests for the behaviour change; a migration gets a smoke run
security / authTests for the new rule; e2e regression for login/permission flows
ci / build / depsPolicy tests for CI scripts
docs / choreNone

If the diff spans two types, use the stricter row. Never pick docs or chore to avoid tests: CI reads paths, not the type, so it does not help.

For feature, api / database and security / auth, walk the seams in docs/adding-a-feature.md before writing tests, and fill the template's "Seams touched" section from that walk. A seam left unchecked carries a one-line reason ("no new table", "core route, no plugin gate"); the reviewer reads the section against the diff.

2. Prove the affected behaviour

Do this before anything else. A bugfix without a failing-then-passing regression test is not ready. Put e2e coverage next to the feature's spec so select_e2e_specs.py picks it up (add a rule there when you add a spec for a new feature area).

Apply the policy's behaviour acceptance evidence before selecting tests: name the observable contract, trace its production entry to the owner of the result, and select only the ordinary scenarios affected by the change. Read the assertions, not just test names. Record the scenario, boundary replacements and observed red/green evidence in the PR; document unavailable evidence without calling it passed. An existing test that stays green when the claimed behaviour is absent does not satisfy the type's requirement.

Before adding coverage, apply the policy's test value and incremental cost: find and strengthen the existing owner first, explain what a new scenario uniquely proves, and replace affected obsolete or redundant coverage without losing guarantees. This is scoped to the change, not a mandatory whole-suite cleanup.

Naming new packages and files

Rust packages are choruz-<role>: directory equals the package name, the crate ident is choruz_<role>. npm packages are @choruz/<role>. Libraries live in crates/, long-running processes in services/, human entry points (choruz-cli, choruz-replay, web) in apps/. Files: Rust snake_case.rs, web kebab-case.ts(x), tests beside the module (foo.test.ts, tests/<topic>.rs), migrations V0NN__name.sql. A name states a role, never a layer or a generic word.

3. Independently audit the change

Before simplify, delegate a read-only audit to one independent GPT-5.6 Terra agent (gpt-5.6-terra) that did not implement the change. Explicitly select this model for the first audit and every re-audit; never inherit the author's model. Have it read and use choruz-pre-simplify-audit, which owns the criteria for skill execution evidence, code structure and test effectiveness.

Supply the user request and constraints, base/head revisions, current diff including relevant uncommitted and untracked files, actual command results or artifact paths, and prior findings. Never send credentials. The auditor independently determines applicable requirements; reading skills alone is not proof they were executed.

If the verdict is FAIL or UNVERIFIED, the implementer resolves the due-now gaps and supplies updated code and evidence. Repeat audit → remediation → re-audit until the auditor explicitly returns PASS before entering simplify. Prefer the same auditor; a replacement must also use gpt-5.6-terra and receive prior findings. The implementer cannot self-certify closure.

Missing access, unavailable delegation or an unavailable Terra model leaves the gate unverified: report the blocker, do not silently substitute self-review or another model. The auditor does not edit, push, merge or recursively delegate. Keep the verdict and reviewed diff identity in the PR's existing evidence section. This gate does not replace simplify, tests or final CI.

4. Simplify the diff

Run /simplify on the branch (or review the diff yourself if the skill is not available): remove dead code, extra abstractions and stray debug output the work left behind. Commit the result.

5. See what CI will run, and run it locally

choruz-pre-push-checks owns the selection rules; the short version:

bash
bash .agents/skills/choruz-pr/pr-plan.sh

It uses the same selectors as the workflow's Detect changes job and prints two lists: the CI jobs this change triggers, and the commands to run locally first. Run those commands. A red job on the PR that you could have caught locally costs a CI round trip and a reviewer's trust.

Local e2e needs the host stack (infra/host/web_e2e.sh starts PostgreSQL, the API, the pipeline and the web app itself); see docs/testing/pr-test-policy.md.

If simplify or a later fix changes the reviewed scope or invalidates evidence, have the independent agent recheck the affected requirements and rerun the affected checks. An earlier verdict does not certify a different diff.

Show full SKILL.md (602 more words)Show less

6. Open the PR

  • Fill .github/PULL_REQUEST_TEMPLATE.md honestly: the type from step 1, the tests added (or why none), what you ran in step 5, the risk. Include the independent audit verdict, evidence references and closure of any gaps. If an AI agent wrote part of it, say so.

  • Complete the acceptance evidence before declaring the PR ready. Do not use a green CI run to override a known broken contract or conceal missing required evidence; the policy owns how to report limitations.

  • Labels are how the type becomes a gate:

    • type api/database → add label database
    • type security/auth → add label security
    • want the full e2e suite on any PR → add label ci-full
    bash
    gh pr create --fill --label database          # or --label security / ci-full
    gh pr edit <number> --add-label ci-full        # later

    Without the label the full suite does not run for that type; the label is the author's responsibility, so add it in the same step as opening the PR.

  • Commit messages: Conventional Commits, and no model names or session URLs in titles or bodies beyond the trailers this repository already uses.

7. Merge only on green, then clean up the branch

  • The required check is CI (linux) required. Wait for it; do not merge on partial results and do not ask for a bypass.
  • Code-review bots are advisory. They neither block a green required CI nor require a separate wait before merge unless a repository rule changes the required check itself.
  • Red job: read the log, fix the cause, push. Never skip, disable or quarantine a test to get green, never push an empty commit or close/reopen to re-run. A failure that reproduces identically on main is the one case to stand down: say so on the PR.
  • Squash-merge when green. If the branch was stacked on another PR, follow choruz-merging-stacked-prs: retarget to main after that PR merges, merge main in, and let CI run once more.

After a PR reaches a terminal state, remove its source branch instead of leaving stale remote refs behind:

  • Merge only after the required check is green. Cancel a PR only when its work is intentionally abandoned; a red check is never a reason to delete a branch.

  • Before deleting HEAD_BRANCH, verify that the PR is merged or intentionally closed and that no open PR uses the branch as its base:

    bash
    gh pr view <number> --json state,mergedAt,headRefName
    gh pr list --state open --base HEAD_BRANCH --json number,headRefName

    Retarget or finish every dependent PR first. For a stack, follow choruz-merging-stacked-prs rather than deleting an intermediate base.

  • Delete the remote source branch only after those checks pass:

    bash
    git push origin --delete HEAD_BRANCH

    Delete the local branch too when it is not checked out by another worktree. Never remove the active branch or a worktree merely to satisfy cleanup.

Checklist

  • Type picked from the policy table; stricter row when in doubt
  • Affected contracts map to meaningful assertions through the required entry paths; negative-control results and limitations are recorded
  • GPT-5.6 Terra used choruz-pre-simplify-audit for the first audit and every required re-audit of workflow evidence, structure and tests; its explicit PASS closes all due-now gaps before simplify
  • /simplify (or a manual pass) applied
  • Later changes received a scoped recheck where they invalidated the audit verdict or test evidence
  • .agents/skills/choruz-pr/pr-plan.sh run, and every listed local command passed
  • Template filled; database / security / ci-full label added when the type calls for it
  • For feature, api / database, security / auth: "Seams touched" filled from docs/adding-a-feature.md, every unchecked seam with its reason
  • CI (linux) required green before merge
  • After merge or intentional cancellation, PR state and dependent PRs verified; unused source branch removed from origin and locally

© inclusionAI, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .agents/skills/choruz-pr of inclusionAI/Choruz.

  • SKILL.md
  • pr-plan.sh

Open the folder on GitHubat commit 7509c40

Compare with similar skills

Choruz PR next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Choruz PR compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Choruz PR this skillinclusionAI/Choruz1k—~2.6kAutomated safety check: PassApache-2.0
Prosestatic-web-server/static-web-server2.4k—~1.2kAutomated safety check: PassApache-2.0
Self Verify Beacon In SandboxAsymptote-Labs/agent-beacon1.8k—~1.2kAutomated safety check: PassMIT
Debug Os Failure On GitHubstrands-agents/box299—~1.3kAutomated safety check: NotesApache-2.0
Neru Create PRy3owk1n/neru802—~1.9kAutomated safety check: PassMIT
Neru File Issuey3owk1n/neru802—~890Automated safety check: PassMIT

Similar skills

  • Prose

    static-web-server/static-web-server

    Write or edit human-readable text for the Static Web Server (SWS) project — commit messages, CHANGELOG entries, PR descriptions, issue bodies, rustdoc comments, CLI help text, READMEs, and user docs…

    2.4k GitHub stars~1.2k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Self Verify Beacon In Sandbox

    Asymptote-Labs/agent-beacon

    Verify a Beacon change end to end by running a real Claude Code session inside a disposable Linux cloud sandbox and checking that Beacon captured what the agent actually did.

    1.8k GitHub stars~1.2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Debug Os Failure On GitHub

    strands-agents/box

    Debug a CI failure on an OS you are not on (you are on Linux, it fails on macos-latest, or the reverse) without opening a pull request per attempt.

    299 GitHub stars~1.3k tokensUpdated yesterday
    DevelopmentAuto-check: notes
  • Neru Create PR

    y3owk1n/neru

    Commit working changes and open a Neru pull request the maintainer's way: conventional commit subjects, a PR title written for the changelog, the just ci gate, and the repo PR template filled…

    802 GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Neru File Issue

    y3owk1n/neru

    File a Neru bug report or feature request that matches the repo's issue forms: duplicate check first, every required field filled with real diagnostics, correct labels.

    802 GitHub stars~890 tokensUpdated yesterday
    Testing & QAAuto-check passed
  • CI Adhoc Test

    nubjs/nub

    Run ad-hoc / exploratory tests on a real OS or platform via CI when the behavior CANNOT be reproduced on the local host or in Docker — macOS Seatbelt / sandbox-exec / codesigning, Windows cmd.exe /…

    4.4k GitHub stars~1.7k tokensUpdated yesterday
    DevOps & CloudAuto-check passed

More from inclusionAI/Choruz

All 11 skills in this repo
  • Choruz Archive Agent Notes

    inclusionAI/Choruz

    A skill your agent uses when adding, auditing, pruning, archiving, restoring, or reviewing Agent Notes in this repository; checks every new note for superseded active records, classifies implemented…

    1k GitHub stars~1.2k tokensUpdated 4 days ago
    Auto-check passed
  • Choruz Merging Stacked PRs

    inclusionAI/Choruz

    A skill your agent uses when landing a chain of dependent pull requests (A ← B ← C, each based on the one below) onto main, merging a PR whose base is another open PR's branch, or whenever a request…

    1k GitHub stars~866 tokensUpdated 4 days ago
    Auto-check passed
  • Choruz CI Test Reliability

    inclusionAI/Choruz

    Design, review, and diagnose Choruz tests and fixtures that can fail nondeterministically under CI concurrency: parallel Playwright workers sharing one PostgreSQL and one API, vitest workers, cargo…

    1k GitHub stars~1.8k tokensUpdated 4 days ago
    Auto-check passed
  • Choruz Code Review

    inclusionAI/Choruz

    A skill your agent uses when reviewing a pull request in this repository; orients the reviewer to Choruz's standards (AGENTS.md conventions, the PR test policy, Agent Notes, the CI gates) and the…

    1k GitHub stars~1.7k tokensUpdated 4 days ago
    Auto-check passed
  • Choruz Doc

    inclusionAI/Choruz

    Create, restructure, review, audit, or migrate Choruz Markdown documentation (docs/, README, AGENTS.md, the in-app docs pages) using one owner per fact, tier placement, executed-operation…

    1k GitHub stars~1.6k tokensUpdated 4 days ago
    Auto-check passed
  • Choruz Find Simplifications

    inclusionAI/Choruz

    A skill your agent uses when working in this repository to find non-obvious simplification candidates, remove redundant comments or implementation-heavy documentation, write proposed Agent Notes or…

    1k GitHub stars~1.6k tokensUpdated 4 days ago
    Auto-check passed

Works with

Questions about Choruz PR

What does Choruz PR do?

Use before opening or completing a pull request in this repository — classify the change, add the tests its type requires, run exactly what CI will run, label it, merge only on a green "CI (linux)…. Choruz PR is an agent skill from inclusionAI/Choruz. Use before opening or completing a pull request in this repository — classify the change, add the tests its type requires, run exactly what CI will run, label it, merge only on a green "CI (linux) required", and clean up completed branches safely.

When should I use Choruz PR?

Choruz PR fits situations like: tasks that involve Pull requests.

How do I install Choruz PR in Claude Code?

Run `npx skills add inclusionAI/Choruz --skill choruz-pr -a claude-code`. Or copy the skill folder (.agents/skills/choruz-pr in inclusionAI/Choruz) into .claude/skills/choruz-pr in your project. Claude Code loads it when a task matches its description.

How do I install Choruz PR in Codex?

Run `npx skills add inclusionAI/Choruz --skill choruz-pr -a codex`. Or copy the skill folder (.agents/skills/choruz-pr in inclusionAI/Choruz) into .agents/skills/choruz-pr in your project. Codex loads it when a task matches its description.

Can I use Choruz PR in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add inclusionAI/Choruz --skill choruz-pr -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/choruz-pr, .gemini/skills/choruz-pr, .github/skills/choruz-pr and .opencode/skills/choruz-pr in your project.

What does Choruz PR need to run?

Going by SKILL.md and its folder, Choruz PR needs a shell for the scripts in its folder and the command-line tools its instructions call (gh, bash and git). Our summary lists: A Bash shell.

Does Choruz PR access the network?

SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Choruz PR safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Choruz PR use?

Choruz PR is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Choruz PR use?

About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Choruz PR?

Skills that share tags, products or a category with Choruz PR: Prose (static-web-server/static-web-server, 2.4k stars), Self Verify Beacon In Sandbox (Asymptote-Labs/agent-beacon, 1.8k stars), Debug Os Failure On GitHub (strands-agents/box, 299 stars) and Neru Create PR (y3owk1n/neru, 802 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Choruz PR?

inclusionAI (a GitHub organization) maintains it in inclusionAI/Choruz, which has 1,017 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 7, 2026.

Source: inclusionAI/Choruz on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.