跳到正文
cccskills
免费在 GitHub 公开

pr-description

PR のタイトルと本文を、レビューする人の問いに diff に現れない情報で答える形で書くための規範。書く手順(事実の一覧、節への割り当て、確認の突き合わせ)、節のカタログ、規模の目安、確認したことの書き方、言語の決め方、提出前チェックを定める。

PR を作る・本文を書き直すとき(`gh pr create`、`gh pr edit`、`/create-pr`、会話中の「PR 出して」)に使う。commit メッセージ(`/commit` を使う)や issue 本文には使わない。

中文简介正在准备中。当前显示原文说明。

集成工具GitHub
查看安装方法

包含的文件(1)

  • SKILL.md10.6 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

PR 本文の書き方

原則

PR 本文は、diff に現れない情報を運ぶ。読み手はレビューする人で、その人が知りたいのは次のことである。

  • 何を、なぜ変えたか。何を変えていないか。
  • 既存の利用者やデータに何が起きるか。
  • 何が確かめられていて、何が確かめられていないか。

diff を読めば分かること(変更ファイルの列挙、commit ログの転記、関数ごとの変更内容)は書かない。

書く手順

本文を書く前に、次の 1〜3 を作業メモとして書き出す(5 の照合もメモに書く)。どの節を書くかは、書き手が節ごとに判断するのではなく、1 で挙げた事実の置き場として決まる。作業メモは本文に含めない。事実が数個の小さな PR なら、メモも数行で済む。

  1. 事実の一覧: レビューする人に伝える事実を 1 行に 1 つずつ書く。
    • 出どころは、PR に含まれるすべての commit の message(本文と action 行)、PR 全体の diff、会話の中で分かっている確認結果。diff を読むために周辺のファイルを見てもよいが、diff に含まれないファイルの中身(他の設定項目の名前など)を事実として並べない。対象外のものは「他のエンドポイント」のように種類で書く。
    • 「何を変えたか」「なぜそうしたか」「何を対象外にしたか」「マージ後に何が残るか」は、別々の行にする。
    • 追加・変更したテストは、「確認したこと」の確認手段として扱う。テストした個々の入力や条件は事実として挙げない。
    • commit の action 行(decision / rejected / constraint / learned)は 1 行ずつ、一覧に採るかを決める。採らないのは、レビューする人の判断に影響しない行だけにする。
    • action 行がない commit では、diff とコードコメントから同じ種類の事実を探す。
  2. 置き場の割り当て: 各事実に、下の「節のカタログ」から節を 1 つ割り当てる。事実が 1 つも割り当たらない節は書かない。マージ後も残るリスクは、主な置き場に加えて「注意点」にも割り当てる。
  3. 確認の突き合わせ: 「概要」と「挙動が変わったところ」で主張する変化を 1 つずつ挙げ、それぞれを実際に観察した手段を書く。自動テストでしか確かめていない変化は、「実環境(実際に使われる環境や本物の API)では未確認」とする。未確認とした項目は「確認したこと」に割り当てる。「注意点」だけに置かない。
  4. 本文を書く: 一覧の事実はすべて、割り当てた節に載せる。長すぎるときは事実を削らず、1 行に縮める。
  5. 照合: 書き終えたら、一覧の事実を 1 つずつ本文の行と対応させる。対応する行がない事実は、割り当てた節に足す。

節のカタログ

次の順で並べる。条件を満たさない節は、見出しごと書かない。「なし」とも書かない。

見出しは下の表の節名をそのまま使う。

節この節に置く事実と、書き方
概要常に書く。何を変えたか、なぜ変えたか(動機)、この PR が扱わない範囲とその理由
以前 / この PR の対比表仕組み、ツール、依存を置き換えたという事実。行に観点、列に「以前」と「この PR」を置く
構成・主な変更設計の選択とその理由のうち、概要の「なぜ」に収まらないもの(部品の作り方や置き場所の理由、却下した案とその理由、コードの規約)。部品ごとに「何をするか」ではなく「なぜそう作ったか」を書く。ファイルを 1 つずつ並べない
互換性(引き継いだもの)利用者、保存データ、公開 API、設定について、変えずに引き継いだもの。具体的に挙げる
挙動が変わったところ利用者から見える変化。「以前: … / この PR: …」の対で書く。意図した変化であることが分かるようにする
計測性能についての主張。条件(データ量、環境、回数)、統計量(中央値など)、限界(相対比較にすぎない等)を書く。不利な結果も書く
テスト基盤テストの仕組みそのもの(テストランナー、fixture の共通化、CI の実行方法など)を変えたという事実。テストを足しただけの PR では書かない。そのテストは「確認したこと」に確認手段として書く
確認したこと常に書く。手順 3 の結果。項目ごとに確認手段(実行したコマンド、見た画面、返ってきた値)を添える
注意点マージした後も残るリスク(対象外にした問題による穴、既知の不具合、rc 版や experimental の依存)。最後に置く。他の節に置いた事実でも、ここに 1 行で再掲する。未確認のことは「確認したこと」に書く

