spec-runner 1.1.13 → 1.1.16

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.
Files changed (61) hide show
  1. package/package.json +1 -1
  2. package/spec-runner/templates/.claude/agents/design-reviewer.md +8 -8
  3. package/spec-runner/templates/.claude/agents/impact-analyzer.md +35 -11
  4. package/spec-runner/templates/.claude/rules/coding.md +11 -0
  5. package/spec-runner/templates/.claude/rules/design-docs.md +33 -16
  6. package/spec-runner/templates/.claude/rules/harness-formats.md +90 -0
  7. package/spec-runner/templates/.claude/settings.json +15 -0
  8. package/spec-runner/templates/.claude/skills/architecture-definition/SKILL.md +3 -3
  9. package/spec-runner/templates/.claude/skills/architecture-skill-development/SKILL.md +12 -7
  10. package/spec-runner/templates/.claude/skills/design-change/SKILL.md +13 -12
  11. package/spec-runner/templates/.claude/skills/docs-driven-seed/SKILL.md +140 -0
  12. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/01_/343/203/211/343/203/241/343/202/244/343/203/263/{/343/203/211/343/203/241/343/202/244/343/203/263/345/220/215}.md +39 -0
  13. package/spec-runner/templates/.claude/skills/docs-driven-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/02_/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/UC-{/346/227/245/346/234/254/350/252/236/345/220/215}.md +55 -0
  14. package/spec-runner/templates/.claude/skills/existing-project-to-docs/SKILL.md +12 -9
  15. package/spec-runner/templates/.claude/skills/harness-engineering/SKILL.md +4 -0
  16. package/spec-runner/templates/.claude/skills/test-driven-development/SKILL.md +104 -7
  17. package/spec-runner/templates/.github/agents/design-reviewer.agent.md +8 -8
  18. package/spec-runner/templates/.github/agents/impact-analyzer.agent.md +35 -11
  19. package/spec-runner/templates/.github/instructions/coding.instructions.md +11 -0
  20. package/spec-runner/templates/.github/instructions/design-docs.instructions.md +33 -16
  21. package/spec-runner/templates/.github/instructions/harness-formats.instructions.md +84 -0
  22. package/spec-runner/templates/.github/skills/architecture-definition/SKILL.md +3 -3
  23. package/spec-runner/templates/.github/skills/architecture-skill-development/SKILL.md +12 -7
  24. package/spec-runner/templates/.github/skills/design-change/SKILL.md +13 -12
  25. package/spec-runner/templates/.github/skills/docs-driven-seed/SKILL.md +140 -0
  26. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/01_/343/203/211/343/203/241/343/202/244/343/203/263/{/343/203/211/343/203/241/343/202/244/343/203/263/345/220/215}.md +39 -0
  27. package/spec-runner/templates/.github/skills/docs-driven-seed/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/02_/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/UC-{/346/227/245/346/234/254/350/252/236/345/220/215}.md +55 -0
  28. package/spec-runner/templates/.github/skills/existing-project-to-docs/SKILL.md +12 -9
  29. package/spec-runner/templates/.github/skills/harness-engineering/SKILL.md +4 -0
  30. package/spec-runner/templates/.github/skills/test-driven-development/SKILL.md +104 -7
  31. package/spec-runner/templates/.spec-runner/scripts/scan.js +156 -0
  32. package/spec-runner/templates/.claude/skills/plugin-development/SKILL.md +0 -173
  33. package/spec-runner/templates/.claude/skills/plugin-development/templates/01_/350/246/201/344/273/266/345/256/232/347/276/251//346/246/202/350/246/201/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -88
  34. package/spec-runner/templates/.claude/skills/plugin-development/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210/90_ADR/ADR/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -81
  35. package/spec-runner/templates/.claude/skills/plugin-development/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/202/267/343/202/271/343/203/206/343/203/240/345/205/250/344/275/223/344/277/257/347/236/260/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -80
  36. package/spec-runner/templates/.claude/skills/plugin-development/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/270/200/350/246/247/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -57
  37. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/aws.md +0 -53
  38. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/database.md +0 -54
  39. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/schema.dbml +0 -25
  40. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/sequence//343/202/267/343/203/274/343/202/261/343/203/263/343/202/271/345/233/263/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -28
  41. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/agent.md +0 -56
  42. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/config.md +0 -47
  43. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/domain.md +0 -67
  44. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/prompts.md +0 -72
  45. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/plugins/skills/{skill_name}/skill.md +0 -53
  46. package/spec-runner/templates/.claude/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/plugins/tools/{tool_name}/tool.md +0 -51
  47. package/spec-runner/templates/.github/skills/plugin-development/SKILL.md +0 -173
  48. package/spec-runner/templates/.github/skills/plugin-development/templates/01_/350/246/201/344/273/266/345/256/232/347/276/251//346/246/202/350/246/201/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -88
  49. package/spec-runner/templates/.github/skills/plugin-development/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210/90_ADR/ADR/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -81
  50. package/spec-runner/templates/.github/skills/plugin-development/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/202/267/343/202/271/343/203/206/343/203/240/345/205/250/344/275/223/344/277/257/347/236/260/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -80
  51. package/spec-runner/templates/.github/skills/plugin-development/templates/02_/346/246/202/350/246/201/350/250/255/350/250/210//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/270/200/350/246/247/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -57
  52. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/aws.md +0 -53
  53. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/database.md +0 -54
  54. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/schema.dbml +0 -25
  55. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/infrastructure/sequence//343/202/267/343/203/274/343/202/261/343/203/263/343/202/271/345/233/263/343/203/206/343/203/263/343/203/227/343/203/254/343/203/274/343/203/210.md +0 -28
  56. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/agent.md +0 -56
  57. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/config.md +0 -47
  58. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/domain.md +0 -67
  59. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/agents/{agent_name}/prompts.md +0 -72
  60. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/plugins/skills/{skill_name}/skill.md +0 -53
  61. package/spec-runner/templates/.github/skills/plugin-development/templates/03_/350/251/263/347/264/260/350/250/255/350/250/210/src/plugins/tools/{tool_name}/tool.md +0 -51
