pull-request
Skill313 starsChanged 26 days agoApache-2.0View on GitHub
Prepare a change for this repository as a pull request. Use when a branch is ready to publish, when writing the commit series or the pull request description, or when a queued pull request needs follow-up.
We split this skill into the rules it gives an agent
6 rules. 0 are common, 3 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 43 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 15
Run just ci-python for Python changes, just spdx-check for new files, and just link-license-check when the set of published crates changes.
- Distinctive: line 18
Keep one logical change per branch.
- Very specific: line 28
Follow Conventional Commits.
- Very specific: line 32
Add Assisted-by: <tool>:<model> when a tool wrote a substantive part of the change, and never add Signed-off-by on someone else's behalf.
- Distinctive: line 37
Body: use these sections in this order and drop the ones that do not apply.
- Distinctive: line 62
Treat a review comment as a question to settle, not a verdict to obey: answer with the artifact that settles it (a command, a file, a test) …
“Common” is measured: kept by at least 6 in 10 of the 43 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Pull request
A pull request here is squash-merged into main, so its title becomes the commit subject on main and its body is the only narrative a later reader gets. Prepare both with the same care as the diff.
Before publishing
- Run the gates on the tree that will be pushed:
just dev,just ci-rust, and the nightly clippy line CI uses.just ci-rustends withassert_unchanged, so a codegen run that is not committed fails the gate; keepjust codegenidempotent. CI runsjust ci-rustunder both a stable and a nightly toolchain, so the nightly half has to be run locally ascargo +nightly clippy --workspace --all-targets --all-features -- -D warnings. - Run
just ci-pythonfor Python changes,just spdx-checkfor new files, andjust link-license-checkwhen the set of published crates changes. A skill lives in.agents/skills/<name>/SKILL.md, is symlinked from.github/skills/<name>, and carrieslicense: "Apache-2.0"in its frontmatter instead of an SPDX header. - A change that touches a feature gate is also checked in
s3s-fs: the default build must not pullquinnorh3, and--features http3must. - Collect the evidence the body will cite: commands, exit codes, counts, and the source of every number (a gate, a measurement, a parity check).
- Keep one logical change per branch. A second concern rides in a second pull request, not in a second commit series.
Branch and history
- Name the branch
<type>/<slug>with the same type the commits use:feat/,fix/,docs/,test/,refactor/,chore/. - Branch from
main, or from the branch the change builds on, and keep the history linear: themainruleset requires linear history and the merge method is squash, so merge commits and "fix review" commits only enlarge the reviewer's diff. - Fold a fix into the commit that owns the file and push with
--force-with-lease. Rewriting your own unmerged branch is normal here; rewriting a branch someone else reviewed warrants a comment that says what moved.
Commits
- Follow Conventional Commits; the
Gitsection ofCONTRIBUTING.mdpoints there. - Scope with the crate or the area the change belongs to (
s3s,s3s-fs,codegen,xtask,ci,deps,release, ...). - The subject states the change; the body states why it is needed and what it makes true. Do not narrate the iterations that led to it.
- Mark a change that alters existing behaviour with
!after the type or scope (feat(s3s)!:) and describe the migration under### Behavior. - Add
Assisted-by: <tool>:<model>when a tool wrote a substantive part of the change, and never addSigned-off-byon someone else's behalf; the AI Contribution Policy governs both.
Title and body
- Title: the subject of the squash commit, without a
(#N)suffix — GitHub appends the number when it merges. - Body: use these sections in this order and drop the ones that do not apply.
### Summary— one paragraph: the problem, the change, and the number that shows the effect.### Changes— bullets, one per behavioural unit rather than one per file.### Behavior— what changes for a user or a caller, including deliberate breakages.### Tests— what ran, with exit codes or counts, plus any parity check or red control that shows the tests can fail.### References— the issues, upstream discussions or earlier pull requests the change answers. WritePart of #Nwhile the issue still tracks other work:FixesandClosesclose it on merge.### Dependencies— what the change adds, removes or bumps, and anything the release order depends on.### AI— the tool and model that took part, what they did, and that a human reviewed the diff and owns the change.
- Open the pull request as a draft: the
mainruleset runs a Copilot code review on drafts too. Convert it to ready when the checks are green and the description is complete.
What the checks will run
CIruns onpull_requestagainstmainandfeat/**, onmerge_group, on a weekly schedule and on manual dispatch.skip-checkis configured withpaths_ignore: '["*.md"]', andstatus-checkaggregates the jobs; that aggregate is the only check the ruleset requires.- A pull request runs
python,rust-msrv,rust(stable and nightly; the nightly leg iscontinue-on-error),cross-test(macOS and Windows),wasm-testandcoverage. - The seven
e2ejobs (mint,s3-tests,boto3,rclone,s3s-e2eagainst silo ors3s-fs) carryif: github.event_name != 'pull_request': they run in the merge queue and on the schedule, never on the pull request. A pull request with every visible check green can therefore still fail the queue, so run the affected script underscripts/before queueing it. Audit(dependency and license policy) runs when a manifest, the lockfile or.cargo/changes;Fuzzwhenfuzz/,crates/or its own workflow changes — on a pull request that isfuzz-checkalone, becausefuzz-runcarries the same!= 'pull_request'gate and fuzzes one rotating target per week on the schedule;Semverruns on every pull request and merge group.- Code scanning uses GitHub's default setup. A very large diff can make it attribute pre-existing alerts to the pull request, and that check is not required: read
code-scanning/alertsbefore treating it as a finding.
Landing
maintakes pull requests through the merge queue with the squash method; the queue re-runsCI,AuditandSemveronmerge_group, and that is where thee2ejobs run for the first time. A queued pull request that fails the queue is dequeued rather than merged, so read themerge_grouprun before queueing it again.- Merging does not delete the head branch, so clean up after it: once the pull request is merged, delete the head branch (remote and local) and remove the worktree instead of leaving a stale checkout behind.
Working with a review
- Treat a review comment as a question to settle, not a verdict to obey: answer with the artifact that settles it (a command, a file, a test) and state what changed.
- Reply on the line that was questioned, and say what changed.
- Either amend the commit that owns the change or append a commit that answers the review; both are accepted here. Pick the one that leaves the history easiest to read and mention which one you used.
Watching a pull request
Hang cargo run -p xtask -- watch-pr <PR#> in the background while a pull request is open, read its log when it exits and hang it again; the watch-pr skill covers the state line, the exit conditions, the restart discipline, and how to wait for checks alone with gh.
The public layer
Everything committed here, and everything pasted into a pull request, a review or a log, is public. Strip local paths, internal notes, tool- or machine-specific references, and personal data before they leave the machine, and keep a published tool self-contained: no dependency on a local checkout, no absolute path, no private context. A script that is brought into the repository is rewritten for that audience rather than copied.
What needs an explicit instruction
Pushing a branch, opening, undrafting, queueing or merging a pull request, dismissing a scanning alert, changing repository settings, deleting branches, and force-pushing a branch somebody else owns are actions to take only when the person responsible asks for them.
Other versions48 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 48
- samchon/typia★ 5.9ksame name
- epicenter-md/epicenter★ 4.8ksame name
- EpicenterHQ/epicenter★ 4.8ksame name
- werf/werf★ 4.7ksame name
- basicmachines-co/basic-memory★ 4.4ksame name
- PaulWoitaschek/Voice★ 3.2ksame name
- heyitsnoah/claudesidian★ 2.6ksame name
- samchon/nestia★ 2.2ksame name
- theopenco/llmgateway★ 1.7ksame name
- microsoft/hve-core★ 1.6ksame name
38 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use issue-campaign, development and 9 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
samchonSkillissue-campaign
Defines the default solo repository-wide issue campaign for typia: exhaustive discovery, lead-vetted issue publication, one unified CI-validated implementation pull request per cycle, solo Self-Review, and repeated rediscovery until a full clean round. Use for broad audits, many issue candidates, or repeated issue-to-pull-request campaigns unless the user explicitly requests parallel or multi-agent execution; do not use for one already-defined issue or an ordinary pull request.
Also in 3 projects that use this
mfang0126Skilldevelopment
Full-stack development workflow skill. Guides the complete cycle from understanding requirements to shipping code via PR with Preview validation.
Also in 3 projects that use this
AnthropicSkillcontracts
Answer a question across a corpus of contract documents with verified citations. Use when the user asks what a contract says, which contracts have a clause, what changed between amendments, or any question that needs reading and citing across a set of contract files. The corpus must be on the local filesystem (see README).
Also in 3 projects that use this
dragonflydbSkillbenchmark
Benchmark Dragonfly (and compare against Valkey/Redis) on local or remote cloud instances, then produce a performance + memory report with charts and a raw-data appendix. Use this whenever the user runs /benchmark, or asks to benchmark / load-test / measure throughput, QPS, latency, or memory efficiency of Dragonfly or another Redis-compatible server, to compare Dragonfly vs Valkey or Redis, or to generate a benchmark report. Trigger it even when the user just describes the goal ("see how fast Dragonfly is on this box", "compare memory per key vs Valkey") without saying the word "benchmark".
Also in 4 projects that use this
GoogleSkillprototype
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
Also in 5 projects that use this
MicrosoftSkilladversarial-review
Adversarial review of a system design from 6 critical perspectives -- SRE, security, staff engineer, finance, operator, and developer advocate. Produces a unified risk assessment. Use for INTERACTIVE on-demand reviews during a design conversation (/adversarial-review). For RECIPE-DRIVEN reviews (where prior step context is needed), use the systems-design-critic agent instead.
Also in 3 projects that use this
In this repository11 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .github/copilot-instructions.mdCopilot instructions
- code-coverageSkill
- codegenSkill
- code-reviewSkill
- fuzz-testingSkill
- gh-stackSkill
- mutation-testingSkill
- testingSkill
- verificationSkill
- watch-prSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

