Communityライティング&編集github.com

lggarrison/agent-skills

プロジェクトのロードマップを作成・維持し、Markdownファイルとしてリポジトリに保存します。各ロードマップはフェーズ、安定したIDと確認可能な完了条件を持つ作業項目、明示的な依存関係、未解決の決定事項リスト、および変更履歴で構成されます。ロードマップや納品計画の作成、更新、最近の作業との整合、再構成、レビューを依頼されたときに使用します。

agent-skills とは?

このスキルは、開発エージェント(Claude Code、Cursor、Codexなど)がプロジェクトロードマップを構造化されたMarkdownファイルとしてリポジトリ内に作成・保守するためのものです。ロードマップには、安定したID(例:R-001)と確認可能な完了条件を持つ作業項目、フェーズごとの終了条件、明示的な依存関係、未解決の決定事項リスト、変更履歴が含まれます。このスキルは、新しいロードマップの作成、既存ロードマップの更新、実際の進捗との整合(リコンサイル)、レビューの4つのユースケースに対応しています。テンプレートが提供されており、エージェントはまずリポジトリ固有の規則(AGENTS.md、CLAUDE.mdなど)を確認し、次にユーザーに判断を仰ぐ前にコードやIssue、PRなどの証拠を収集します。ロードマップは「会話ではなく行動」を重視し、未決定の質問は「Open decisions」セクションに明示的に記載します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/lggarrison/agent-skills/tree/HEAD/skills/generating-roadmaps

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

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

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

ドキュメント

ロードマップの生成

ロードマップとは、次に引き継ぐ人が、会話の内容を知らなくてもそのまま実行できる計画です。プロジェクトが何を目指しているか、どの順序で進めるか、各要素が完了したかどうかをどう判断するか、そしてまだ未解決の質問は何かを示します。ロードマップはコードの隣にリポジトリ内に置かれるため、他のすべてのファイルと同様にレビューされ、バージョン管理されます。

ロードマップは決定を記録します。決定を下すわけではありません。何かが未決定の場合、ロードマップはその旨を明記します。

リポジトリの規則が優先

何かを書く前に、リポジトリ独自の規約を確認してください:AGENTS.md、CLAUDE.md、CONTRIBUTING.md、ドキュメントやWikiのスキーマ、既存のロードマップなどです。これらがロードマップの保存場所、メタデータ、Issueのリンク方法、実行すべきチェックを決定します。これらの規約とこのスキルが矛盾する場合は、リポジトリの規約が優先されます。新しい形式を導入するのではなく、既存のロードマップの形式に従ってください。

ワークフロー

1. 依頼を明確にする

ユーザーが何を望んでいるかを特定します。それぞれに必要な作業量が異なります:

  • 新しいロードマップ: プロジェクト、機能、移行、テスト作業などについて。
  • 更新: 項目の追加・変更、フェーズの並び替え、決定事項の記録。
  • リコンサイル: 既存のロードマップを実際にリリースされたものと整合させる。
  • レビュー: ロードマップを読み、書き換えずにギャップを報告する。

2. 質問する前に証拠を集める

プロジェクトがすでに知っている情報を読み込みます:関連するコードとテスト、オープンおよび最近クローズされたIssue、マージ済みおよびオープンのPR、既存のドキュメント、その領域のコミット履歴。今日何が存在するか、何がすでに進行中か、以前に何が試みられたかをメモします。

この方法で学習できることは、ユーザーに質問しないでください。

3. 判断が必要な点について質問する

ロードマップの質はその背後にある判断に依存し、そのほとんどはユーザーに属します。長いリストではなく、短いラウンドで質問し、トレードオフが明白でない場合はなぜその質問が重要なのかを説明します。良いテーマ:

  • ゴール: この取り組みを行う価値がある結果は何か、そしてそれが達成されたことを誰がどうやって知るのか?
  • スコープ: 明確に除外するものは何か?変更してはいけないものは何か(API、データ形式、振る舞い)?
  • 制約: 締め切り、リリース、人員、予算、プラットフォーム。
  • 優先順位: この半分しかリリースできない場合、どちらを優先するか?
  • リスク: 最も理解が進んでいない部分はどこか?最初に取り組むべきか?
  • 完了条件: どのテスト、メトリクス、レビューを証拠とみなすか?

証拠が裏付ける場合は推奨事項を提案します。常にユーザーが「まだ決まっていない」と回答できるようにします。その回答は未解決の決定事項に記載し、推測で書いてはいけません。

小さな更新の場合は、すぐに作成に進みます。新しいロードマップの場合は、2〜3ラウンドの質問を想定してください。

4. 構造を選ぶ

  • 1つのファイル(ROADMAP.md、またはリポジトリに合った名前)がほとんどのロードマップに適しています。
  • ディレクトリ(roadmaps/<slug>/README.md と補助ページ)は、計画に調査メモ、デザインスケッチ、テストマトリックスなど、作業項目を埋もれさせるような長い補足資料が必要な場合のみ使用します。メインページはすべての作業項目IDを保持します。

5. 作成する

以下のテンプレートを使用します。長期にわたって有用性を保つためのルール:

  • 安定したID。 すべての作業項目に R-001 のようなIDを付与します。IDの番号を振り直したり、再利用したりしてはいけません。中止した作業はファイル内に dropped として理由とともに残します。
  • フェーズには終了条件がある。 各フェーズは、完了したときに何が真になるかを示します。フェーズは依存関係を優先し、次にリスク、その次に価値の順に並べます。
  • 完了条件は確認可能である。 誰かが検証可能な条件(通過するテスト、成功するコマンド、測定可能な数値)を書きます。「堅牢」「改善」「クリーン」などの言葉は避けます。
  • 依存関係は明示的である。 IDでリストします。チームのコントロール外のもの(別のリポジトリ、ベンダー、決定事項など)は明記します。
  • 証拠は完全なURLまたはリポジトリ相対パスでリンクし、他の場所にコピーされてもリンクが機能するようにします。
  • 計画を説明し、会議を説明しない。 現在形、現在の状態で記述します。履歴は変更履歴に記載します。