@@ -1,88 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: req.{project_slug}
4
- kind: requirements
5
- depends_on: []
6
- maps_to: []
7
- ---
8
-
9
- # {プロジェクト名} 要件定義
10
-
11
- ## 背景・問題提起
12
-
13
- ### 解決すべき課題
14
-
15
- **課題1: {課題名}**
16
-
17
- - {問題の詳細}
18
- - {現状の問題点}
19
- - {影響範囲}
20
-
21
- **課題2: {課題名}**
22
-
23
- - {問題の詳細}
24
- - {現状の問題点}
25
- - {影響範囲}
26
-
27
- ## 提供価値
28
-
29
- ### 主要機能
30
-
31
- 1. **{機能名}**
32
- - {機能の概要}
33
- - {提供価値}
34
-
35
- 2. **{機能名}**
36
- - {機能の概要}
37
- - {提供価値}
38
-
39
- ### 対象ユーザー
40
-
41
- - **{ユーザー種別}**: {ニーズ・利用シーン}
42
- - **{ユーザー種別}**: {ニーズ・利用シーン}
43
-
44
- ## 非機能要件
45
-
46
- ### パフォーマンス
47
-
48
- - {指標名}: {目標値}
49
- - {指標名}: {目標値}
50
-
51
- ### スケーラビリティ
52
-
53
- - {要件}
54
- - {要件}
55
-
56
- ### セキュリティ
57
-
58
- - {要件}
59
- - {要件}
60
-
61
- ### 運用性
62
-
63
- - {要件}
64
- - {要件}
65
-
66
- ## スコープ外
67
-
68
- ### {機能カテゴリ}
69
-
70
- - **理由**: {なぜ作らないか}
71
- - **将来**: {いつ・どのように実装するか}
72
-
73
- ### {機能カテゴリ}
74
-
75
- - **理由**: {なぜ作らないか}
76
- - **将来**: {いつ・どのように実装するか}
77
-
78
- ## 制約・前提条件
79
-
80
- ### 技術制約
81
-
82
- - {制約内容}
83
- - {制約内容}
84
-
85
- ### ビジネス制約
86
-
87
- - {制約内容}
88
- - {制約内容}
@@ -1,81 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: adr.{decision_slug}
4
- kind: adr
5
- depends_on:
6
- - overview.system_context
7
- maps_to: []
8
- ---
9
-
10
- # {決定内容のタイトル}
11
-
12
- **ステータス**: 提案 / 採用 / 廃止 / 置換
13
- **日付**: YYYY-MM-DD
14
- **決定者**: {名前}
15
-
16
- ## コンテキスト
17
-
18
- | 項目 | 内容 |
19
- |------|------|
20
- | 現在の状況 | {問題・課題} |
21
- | 要件 | {実現する必要があること} |
22
- | 制約 | {技術的・ビジネス的制約} |
23
-
24
- ## 選択肢
25
-
26
- ### 案1: {案1の名前}
27
-
28
- - 概要: {何をするか}
29
- - メリット:
30
- - {メリット}
31
- - デメリット:
32
- - {デメリット}
33
- - 適合性: {このプロジェクトにどう合うか}
34
-
35
- ### 案2: {案2の名前}
36
-
37
- - 概要: {何をするか}
38
- - メリット:
39
- - {メリット}
40
- - デメリット:
41
- - {デメリット}
42
- - 適合性: {このプロジェクトにどう合うか}
43
-
44
- ### 案3: {案3の名前}
45
-
46
- - 概要: {何をするか}
47
- - メリット:
48
- - {メリット}
49
- - デメリット:
50
- - {デメリット}
51
- - 適合性: {このプロジェクトにどう合うか}
52
-
53
- ## 決定
54
-
55
- **採用案**: {案名}
56
-
57
- ### 採用理由
58
-
59
- - {理由1}
60
- - {理由2}
61
-
62
- ### 実装方針
63
-
64
- 1. {方針1}
65
- 2. {方針2}
66
- 3. {方針3}
67
-
68
- ## 影響
69
-
70
- | カテゴリ | 項目 | 内容 |
71
- |----------|------|------|
72
- | システム | 新規追加 | {コンポーネント} |
73
- | システム | 変更 | {コンポーネント} |
74
- | パフォーマンス | 処理速度 | {変化} |
75
- | コスト | 追加コスト | {影響} |
76
- | 制約 | 将来課題 | {課題} |
77
-
78
- ### 反映が必要な文書
79
-
80
- - `docs/02_概要設計/{対象文書}.md`
81
- - `docs/03_詳細設計/src/{対象パス}.md`
@@ -1,80 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: overview.system_context
4
- kind: overview
5
- depends_on:
6
- - req.{project_slug}
7
- - overview.usecases
8
- maps_to: []
9
- ---
10
-
11
- # システム全体俯瞰
12
-
13
- ## 目的
14
-
15
- {システムの目的と全体的なアーキテクチャを説明する}
16
-
17
- ## 全体像
18
-
19
- ```mermaid
20
- graph TB
21
- subgraph Input["入力"]
22
- A["{入力1}"]
23
- B["{入力2}"]
24
- end
25
-
26
- subgraph Core["主要コンポーネント"]
27
- C["{コンポーネント1}"]
28
- D["{コンポーネント2}"]
29
- end
30
-
31
- subgraph External["外部 IF"]
32
- E["{外部IF1}"]
33
- F["{外部IF2}"]
34
- end
35
-
36
- A --> C
37
- B --> D
38
- C --> E
39
- D --> F
40
- ```
41
-
42
- ## 主要コンポーネント
43
-
44
- | コンポーネント | 責務 | 実現するユースケース | 主な依存 |
45
- |---------------|------|-------------------|----------|
46
- | **{コンポーネント名}** | {責務の説明} | {UC一覧} | {依存一覧} |
47
-
48
- ## ドメイン責務
49
-
50
- | ドメイン | 責務 | 主要な入出力 | 境界の根拠 |
51
- |---------|------|------------|-----------|
52
- | **{ドメイン名}** | {責務} | {入出力} | {根拠} |
53
-
54
- ## 外部 IF / 連携先
55
-
56
- | IF名 | 相手先 | 目的 | 入力 | 出力 |
57
- |------|--------|------|------|------|
58
- | **{IF名}** | {相手先} | {目的} | {入力} | {出力} |
59
-
60
- ## データフロー
61
-
62
- ```mermaid
63
- sequenceDiagram
64
- participant User as ユーザー
65
- participant App as {主要コンポーネント}
66
- participant Tool as {ツールまたは外部IF}
67
-
68
- User->>App: {操作}
69
- App->>Tool: {依頼}
70
- Tool-->>App: {結果}
71
- App-->>User: {応答}
72
- ```
73
-
74
- ## 非機能・運用方針
75
-
76
- | 項目 | 方針 | 根拠 |
77
- |------|------|------|
78
- | パフォーマンス | {方針} | {根拠} |
79
- | セキュリティ | {方針} | {根拠} |
80
- | 運用 | {方針} | {根拠} |
@@ -1,57 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: overview.usecases
4
- kind: overview
5
- depends_on:
6
- - req.{project_slug}
7
- maps_to: []
8
- ---
9
-
10
- # ユースケース一覧
11
-
12
- ## ユースケースマップ
13
-
14
- ```mermaid
15
- graph LR
16
- subgraph Domain1["{Domain1}"]
17
- D1Q1["UC-{日本語名1}"]
18
- D1C1["UC-{日本語名2}"]
19
- end
20
-
21
- subgraph Domain2["{Domain2}"]
22
- D2Q1["UC-{日本語名3}"]
23
- D2C1["UC-{日本語名4}"]
24
- end
25
- ```
26
-
27
- ## {Domain1}
28
-
29
- | ユースケース | 種別 | 概要 | アクター | 入力 | 出力 |
30
- |------------|------|------|---------|------|------|
31
- | **UC-{日本語名1}** | Query | {概要} | {アクター} | {入力} | {出力} |
32
- | **UC-{日本語名2}** | Command | {概要} | {アクター} | {入力} | {出力} |
33
-
34
- **特記事項**
35
-
36
- - {前提条件}
37
- - {例外条件}
38
-
39
- ## {Domain2}
40
-
41
- | ユースケース | 種別 | 概要 | アクター | 入力 | 出力 |
42
- |------------|------|------|---------|------|------|
43
- | **UC-{日本語名3}** | Query | {概要} | {アクター} | {入力} | {出力} |
44
- | **UC-{日本語名4}** | Command | {概要} | {アクター} | {入力} | {出力} |
45
-
46
- **特記事項**
47
-
48
- - {前提条件}
49
- - {例外条件}
50
-
51
- ## ユースケース間の依存関係
52
-
53
- ```mermaid
54
- graph TD
55
- UC1["UC-{日本語名1}"] -->|"{関係}"| UC2["UC-{日本語名2}"]
56
- UC2 -->|"{関係}"| UC3["UC-{日本語名3}"]
57
- ```
@@ -1,53 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: detail.infrastructure.aws.{stack_slug}
4
- kind: detailed_design
5
- depends_on:
6
- - overview.system_context
7
- maps_to:
8
- - infra/{iac_path}
9
- - src/infrastructure/{component_path}.py
10
- ---
11
-
12
- # AWS構成: {サービス名・機能名}
13
-
14
- ## アーキテクチャ図
15
-
16
- ```mermaid
17
- graph LR
18
- User[ユーザー] --> API[API Gateway]
19
- API --> Lambda[Lambda]
20
- Lambda --> RDS[(RDS)]
21
- Lambda --> S3[S3]
22
- ```
23
-
24
- ## AWSサービス構成
25
-
26
- | サービス | リソース名 | 用途 | 設定値 |
27
- |----------|-----------|------|--------|
28
- | Lambda | `{function-name}` | {用途} | メモリ: {MB}, タイムアウト: {秒} |
29
- | RDS | `{db-instance}` | {用途} | インスタンス: {type}, ストレージ: {GB} |
30
- | S3 | `{bucket-name}` | {用途} | バージョニング: {有無} |
31
-
32
- ## IAM / ネットワーク
33
-
34
- | 項目 | 設定 |
35
- |------|------|
36
- | IAMロール | {role-name} |
37
- | VPC | {vpc-id} |
38
- | サブネット | {subnet-ids} |
39
- | セキュリティグループ | {sg-id}: {ルール} |
40
-
41
- ## デプロイ構成
42
-
43
- | 項目 | 設定 |
44
- |------|------|
45
- | デプロイ方法 | {CDK / Terraform / CloudFormation} |
46
- | デプロイ単位 | {スタック名} |
47
- | 環境 | {dev / staging / production} |
48
-
49
- ## 監視・アラート
50
-
51
- | 監視項目 | 閾値 | 通知先 |
52
- |----------|------|--------|
53
- | {メトリクス名} | {閾値} | {通知先} |
@@ -1,54 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: detail.infrastructure.database
4
- kind: detailed_design
5
- depends_on:
6
- - overview.system_context
7
- maps_to:
8
- - src/infrastructure/{component_path}.py
9
- - migrations/{migration_file}.sql
10
- ---
11
-
12
- # データベース設計: {テーブル名・スキーマ名}
13
-
14
- ## スキーマ定義
15
-
16
- **DBMLファイル**: `schema.dbml`
17
-
18
- ## テーブル設計方針
19
-
20
- ### {table_name}
21
-
22
- **責務**: {このテーブルが担う役割}
23
-
24
- **インデックス設計**
25
-
26
- - `idx_{table}_{column}`: {理由}
27
- - `idx_{table}_{column}`: {理由}
28
-
29
- ## アクセスパターン
30
-
31
- | 操作 | クエリ | 頻度 | 使用インデックス |
32
- |------|--------|------|----------------|
33
- | {操作名} | `SELECT ...` | {高/中/低} | `idx_{table}_{column}` |
34
- | {操作名} | `INSERT ...` | {高/中/低} | - |
35
-
36
- ## パフォーマンス考慮事項
37
-
38
- - 想定データ量: {件数}
39
- - 増加率: {増加件数}
40
- - アーカイブ戦略: {方針}
41
-
42
- ## データ整合性
43
-
44
- | 項目 | 方法 |
45
- |------|------|
46
- | トランザクション分離レベル | {READ COMMITTED / REPEATABLE READ} |
47
- | 楽観的ロック | {使用有無・方法} |
48
- | 悲観的ロック | {使用有無・方法} |
49
-
50
- ## テスト観点
51
-
52
- - 主要クエリの成立
53
- - インデックス前提の検索
54
- - マイグレーション後方互換
@@ -1,25 +0,0 @@
1
- // maps_to:
2
- // - migrations/{migration_file}.sql
3
- // - src/infrastructure/{component_path}.py
4
-
5
- Table {table_name} {
6
- id varchar(26) [pk, note: "ULID"]
7
- {field_name} varchar(255) [not null, note: "{説明}"]
8
- created_at timestamptz [not null, default: `now()`]
9
- updated_at timestamptz [not null, default: `now()`]
10
-
11
- indexes {
12
- {field_name} [name: "idx_{table_name}_{field_name}"]
13
- }
14
-
15
- Note: "{テーブルの説明}"
16
- }
17
-
18
- Table {child_table_name} {
19
- id varchar(26) [pk, note: "ULID"]
20
- {table_name}_id varchar(26) [not null, note: "FK to {table_name}"]
21
- {field_name} text [null, note: "{説明}"]
22
- created_at timestamptz [not null, default: `now()`]
23
- }
24
-
25
- Ref: {child_table_name}.{table_name}_id > {table_name}.id [delete: cascade]
@@ -1,28 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: detail.infrastructure.sequence.{sequence_slug}
4
- kind: detailed_design
5
- depends_on:
6
- - overview.system_context
7
- maps_to:
8
- - src/{related_path}
9
- ---
10
-
11
- # {シーケンス名}
12
-
13
- ```mermaid
14
- sequenceDiagram
15
- participant U as ユーザー
16
- participant A as {参加者A}
17
- participant B as {参加者B}
18
-
19
- U->>A: {操作}
20
- A->>B: {依頼}
21
- B-->>A: {結果}
22
- A-->>U: {応答}
23
- ```
24
-
25
- ## 補足
26
-
27
- - 対象ユースケース: {UC}
28
- - 例外分岐: {分岐}
@@ -1,56 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: detail.src.agents.{agent_name}.agent
4
- kind: detailed_design
5
- depends_on:
6
- - overview.system_context
7
- - use_case.{use_case_slug}
8
- maps_to:
9
- - src/agents/{agent_name}/agent.py
10
- - tests/agents/{agent_name}/test_agent.py
11
- ---
12
-
13
- # `src/agents/{agent_name}/agent.py` 詳細設計
14
-
15
- ## 責務
16
-
17
- - {このモジュールが果たす役割}
18
- - 実現するユースケース: {UC一覧}
19
- - 呼び出す依存: {依存一覧}
20
-
21
- ## 入力と出力
22
-
23
- | 種別 | 名前 | 型 | 説明 |
24
- |------|------|----|------|
25
- | 入力 | {入力名} | {型} | {説明} |
26
- | 出力 | {出力名} | {型} | {説明} |
27
-
28
- ## 主要フロー
29
-
30
- 1. {ステップ1}
31
- 2. {ステップ2}
32
- 3. {ステップ3}
33
-
34
- ## 判断条件
35
-
36
- | 判断ポイント | 条件 | アクション |
37
- |------------|------|----------|
38
- | **{判断ポイント}** | {条件} | {アクション} |
39
-
40
- ## エラーハンドリング
41
-
42
- | エラーケース | 検知方法 | 対応方法 |
43
- |------------|---------|---------|
44
- | **{エラーケース}** | {検知方法} | {対応方法} |
45
-
46
- ## 依存モジュール
47
-
48
- | 依存 | 目的 | 呼び出しタイミング |
49
- |------|------|----------------|
50
- | **{依存モジュール}** | {目的} | {タイミング} |
51
-
52
- ## テスト観点
53
-
54
- - {正常系の観点}
55
- - {異常系の観点}
56
- - {境界条件の観点}
@@ -1,47 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: detail.src.agents.{agent_name}.config
4
- kind: detailed_design
5
- depends_on:
6
- - overview.system_context
7
- - detail.src.agents.{agent_name}.agent
8
- maps_to:
9
- - src/agents/{agent_name}/config.py
10
- - tests/agents/{agent_name}/test_config.py
11
- ---
12
-
13
- # `src/agents/{agent_name}/config.py` 詳細設計
14
-
15
- ## LLM設定
16
-
17
- | 項目 | 値 | 理由 |
18
- |------|----|------|
19
- | モデル | {モデル名} | {選定理由} |
20
- | temperature | {値} | {理由} |
21
- | max_tokens | {値} | {理由} |
22
-
23
- ## エージェント固有設定
24
-
25
- | 設定項目 | 値 | 説明 |
26
- |---------|----|------|
27
- | **{設定名}** | {デフォルト値} | {説明} |
28
-
29
- ## タイムアウト / リトライ
30
-
31
- | 処理 | 設定 | 理由 |
32
- |------|------|------|
33
- | LLM呼び出し | {秒または回数} | {理由} |
34
- | 外部 API | {秒または回数} | {理由} |
35
-
36
- ## 環境別設定
37
-
38
- | 環境 | 差分 |
39
- |------|------|
40
- | 開発 | {差分} |
41
- | 本番 | {差分} |
42
-
43
- ## テスト観点
44
-
45
- - 設定値の既定値
46
- - 不正値の拒否
47
- - 環境差分の取り扱い
@@ -1,67 +0,0 @@
1
- ---
2
- spec_runner:
3
- node_id: detail.src.agents.{agent_name}.domain
4
- kind: detailed_design
5
- depends_on:
6
- - overview.system_context
7
- - use_case.{use_case_slug}
8
- maps_to:
9
- - src/agents/{agent_name}/domain.py
10
- - tests/agents/{agent_name}/test_domain.py
11
- ---
12
-
13
- # `src/agents/{agent_name}/domain.py` 詳細設計
14
-
15
- ## 概要
16
-
17
- このエージェントが扱うビジネスロジックとデータモデルを定義する。
18
-
19
- ## エンティティ
20
-
21
- ### {日本語名}(`{ClassName}`)
22
-
23
- {責務の説明}
24
-
25
- | フィールド | 型 | 説明 |
26
- |----------|----|------|
27
- | {フィールド名} | {型} | {説明} |
28
-
29
- **不変条件**
30
-
31
- - {条件1}
32
- - {条件2}
33
-
34
- ## 値オブジェクト
35
-
36
- ### {日本語名}(`{ClassName}`)
37
-
38
- {責務の説明}
39
-
40
- | フィールド | 型 | 説明 |
41
- |----------|----|------|
42
- | {フィールド名} | {型} | {説明} |
43
-
44
- **バリデーション**
45
-
46
- - {ルール1}
47
-
48
- ## ビジネスロジック
49
-
50
- ### {ロジック名}
51
-
52
- 1. {ステップ1}
53
- 2. {ステップ2}
54
- 3. {ステップ3}
55
-
56
- ## ビジネスルール
57
-
58
- | 条件 | アクション |
59
- |------|----------|
60
- | {条件} | {アクション} |
61
-
62
- ## データ変換 / 境界
63
-
64
- | 変換方向 | 入力 | 出力 | 概要 |
65
- |---------|------|------|------|
66
- | {外部} → 内部 | {外部形式} | {ドメインモデル} | {変換内容} |
67
- | 内部 → {外部} | {ドメインモデル} | {外部形式} | {変換内容} |