architecture-decision-records
Officialコーディングセッション中にアーキテクチャ決定を構造化ADRとして記録し、自動的に決定の瞬間を検出し、コンテキスト、検討された代替案、根拠を記録します。今後の開発者がコードベースの形成理由を理解するためのADRログを維持します。
What this skill does
When applied, it prepends a system prompt before your request is sent — no extra calls and no change to how you are billed beyond the added tokens.
--- name: architecture-decision-records description: コーディングセッション中にアーキテクチャ決定を構造化ADRとして記録し、自動的に決定の瞬間を検出し、コンテキスト、検討された代替案、根拠を記録します。今後の開発者がコードベースの形成理由を理解するためのADRログを維持します。 origin: ECC --- # アーキテクチャ決定記録 コーディングセッション中にアーキテクチャ決定を構造化ドキュメントとして記録します。決定がSlackスレッド、PRコメント、または誰かの記憶にのみ存在する代わりに、このスキルはコードと並行して存在する構造化ADRドキュメントを生成します。 ## アクティベーション時期 - ユーザーが明示的に「この決定を記録しよう」または「このADRを作成しよう」と言う - 重要な代替案の選択(フレームワーク、ライブラリ、パターン、データベース、API設計) - ユーザーが「私たちは...を選択した」または「YではなくXをしている理由は...です」と言う - ユーザーが「なぜXを選んだのか」と尋ねる(既存のADRを読む) - アーキテクチャ上のトレードオフが検討される計画段階 ## ADR形式 Michael Nygardによって提案されたADR形式を、AI支援開発向けに調整したものを使用します: ```markdown # ADR-NNNN: [決定タイトル] **Date**: YYYY-MM-DD **Status**: proposed | accepted | deprecated | superseded by ADR-NNNN **Deciders**: [関係者] ## Context この決定または変更を促すどのような問題や状況が見られるのか? [2~5文で状況、制約条件、作用する力について説明] ## Decision 提案または実施する変更は何か? [決定を明確に述べる1~3文] ## Alternatives Considered(検討された代替案) ### Alternative 1: [名前] - **Pros**: [利点] - **Cons**: [欠点] - **Why not**: [この選択肢が拒否された特定の理由] ### Alternative 2: [名前] - **Pros**: [利点] - **Cons**: [欠点] - **Why not**: [この選択肢が拒否された特定の理由] ## Consequences(結果) この変更により、何がより簡単になり、何がより難しくなるか? ### Positive - [利点1] - [利点2] ### Negative - [トレードオフ1] - [トレードオフ2] ### Risks - [リスクと軽減策] ``` ## ワークフロー ### 新しいADRをキャプチャする 決定の瞬間が検出されたとき: 1. **初期化(初回のみ)** — `docs/adr/`が存在しない場合、ユーザーの確認を得た上でディレクトリ、インデックステーブルヘッダーでシードされた`README.md`(下記のADRインデックス形式を参照)、手動使用用の空白の`template.md`を作成します。明示的な同意なしにファイルを作成しないでください。 2. **決定を特定する** — 行われている中核的なアーキテクチャの選択を抽出する 3. **コンテキストを収集する** — この問題を起こした背景は?存在する制約条件は? 4. **代替案をドキュメント化する** — どの他のオプションが検討されたか? なぜ拒否されたか? 5. **結果を述べる** — トレードオフは何か?何がより簡単/難しくなるか? 6. **番号を割り当てる** — `docs/adr/`内の既存のADRをスキャンして増分する 7. **確認して書き込む** — レビュー用のドラフトADRをユーザーに提示します。明示的な承認後にのみ`docs/adr/NNNN-decision-title.md`に書き込みます。ユーザーが辞退した場合、ファイルを書き込まずにドラフトを破棄します。 8. **インデックスを更新する** — `docs/adr/README.md`に追記する ### 既存のADRを読む ユーザーが「なぜXを選んだのか」と尋ねたとき: 1. `docs/adr/`が存在するかチェック — 存在しない場合、「このプロジェクトでADRが見つかりません。アーキテクチャ決定の記録を始めたいですか?」と応答 2. 存在する場合、関連エントリの`docs/a
Use this skill
Add a "skill" field with the skill’s ID to your chat completion request. It is applied server-side before your prompt is sent — no extra calls.
{
"model": "gpt-4o-mini",
"skill": "imp-1ecd571c-2b77-441b-9253-c4a49153742b",
"messages": [{ "role": "user", "content": "…" }]
}Install the skill, enable it in your dashboard and (optionally) limit it to specific models. It then applies automatically to every matching request — with no "skill" field to send each time.
Set it up in your dashboardMore skills
Delegate coding work to Codex, Claude Code, or OpenCode as background workers; not simple edits or read-only code lookup.
Create, edit, audit, tidy, validate, or restructure AgentSkills and SKILL.md files.
Search and analyze your own session logs (older/parent conversations) using jq.
Create, view, edit, delete, search, move, or export Apple Notes via the memo CLI on macOS.
Diagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.
List, add, edit, complete, or delete Apple Reminders and reminder lists via remindctl.
Create, search, and manage Bear notes via grizzly CLI.