agentleFS
moeru-aimoeru-ai/auv/.agents/skills/create-pr/SKILL.md

create-pr

Skill207 starsChanged 36 days agoApache-2.0View on GitHub

Prepare or update AUV pull requests with source-backed CLI, Protobuf/Runner, and public API change disclosures, before-and-after usage, and migration notes. Also use for retrospective API audits of specified PRs or revisions.

196 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use update-pr, act-on-feedback and 10 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.
  • MicrosoftSkill

    update-pr

    Update the pull request for the current session. Use when the user wants to push new changes to an existing PR.

    Also in 9 projects that use this

  • MicrosoftSkill

    act-on-feedback

    Act on user feedback attached to the current session. Use when the user submits feedback on the session's changes via the Submit Feedback button.

    Also in 3 projects that use this

  • ModelEngine-GroupSkill

    create-release-note

    从 PR/commit 中自动生成结构化的 Release Notes,并可选创建 GitHub Draft Release。支持 x.y.0 版本合并前一 minor 系列的 release notes。当用户要求生成发布说明、创建 release notes 时触发。参数为版本号和可选的上一版本号。

    Also in 3 projects that use this

  • frostneySkill

    native-nostalgia-stack

    Applies the user's FreePascal toolchain and its build, formatting, hook, and test contracts while leaving project-specific mechanics local. Use when scaffolding or working in a FreePascal project that follows this toolchain.

    Also in 3 projects that use this

  • frostneySkill

    software-engineering-excellence

    Applies the user's engineering standards during substantial technical work: preserve scope, use current evidence, delegate independent parts, and complete authorized outcomes. Use during substantial implementation, debugging, refactoring, or multi-part delivery work.

    Also in 3 projects that use this

  • parkchuSkill

    start-mission

    넥스트스텝(NextStep) 미션을 처음 시작할 때, 미션 저장소를 fork·clone하고 최초 작업 브랜치(step1 등)까지 만들어 준다. gh CLI로 fork하고 clone까지 이어서 처리하며, gh가 없거나 인증이 안 돼 있으면 브라우저 Fork 안내로 폴백한다. 이미 fork/clone돼 있으면 재사용하고 이어서 진행한다(재실행 안전). 사용자가 "미션 시작하려는데 저장소 세팅해줘", "새 미션 시작할래", "fork부터 해줘", "/nextstep:start-mission" 등으로 요청할 때 사용한다.

    Also in 3 projects that use this

  • +1 more from microsoft

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 5 are distinctive, and 2 are very specific to this project.

  • 0

    Common

    Most of the 179 edited versions we read keep these.

  • 5

    Distinctive

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Start with changed files, then inspect definitions, exports, and real callers at both revisions.

    line 24
  2. Distinctive:

    Do not scan unrelated modules or invent obligations for untouched layers.

    line 32
  3. Distinctive:

    Always resolve these two surfaces explicitly for a caller-visible PR, even when one is unchanged:

    line 34
  4. Distinctive:

    Check these distinctions before describing a migration:

    line 55
  5. Distinctive:

    Before publishing, compare the final diff with the table and migration notes.

    line 127
  6. Distinctive:

    Update obsolete rows when scope changes.

    line 128
  7. Very specific:

    Use a structured body argument or gh ...

    line 131

“Common” is measured: kept by at least 6 in 10 of the 179 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Create PR

Make the PR useful to both reviewers and downstream callers. Explain the final behavior, show exact calling changes, and preserve enough source context to audit those claims later. Follow the repository's AGENTS.md and PR template.

Establish the comparison

  • Identify the repository, PR or branch, base, and head. Record resolved commit SHAs in the disclosure. Use the actual PR diff, not every change since main.
  • For an open PR, compare its merge base with its head. For a merged or historical change, identify the reviewed or landed revision range and state which one you used. Do not infer historical behavior from today's working tree. A commit in Git is not proof of merge or release; use “head revision” unless that status was verified.
  • For stacked PRs, distinguish changes introduced here from changes inherited from the base. State dependencies and merge order. Recheck the base after an upstream merge; do not claim independence merely because a PR has its own URL.
  • Start with changed files, then inspect definitions, exports, and real callers at both revisions. Use git show, git diff, and targeted rg searches. PR prose and commit messages are context, not proof of an API contract.

Inventory caller-visible changes

Trace each changed contract across the layers that actually expose it: shared Rust types, driver capabilities, auv APIs, CLI arguments, Runner/Proto, and SDKs. Do not scan unrelated modules or invent obligations for untouched layers.

