Communitygithub.com

LaiAnTan/agentic-setup

実装前に設計を行う。大規模な機能、リファクタリング、新規プロジェクト、マルチリポジトリ作業、またはコアロジック、状態、データ、マネー、セキュリティ、公開APIへの変更など、重要な作業に使用する。プロダクト、アーキテクチャ、プログラム設計、そして垂直スライスを段階的に進め、各段階でユーザーの承認を求め、設計内容をdocs/designs/に記録する。

agentic-setup とは?

このスキルは、AIエージェントがコーディングを始める前に、設計と承認のプロセスを体系的に導くことで、設計の劣化を防止します。エージェントは実装が高速である一方、設計の崩れに気づきにくいため、このスキルは「コードが存在する前に」主要な決定事項について合意することを強制します。これにより、後続の各PRは事前承認された設計に沿ったものとなり、レビューが迅速になります。ワークフローは一連の段階(プロダクト、アーキテクチャ、プログラム設計、スライス)で構成され、作業の規模に応じて開始段階が変わります。各段階では、エージェントが該当する設計ドキュメントを下書きし、図と決定事項のリストを提示してから停止し、ユーザーの承認を待ちます。ユーザーが変更を指示した場合は、チャットだけでなく設計ファイルも更新します。すべての段階が承認された後、エージェントはスライス計画に従って1スライスずつ実装し、各スライスの完了条件を確認します。実装中に設計の誤りが発覚した場合は、静かに逸脱するのではなく、設計変更を提案して設計ファイルを更新します。最終的には、成果を生きたドキュメントに反映させ、設計ファイルを完了済みとしてマークし、決定事項をdocs/decisions/に記録します。このスキルはClaude Code、Cursor、CodexなどのAIエージェントプラットフォームで使用することを想定しており、大規模または影響範囲の広い作業に特に適しています。

対応~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/LaiAnTan/agentic-setup/tree/HEAD/skills/design

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

実装前の設計

エージェントは実装が速い反面、設計の劣化に気づきにくいという問題があります。その対策として、コードが存在する前に決定事項について合意しておくことで、各PRがすでに承認された内容と一致するため、レビューが迅速になります。各段階の下書きはあなたが行い、ユーザーがレビューして承認します。

1. 作業の規模を見積もり、段階を選択する

作業段階
中規模機能、影響範囲の限られたリファクタリングプログラム設計 → スライス
大規模機能、横断的なリファクタリングアーキテクチャ → プログラム設計 → スライス
新規プロジェクト、マルチリポジトリ、または問題が不明確な場合プロダクト → アーキテクチャ → プログラム設計 → スライス

選択した規模とその理由を1行で述べてください。ユーザーは段階を追加したりスキップしたりできます。

2. 最初にコンテキストを収集する

下書きを始める前に:docs/README.md とそれが指し示す生きたドキュメント、docs/designs/ にある開いている設計、関連するコードとその領域のgit履歴を読んでください。ツールやアプローチの選択については、(ドキュメント、ベンチマーク、既知の問題などを)調査し、ソース付きの具体的な選択肢を提示してください。仮定から設計を始めないでください。

3. 各段階を実行する

docs/designs/YYYY-MM-DD-<slug>.md という設計ファイルを template.md から作成してください(リポジトリにまだない場合は、グローバルルールに従って docs/ レイアウトを最初に設定してください)。各段階について、このスキルのフォルダ内にある該当する段階ファイルを読み、設計ファイルの該当セクションを下書きし、その後停止してください:

  • product.md: 問題、ユーザー、振る舞い、範囲外
  • architecture.md: コンポーネント、契約、データモデル、制約
  • program-design.md: 型、シグネチャ、ファイルレイアウト、呼び出しフロー
  • slices.md: 構築順序、リポジトリ、PR、各スライスのチェック

停止するときは、ユーザーに以下を提示してください:

  • 役立つ場合は図と、短い要約(チャットに貼り付けたドキュメント全体ではありません)
  • あなたが行った決定と、未解決の質問。番号を付けて、ユーザーが「2: はい」のように答えられるようにしてください

次の段階は、ユーザーがこの段階を承認するまで開始しないでください。ユーザーが何かを変更した場合は、チャットだけでなく設計ファイルも更新してください。

4. スライスごとに構築する

スライス計画が承認された後:

  • 一度に1スライスずつ構築し、各スライスは合意されたチェックが成功し、その証拠を示した時点で終了します。
  • スライスごとに1つのPR(またはユーザーがPRを使用しない場合はコミット1つ)を作成し、グローバルルールに従って説明します。
  • 実装によって設計が誤っていることが明らかになった場合は、静かに設計から逸脱するのではなく、停止して設計への変更を提案してください。変更が合意されたら、設計ファイルを更新します。
  • 設計ファイル内でスライスが完了したものにチェックを入れ、後のセッションでそこから再開できるようにします。

5. 完了

最後のスライスが完了したら、結果を生きたドキュメントに反映させ、それらが信頼できる情報源であり続けるようにします:

  • リポジトリの docs/product.md、docs/architecture.md および関連するトピックドキュメント(このスキルの段階ファイルではありません)を更新して、現在のシステムを説明するようにします。グローバルルールのドキュメント作成ルールに従ってください。
  • 新しく難解な用語やプロジェクト固有の用語を docs/glossary.md に追加します。
  • 重要な決定事項はそれぞれ docs/decisions/NNNN-<slug>.md ノートにします。
  • 設計ファイルを完了としてマークし、docs/README.md に追加します。その後は書き換えないでください。
  • ユーザーに、生きたドキュメントで何が変更されたかを示します。

関連スキル