create-rfc について
未決定の事項について関係者の合意形成を図る RFC を、実行ごとに 1 件作成するスキルです。必要な情報の確認、選択肢の率直な比較、書き込み前の保存先確認を求めます。
主な機能
- 01RFC の必須項目の収集と確認
- 02事前の判断基準に沿った選択肢の比較
- 03重要な変更で現状維持案を含める
- 04RFC の種類別ガイダンスと品質確認
- 05書き込み前の保存先確認
活用シーン
- 01未決の技術変更に関する関係者調整
- 02プロセス、製品、ベンダー、ポリシー案の比較
- 03前提とトレードオフを明記した RFC の作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ emiliosheinz/ agent-skills --skill create-rfcインストール後、Claude Code で/create-rfcを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdreferences/numbering.mdprocess.mdquality.mdtypes.mdtemplates/rfc.md詳細
RFC を作成する
1 回の実行につき 1 つの RFC を作成します。RFC は、まだ決定されていない事項について意思決定を提案し、関係者間の合意形成を促すものです。すでに決定済みの場合は、/create-adr を使って記録してください。次の 5 段階のプロセスを順に進めます。ステップ 2 で必須項目を確認し、すべてそろってからドラフトの作成を開始します。
厳守事項
- 事実を決して捏造しないでください。 必須項目が欠けている場合は質問してください。背景、前提条件、選択肢を、もっともらしいだけの内容で埋めてはいけません。
- すでに決まっている結論を提示しないでください。 実質的な選択肢が 1 つしかない場合、その文書は RFC ではなく ADR です。代わりに
/create-adrを使ってください。 - 選択肢より先に判断基準を示してください。 選択肢を提示した後に基準を書くと、特定の選択肢を支持するための正当化に見えてしまいます。
- 重要な変更では、明示的な選択肢として「何もしない」を含めてください。該当する変更の定義は、共通ルール 2 を参照してください。
- トレードオフを省略しないでください。 すべての選択肢について、メリットとともに正直なデメリットを記載してください。
- ユーザーが使用している言語で書いてください。 文書のすべてのセクションで、セッション中にユーザーが使用している言語を使ってください。
振り分け
プロセスを順に進めてください。作業を始める前に、対応する参照ファイルを最後まで読んでください。 そのステップの手引きです。
| ステップ | 読むファイル | 目的 |
|---|---|---|
| 1 — コンテキストの収集 | references/process.md | トピック、影響度、緊急度、検討中の選択肢について尋ねる |
| 2 — 必須項目の確認 | references/process.md | タイトル、背景、RACI、判断基準、選択肢、推奨案がそろっていることを確認する |
| 3 — RFC の種類に合わせる | references/types.md | 技術/プロセス/製品/ベンダー/ポリシーごとの追加確認事項 |
| 4 — 作成 | templates/rfc.md + references/numbering.md | テンプレートを埋め、番号を割り当て、品質チェックリストを実行する |
| 5 — 配置と次のステップ | references/process.md | ファイルの配置場所を確認し、概要とフォローアップを提示する |
最終確定の前に、品質チェックリスト(references/quality.md)を実行してください。選択肢が公正であること、判断基準に重み付けがあること、背景が定量化されていること、前提条件が明示されていることを確認します。
テンプレート
純粋な Markdown のひな型です。作成時にのみ読み込んでください。
templates/rfc.md— 必須セクションと推奨セクション。空になる推奨セクションは削除してください。必須セクションは、値が*to be confirmed*であってもすべて残してください。
共通ルール
- 誠実さ。 判断基準に照らして選択肢を公正に比較してください。メリットとデメリットは実際のものでなければなりません。前提条件は、確信度と無効化の条件を添えて明示してください。
- 重要な変更では、常に「何もしない」を選択肢に含めます。 これにより、変更にコストをかける価値があるかどうかを正直に評価できます。重要な変更とは、ステップ 1 で記録した影響度が HIGH または MEDIUM の変更を指します(複数のチーム/システム/ユーザーに影響する場合、または 1 つのチーム全体もしくはシステム全体に影響する場合)。影響度が LOW の変更(範囲が限定的で、容易に元に戻せる変更)では、現状維持を省略してもかまいません。その場合は、読者に疑問を抱かせないよう、その旨を 1 行で記載してください。このスキルにおける「重要」の定義はこれだけです。それ以外の箇所で「重要」と記載されている場合も、この定義に準じます。
- ドラフト作成中、Outcome はプレースホルダーです。 意思決定後に記入し、決定を残す価値がある場合は、結果として作成した ADR にリンクしてください。
- RFC は実装ではなく、意思決定のためのものです。 決定後は
/create-adr(記録)と/forge(構築)に引き継いでください。 - すべての日付を記録し、影響度を最初に記録してください。
- 書き始める前に確認を取ってください。 ステップ 5 でファイルパスを提案し、ユーザーが配置場所を確認してから書き込んでください。
関連スキル
プロセスのどの段階でも、次のスキルを利用できます。
/create-adr— すでに意思決定がなされている場合に使用します。ADR には、内容、理由、結果を変更不能な履歴記録として残します。重要な選択では、RFC → 意思決定 → ADR が自然な流れです。/forge— 仕様駆動の実装に使用します。RFC の内容が決定したら、/forge specify | design | plan | executeを使い、選択した案をリリース可能な作業に分割してください。
帰属表示
Tech Leads Clubによる CC-BY-4.0ライセンスの create-rfcに基づいています。原著作物には変更が加えられています。
コメント
Markdown 対応