Always resolve these two surfaces explicitly for a caller-visible PR, even when one is unchanged:

  • CLI: inspect command definitions and dispatch, then show the exact command line before and after. Include subcommands, flags, defaults, stdin/stdout behavior, platform restrictions, and privilege requirements when relevant. A prose feature name such as “adds setup support” is not a CLI disclosure.
  • Protobuf / Runner API: inspect changed .proto files, generated bindings, Runner handlers, and their callers. Show exact RPC, message, field, enum, or behavior changes, including field numbers and compatibility implications. If the diff does not change this surface, say No Protobuf or Runner API changes; do not omit the surface or infer a wire change from CLI behavior.

Classify findings as added, removed, changed, or internal-only. Include:

  • Exported functions, methods, types, enum variants, fields, and re-exports.
  • Parameter order and types, required arguments, defaults, builder options, return values, error categories, and serialization shapes.
  • Accepted aliases and values, platform guards, identity or authorization requirements, and resource reuse when existing calls behave differently.

Check these distinctions before describing a migration:

  • A new path or re-export is not a removal if the old path still exists.
  • A pub(crate) helper rename is not a public API break.
  • A new public type does not mean execution methods accept that type. Read their parameter types; show actual accepted inputs, not an intended future API.
  • Source compatibility, wire compatibility, and runtime behavior are different. A defaulted wire field can still break Rust struct literals. An older peer can ignore a new field without implementing the requested behavior.
  • The ability to parse or compile an input does not prove native delivery.
  • An unchanged signature can require migration when defaults, return semantics, lifecycle, or supported platforms change.

Report removals explicitly, including when none were found in the inspected public surfaces. Mention unchanged APIs only when readers could reasonably mistake them for removed or changed APIs. Do not list every untouched method.

Write the disclosure

Lead with the concrete problem and resulting behavior. Use an English Conventional Commit title with the relevant scope. Use chore(docs): ... for primarily documentation changes, as required by this repository. Keep committed PR text in clear, simple English unless the user requests another language.

For API changes, include a Markdown table with side-by-side inline code:

Surface / changeBeforeAfterCaller action
Rust method — changedExact old callExact new callRequired migration
Public type — addedNot availableExact construction or parsingOptional use or new requirement
Entry point — removedExact old callSupported replacement, or noneRequired migration

Replace the illustrative rows with verified findings; omit categories with no rows. Put short code in backticks inside cells. Escape pipe characters as needed for Markdown tables. Put longer compilable examples in fenced blocks below the table and refer to them from the relevant row. Do not put fenced blocks inside table cells. Define receiver types or setup when a snippet would otherwise be ambiguous. Label partial snippets and placeholders; do not imply they were run.

For caller-visible PRs, give CLI and Protobuf / Runner their own headings in the published body. Under CLI changes, use a before/after table plus copyable command examples for every added or changed command family. Use Not available for a genuinely new command rather than hiding the before state. Under Protobuf / Runner API changes, use the same before/after form for wire or Runner changes, or the explicit unchanged statement required above. Other Rust or SDK changes may follow in the general API table. Do not substitute source links or a list of command names for concrete caller syntax.

Then add only the migration notes that matter:

  • List added APIs with usable examples, and removed APIs with replacements. The comparison table can serve as this inventory; do not duplicate it.
  • State required edits versus optional adoption. Preserve platform-specific examples, setup prerequisites, and meaningful before/after behavior differences.
  • Name client/Runner version requirements when supported by the code. Do not invent released versions or compatibility negotiation.
  • Link each group of claims to commit-pinned source definitions, callers, tests, or durable contract notes. Include both revisions when explaining a removal or signature change. Local revision/path references are acceptable for offline drafts; replace them with permalinks when publishing to GitHub.
  • Report validation commands and outcomes at the tested revision. Distinguish compilation, automated tests, live receiver evidence, and pending CI. Do not claim examples were executed when only their signatures were inspected.

For changes with no caller-visible impact, use a short explicit statement and relevant validation instead of an empty table. For a retrospective audit, produce the same disclosure with the historical comparison range; do not create a new PR or rewrite old PRs unless requested. Store a requested durable audit under the owning docs/ai/references/<responsibility>/ directory.

Deliver within the requested scope

Before publishing, compare the final diff with the table and migration notes. Update obsolete rows when scope changes; do not append contradictory follow-ups. Confirm that the final body contains the CLI changes and Protobuf / Runner API changes headings and that their claims match the inspected definitions. Use a structured body argument or gh ... --body-file to preserve code and newlines. Read the published body back to verify it reflects the intended text.

Creating or updating a PR must follow the user's existing authorization. A draft or audit request alone does not authorize publishing, merging, or changing other PRs. When publication is already requested, complete the preparation and publish without an extra confirmation. Keep unrelated working-tree changes out of the PR. The skill does not require raw logs, screenshots, or temporary probe scripts to be committed; concise validation results and source links are sufficient unless the task specifically requires those artifacts.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

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.