Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
},
"metadata": {
"description": "AI-driven development toolkit for TDD and SDD workflows, providing comprehensive command templates and agents to enhance developer productivity with Claude Code",
"version": "0.0.6"
"version": "0.0.7"
},
"plugins": [
{
"name": "tsumiki",
"source": "./",
"description": "AI-driven development toolkit for TDD and SDD workflows, providing comprehensive command templates and agents to enhance developer productivity with Claude Code",
"version": "0.0.6",
"version": "0.0.7",
"author": {
"name": "makoto kuroeda",
"email": "[email protected]"
Expand Down
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "tsumiki",
"version": "0.0.6",
"version": "0.0.7",
"description": "AI-driven development toolkit for TDD and SDD workflows, providing comprehensive command templates and agents to enhance developer productivity with Claude Code",
"author": {
"name": "makoto kuroeda",
Expand Down
337 changes: 337 additions & 0 deletions DCS_README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,337 @@
# DCS ドキュメント

## 全体概要

DCSは、ソフトウェア開発の各フェーズにおける様々な分析・計画作業を支援するコマンドスイートです。各コマンドは対話的に必要な情報を収集し、`.dcs/` ディレクトリ配下に構造化された分析結果を出力します。

### 開発フェーズ別コマンド一覧

#### **企画・要件定義フェーズ**
- `/tsumiki:dcs:feature-rubber-duck` - アイデア整理とPRD作成

#### **設計・分析フェーズ**
- `/tsumiki:dcs:sequence-diagram-analysis` - シーケンス図作成
- `/tsumiki:dcs:state-transition-analysis` - 状態遷移分析
- `/tsumiki:dcs:impact-analysis` - 影響範囲分析

#### **実装計画フェーズ**
- `/tsumiki:dcs:incremental-dev` - 増分開発計画

#### **デバッグ・保守フェーズ**
- `/tsumiki:dcs:bug-analysis` - バグ原因分析
- `/tsumiki:dcs:performance-analysis` - 性能問題調査

---

## コマンド詳細

### 1. feature-rubber-duck

**用途**
曖昧なアイデアや要望を対話を通じて整理し、実現可能なPRD(Product Requirements Document)を作成します。

**概要**
ラバーダック法のように、対話を重ねながら機能アイデアを具体化していきます。コードベース調査、技術検証、要件の具体化を段階的に進め、最終的に実装可能なPRDを作成します。

**使うタイミング**
- 新機能のアイデアを整理したいとき
- 機能要件が曖昧で具体化が必要なとき
- 既存コードベースへの組み込み方を検討したいとき
- 技術的実現可能性を検証しながら要件を詰めたいとき

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{feature_name}}/
├── index.md # セッション情報のインデックス
├── conversation.md # 対話履歴
├── context.md # 収集したコンテキスト情報
├── research.md # 調査結果(コードベース、技術検証など)
└── prd.md # 最終的なPRD(Product Requirements Document)
```

**特徴**
- 最大10イテレーションの対話セッション
- コードベース調査とWeb検索を活用した技術検証
- 段階的な要件の具体化
- 実装可能性を考慮したPRD作成

---

### 2. sequence-diagram-analysis

**用途**
指定された機能のシーケンス図をmermaid形式で作成します。

**概要**
機能の処理フローを視覚化し、コンポーネント間の相互作用を明確にします。コードベースを分析し、関数呼び出し、データフロー、外部システムとの連携を図示します。

**使うタイミング**
- 複雑な処理フローを理解したいとき
- 既存機能の動作を可視化したいとき
- リファクタリングやデバッグの前にフローを把握したいとき
- ドキュメント作成や設計レビューのため

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{feature_name}}/
├── index.md # 分析情報のインデックス
├── tmp/ # 一時調査結果(コンテキスト削減用)
│ ├── initial_survey.md
│ └── detailed_survey.md
└── sequence_diagram.md # Mermaidシーケンス図とフロー説明
```

**特徴**
- 一時ファイルを活用したコンテキスト削減
- 複数シナリオ(正常系・異常系)のサポート
- 詳細レベルの調整可能(概要・詳細・実装レベル)
- Mermaid形式での出力

---

### 3. state-transition-analysis

**用途**
対象データの状態遷移に関わる全ての機能を特定し、状態遷移フロー、関連データとの依存関係、リスク評価を提供します。

**概要**
エンティティやリソースの状態管理を包括的に分析し、状態遷移図、遷移表、機能別分析、データ依存関係、リスク評価を作成します。

**使うタイミング**
- 状態管理ロジックを理解したいとき
- ワークフローや承認フローを可視化したいとき
- データの状態変更に関わる機能を一覧化したいとき
- 状態遷移の一貫性やリスクを評価したいとき

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{data_name}}/
├── index.md # 分析情報のインデックス
├── summary.md # 分析サマリー
├── diagram.md # Mermaid状態遷移図
├── transitions.md # 状態遷移表
├── functions.md # 機能別分析
├── dependencies.md # データ依存関係分析
├── risks.md # リスク評価
└── recommendations.md # 推奨事項
```

**特徴**
- 状態フィールドの自動検出
- Mermaid状態遷移図の生成
- 網羅的な機能特定
- 関連データの依存関係分析
- リスク評価と推奨事項

---

### 4. impact-analysis

**用途**
変更対象の影響範囲を分析し、修正が必要なファイルとリスク評価を提供します。

**概要**
ファイル、関数、クラス、または自然言語で指定された変更対象について、影響を受ける全てのコード箇所を特定し、層別に整理します。リスク評価と推奨事項も提供します。

**使うタイミング**
- コード変更前に影響範囲を把握したいとき
- リファクタリングの影響を評価したいとき
- API変更やモデル変更の影響を調査したいとき
- レビューやテスト計画の策定時

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{target_name}}/
├── index.md # 分析情報のインデックス
├── summary.md # 全体サマリー
├── core.md # コア層の影響
├── api.md # API層の影響
├── service.md # サービス層の影響
├── data.md # データ層の影響
├── ui.md # UI層の影響
├── test.md # テストへの影響
├── config.md # 設定ファイルへの影響
├── other.md # その他の影響
├── external.md # 外部システムへの影響
├── recommendations.md # 推奨事項
└── details.md # 詳細情報
```

**特徴**
- 層別の影響範囲分析
- リスクレベルの評価
- 修正の優先順位付け
- テスト戦略の提案

---

### 5. incremental-dev

**用途**
増分開発の計画を立案し、実装方法毎のPRD(Product Requirements Document)を作成します。

**概要**
開発対象を分析し、初期調査から追加調査を経て、複数の実装アプローチを提示します。各アプローチについて詳細なPRDを作成し、段階的な実装計画を立案します。

**使うタイミング**
- 新機能の実装計画を立てたいとき
- 複数の実装アプローチを比較検討したいとき
- 段階的なリリース計画を作成したいとき
- 既存システムへの機能追加を計画するとき

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{feature_name}}/
├── index.md # 分析情報のインデックス
├── survey_summary.md # 初期調査サマリー
├── existing_impl.md # 既存実装調査
├── tech_stack.md # 技術スタック
├── dependencies.md # 依存関係分析
├── complexity.md # 複雑度評価
├── constraints.md # 課題と制約
├── additional_research/ # 追加調査結果
│ └── {{research_topic}}.md
└── approaches/ # 実装アプローチ毎のPRD
├── approach_1_{{name}}.md
├── approach_2_{{name}}.md
└── approach_3_{{name}}.md
```

**特徴**
- 初期調査での包括的な情報収集
- 複数の実装アプローチの提示
- 各アプローチの詳細PRD作成
- 段階的な実装計画
- 500行以内のファイル分割

---

### 6. bug-analysis

**用途**
バグの原因を特定するための詳細分析を実施します。

**概要**
バグの発生経緯や症状から原因を特定し、修正方針を提示します。ソースコードを詳細に分析し、段階的に原因を絞り込みます。初期調査、処理フロー分析、根本原因分析を経て、最終レポートを作成します。

**使うタイミング**
- バグの原因が不明なとき
- 複雑な不具合を調査したいとき
- 再現性の低いバグを分析したいとき
- 根本原因を特定して恒久対策を立てたいとき

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{bug_name}}/
├── index.md # 分析情報のインデックス
├── initial_investigation.md # 初期調査結果
├── flow_analysis.md # 処理フロー分析
├── root_cause_analysis.md # 根本原因分析
└── final_report.md # 最終レポート
```

**特徴**
- 対話的な情報収集
- 段階的な原因の絞り込み
- 処理フローの詳細分析
- 根本原因の特定
- 修正方針の提示

---

### 7. performance-analysis

**用途**
性能問題の原因を調査します。

**概要**
性能問題の原因を特定するための包括的な調査を実施します。初期調査、詳細な原因分析、最終サマリーを段階的に作成し、性能問題の根本原因を明らかにします。

**使うタイミング**
- パフォーマンスが劣化しているとき
- レスポンスが遅い機能を調査したいとき
- スケーラビリティの問題を特定したいとき
- 最適化の優先順位を決めたいとき

**主な出力ファイル**
```
.dcs/{{timestamp}}_{{target_name}}/
├── index.md # 分析情報のインデックス
├── initial.md # 初期調査結果
├── causes.md # 原因分析
└── recommendations.md # 推奨対応
```

**特徴**
- TodoWriteによるタスク管理
- 症状と発生状況の詳細ヒアリング
- 複数の原因候補の特定
- 優先順位付けされた推奨対応
- パフォーマンスボトルネックの特定

---

## 共通の出力構造

すべてのコマンドは `.dcs/` ディレクトリ配下にタイムスタンプ付きのディレクトリを作成し、以下のような構造で結果を出力します:

```
.dcs/
└── {{timestamp}}_{{target_name}}/
├── index.md # 分析の概要とメタ情報
├── (各種分析結果ファイル)
└── (サブディレクトリ)
```

### タイムスタンプ形式
`YYYYMMDD_HHMMSS` 形式(例: `20251030_143022`)

### 重複防止
同一タイムスタンプ・同一内容のディレクトリが存在する場合、末尾に連番が付与されます。

---

## 使用可能なツール

各コマンドで使用可能なツールは、ファイルヘッダーの `allowed-tools` に記載されています:

- **Read, Glob, Grep**: ファイル検索・読み込み
- **Task**: サブタスクの実行(コンテキスト削減)
- **Bash**: シェルコマンド実行
- **AskUserQuestion**: 対話的な情報収集
- **Write**: ファイル書き込み
- **TodoWrite**: タスク管理(performance-analysisで使用)
- **WebSearch, WebFetch**: Web検索・情報取得(feature-rubber-duckで使用)

---

## 実行例

### バグ分析の実行
```
/tsumiki:dcs:bug-analysis カート内の商品合計金額が正しく計算されない
```

### 影響範囲分析の実行
```
/tsumiki:dcs:impact-analysis src/models/User.ts
```

### シーケンス図作成の実行
```
/tsumiki:dcs:sequence-diagram-analysis 注文確定処理
```

### 増分開発計画の実行
```
/tsumiki:dcs:incremental-dev ユーザー認証機能の追加
```

---

## 注意事項

1. **対話型コマンド**: すべてのコマンドは対話的に情報を収集します。質問に答えることで、より正確な分析が可能になります。

2. **出力ディレクトリ**: すべての出力は `.dcs/` ディレクトリに集約されます。gitignoreに追加することを推奨します。

2 changes: 1 addition & 1 deletion MANUAL.md
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ Kairoは各タスクに対して内部的にTDDコマンドを使用して以下
## ディレクトリ構造

```
/projects/ai/test18/
./
├── .claude/
│ └── commands/ # Kairoコマンド
├── docs/
Expand Down
Loading