規模の目安

  • 1 ファイル程度の修正は「概要」と「確認したこと」だけで、合わせて数行になる。
  • 節を増やすのは、その節の条件を満たしたときだけ。大きな PR だから全部の節を書く、ということはしない。

確認したことの書き方

  • 自分が実際に実行・観察したことだけを書く。セッション中に実行していないテストや、見ていない画面を書かない。
  • 手段と結果を 1 項目に並べる。例: 「pnpm test で 174 件通過」「デプロイプレビューで /cors-proxy/ に認証なしで送り、直接送ったときと同じ 403 を確認」。
  • 自動テストが偽の API やモックに対して動いているなら、そう書く。本物の環境で確かめたことと分ける。
  • この PR で追加・変更したテストは、実行したコマンドの項目に括弧で 1 句添える。例: 「pnpm test で通過(入力検証の失敗系を確かめるテストを追加)」。テストした入力や条件は並べない。どの入力を塞いだかがこの PR の主題なら、それは「挙動が変わったところ」に書く。
  • 手順 3 で「実環境では未確認」とした変化は、項目として挙げて「未確認」という語で書く(「未実施」「行っていない」などに言い換えない)。確認済みのように書かない。例: 「実際のブラウザでの表示は未確認(jsdom 上のテストのみ)」。

言語とタイトル

言語は次の順で決める。

  1. リポジトリの直近の PR 本文の言語(gh pr list --state merged --limit 5 --json body)
  2. 1 がなければ README の言語
  3. どちらもなければ会話の言語

会話の中で既存 PR の言語がすでに分かっているときは、1 の API 呼び出しを省略してよい。

タイトルは、直近の merged PR のタイトルの慣習に従う。Conventional Commits(feat: …)が使われていればそれに従う。

文体

  • 1 文に 1 つの事実を書く。
  • 評価語(「改善」「より良く」など)だけで済ませず、何がどう変わったかを書く。数値があれば数値を書く。
  • 専門語や略語は、初出で括弧の言い換えを付ける。例: 「polyfill(足りない組み込み関数を補う仕組み)」。
  • 日本語で書くときは japanese-tech-writing skill を読んで従う。
  • 英語で書くときは、短い平叙文で書き、受動態と修飾の重ねを避ける。

提出前チェック

  • 「概要」と「確認したこと」がある
  • 手順 1 の一覧の事実が、すべて本文のどこかに載っている
  • 手順 3 で未確認とした変化が、すべて「確認したこと」に載っている
  • 作業メモ(事実の一覧、割り当て、突き合わせ)が本文に混ざっていない
  • 書いた節には、すべて手順 2 で事実が割り当たっている
  • 「確認したこと」の各項目に確認手段がある
  • 確認していないことを確認済みのように書いていない
  • diff や commit ログの転記になっていない

帰属表示

本文末尾の帰属表示(Generated with Claude Code 等)は、ハーネスやユーザーの指示に従う。

参考

大きな PR の実例: https://github.com/azu/irodr/pull/127 (置き換え、互換性、挙動の変化、計測、確認したことを書き分けている)

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Migrate existing ADRs to YAML frontmatter format. Scans docs/decisions/ for ADRs without frontmatter, infers status from body text, shows dry-run for approval. Trigger: /adr-migrate

中文简介正在准备中。当前显示原文说明。

berlysia/dotfiles92026年10月21日 更新

Start or resume an ADR session. Without number: show status overview and recommend next actionable ADR. With number: provide phase-specific guidance. Trigger: /adr-session, /adr-session NNN, /adr-session new

中文简介正在准备中。当前显示原文说明。

berlysia/dotfiles92026年10月21日 更新

Analyze a project's harness maturity and guide staged adoption of Harness Engineering best practices (quality loops, safety gates, linters, CLAUDE.md optimization).

中文简介正在准备中。当前显示原文说明。

berlysia/dotfiles92026年10月21日 更新

bugfix

免费

Standardized bug fix workflow using TDD (Red-Green-Refactor). Use when fixing bugs, resolving issues, or when the user invokes /bugfix. Ensures root cause analysis, failing test first, then minimal fix.

中文简介正在准备中。当前显示原文说明。

berlysia/dotfiles92026年10月21日 更新

clarify

免费

Create detailed specifications by iteratively clarifying unclear points for Plan mode. Use when: After completing a plan when detailed requirements need clarification before implementation.

中文简介正在准备中。当前显示原文说明。

berlysia/dotfiles92026年10月21日 更新

Policy-enforcing installer that deploys hardened Claude Code Action workflows (`@claude` manual mention + dependency-bot auto-fix) into a personal GitHub repository the user administers. Use when asked to introduce Claude Code Action, apply `@claude` mention support, or set up automated CI auto-fix for dependency bot PRs, using the security-hardened templates shipped with this skill.

中文简介正在准备中。当前显示原文说明。

berlysia/dotfiles92026年10月21日 更新

查看 berlysia 的全部技能

报告此技能的问题