6. 確認する

引き渡す前に:

  • すべての項目にID、ステータス、少なくとも1つの完了条件がある。
  • すべての依存関係が存在するIDを指している。
  • 後のフェーズに依存するフェーズがない。
  • 未決定の質問はすべて未解決の決定事項にあり、項目内に隠れていない。
  • リンクが解決し、ファイルパスが存在する。
  • リポジトリのフォーマットとドキュメントチェックが通過する。
  • 変更履歴に今回の変更のエントリがある。

7. 報告する

作成または変更した内容、記録した決定事項、まだ未解決の質問をユーザーに伝えます。

ロードマップを現実と整合させる

作業が完了するにつれてロードマップは古くなります。整合させるには:

  1. done または dropped ではない項目をリストアップします。
  2. 各項目について、マージされたPR、クローズされたIssue、完了条件を満たすコードを探します。
  3. すべての条件が満たされた場合のみ、項目を done とマークします。証拠をリンクします。
  4. 作業が計画と異なる形でリリースされた場合、実際に起こったことを反映するように項目を更新し、変更履歴に違いを記載します。
  5. 発見した新しい作業は、新しいIDを持つ新しい項目として追加します。
  6. 変更内容をユーザーに要約します。何かを削除する前には確認を取ってください。

ロードマップのレビュー

レビューのみを依頼された場合、書き換えはしません。重要度の高い順に報告します:

  • 完了を判断する方法がないゴールやフェーズ
  • 曖昧な完了条件を持つ項目
  • 欠落している、または循環している依存関係
  • 証拠が裏付けていないのに確定済みとして提示されている決定
  • コードやIssueトラッカーがすでに完了または無関係であることを示している項目
  • 欠落しているリスク:最も難しい、または最も理解が進んでいない部分が後半にスケジュールされている

テンプレート

# <プロジェクトまたは機能> ロードマップ

**ゴール:** <1~2文で結果を説明>
**ステータス:** <draft | active | complete | superseded>
**最終更新日:** <YYYY-MM-DD>

## コンテキスト

この作業が今重要な理由、現在の状況、証拠へのリンク。

## スコープ

- **含む:** …
- **含まない:** …
- **変更しない:** …

## ステータス凡例

| ステータス       | 意味                                         |
| ---------------- | -------------------------------------------- |
| `planned`        | 合意済み、未着手                             |
| `in-progress`    | 誰かが作業中                                 |
| `blocked`        | 依存関係または決定を待っている(どちらかを明記)|
| `done`           | すべての完了条件が証拠とともに満たされた     |
| `dropped`        | 実施しない(理由を明記)                     |

## フェーズ1: <名前>

**終了条件:** <このフェーズが完了したときに真になること>

### R-001: <短いタイトル>

- **ステータス:** planned
- **理由:** <これが解決する問題>
- **完了条件:**
  - [ ] <確認可能なステートメント>
- **依存関係:** <ID、または「なし」>
- **証拠:** <Issue、PR、またはファイルへのリンク>

## フェーズ2: <名前>

…

## 未解決の決定事項

| ID    | 質問 | 選択肢 | ブロック | 担当者 |
| ----- | ---- | ------ | ------- | ------ |
| D-001 | …    | …      | R-004   | …      |

## リスク

| リスク | 可能性 | 影響度 | 緩和策 |
| ------ | ------ | ------ | ------ |

## 変更履歴

- <YYYY-MM-DD>: <変更内容と理由>

該当しないセクションは削除してください。小規模なロードマップは、ゴール、1つのフェーズ、変更履歴だけで十分かもしれません。

やってはいけないこと

  • ロードマップが不完全に見えるからといって、決定をでっち上げること。
  • 具体的な成果のない汎用的な項目(「ドキュメントを追加」「テストを改善」)で計画を水増しすること。
  • 項目の番号を振り直したり、削除した項目を消すこと。
  • PRのタイトルだけで完了条件を確認せずに done とマークすること。
  • ロードマップの内容全体をIssueにコピーしたり、その逆をすること。代わりにリンクしてください。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

lggarrison/agent-skills

Writes, debugs, and reviews end-to-end tests that drive a whole app through a browser, a CLI, or an API the way a user would. Covers choosing which journeys deserve an e2e test, stable locators, waiting on conditions instead of time, isolated test data, debugging failures from traces, and fixing flaky tests at the cause. Defaults to Playwright when a repo has no e2e tool yet. Use when adding or changing an e2e test, an e2e test fails or is flaky in CI, or reviewing e2e tests in a diff.

lggarrison/agent-skills

Code review rules for pull requests. Use when reviewing a PR or a diff, or re-reviewing a PR after new commits: what to flag, the severity bar, the comment format, and how to converge over review rounds instead of raising new minor issues every time.

lggarrison/agent-skills

Sets up or audits a repository's baseline files, including license, security policy, contributing guide, README, editor and Git hygiene, PR and issue templates, Dependabot, CI, and for Node.js/TypeScript projects the lint, format, test, hook, and publish tooling. Includes starter PR and issue templates. Use when bootstrapping a new repository, adding missing community or GitHub files to an existing one, or checking a repository against a new-repo checklist.

lggarrison/agent-skills

Sets up and maintains a Markdown wiki inside a repository that agents keep current, in the "LLM wiki" style. Use when asked to create a project wiki, add a source to it, answer a question from it, update it after a code change, check it for broken links or stale pages, or reorganize it.

関連スキル