musubix2 0.4.4 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/.musubix-managed +1 -1
- package/.claude/skills/orchestrator/SKILL.md +36 -147
- package/.claude/skills/requirements-analyst/SKILL.md +33 -40
- package/.github/skills/orchestrator/SKILL.md +36 -147
- package/.github/skills/requirements-analyst/SKILL.md +33 -40
- package/dist/assets/skills-manifest.json +166 -0
- package/dist/cli.js +301 -218
- package/dist/index.js +10323 -6656
- package/package.json +2 -4
- package/dist/infrastructure/workspace/workspace-root-resolver.d.ts +0 -8
- package/dist/infrastructure/workspace/workspace-root-resolver.d.ts.map +0 -1
- package/dist/infrastructure/workspace/workspace-root-resolver.js +0 -10
- package/dist/infrastructure/workspace/workspace-root-resolver.js.map +0 -1
- package/dist/interface/cli/postinstall-bootstrap.d.ts +0 -9
- package/dist/interface/cli/postinstall-bootstrap.d.ts.map +0 -1
- package/dist/interface/cli/postinstall-bootstrap.js +0 -51
- package/dist/interface/cli/postinstall-bootstrap.js.map +0 -1
- package/postinstall.cjs +0 -9
|
@@ -2,17 +2,21 @@
|
|
|
2
2
|
name: requirements-analyst
|
|
3
3
|
description: >
|
|
4
4
|
EARS形式で要件を分析・作成・検証する。MarkdownEARSParser による構文検証、
|
|
5
|
-
EARSValidator
|
|
5
|
+
EARSValidator による信頼度スコア算出、対話的要件ウィザード、
|
|
6
|
+
1問1答ヒアリング(RequirementsInterviewer)を提供。
|
|
6
7
|
Use when creating requirements, validating EARS compliance, analyzing
|
|
7
|
-
requirement documents,
|
|
8
|
+
requirement documents, interviewing for missing information,
|
|
9
|
+
or starting SDD Phase 1.
|
|
8
10
|
license: MIT
|
|
9
|
-
version: "1.0.
|
|
11
|
+
version: "1.0.1"
|
|
10
12
|
triggers:
|
|
11
13
|
- 要件を作成
|
|
12
14
|
- 要件を分析
|
|
15
|
+
- 要件ヒアリング
|
|
13
16
|
- EARS 検証
|
|
14
17
|
- Phase 1 開始
|
|
15
18
|
- requirements
|
|
19
|
+
- interview
|
|
16
20
|
---
|
|
17
21
|
|
|
18
22
|
# Requirements Analyst
|
|
@@ -67,7 +71,32 @@ WHEN ユーザーが新規要件の作成を要求する:
|
|
|
67
71
|
|
|
68
72
|
**CLI**: `npx musubix req:wizard`
|
|
69
73
|
|
|
70
|
-
### 3.
|
|
74
|
+
### 3. 要件インタビュー(1問1答フロー)
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
WHEN ユーザーが要件仕様書の生成を要求する(情報不足時):
|
|
78
|
+
1. RequirementsInterviewer にユーザーの入力テキストを渡す
|
|
79
|
+
2. extractFromInput() でキーワードマッチングにより既知情報を抽出
|
|
80
|
+
3. 不足している必須項目を1問ずつ質問(1問1答、日本語メイン・英語サブ)
|
|
81
|
+
- 必須項目: プロジェクト名、概要、システム種別、対象ユーザー、主要機能
|
|
82
|
+
- 任意項目: ステークホルダー、ユースケース、パフォーマンス、セキュリティ等
|
|
83
|
+
4. 回答をコンテキストに格納し、完了率を更新
|
|
84
|
+
5. 全必須項目が揃ったら RequirementsDocGenerator で EARS 準拠仕様書を生成
|
|
85
|
+
6. EARSValidator で生成結果を検証
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**CLI**:
|
|
89
|
+
```
|
|
90
|
+
npx musubix req:interview <input-text> # 入力分析 → 最初の質問
|
|
91
|
+
npx musubix req:interview --answer <id> <response> # 質問に回答
|
|
92
|
+
npx musubix req:interview --state # 現在の状態表示
|
|
93
|
+
npx musubix req:interview --generate # 仕様書生成
|
|
94
|
+
npx musubix req:interview --reset # リセット
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**MCP Tools**: `sdd.requirements.interview.start` / `.answer` / `.state` / `.generate`
|
|
98
|
+
|
|
99
|
+
### 4. 要件検索
|
|
71
100
|
|
|
72
101
|
```
|
|
73
102
|
WHEN ユーザーが要件の検索を要求する:
|
|
@@ -104,42 +133,6 @@ THE システム SHALL...
|
|
|
104
133
|
- [ ] トレーサビリティフィールドが存在
|
|
105
134
|
- [ ] パッケージフィールドが存在
|
|
106
135
|
|
|
107
|
-
## 4. 要件インタビュー(1問1答フロー)
|
|
108
|
-
|
|
109
|
-
```
|
|
110
|
-
WHEN ユーザーが要件仕様書の生成を要求する:
|
|
111
|
-
1. RequirementsInterviewer にユーザーの入力テキストを渡す
|
|
112
|
-
2. extractFromInput() でキーワードマッチングにより既知情報を抽出
|
|
113
|
-
3. 不足している必須項目を1問ずつ質問(1問1答)
|
|
114
|
-
4. 必須項目: プロジェクト名、概要、システム種別、対象ユーザー、主要機能
|
|
115
|
-
5. 任意項目: ステークホルダー、ユースケース、パフォーマンス、セキュリティ等
|
|
116
|
-
6. 全必須項目が揃ったら RequirementsDocGenerator で EARS 準拠仕様書を生成
|
|
117
|
-
7. EARSValidator で生成結果を検証
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### インタビューフロー詳細
|
|
121
|
-
|
|
122
|
-
1. **入力分析**: ユーザーの自由記述からプロジェクト名・機能・技術スタック等を自動抽出
|
|
123
|
-
2. **不足情報特定**: 必須フィールド(projectName, projectDescription, projectDomain, targetUsers, features)の充足チェック
|
|
124
|
-
3. **1問1答**: 不足フィールドごとに1問ずつ質問(日本語メイン、英語サブ)
|
|
125
|
-
4. **回答適用**: 回答をコンテキストに格納し、完了率を更新
|
|
126
|
-
5. **仕様書生成**: 全必須項目充足後、EARS形式の要件仕様書を自動生成
|
|
127
|
-
|
|
128
|
-
**CLI**:
|
|
129
|
-
```
|
|
130
|
-
npx musubix req:interview <input-text> # 入力分析 → 最初の質問
|
|
131
|
-
npx musubix req:interview --answer <id> <response> # 質問に回答
|
|
132
|
-
npx musubix req:interview --state # 現在の状態表示
|
|
133
|
-
npx musubix req:interview --generate # 仕様書生成
|
|
134
|
-
npx musubix req:interview --reset # リセット
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
**MCP Tools**:
|
|
138
|
-
- `sdd.requirements.interview.start` — インタビュー開始
|
|
139
|
-
- `sdd.requirements.interview.answer` — 質問に回答
|
|
140
|
-
- `sdd.requirements.interview.state` — 状態取得
|
|
141
|
-
- `sdd.requirements.interview.generate` — 仕様書生成
|
|
142
|
-
|
|
143
136
|
## Gotchas
|
|
144
137
|
|
|
145
138
|
1. **EARS パターン混在に注意**: 1つの要件に複数パターンが混在する場合、COMPLEX に分類する。「WHEN ... WHILE ...」は COMPLEX。
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "1.0",
|
|
3
|
+
"generatedAt": "2026-07-09T07:25:14.122Z",
|
|
4
|
+
"entries": [
|
|
5
|
+
{
|
|
6
|
+
"platform": "copilot",
|
|
7
|
+
"skillName": "code-generator",
|
|
8
|
+
"sourcePath": "..github/skills/code-generator/SKILL.md",
|
|
9
|
+
"assetKinds": [
|
|
10
|
+
"skill",
|
|
11
|
+
"script"
|
|
12
|
+
],
|
|
13
|
+
"checksum": "a0ef6957a8d6"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"platform": "copilot",
|
|
17
|
+
"skillName": "constitution-enforcer",
|
|
18
|
+
"sourcePath": "..github/skills/constitution-enforcer/SKILL.md",
|
|
19
|
+
"assetKinds": [
|
|
20
|
+
"skill",
|
|
21
|
+
"script"
|
|
22
|
+
],
|
|
23
|
+
"checksum": "28e3307d1fb6"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"platform": "copilot",
|
|
27
|
+
"skillName": "design-generator",
|
|
28
|
+
"sourcePath": "..github/skills/design-generator/SKILL.md",
|
|
29
|
+
"assetKinds": [
|
|
30
|
+
"skill",
|
|
31
|
+
"script"
|
|
32
|
+
],
|
|
33
|
+
"checksum": "0bbdab46ef2b"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"platform": "copilot",
|
|
37
|
+
"skillName": "orchestrator",
|
|
38
|
+
"sourcePath": "..github/skills/orchestrator/SKILL.md",
|
|
39
|
+
"assetKinds": [
|
|
40
|
+
"skill",
|
|
41
|
+
"script"
|
|
42
|
+
],
|
|
43
|
+
"checksum": "59b67b966a15"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"platform": "copilot",
|
|
47
|
+
"skillName": "requirements-analyst",
|
|
48
|
+
"sourcePath": "..github/skills/requirements-analyst/SKILL.md",
|
|
49
|
+
"assetKinds": [
|
|
50
|
+
"skill",
|
|
51
|
+
"script"
|
|
52
|
+
],
|
|
53
|
+
"checksum": "241fc065f02e"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"platform": "copilot",
|
|
57
|
+
"skillName": "review-orchestrator",
|
|
58
|
+
"sourcePath": "..github/skills/review-orchestrator/SKILL.md",
|
|
59
|
+
"assetKinds": [
|
|
60
|
+
"skill",
|
|
61
|
+
"script"
|
|
62
|
+
],
|
|
63
|
+
"checksum": "6848fc4b3041"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"platform": "copilot",
|
|
67
|
+
"skillName": "test-engineer",
|
|
68
|
+
"sourcePath": "..github/skills/test-engineer/SKILL.md",
|
|
69
|
+
"assetKinds": [
|
|
70
|
+
"skill",
|
|
71
|
+
"script"
|
|
72
|
+
],
|
|
73
|
+
"checksum": "e04f04b35b00"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"platform": "copilot",
|
|
77
|
+
"skillName": "traceability-auditor",
|
|
78
|
+
"sourcePath": "..github/skills/traceability-auditor/SKILL.md",
|
|
79
|
+
"assetKinds": [
|
|
80
|
+
"skill",
|
|
81
|
+
"script"
|
|
82
|
+
],
|
|
83
|
+
"checksum": "14fafeb378fb"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"platform": "claude",
|
|
87
|
+
"skillName": "code-generator",
|
|
88
|
+
"sourcePath": "..claude/skills/code-generator/SKILL.md",
|
|
89
|
+
"assetKinds": [
|
|
90
|
+
"skill",
|
|
91
|
+
"script"
|
|
92
|
+
],
|
|
93
|
+
"checksum": "a0ef6957a8d6"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"platform": "claude",
|
|
97
|
+
"skillName": "constitution-enforcer",
|
|
98
|
+
"sourcePath": "..claude/skills/constitution-enforcer/SKILL.md",
|
|
99
|
+
"assetKinds": [
|
|
100
|
+
"skill",
|
|
101
|
+
"script"
|
|
102
|
+
],
|
|
103
|
+
"checksum": "28e3307d1fb6"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"platform": "claude",
|
|
107
|
+
"skillName": "design-generator",
|
|
108
|
+
"sourcePath": "..claude/skills/design-generator/SKILL.md",
|
|
109
|
+
"assetKinds": [
|
|
110
|
+
"skill",
|
|
111
|
+
"script"
|
|
112
|
+
],
|
|
113
|
+
"checksum": "0bbdab46ef2b"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"platform": "claude",
|
|
117
|
+
"skillName": "orchestrator",
|
|
118
|
+
"sourcePath": "..claude/skills/orchestrator/SKILL.md",
|
|
119
|
+
"assetKinds": [
|
|
120
|
+
"skill",
|
|
121
|
+
"script"
|
|
122
|
+
],
|
|
123
|
+
"checksum": "59b67b966a15"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"platform": "claude",
|
|
127
|
+
"skillName": "requirements-analyst",
|
|
128
|
+
"sourcePath": "..claude/skills/requirements-analyst/SKILL.md",
|
|
129
|
+
"assetKinds": [
|
|
130
|
+
"skill",
|
|
131
|
+
"script"
|
|
132
|
+
],
|
|
133
|
+
"checksum": "241fc065f02e"
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"platform": "claude",
|
|
137
|
+
"skillName": "review-orchestrator",
|
|
138
|
+
"sourcePath": "..claude/skills/review-orchestrator/SKILL.md",
|
|
139
|
+
"assetKinds": [
|
|
140
|
+
"skill",
|
|
141
|
+
"script"
|
|
142
|
+
],
|
|
143
|
+
"checksum": "6848fc4b3041"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"platform": "claude",
|
|
147
|
+
"skillName": "test-engineer",
|
|
148
|
+
"sourcePath": "..claude/skills/test-engineer/SKILL.md",
|
|
149
|
+
"assetKinds": [
|
|
150
|
+
"skill",
|
|
151
|
+
"script"
|
|
152
|
+
],
|
|
153
|
+
"checksum": "e04f04b35b00"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
"platform": "claude",
|
|
157
|
+
"skillName": "traceability-auditor",
|
|
158
|
+
"sourcePath": "..claude/skills/traceability-auditor/SKILL.md",
|
|
159
|
+
"assetKinds": [
|
|
160
|
+
"skill",
|
|
161
|
+
"script"
|
|
162
|
+
],
|
|
163
|
+
"checksum": "14fafeb378fb"
|
|
164
|
+
}
|
|
165
|
+
]
|
|
166
|
+
}
|