jackin-create-pr — скилл для Claude Code: PR для мелкой правки
Открывает pull request для небольшой правки в репозитории jackin❯: типо, обновление зависимости, строчный багфикс. Тело PR собирается по шаблону с готовыми блоками verify-locally.
npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a claude-codeЧто делает jackin-create-pr
Скилл ведёт оператора по шагам обычного PR: ветка, коммит, тело, создание, проверка рендера. Коммитит сразу, отдельного скилла для коммита нет. Работает по правилам репозитория PULL_REQUESTS.md, BRANCHING.md, COMMITS.md и агентским правилам из .github/ — они подгружаются сами, скилл их выстраивает в порядок, а не пересказывает.
Скелет тела печатает cargo xtask pr body --base origin/main > /tmp/pr-body.md. В stderr уходит разбор диффа по категориям (rust, docs, capsule, schema) со списком файлов, в файл — шаблон из .github/PULL_REQUEST_TEMPLATE.md с уже выбранными блоками проверки. Выбор такой: Checkout и isolation env всегда, тесты Rust при правке Rust, проверки docs и walk на docs/**, smoke для crates/jackin-capsule/ (флаг --capsule ставится до console/load), миграционный smoke при затронутой версионируемой схеме. Прозу — Summary, What ships, Behavior changes — пишет агент и создаёт PR через gh pr create --body-file.
В main скилл не коммитит: на этой ветке он создаёт fix/, chore/, docs/ или refactor/ и спрашивает подтверждение, если не передан --auto-branch или --branch. Аргумент --title задаёт заголовок коммита и PR, иначе его выводят из диффа по Conventional Commits. Коммит идёт с подписью DCO (git commit -s). Нужны cargo xtask в репозитории jackin❯ и gh. Прямые URL задеплоенных доков в тело не вставляйте — после мёржа они ломаются, доки называйте по имени.
Какие задачи решает
- открыть PR для однострочного багфикса без roadmap-задачи
- собрать тело PR с нужными блоками verify-locally из диффа
- закоммитить правку в ветку, не тронув
main - оформить заголовок по Conventional Commits и подписать коммит DCO
- проверить, что добавленная проза в теле PR рендерится без лишних экранирований
Примеры запросов агенту
- Открой PR для этой правки в
COMMITS.md, ветку назови сам - Сделай PR с заголовком
fix: handle empty capsule manifest - Открой PR для обновления зависимости в
Cargo.toml
Как установить jackin-create-pr
1Через Skills CLI (Vercel)
npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a claude-code2Вручную: положить файлы
~/.claude/skills/jackin-create-pr/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/jackin-create-pr/
1Через Skills CLI (Vercel)
npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a codex2Вручную: положить файлы
.agents/skills/jackin-create-pr/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a cursor2Вручную: положить файлы
.cursor/skills/jackin-create-pr/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install jackin-project/jackin-dev jackin-create-pr2Вручную: положить файлы
.github/skills/jackin-create-pr/SKILL.md1Через Skills CLI (Vercel)
npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a gemini-cli2Командой платформы
gemini skills install https://github.com/jackin-project/jackin-dev --path skills/jackin-create-prВручную: положить файлы
.devin/skills/jackin-create-pr/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о jackin-create-pr
Как установить jackin-create-pr в Claude Code?
Выполните npx skills add jackin-project/jackin-dev --skill jackin-create-pr -a claude-code. После установки файл скилла лежит в ~/.claude/skills/jackin-create-pr/SKILL.md.
Что делает jackin-create-pr?
Проводит мелкую правку в репозитории jackin❯ через ветку, коммит и pull request. Тело PR берётся из шаблона репозитория, блоки verify-locally подбираются по диффу автоматически.
Можно ли использовать его для новой фичи?
Нет. Для идеи, которой нужен пункт в roadmap, есть jackin-propose, а готовый пункт реализуют через /goal Implement <slug>.md.
Исходный текст
SKILL.md · Apache-2.0
--- name: jackin-create-pr description: Use only when the user explicitly requests this skill. Opens a pull request for a small jackin❯ change with the correct body shape and auto-selected verify-locally blocks. argument-hint: "[--branch <name>|--auto-branch] [--title <msg>]" disable-model-invocation: true license: Apache-2.0 user-invocable: true --- # jackin-create-pr Open a PR for a **small fix** in the jackin❯ repo — typo, dependency bump, one-line bugfix, doc tweak — that needs no roadmap item. Also the shared PR-mechanics path other skills reuse. Commits inline; no separate commit skill. jackin❯ rule files auto-load — `PULL_REQUESTS.md`, `.github/` agent rules, `BRANCHING.md`, `COMMITS.md`. This skill sequences them, never restates them. Read them for full rules. ## When to use - Operator runs `jackin-create-pr`. - Small, self-contained change (no design, no roadmap item). ## When NOT to use - Feature/idea worth a roadmap item → `jackin-propose`. - Implementing a finalized roadmap item → `/goal Implement <slug>.md`. ## Arguments - `--branch <name>` — explicit branch name. - `--auto-branch` — pick the branch name yourself, no confirmation. - `--title <msg>` — commit + PR title (else derive from the diff, Conventional Commits). ## Process 1. **Branch.** Never commit to `main`. If on `main`, create a `fix/` / `chore/` / `docs/` / `refactor/`-prefixed branch named from the change. Suggest and confirm unless `--auto-branch` or `--branch` given. 2. **Commit.** Uncommitted changes → commit inline per `COMMITS.md`: Conventional Commits subject, DCO sign-off (`git commit -s`). Already committed → skip. Then `git push`. 3. **Build the body.** `[bin]` Run `cargo xtask pr body --base origin/main > /tmp/pr-body.md`. The classified change digest (rust / docs / capsule / schema + file list) prints to **stderr** — read it; the body skeleton goes to the file: the PR template (read from `.github/PULL_REQUEST_TEMPLATE.md` at runtime) with the verify-locally blocks already selected and byte-exact, prose left as placeholders. Block selection: Checkout + isolation env always; Rust tests on a Rust change; Docs checks + walk on `docs/**`; jackin-capsule smoke (with `--capsule` *before* any `console`/`load`) on `crates/jackin-capsule/`; schema migration smoke on a versioned-schema touch. 4. **Fill + create.** `[agent]` Edit `/tmp/pr-body.md` — write the prose sections (Summary, What ships, Behavior changes) from the digest + diff; drop the optional sections you do not need. Then `gh pr create --body-file /tmp/pr-body.md`. The binary already wrote the body, so there is no heredoc to quote. 5. **Verify render.** `gh pr view <PR> --json body -q .body` — confirm the prose you added renders (no stray `\`` or `\$` from hand-editing). Fix with `gh pr edit --body-file` if needed. 6. **Reply.** Share the PR URL and repeat the Verify-locally commands in your final message. ## Common mistakes - Committing to `main` instead of a branch. - Hand-building the body or template instead of `cargo xtask pr body` — it reads the template and selects the verify blocks for you. - Posting the skeleton with the prose placeholders left unfilled. - Deployed docs URLs in the body (break post-merge) — refer to docs by name. ## Tooling `cargo xtask pr body` (jackin❯ repo) emits the change digest + the template skeleton with verify-locally blocks auto-selected from the diff. Shared with `propose`. The binary guarantees the mechanical parts (block selection, capsule ordering, exact command text, heredoc quoting); the agent writes the prose.
© jackin-project · Apache-2.0 · jackin-project/jackin-dev