refactor: hard-fork GSD -> MSD (Make Software Done)
Mechanical rename produced by scripts/msd-rename.cjs: gsd/Gsd/GSD -> msd/Msd/MSD across contents and paths, upstream package/repo coordinates -> @golem15/msd-core and golem15com/msd-core. Deep links into upstream history, sibling upstream packages, the GSD-2 import feature, CHANGELOG.md and .changeset/ are kept as-is. Hand edits on top: MSD block-letter banner and logos, LICENSE copyright line, package/plugin identity, regenerated lockfile, install-tree fixtures, derived registries and benchmark baseline; migration checksum baseline re-locked (MSD keeps its own install state, so no install had applied the old sums); sort-order and regex-escaped expectations in tests adjusted.
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
# 既存コードベースのオンボーディング
|
||||
|
||||
このチュートリアルでは、すでにコードが存在するリポジトリに GSD Core を導入します。コードベースをマッピングし、*追加する*内容を説明するプロジェクトを作成して、小さな変更に対して最初の議論・計画サイクルを実行します。最終的に、GSD Core の計画パイプラインがあなたのスタック、規約、懸念事項を把握し、計画するたびにその知識を活用できる状態になります。
|
||||
このチュートリアルでは、すでにコードが存在するリポジトリに MSD Core を導入します。コードベースをマッピングし、*追加する*内容を説明するプロジェクトを作成して、小さな変更に対して最初の議論・計画サイクルを実行します。最終的に、MSD Core の計画パイプラインがあなたのスタック、規約、懸念事項を把握し、計画するたびにその知識を活用できる状態になります。
|
||||
|
||||
---
|
||||
|
||||
## 作るもの
|
||||
|
||||
既存の Express アプリケーションに `GET /health` エンドポイントを1つ追加します。変更は小さく、本来のレッスン — GSD Core が計画前にコードベースを学習する仕組み — から注意がそれることはありません。
|
||||
既存の Express アプリケーションに `GET /health` エンドポイントを1つ追加します。変更は小さく、本来のレッスン — MSD Core が計画前にコードベースを学習する仕組み — から注意がそれることはありません。
|
||||
|
||||
---
|
||||
|
||||
@@ -18,12 +18,12 @@
|
||||
|
||||
---
|
||||
|
||||
## ステップ 1 — GSD Core のインストール
|
||||
## ステップ 1 — MSD Core のインストール
|
||||
|
||||
リポジトリのルートで以下を実行します:
|
||||
|
||||
```bash
|
||||
npx @opengsd/gsd-core@latest
|
||||
npx @golem15/msd-core@latest
|
||||
```
|
||||
|
||||
プロンプトが表示されたら **Claude Code** と **local** を選択してください。以下が表示されます:
|
||||
@@ -31,7 +31,7 @@ npx @opengsd/gsd-core@latest
|
||||
```text
|
||||
✓ Installed 86 skills to .claude/commands/
|
||||
✓ Installed agents to .claude/agents/
|
||||
✓ GSD Core ready — run /gsd-new-project to start
|
||||
✓ MSD Core ready — run /msd-new-project to start
|
||||
```
|
||||
|
||||
---
|
||||
@@ -44,7 +44,7 @@ claude --dangerously-skip-permissions
|
||||
|
||||
> [!CAUTION]
|
||||
> **The permissions flag is optional.** It skips per-file confirmation while
|
||||
> GSD's sub-agents read and write files. Use it only in low-stakes or
|
||||
> MSD's sub-agents read and write files. Use it only in low-stakes or
|
||||
> throwaway contexts. To keep confirmations enabled, start with `claude` instead.
|
||||
> For real work, read the [security model](../explanation/security-model.md) first.
|
||||
|
||||
@@ -53,13 +53,13 @@ claude --dangerously-skip-permissions
|
||||
|
||||
## ステップ 3 — Brownfield オンボーディングの開始
|
||||
|
||||
プロジェクトを作成する前に、GSD Core にリポジトリ状態を確認させ、安全な次のトップレベルコマンドを表示させます。これにより、コードベースコンテキストの取りこぼしや既存 planning ファイルの上書きを防げます。
|
||||
プロジェクトを作成する前に、MSD Core にリポジトリ状態を確認させ、安全な次のトップレベルコマンドを表示させます。これにより、コードベースコンテキストの取りこぼしや既存 planning ファイルの上書きを防げます。
|
||||
|
||||
```text
|
||||
/gsd-onboard
|
||||
/msd-onboard
|
||||
```
|
||||
|
||||
オンボーディングがコードベースマップ不足を示したら、推奨オプションを選び、表示された `/gsd-map-codebase` ハンドオフを実行してから `/gsd-onboard` を再実行します。`/gsd-onboard --fast` は軽量な初回パスには使えますが、`/gsd-new-project` の前には完全なマップが必要です。`/gsd-map-codebase` が4つの並行マッパーサブエージェントを生成します(「Spawning 4 parallel codebase mapper agents…」という通知が表示されます。1〜5分かかりますので中断しないでください)。各エージェントはそれぞれ異なる観点に注目します:
|
||||
オンボーディングがコードベースマップ不足を示したら、推奨オプションを選び、表示された `/msd-map-codebase` ハンドオフを実行してから `/msd-onboard` を再実行します。`/msd-onboard --fast` は軽量な初回パスには使えますが、`/msd-new-project` の前には完全なマップが必要です。`/msd-map-codebase` が4つの並行マッパーサブエージェントを生成します(「Spawning 4 parallel codebase mapper agents…」という通知が表示されます。1〜5分かかりますので中断しないでください)。各エージェントはそれぞれ異なる観点に注目します:
|
||||
|
||||
| エージェント | 観点 |
|
||||
|-------|-------|
|
||||
@@ -83,9 +83,9 @@ Created .planning/codebase/:
|
||||
- CONCERNS.md (33 lines) - Technical debt and issues
|
||||
```
|
||||
|
||||
`.planning/codebase/STACK.md` を開いてください。GSD Core が検出した言語、ランタイム、フレームワークのバージョン、主要な依存関係が表示されます。これは推測ではなく、実際に読み込んだファイルに基づいています。
|
||||
`.planning/codebase/STACK.md` を開いてください。MSD Core が検出した言語、ランタイム、フレームワークのバージョン、主要な依存関係が表示されます。これは推測ではなく、実際に読み込んだファイルに基づいています。
|
||||
|
||||
`.planning/codebase/CONVENTIONS.md` を開いてください。ソースコードから観察した命名規則、エラーハンドリングパターン、コードスタイルのルールが表示されます。このリポジトリで GSD Core が生成するすべてのプランは、これらの規約に自動的に従います。
|
||||
`.planning/codebase/CONVENTIONS.md` を開いてください。ソースコードから観察した命名規則、エラーハンドリングパターン、コードスタイルのルールが表示されます。このリポジトリで MSD Core が生成するすべてのプランは、これらの規約に自動的に従います。
|
||||
|
||||
`.planning/codebase/CONCERNS.md` を開いてください。新機能の作業前に読む最も有用なファイルです。計画に影響しうる技術的負債や脆弱なエリアが表面化されています。
|
||||
|
||||
@@ -99,15 +99,15 @@ Created .planning/codebase/:
|
||||
/clear
|
||||
```
|
||||
|
||||
`/gsd-onboard` をもう一度実行します。GSD Core が ADR、PRD、spec、RFC、またはルートレベルの要件ドキュメントを検出した場合は、先に推奨される `/gsd-ingest-docs` ハンドオフを実行し、その後 `/gsd-onboard` を再実行してください。コンテキストが整うと、オンボーディングはプロジェクト初期化のハンドオフを表示します:
|
||||
`/msd-onboard` をもう一度実行します。MSD Core が ADR、PRD、spec、RFC、またはルートレベルの要件ドキュメントを検出した場合は、先に推奨される `/msd-ingest-docs` ハンドオフを実行し、その後 `/msd-onboard` を再実行してください。コンテキストが整うと、オンボーディングはプロジェクト初期化のハンドオフを表示します:
|
||||
|
||||
```text
|
||||
/gsd-new-project
|
||||
/msd-new-project
|
||||
```
|
||||
|
||||
前のステップで GSD Core が既存のコードを見つけているため、`/gsd-new-project` はこれがブラウンフィールドプロジェクトだと分かっています。質問は既存のものを再説明するのではなく、*追加する*内容に焦点を当てます:
|
||||
前のステップで MSD Core が既存のコードを見つけているため、`/msd-new-project` はこれがブラウンフィールドプロジェクトだと分かっています。質問は既存のものを再説明するのではなく、*追加する*内容に焦点を当てます:
|
||||
|
||||
GSD Core が何を作りたいかを尋ねます。コードベース全体の説明ではなく、追加する機能で答えてください:
|
||||
MSD Core が何を作りたいかを尋ねます。コードベース全体の説明ではなく、追加する機能で答えてください:
|
||||
|
||||
```text
|
||||
Add a GET /health endpoint to the Express app. It should return
|
||||
@@ -115,7 +115,7 @@ Add a GET /health endpoint to the Express app. It should return
|
||||
health checks.
|
||||
```
|
||||
|
||||
GSD Core が少数の確認質問をした後、要件とロードマップの作成に進みます。すでに `ARCHITECTURE.md` と `STACK.md` を読み込んでいるため、既存の機能を `PROJECT.md` の **Validated** セクションに自動的にマッピングします。既存の API サーフェスを説明する必要はありません。
|
||||
MSD Core が少数の確認質問をした後、要件とロードマップの作成に進みます。すでに `ARCHITECTURE.md` と `STACK.md` を読み込んでいるため、既存の機能を `PROJECT.md` の **Validated** セクションに自動的にマッピングします。既存の API サーフェスを説明する必要はありません。
|
||||
|
||||
すべてのワークフロー設定は推奨デフォルトを選択してください。
|
||||
|
||||
@@ -133,7 +133,7 @@ Proposed Roadmap
|
||||
|
||||
ロードマップを承認してください。
|
||||
|
||||
プロジェクト設定が完了したら、もう一度 `/gsd-onboard` を実行します。`PROJECT.md`、`REQUIREMENTS.md`、`ROADMAP.md`、`STATE.md` がすべて存在するため、オンボーディングは `.planning/onboarding/SUMMARY.md` を作成または確認します。
|
||||
プロジェクト設定が完了したら、もう一度 `/msd-onboard` を実行します。`PROJECT.md`、`REQUIREMENTS.md`、`ROADMAP.md`、`STATE.md` がすべて存在するため、オンボーディングは `.planning/onboarding/SUMMARY.md` を作成または確認します。
|
||||
|
||||
**`.planning/` に作成されるファイル:**
|
||||
|
||||
@@ -148,7 +148,7 @@ Proposed Roadmap
|
||||
codebase/ ← ステップ 3 の7つのマップファイル
|
||||
```
|
||||
|
||||
`.planning/codebase/` はすでにステップ 3 から存在しています。GSD Core は `PROJECT.md` を書く際にこれらのファイルを読み込んでいるため、あなたが説明しなくても Validated 要件を入力できたのです。
|
||||
`.planning/codebase/` はすでにステップ 3 から存在しています。MSD Core は `PROJECT.md` を書く際にこれらのファイルを読み込んでいるため、あなたが説明しなくても Validated 要件を入力できたのです。
|
||||
|
||||
---
|
||||
|
||||
@@ -159,10 +159,10 @@ Proposed Roadmap
|
||||
```
|
||||
|
||||
```text
|
||||
/gsd-discuss-phase 1
|
||||
/msd-discuss-phase 1
|
||||
```
|
||||
|
||||
GSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込んでいるため、質問は汎用的なアドバイスではなく、実際のコードベースに基づいています。以下のような内容が表示される場合があります:
|
||||
MSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込んでいるため、質問は汎用的なアドバイスではなく、実際のコードベースに基づいています。以下のような内容が表示される場合があります:
|
||||
|
||||
```text
|
||||
> Your routes are registered in src/routes/index.js. Should the health
|
||||
@@ -177,7 +177,7 @@ GSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込ん
|
||||
process.uptime() is fine.
|
||||
```
|
||||
|
||||
議論が終了すると、GSD Core が以下のファイルを書き込みます:
|
||||
議論が終了すると、MSD Core が以下のファイルを書き込みます:
|
||||
|
||||
```text
|
||||
.planning/phases/01-health-endpoint/CONTEXT.md
|
||||
@@ -190,7 +190,7 @@ GSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込ん
|
||||
## ステップ 6 — フェーズ 1 の計画
|
||||
|
||||
```text
|
||||
/gsd-plan-phase 1
|
||||
/msd-plan-phase 1
|
||||
```
|
||||
|
||||
4つのリサーチサブエージェントが並行して実行されます(1〜5分)。完了すると、プランナーが `CONTEXT.md`、リサーチ結果、コードベースマップを読み込み、あなたの規約に合ったタスクプランを作成します。
|
||||
@@ -204,7 +204,7 @@ GSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込ん
|
||||
01-02-PLAN.md ← タスク: src/routes/index.js へのヘルスルートの登録
|
||||
```
|
||||
|
||||
`01-01-PLAN.md` を開いてください。`<files>` タグが `src/routes/health.js` を参照していることに注目してください。これは議論で指定した正確なパスであり、GSD Core がコードベースマップで観察したルーティングパターンと一致しています。これがコードベースマップの効果です。
|
||||
`01-01-PLAN.md` を開いてください。`<files>` タグが `src/routes/health.js` を参照していることに注目してください。これは議論で指定した正確なパスであり、MSD Core がコードベースマップで観察したルーティングパターンと一致しています。これがコードベースマップの効果です。
|
||||
|
||||
---
|
||||
|
||||
@@ -213,21 +213,21 @@ GSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込ん
|
||||
コードベースマップ、議論の意思決定記録、検証済みタスクプランが揃ったプロジェクトができました。すべてが実際のコードに基づいています。ここからのワークフローはグリーンフィールドプロジェクトと同じです:
|
||||
|
||||
```text
|
||||
/gsd-execute-phase 1
|
||||
/gsd-verify-work 1
|
||||
/gsd-ship 1
|
||||
/msd-execute-phase 1
|
||||
/msd-verify-work 1
|
||||
/msd-ship 1
|
||||
```
|
||||
|
||||
今後の機能追加ごとに、構造が大幅に変わった際は `/gsd-map-codebase` を再実行してコードベースマップを最新の状態に保ってください。
|
||||
今後の機能追加ごとに、構造が大幅に変わった際は `/msd-map-codebase` を再実行してコードベースマップを最新の状態に保ってください。
|
||||
|
||||
---
|
||||
|
||||
## 学んだこと
|
||||
|
||||
- `/gsd-onboard` が対話型コマンドをネストしたり既存 planning ファイルを上書きしたりせずに、ブラウンフィールド設定を安全に順序付ける仕組み。
|
||||
- `/gsd-map-codebase` が4つの並行エージェントを実行して `.planning/codebase/` に `STACK.md`、`ARCHITECTURE.md`、`CONVENTIONS.md`、`CONCERNS.md`、`STRUCTURE.md`、`TESTING.md`、`INTEGRATIONS.md` を生成する仕組み。
|
||||
- ブラウンフィールドリポジトリで `/gsd-new-project` を実行すると、*追加する*内容に焦点を当てた質問がされ、既存コードから Validated 要件が自動入力される仕組み。
|
||||
- コードベースマップが `/gsd-discuss-phase` のすべての質問を形成する方法 — ファイルパス、パターン、規約が実際のコードから導出される。
|
||||
- `/msd-onboard` が対話型コマンドをネストしたり既存 planning ファイルを上書きしたりせずに、ブラウンフィールド設定を安全に順序付ける仕組み。
|
||||
- `/msd-map-codebase` が4つの並行エージェントを実行して `.planning/codebase/` に `STACK.md`、`ARCHITECTURE.md`、`CONVENTIONS.md`、`CONCERNS.md`、`STRUCTURE.md`、`TESTING.md`、`INTEGRATIONS.md` を生成する仕組み。
|
||||
- ブラウンフィールドリポジトリで `/msd-new-project` を実行すると、*追加する*内容に焦点を当てた質問がされ、既存コードから Validated 要件が自動入力される仕組み。
|
||||
- コードベースマップが `/msd-discuss-phase` のすべての質問を形成する方法 — ファイルパス、パターン、規約が実際のコードから導出される。
|
||||
- プランナーが `CONTEXT.md` と `CONVENTIONS.md` を読み込んでリポジトリのスタイルに合ったプランを生成する仕組み。
|
||||
|
||||
---
|
||||
@@ -235,5 +235,5 @@ GSD Core があなたの `CONVENTIONS.md` と `ARCHITECTURE.md` を読み込ん
|
||||
## Related
|
||||
|
||||
- [はじめてのプロジェクト](your-first-project.md) — インストールから PR まで完全なグリーンフィールドループ
|
||||
- [コマンドによるコードベースマッピング](../COMMANDS.md) — `/gsd-map-codebase` のすべてのフラグとサブコマンド
|
||||
- [コマンドによるコードベースマッピング](../COMMANDS.md) — `/msd-map-codebase` のすべてのフラグとサブコマンド
|
||||
- [ドキュメントインデックス](../README.md)
|
||||
|
||||
Reference in New Issue
Block a user