@shinaps/skills 0.21.0 → 0.22.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/README.md +20 -3
- package/package.json +1 -1
- package/plugins/shinaps-claude/.claude-plugin/plugin.json +2 -2
- package/plugins/shinaps-claude/agents/shinaps-split-reviewer.md +10 -10
- package/plugins/shinaps-claude/references/dev-comparison/comparison.md +115 -0
- package/plugins/shinaps-claude/references/dev-comparison/configurations.md +64 -0
- package/plugins/shinaps-claude/references/dev-comparison/launch.md +38 -0
- package/plugins/shinaps-claude/references/dev-comparison/record.md +74 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/architect.md +86 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/explorer.md +49 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/implementer.md +36 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/plan-reviewer.md +55 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/refine-agent.md +85 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/review-verifier.md +29 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/reviewer.md +76 -0
- package/plugins/shinaps-claude/references/dev-comparison/roles/simplifier.md +36 -0
- package/plugins/shinaps-claude/references/dev-comparison/workflow.md +237 -0
- package/plugins/shinaps-claude/skills/commit/SKILL.md +15 -15
- package/plugins/shinaps-claude/skills/dev-claude/SKILL.md +41 -0
- package/plugins/shinaps-claude/skills/dev-mixed/SKILL.md +40 -0
- package/plugins/shinaps-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/shinaps-codex/agents/shinaps-split-reviewer.toml +2 -2
- package/plugins/shinaps-codex/references/dev-comparison/comparison.md +115 -0
- package/plugins/shinaps-codex/references/dev-comparison/configurations.md +64 -0
- package/plugins/shinaps-codex/references/dev-comparison/launch.md +38 -0
- package/plugins/shinaps-codex/references/dev-comparison/record.md +74 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/architect.md +86 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/explorer.md +49 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/implementer.md +36 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/plan-reviewer.md +55 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/refine-agent.md +85 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/review-verifier.md +29 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/reviewer.md +76 -0
- package/plugins/shinaps-codex/references/dev-comparison/roles/simplifier.md +36 -0
- package/plugins/shinaps-codex/references/dev-comparison/workflow.md +237 -0
- package/plugins/shinaps-codex/skills/commit/SKILL.md +15 -15
- package/plugins/shinaps-codex/skills/dev-codex-astra/SKILL.md +39 -0
- package/plugins/shinaps-codex/skills/dev-codex-astra/agents/openai.yaml +2 -0
- package/plugins/shinaps-codex/skills/dev-codex-sol/SKILL.md +39 -0
- package/plugins/shinaps-codex/skills/dev-codex-sol/agents/openai.yaml +2 -0
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
# 比較用 dev の工程
|
|
2
|
+
|
|
3
|
+
eafbbc5 の Claude 版 `dev`(`plugins/shinaps-claude/skills/dev/SKILL.md`)の工程を役割単位で書いた比較用の工程である。比較用入口(`dev-mixed`・`dev-claude`・`dev-codex-astra`・`dev-codex-sol`)だけが使い、既存の `dev` とは独立に管理する。既存の `dev` を変更しても、この工程へは自動で反映しない。担当のモデルと起動手段は[構成表](configurations.md)と[起動手順](launch.md)に従い、記録は[実行記録](record.md)に従う。
|
|
4
|
+
|
|
5
|
+
## 1. 前提
|
|
6
|
+
|
|
7
|
+
### 作業記録の保存先
|
|
8
|
+
|
|
9
|
+
作業記録はプロジェクトルートの `.shinaps/work/` 以下へ保存する。最初に記録を作るとき、`.shinaps/` を作成し、`.shinaps/.gitignore` がなければ内容 `*` と改行で作成する。既存ファイルは上書きせず、除外が不足する場合だけ `*` を追記する。ユーザーのグローバルignoreやルートの `.gitignore` の編集は不要。Git管理下では `git check-ignore` と `git status --short --untracked-files=all` で記録が未追跡変更に出ないことを確認する。既存の追跡済みファイルは自動で追跡解除しない。
|
|
10
|
+
|
|
11
|
+
既存の `.claude/shinaps/` 等の記録は渡されたパスから読み、無断で移動・削除しない。新規記録は新しい保存先を使う。共有する仕様書などを `docs/` 等へ出す場合は、明示された成果物の保存先に従う。秘密情報は記録しない。
|
|
12
|
+
|
|
13
|
+
### プロジェクト条件
|
|
14
|
+
|
|
15
|
+
この節は以下の工程全体に適用する。適用される `AGENTS.md`・`CLAUDE.md` と参照先、CI、既存スクリプトから今回の条件を読み、比較条件ファイルと明示された依頼・許可を引き継ぐ。仕様に影響する不足だけ一問ずつ確認する。新しい恒久方針の保存はユーザーの了承を得てプロジェクト側へ行う。
|
|
16
|
+
|
|
17
|
+
質問は現在のセッションで利用できる入力手段を使い、一問ずつ確認して回答を待つ。現在のセッションで提供されていないツールは仮定しない。
|
|
18
|
+
|
|
19
|
+
### 実行の制約
|
|
20
|
+
|
|
21
|
+
- 構成表の担当の起動は、比較用入口の実行に含まれる許可として行う。新しい作業環境(worktree・クローン)は作らない。作業環境は実施者が事前に用意する。
|
|
22
|
+
- 指定したモデル・推論・tier・実行権限で担当を起動できなければ、他のモデル・設定・起動手段へ切り替えず、メインが代行もせず、その担当を未完了として記録する。
|
|
23
|
+
- 構成表に無い AI への依頼手段(個人用のセカンドオピニオン、AI Terminal Bridge、他の AI を起動するスキルを含む)を使わない。
|
|
24
|
+
- 比較実行中は自動メモリへ書き込まない。
|
|
25
|
+
- 規約は比較条件ファイルの規約スナップショットだけを使い、`search_rules` などの shinaps MCP を呼ばない。
|
|
26
|
+
|
|
27
|
+
## 2. 役割と継続の規則
|
|
28
|
+
|
|
29
|
+
| Phase | 役割 | 担当数 | 継続/新規 | 担当指示 |
|
|
30
|
+
|---|---|---|---|---|
|
|
31
|
+
| 2 | 探索 | 1(範囲分割の並列は担当数の設定と別に条件ファイルで固定する) | 新規 | [explorer](roles/explorer.md) |
|
|
32
|
+
| 3 | 設計担当1(設計統合・プラン統合・設計適合性・指摘統合) | 1 | 全工程で継続 | [architect](roles/architect.md) |
|
|
33
|
+
| 3 | 設計担当2 | 1体: なし/2体: あり | 設計の追加確認だけ継続。他の役割へ流用しない | [architect](roles/architect.md) |
|
|
34
|
+
| 4 | 計画レビュー担当1 | 1 | 修正版の再確認で継続 | [plan-reviewer](roles/plan-reviewer.md) |
|
|
35
|
+
| 4 | 計画レビュー担当2 | 1体: なし/2体: あり | 同上 | [plan-reviewer](roles/plan-reviewer.md) |
|
|
36
|
+
| 4 | 計画簡素化担当1 | 1 | 同上 | [simplifier](roles/simplifier.md)(計画の簡素化) |
|
|
37
|
+
| 4 | 計画簡素化担当2 | 1体: なし/2体: あり | 同上 | [simplifier](roles/simplifier.md)(計画の簡素化) |
|
|
38
|
+
| 4, 6 | 指摘検証(verifier) | 1 | 検証ラウンドごとに新規 | [review-verifier](roles/review-verifier.md) |
|
|
39
|
+
| 5, 7 | 実装 | 1(複製しない) | 修正で継続 | [implementer](roles/implementer.md) |
|
|
40
|
+
| 6 | 設計適合性 | 1(設計担当1 を再開) | 継続 | [architect](roles/architect.md) |
|
|
41
|
+
| 6 | 独立コードレビュー | 1 | ラウンドごとに新規 | [reviewer](roles/reviewer.md) |
|
|
42
|
+
| 6 | refine | 1 | 同一ラウンドのバッチは継続 | [refine-agent](roles/refine-agent.md) |
|
|
43
|
+
| 6 | 実装の簡素化 | 1 | ラウンドごとに新規 | [simplifier](roles/simplifier.md)(実装の簡素化) |
|
|
44
|
+
|
|
45
|
+
- 担当を起動するときは[起動手順](launch.md)に従い、担当指示の全文と今回の入力(役割名・担当番号・ラウンド・今回の割当と担当数)を渡す。担当番号は起動前に固定する。
|
|
46
|
+
- 異なる役割は、同じモデルでも別のコンテキストで起動する。同じ役割の継続は同じ ID を再開する。再開できなければ同じ割当(モデル・推論・tier・起動手段)の新しい担当へ確認済み・未確認の範囲と最新の文脈を引き継ぎ、交代を実行記録に書く。
|
|
47
|
+
- 設計担当2 を他の役割へ流用しない。設計担当1 は設計から指摘統合まで同じ ID で続ける。
|
|
48
|
+
- 独立に確認する担当(設計担当、計画レビュー担当、計画簡素化担当、実装後の4役割)は、今回の他担当の結果を受け取らず、意見を交換しない。全担当の完了まで計画・対象コードを変更しない。
|
|
49
|
+
- メインは担当の起動・待機・全文保存・受け渡し・ユーザーへの確認・実行記録だけを行う。指摘を先に選別・要約・重複整理せず、検証をやり直さない。verifier と設計担当も自分で他の担当を起動しない。
|
|
50
|
+
|
|
51
|
+
## 3. 担当数の設定
|
|
52
|
+
|
|
53
|
+
担当数の設定(1体/2体)が作用するのは、独立設計(Phase 3)・計画レビュー(Phase 4)・計画簡素化(Phase 4)の 3 か所の担当2 の有無だけである。1体の設定では担当2 を起動しない。実装担当は常に 1 体で、修正も同じ担当が行う。設計適合性・独立コードレビュー・refine・実装の簡素化・verifier を含む、それ以外の工程・役割・成果物・終了条件は担当数で変わらない。
|
|
54
|
+
|
|
55
|
+
## 4. 実行フロー
|
|
56
|
+
|
|
57
|
+
### Phase 1: 条件の受け取りと開始前の照合
|
|
58
|
+
|
|
59
|
+
1. 比較条件ファイル(必須)を読み、課題・開始コミット・規約スナップショット・探索条件・合格条件・許可範囲・実行権限・この構成の親の起動コマンドを確定する。条件ファイルにこの構成が無ければ開始しない。
|
|
60
|
+
2. 作業環境が開始状態であることを確認する。`HEAD` が開始コミットと一致し、`git status --porcelain` が空であること(`.shinaps/` は `.shinaps/.gitignore` で除外される)。満たさなければ開始しない。
|
|
61
|
+
3. 課題から英語 slug(kebab-case、30 文字以内)を作り、作業ディレクトリ `.shinaps/work/{YYYYMMDD-HHMMSS}-{slug}/` と `raw/` を作る。
|
|
62
|
+
4. `run-record.md` を作り、親の ID と指定値を記録し、[開始前の照合](record.md#開始前の照合)を行う。観測値が読めて指定値と一致しなければ開始しない。
|
|
63
|
+
5. 課題に関連する既存の spec・調査レポート・Git の変更履歴を確認し、引き継ぐ決定と根拠を要約する。課題が成果物のパスを含む場合は読み、確定事項と未解決点を取り込む。
|
|
64
|
+
6. 課題の文面が曖昧、または制約が不明確な場合はユーザーに確認する。
|
|
65
|
+
|
|
66
|
+
### Phase 2: コードベース探索
|
|
67
|
+
|
|
68
|
+
条件ファイルの規約スナップショットを規約全文として以降の担当へ渡す。`search_rules` を呼ばない。
|
|
69
|
+
|
|
70
|
+
探索は条件ファイルの探索条件(探索担当数・範囲分割・既存調査の再利用可否)に従う。既存調査を再利用する条件なら、その成果物を読み、根拠のファイルが現在の内容と一致するかを確かめる。探索担当には課題、Phase 1 の既存成果物の要約、探索の狙い、規約スナップショットを渡す。
|
|
71
|
+
|
|
72
|
+
記録先は `raw/explorer.md`(範囲分割時は `raw/explorer-{n}.md`)。
|
|
73
|
+
|
|
74
|
+
### Phase 3: 実装ブループリント策定
|
|
75
|
+
|
|
76
|
+
設計担当1 と、2体の設定なら設計担当2 を、同じ入力で並行して起動する。互いの案や今回の他担当のレポートを読ませず、読み取り専用で独立に設計させる。
|
|
77
|
+
|
|
78
|
+
両者へ渡す情報:
|
|
79
|
+
|
|
80
|
+
- 課題の目的・受入条件・合意済みの制約
|
|
81
|
+
- Phase 2 の調査結果・必読ファイル・根拠
|
|
82
|
+
- 規約スナップショットの全文
|
|
83
|
+
- 既存配置を前提にせず、変更後の責務の所有者・配置・依存方向を先に決めること。必要な移動・分割・置き換えは変更量が大きくても含め、最小化するのは到達に不要な変更とする
|
|
84
|
+
- 利用範囲が変わる責務の配置判断(移動/維持の理由)・外部契約・データフロー・全利用側の更新・実装順・回帰検証を、根拠付きの一つの推奨案として返すこと
|
|
85
|
+
- コード編集・追加委託・shinaps MCP の直接呼び出しは禁止
|
|
86
|
+
|
|
87
|
+
記録先は設計担当1 の案が `raw/architect-1.md`、設計担当2 の案が `raw/architect-2.md`。
|
|
88
|
+
|
|
89
|
+
- 2体の設定: 両方の結果が揃ったら設計担当1 を「設計案統合」として再開し、両案の根拠・トレードオフを比較して一つの計画を返させ、`raw/architect.md` に保存する。多数決や単純な継ぎ合わせにせず、採否と理由を残す。設計者間の反復議論は追加しない。
|
|
90
|
+
- 1体の設定: 設計担当1 の案を統合済みの計画とし、`raw/architect.md` に保存する。
|
|
91
|
+
|
|
92
|
+
この計画を Phase 4 のレビュー対象にする。設計担当2 は設計上の追加確認が必要な場合だけ再開し、独立コードレビューなど他の役割へ流用しない。起動失敗や未完了を設計済みと扱わない。
|
|
93
|
+
|
|
94
|
+
### Phase 4: プランレビューと計画の簡素化
|
|
95
|
+
|
|
96
|
+
計画レビュー担当と計画簡素化担当(それぞれ担当1、2体の設定なら担当2 も)を、同じ計画で並行して起動する。
|
|
97
|
+
|
|
98
|
+
計画レビュー担当へ渡す情報:
|
|
99
|
+
|
|
100
|
+
- 課題の目的・受入条件、Phase 2 の調査結果と規約全文
|
|
101
|
+
- Phase 3 の計画全文(再策定時は最新案)
|
|
102
|
+
- 「設計・要件・実装可能性・リスク・テスト戦略をレビューし、判定と具体的な修正案を返す。他のプランレビュー担当の結果は読まず、意見を交換しない」
|
|
103
|
+
|
|
104
|
+
計画簡素化担当へは、今回の目的・受入条件・最新計画・規約・調査結果・成果物パスを渡し、「計画の簡素化」として、仕様・状態・操作・実装方針から減らせるものだけを検討させる。
|
|
105
|
+
|
|
106
|
+
全担当へ同じ計画を渡し、他担当の今回の結果は読ませない。全担当の完了まで計画を変更しない。メインは `raw/plan-review-{round}-{n}.md` / `raw/plan-simplify-{round}-{n}.md` に全文保存する(round は 1 始まり、n は担当番号)。未完了は同じ担当へ戻す。
|
|
107
|
+
|
|
108
|
+
全結果が揃ったら、新しい verifier を起動して全結果を渡す(渡す内容は「指摘の検証」の節)。検証結果を `raw/plan-verification-{round}.md` に保存し、設計担当1 を「プラン統合」として再開する。設計担当1 は検証結果の全項目の採否・根拠と計画の修正案を返す。簡素化で機能・ユーザー体験・外部契約・受入条件が変わる提案は、変更点・失うもの・期待効果を示してメインからユーザーに確認する。承認前に計画へ採用しない。
|
|
109
|
+
|
|
110
|
+
計画を変更する場合は設計担当1 が修正版を返し、メインが `raw/architect-revised-{round}.md` に保存する。同じ計画レビュー担当と計画簡素化担当へ同じ修正版・承認済み変更・前回の採否を渡し、再確認 → 新しい verifier → 設計担当1 を繰り返す。担当を再開できなければ同じ割当の担当へ引き継ぐ。他担当の今回の未確定結果は共有しない。
|
|
111
|
+
|
|
112
|
+
計画段階には回数上限を設けない。修正不要で、採用すべき指摘と必要な判断・確認が解決したら `plan.md` を確定し、Phase 5 へ進む。回数を埋める再確認や、新しい根拠のない却下案の再提案は行わない。
|
|
113
|
+
|
|
114
|
+
計画段階では refine を行わない。設計に関わる規約はプランレビューで確認し、コードの規約照合は実装後に行う。
|
|
115
|
+
|
|
116
|
+
### Phase 5: 実装
|
|
117
|
+
|
|
118
|
+
#### A. 引き継ぎ
|
|
119
|
+
|
|
120
|
+
メインが `plan.md` を再読し、実装順を確認する。実装担当を 1 体起動し、以下を渡す。
|
|
121
|
+
|
|
122
|
+
- 課題の目的・受入条件、確定した `plan.md` 全文
|
|
123
|
+
- Phase 2 の調査結果と必読ファイル、Phase 4 のレビュー指摘と設計判断の理由
|
|
124
|
+
- 規約スナップショットの全文
|
|
125
|
+
- 作業ディレクトリ、担当するファイル・責務、既存の未コミット変更、必要な検証
|
|
126
|
+
- 「同じ作業ツリーには他の作業があるため、他者の変更を戻さず、現在の内容に合わせて実装する」
|
|
127
|
+
|
|
128
|
+
実装担当が作業している間は、メインも同じ範囲を編集しない。
|
|
129
|
+
|
|
130
|
+
#### B. 実装と確認
|
|
131
|
+
|
|
132
|
+
実装担当は確定した計画を実装し、セルフレビューの前に仕様を保つ簡素化と必要な検証を行う。メインは報告と実際の差分を確認する。
|
|
133
|
+
|
|
134
|
+
目的・仕様を左右する不明点、計画と既存実装の不一致があれば、実装担当は変更を広げずメインへ返す。メインが既存の合意で解決できない点だけユーザーに一問ずつ確認し、決定を実装担当へ返す。通常の実装判断は既存規約に従って進める。
|
|
135
|
+
|
|
136
|
+
実装担当の実装ミスによる検証失敗は 3 回まで自己修正する。それを超える場合はメインへ失敗の根拠と未解決点を返し、メインが「さらに修正試行 / Phase 6 のレビュー対象として差分を渡す / Phase 4 に戻って再策定する」をユーザーに確認する。
|
|
137
|
+
|
|
138
|
+
#### C. 記録と検証
|
|
139
|
+
|
|
140
|
+
メインが実装担当の報告を `implementation.md` に保存する。
|
|
141
|
+
|
|
142
|
+
- 変更ファイルと変更内容、設計上の理由
|
|
143
|
+
- 実装中の重要な判断、計画からの変更とその合意
|
|
144
|
+
- 実行した検証コマンドと結果、未実施の確認
|
|
145
|
+
- 残課題・規約衝突・未解決の論点
|
|
146
|
+
|
|
147
|
+
必要な検証はプロジェクト規約・CI・変更の影響と条件ファイルの必須検証から決める。メインは報告だけで完了とせず、差分と検証の根拠を確認して Phase 6 へ進む。
|
|
148
|
+
|
|
149
|
+
### Phase 6: 実装後の4役割を並行実行
|
|
150
|
+
|
|
151
|
+
実装と必要な検証が終わった同じ差分を固定し、次の4役割を並行して起動する。review / refine / simplify スキルは呼ばない。実装後のレビューラウンドは初回を 1 として数え、最大 2 回までとする。計画段階のプランレビューはこの回数に含めない。
|
|
152
|
+
|
|
153
|
+
| 役割 | 渡す情報 |
|
|
154
|
+
|---|---|
|
|
155
|
+
| 設計適合性(設計担当1 を再開) | 対象ファイルと差分(staged / unstaged / untracked を含む)、最終計画・受入条件・合意済み変更、実装報告と検証結果、規約全文 |
|
|
156
|
+
| 独立コードレビュー(新規) | 同上 |
|
|
157
|
+
| refine(1 体) | 規約全文、対象ファイル一覧、リポジトリルートの絶対パス、変更範囲の確認コマンド(`git diff HEAD -- <path>`。未追跡ファイルは全行を変更扱い)、バッチID |
|
|
158
|
+
| 実装の簡素化(新規) | 目的・受入条件・最終計画・維持する契約・対象ファイルと差分・規約全文 |
|
|
159
|
+
|
|
160
|
+
設計担当1 は自身の設計適合性レビューを確定するまで他担当の今回の結果を読まない。先に起動した担当の完了を待ってから次を起動するのではなく、4役割を起動してから結果を待つ。同じ担当を重複起動しない。対象が大きい場合は同じ担当を再開して続きのバッチを渡し、担当数や確認範囲を黙って減らさない。
|
|
161
|
+
|
|
162
|
+
全担当は読み取り専用で、今回の他担当の結果を読まず、意見を交換しない。メインと実装担当も全結果が揃うまで対象を編集しない。途中で外部の変更が入った場合は、その影響範囲を最新の同じ差分で確認し直してから統合する。
|
|
163
|
+
|
|
164
|
+
各担当の確認範囲・未完了報告を確認し、未確認部分は同じ担当へ戻す。失敗・未完了を「指摘なし」として処理しない。
|
|
165
|
+
|
|
166
|
+
初回は `architecture-review.md` / `review.md` / `raw/refine.md` / `raw/simplify.md`、2回目は各ファイル名に `-2` を付けて保存する。4役割の全結果が揃ったら新しい verifier へ渡し、検証結果を `raw/implementation-verification-{round}.md` に保存する。検証完了後、設計担当1 を「指摘統合」として再開し、検証結果全文・原文への参照・差分の更新・検証結果・ラウンド番号を渡す。
|
|
167
|
+
|
|
168
|
+
### 指摘の検証(Phase 4・6 共通)
|
|
169
|
+
|
|
170
|
+
全担当の結果が揃ったら、新しい verifier を 1 体起動する。今回のレビューをした担当を流用しない。
|
|
171
|
+
|
|
172
|
+
- 生レポート全文と原文のパス、各担当の確認範囲、目的・最新計画・受入条件・合意済み変更、対象コードと差分、検証結果、規約全文、ラウンド番号を渡す。
|
|
173
|
+
- verifier が各指摘の根拠を検証して出典IDを保持し、重複・誤認・対立・未確認事項を整理する。
|
|
174
|
+
- メインは出典の対応と完了状況を確認し、不足を同じ verifier へ戻す。検証不能は未確認として明示し、誤認も削除しない。失敗や未完了を検証済みとして先へ渡さない。
|
|
175
|
+
|
|
176
|
+
### Phase 7: 設計担当1 が統合し、実装担当が修正
|
|
177
|
+
|
|
178
|
+
設計担当1 が verifier の報告から全項目の採否を決め、対立・不確実性・設計上の重要点に必要な根拠を確認する。全件の事実確認を最初から繰り返さない。全指摘の採否と理由、採用した修正の対象・責務・具体的な変更・維持する契約・必要な検証を、一つの修正指示として返す。メインはそのまま記録し、仕様・受入条件の変更や未許可の範囲拡大が必要な点だけユーザーに確認する。通常の設計・修正判断をメインでやり直さない。
|
|
179
|
+
|
|
180
|
+
修正不要なら Phase 9 へ進む。修正があれば、メインが同じ実装担当を再開し、設計担当1 の修正指示・確定した計画・現在の差分・規約・検証条件を渡す。再開できなければ実装履歴と採否を同じ割当の新しい担当へ引き継ぐ。設計担当1 は次のレビューに備えて継続し、コードを編集したり、実装担当を追加で起動したりしない。
|
|
181
|
+
|
|
182
|
+
実装担当が修正と必要な検証を行い、変更・検証結果・未解決点を返す。メインは設計担当1 の採否と修正結果を `fix-log.md` に記録する。
|
|
183
|
+
|
|
184
|
+
### Phase 8: 最大2ラウンドで終了する
|
|
185
|
+
|
|
186
|
+
- **1回目のレビュー後に修正した場合**: 修正後の同じ差分について、Phase 6 の4役割を2回目として並行実行する。最新の計画、前回の指摘と採否、修正内容、検証結果を渡す。全結果を新しい verifier で検証してから設計担当1 に渡し、Phase 7 で必要な最終修正を実施する。
|
|
187
|
+
- **2回目のレビュー後に修正した場合**: 実装担当が最終修正と必要なテストを行ったら Phase 9 へ進む。3回目の実装後レビューは起動しない。
|
|
188
|
+
- **修正不要の場合**: 回数を埋めるために再実行せず Phase 9 へ進む。
|
|
189
|
+
|
|
190
|
+
最大2回は実装後の全体レビューに対する上限であり、担当の再開・交代や計画の変更でリセットしない。検証失敗・重大な未解決事項・未完了の担当が残る場合も追加ラウンドで無期限に続けず、その状態を明記してユーザーへ返す。未完了の確認を完了済みのラウンドと偽らない。
|
|
191
|
+
|
|
192
|
+
### Phase 9: 完了報告と実行記録の確定
|
|
193
|
+
|
|
194
|
+
実施したレビュー回数、設計担当1 の判断と修正内容、検証結果、未解決事項を報告する。2回目の後に修正した場合は、その最終差分が再レビューされていないことを明記する。必須検証の失敗や重大な未解決事項があれば作業終了と品質上の完了を区別し、完了済みとは報告しない。
|
|
195
|
+
|
|
196
|
+
[実行記録](record.md)の手順で観測値と使用量を読み、割当外の依頼の確認を行い、判定・2体目の発見の分類・修正回数・人の介入を `run-record.md` に確定する。
|
|
197
|
+
|
|
198
|
+
比較実行ではコミット・PR・リリースを行わない。差分は未コミットのまま残し、回収は実施者が[比較手順](comparison.md)に従って行う。
|
|
199
|
+
|
|
200
|
+
## 5. 成果物
|
|
201
|
+
|
|
202
|
+
```text
|
|
203
|
+
.shinaps/work/{YYYYMMDD-HHMMSS}-{slug}/
|
|
204
|
+
├── run-record.md ← 実行記録(record.md の様式)
|
|
205
|
+
├── plan.md ← Phase 4 の全結果を検証・統合した最終 plan
|
|
206
|
+
├── raw/
|
|
207
|
+
│ ├── explorer.md ← または explorer-1.md, explorer-2.md ...
|
|
208
|
+
│ ├── architect-1.md ← 設計担当1 の独立設計案
|
|
209
|
+
│ ├── architect-2.md ← 設計担当2 の独立設計案(2体の設定のみ)
|
|
210
|
+
│ ├── architect.md ← 統合した計画(1体の設定では設計担当1 の案)
|
|
211
|
+
│ ├── plan-review-{round}-{n}.md ← 計画レビュー担当 n の結果
|
|
212
|
+
│ ├── plan-simplify-{round}-{n}.md ← 計画簡素化担当 n の結果
|
|
213
|
+
│ ├── plan-verification-{round}.md ← 計画指摘の検証結果
|
|
214
|
+
│ ├── implementation-verification-{round}.md ← 実装指摘の検証結果
|
|
215
|
+
│ ├── refine.md ← Phase 6 の規約照合の生レポート(2 回目は refine-2.md)
|
|
216
|
+
│ ├── simplify.md ← Phase 6 の実装の簡素化の生レポート(2 回目は simplify-2.md)
|
|
217
|
+
│ ├── architect-revised-{n}.md ← 計画の修正版(n は 1 始まり)
|
|
218
|
+
│ ├── settings/ ← 観測値の抜粋
|
|
219
|
+
│ └── cli/ ← codex exec のプロンプト・イベントログ
|
|
220
|
+
├── implementation.md ← 実装ログ・変更ファイル一覧・動作確認結果
|
|
221
|
+
├── architecture-review.md ← 設計担当1 の設計適合性レビュー
|
|
222
|
+
├── architecture-review-{n}.md ← 修正後の設計適合性レビュー
|
|
223
|
+
├── review.md ← 独立コードレビューの生レポート
|
|
224
|
+
├── review-{n}.md ← 修正後の再レビュー(n は 2 始まり)
|
|
225
|
+
└── fix-log.md ← 修正ループの履歴(修正があった場合のみ)
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
全担当の応答は全文を参照できる状態で保存する。担当は結果を文字列で返し、進行管理の成果物はメインが保存する。
|
|
229
|
+
|
|
230
|
+
## 6. 終了条件
|
|
231
|
+
|
|
232
|
+
Phase 8・9 の条件で終了する。設定の不一致・未検証の項目・未完了の担当があれば `run-record.md` の判定に書き、比較データとして扱える完了として報告しない(判定は[実行記録](record.md)の定義に従う)。
|
|
233
|
+
|
|
234
|
+
## 7. テスト追加の判断
|
|
235
|
+
|
|
236
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、不具合の再発防止、または合意された仕様・外部契約の明示と保証を目的にする。仕様を表す既存テストは、過去のバグに由来しなくても残す。追加・更新する場合は、防ぐ不具合または保証する仕様の根拠と期待挙動を示す。実装方法を変えても守るべき挙動を検証し、テストの現状だけから未合意の仕様を作らない。既存テストで保証できるなら重複を増やさない。新機能という理由だけの網羅、根拠のない仮想的な異常系、ライブラリ単体の挙動や実装手順をなぞるだけのテストは追加しない。既存テストの実行とプロジェクトが明示する必須保証は維持し、失敗する期待値を弱めたり既存テストを一括削除したりしない。
|
|
237
|
+
設計・実装・レビューへこの判断基準を渡す。バグ修正の回帰確認は修正前後の挙動で行い、自動化が困難なら理由と確認結果を残す。テストを追加しない場合も、変更に必要な既存検証や動作確認は行う。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: commit
|
|
3
|
-
description:
|
|
3
|
+
description: 許可された差分を依存順のローカルコミットにし、各コミットを検証・レビューする。進め方(通常・自律)はプロジェクト設定のcommit_modeか開始時の確認で決め、選択された範囲で実行する。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
## 作業記録の保存先
|
|
@@ -21,36 +21,36 @@ description: 許可された差分を依存順の小さなローカルコミッ
|
|
|
21
21
|
|
|
22
22
|
コミットは、ユーザーが明示した場合と、linear の開発進行でCodexからLocal Agent QAの合格後に対象を指定して依頼され、作業先リポジトリの `.shinaps/linear.yaml` が次のどちらかに当たる場合だけ行う: `permissions` に `commit` と `stage` がある、または `document_only_changes: ai_commit` と `permissions` の `stage` があり文書だけの変更として依頼された(条件の詳細はlinearの `references/configuration.md` の「許可」、文書だけの変更の判定は同じファイルの「項目」)。開始時に、今回の対象についてユーザー自身が進め方を選択済みか確認する。未選択なら、プロジェクトの `.shinaps/linear.yaml`(Git対象外のため、worktreeで実行する場合はメインの作業ツリー、`git worktree list` の先頭にある)に `commit_mode` が `normal` または `autonomous` で書かれていれば、それをこのプロジェクトでユーザーが合意済みの選択として使う。設定がない、または値がこの2つ以外なら、利用可能な入力ツール(なければ文章)で「今回のコミットはどちらで進めますか?」と一問だけ聞く。
|
|
23
23
|
|
|
24
|
-
- **通常(推奨)**:
|
|
25
|
-
- **自律**:
|
|
24
|
+
- **通常(推奨)**: 人がレビューする単位ごとに、単位以外の変更をstashへ退避して差分・理由・検証結果・メッセージを提示し、承認を得てからコミットする。
|
|
25
|
+
- **自律**: エージェントが検証できる単位を選び(許可された一連の変更をまとめてよい)、検証・レビューして個別の承認を求めずコミットする。
|
|
26
26
|
|
|
27
27
|
質問した場合は、回答を受け取るまで作業を進めない。未回答や推奨選択肢の初期選択を承認と扱わない。「コミットして」「進めて」などの一般的な依頼や、エージェント自身の計画から自律モードを推測しない。今回の対象についてユーザーが通常・自律を明示済みならその選択を引き継ぎ、同じ確認を繰り返さない。過去の別対象での自律選択は引き継がない。例外は `commit_mode` として明示的に保存されたプロジェクト設定だけで、同じプロジェクトでの依頼の選択として使う。その場の明示的な指定は設定に優先する。
|
|
28
28
|
|
|
29
|
-
`commit_mode`
|
|
29
|
+
`commit_mode` は進め方の既定値であり、コミットの許可ではない。人のコードレビューの要否(`human_code_review`)や、ステージ・コミット・push・PR・公開の許可とは独立しており、どちらのモードもそれらを変えない。`autonomous` は人のコードレビューの省略ではなく、`human_code_review: skip` は通常モードの単位ごとの承認の省略ではない。設定があるだけでコミット・pushを始めず、人のレビュー済みと推測しない。`normal` は上記の通常モード(単位ごとに承認を得る)で、人が自分でgit操作をする工程を指すものではない。
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
どちらのモードも、許可された対象以外の変更と秘密情報、push、PR、公開、既存履歴の書き換えを含まない。
|
|
32
32
|
|
|
33
33
|
Git操作と修正は現在のセッションが行う。独立レビューは利用可能かつ許可された場合に使う。指定のエージェントがなければ、その役割の観点でレビューする。独立レビューがプロジェクトの必須条件なのに実行できなければ、セルフレビューを同等と称さず止める。別worktreeの作成や別セッションへの委託を、このスキルから許可しない。
|
|
34
34
|
|
|
35
35
|
## 回復できる状態を作る
|
|
36
36
|
|
|
37
|
-
- `git status`、staged・unstaged差分、untracked、HEAD、branch、stash一覧とSHA
|
|
37
|
+
- `git status`、staged・unstaged差分、untracked、HEAD、branch、stash一覧とSHAを確認し、操作前の状態として記録する。進行中のmerge等があれば混ぜない。
|
|
38
38
|
- 対象範囲を確定し、無関係な変更や秘密情報を除く。既存indexと作業ファイルが違う場合、ステージ境界を無断で捨てない。
|
|
39
39
|
- 検証コマンドはCI・スクリプト・規約から特定する。変更前からの失敗を今回の成功に混ぜない。
|
|
40
|
-
-
|
|
40
|
+
- 退避する場合は、ステージ済み差分・未ステージ差分・untrackedの控えをリポジトリ外の作業領域へ保存する。控えは復元が確認できるまで残す。
|
|
41
41
|
|
|
42
42
|
## 分割・検証・レビュー
|
|
43
43
|
|
|
44
|
-
1.
|
|
45
|
-
2.
|
|
46
|
-
3.
|
|
47
|
-
4.
|
|
48
|
-
5.
|
|
49
|
-
6. 必須検証が通り、確定した阻害指摘がなく、通常モードなら単位の承認を得てから `git commit` を単独で実行する。メッセージはリポジトリ規約に従う。`git add`
|
|
50
|
-
7.
|
|
44
|
+
1. 単位を決める。どちらのモードも、一つの目的を説明でき、適用済みの前の単位と既存コードだけで成立するよう依存順に並べ、実装と必要なテスト・生成物を切り離さない。行数やファイル階層だけで分けない。通常モードは人が差分だけで妥当性を判断できる単位に分ける。自律モードは一つの目的(例: 一つのIssueの変更)として説明できる範囲を一つのコミットにまとめてよく、人のレビュー量だけを理由に分けない。
|
|
45
|
+
2. 単位案を短く示す。通常モードで複数の単位に分ける場合、許可された独立レビュアーがいれば、各単位の差分だけで人が妥当性を判断できるかを差分自体から確認させ、結論はメインが実際の差分で検証する。自律モードでは単位案の独立レビューを求めない(プロジェクトの必須条件にある場合は従う)。
|
|
46
|
+
3. コミットと検証の内容が単位だけで決まるようにする。通常モードでは、単位以外の未コミット変更(対象外、後続の単位、untracked)を一意な名前のstashへ退避し、作業ツリーとindexに単位の変更だけを残す。自律モードでは、対象外の変更を作業ツリーとindexに残してよく、検証結果が残る変更に依存しないことを根拠(例: 残る変更が検証の入力に含まれない)とともに判断する。依存する、または判断できない場合は、許可された範囲で単位をまとめ直すか、通常モードと同じ方法で退避する。退避が他の進行中の作業(他のセッションや人がステージ・編集中の変更)を妨げる場合は退避せず、所有者と調整できるまで止める。通常モードは別の隔離方法へ置き換えない。退避するときは、stashのindexにコミット対象のステージ済み変更を入れない。`git stash push` はパスを指定してもindex全体を保存し、対象のステージ済み変更が入ると後の `git stash apply --index` が失敗するため。対象のステージ済み差分のパッチを保存し、対象のステージを外してから退避し、退避後にそのパッチで対象のステージを戻す。作成前後のstash一覧を比べて今回作成されたものだけのSHAを記録し、既存stashの先頭を自分のものと決めつけない。共有ファイルのhunk分割は控えから行い、対象のhunkだけのステージを外せない場合や、対象外のステージ済みの変更が変わる場合は止める。
|
|
47
|
+
4. コミットする内容に必要な検証を行う。後続や対象外の未コミット変更に依存した成功を、その単位の検証としない。範囲を限った検証はプロジェクトが認める場合だけ使い、必須検証を省かない。後続や対象外への依存で失敗するなら、手順3に戻って単位か隔離を見直す。
|
|
48
|
+
5. 対象だけをステージし、実際にコミットされる差分の全体(indexのままコミットする場合は完全なcached diff)と影響するファイルをレビューする。indexに対象外の変更を残す場合は、それを含めずに対象だけをコミットする方法を使い、対象を限定できなければ止める。通常モードで提示する差分は、コミットされる差分と同じものにする。指摘は実物で確認し、依頼範囲の修正後は再ステージ・再検証する。外部仕様の調査は変更がそこに依存するときに行う。
|
|
49
|
+
6. 必須検証が通り、確定した阻害指摘がなく、通常モードなら単位の承認を得てから `git commit` を単独で実行する。メッセージはリポジトリ規約に従う。`git add` と連結しない。作成されたコミットの差分が予定した差分と一致することを確認する。
|
|
50
|
+
7. 退避した場合は、コミット後または中断時に、indexにコミット対象のステージ済み変更がない状態で、記録したSHAのstashを `git stash apply --index` で戻す。中断時は対象のステージを外し、stashの復元を妨げる対象の未コミット変更(共有ファイルの対象のhunkなど)もパッチに保存して作業ツリーから一時的に外してから戻す。その後、外した対象の変更を戻し、対象のステージ済み差分のパッチで対象のステージを戻す。控えで扱った変更も復元し、コミット済みの変更を再び加えない。退避の有無によらず、コミットしていない変更(ステージ済み・未ステージ・untracked)と既存stashが、操作前の記録からコミットした内容を除いたものと一致することを確認する。一致しない、曖昧な競合がある、ステージ境界を戻せない場合は推測で消さず、一致しないパスと、退避した場合は回復資料を示して止める。一致を確認してから今回作成したstashだけをdropし、HEADを確認して次へ進む。
|
|
51
51
|
|
|
52
52
|
## 終了・中断
|
|
53
53
|
|
|
54
54
|
branch・HEAD・対象外ファイルの予期しない変更、復元の曖昧さ、仕様判断が必要な指摘では安全な状態を保って止める。検証の失敗を省略で解決しない。修正で過去のコミットを変えず、後続単位にする。
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
コミット一覧、選んだ単位と隔離の有無、検証・レビューの範囲、残差分、復元状態を報告する。元からあったstashを保持し、今回のstashに残りがあれば回復方法を示す。未確認の独立性や検証を成功と報告しない。
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev-codex-astra
|
|
3
|
+
description: 比較実行用。shinaps:dev の工程を Codex(gpt-6-astra / medium)の担当だけで実行する(P4: 同じ役割1体、P5: 2体)。比較実行で明示的に指定された場合だけ使う。通常の開発には $shinaps:dev を使う。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 比較用 dev(Codex gpt-6-astra)
|
|
7
|
+
|
|
8
|
+
比較実行のための入口。工程は既存の `dev` ではなく、比較用の共通資料に従う。親と全担当のモデルは `gpt-6-astra`、推論は medium、tier は default。
|
|
9
|
+
|
|
10
|
+
## 引数
|
|
11
|
+
|
|
12
|
+
| 呼び出し | 構成 |
|
|
13
|
+
|---|---|
|
|
14
|
+
| `$shinaps:dev-codex-astra 1体 <比較条件ファイルの絶対パス>` | P4 |
|
|
15
|
+
| `$shinaps:dev-codex-astra 2体 <比較条件ファイルの絶対パス>` | P5 |
|
|
16
|
+
|
|
17
|
+
担当数(`1体` / `2体`)と比較条件ファイルはどちらも必須。どちらかが無い、または担当数が `1体` / `2体` 以外なら、「`$shinaps:dev-codex-astra <1体|2体> <比較条件ファイル>` で指定してください」と返して終了する。
|
|
18
|
+
|
|
19
|
+
## 読む資料
|
|
20
|
+
|
|
21
|
+
開始前に次をすべて読み、決めた構成で工程を進める。
|
|
22
|
+
|
|
23
|
+
- [工程](../../references/dev-comparison/workflow.md)
|
|
24
|
+
- [構成表](../../references/dev-comparison/configurations.md)
|
|
25
|
+
- [起動手順](../../references/dev-comparison/launch.md)
|
|
26
|
+
- [実行記録](../../references/dev-comparison/record.md)
|
|
27
|
+
|
|
28
|
+
担当指示は工程の役割表から辿る `roles/` の各ファイルを使う。
|
|
29
|
+
|
|
30
|
+
## 守ること
|
|
31
|
+
|
|
32
|
+
- 構成表のこの構成の行にある担当だけを、`codex exec` で起動する。構成表に無い AI への依頼(個人用のセカンドオピニオン、AI Terminal Bridge、他の AI を起動するスキルを含む)をしない。
|
|
33
|
+
- 既存の `dev`・`review`・`refine`・`simplify` スキル、登録済みのカスタムエージェント、`spawn_agent` を使わない。
|
|
34
|
+
|
|
35
|
+
## 完了報告
|
|
36
|
+
|
|
37
|
+
- 工程の結果(工程の Phase 9 の報告項目)
|
|
38
|
+
- `run-record.md` の判定([実行記録](../../references/dev-comparison/record.md) の区分。当たるものをすべて)と、指定のみの項目、パス
|
|
39
|
+
- 未検証の項目と、その理由
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev-codex-sol
|
|
3
|
+
description: 比較実行用。shinaps:dev の工程を Codex(gpt-6.1-sol / medium)の担当だけで実行する(P6: 同じ役割1体、P7: 2体)。比較実行で明示的に指定された場合だけ使う。通常の開発には $shinaps:dev を使う。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 比較用 dev(Codex gpt-6.1-sol)
|
|
7
|
+
|
|
8
|
+
比較実行のための入口。工程は既存の `dev` ではなく、比較用の共通資料に従う。親と全担当のモデルは `gpt-6.1-sol`、推論は medium、tier は default。
|
|
9
|
+
|
|
10
|
+
## 引数
|
|
11
|
+
|
|
12
|
+
| 呼び出し | 構成 |
|
|
13
|
+
|---|---|
|
|
14
|
+
| `$shinaps:dev-codex-sol 1体 <比較条件ファイルの絶対パス>` | P6 |
|
|
15
|
+
| `$shinaps:dev-codex-sol 2体 <比較条件ファイルの絶対パス>` | P7 |
|
|
16
|
+
|
|
17
|
+
担当数(`1体` / `2体`)と比較条件ファイルはどちらも必須。どちらかが無い、または担当数が `1体` / `2体` 以外なら、「`$shinaps:dev-codex-sol <1体|2体> <比較条件ファイル>` で指定してください」と返して終了する。
|
|
18
|
+
|
|
19
|
+
## 読む資料
|
|
20
|
+
|
|
21
|
+
開始前に次をすべて読み、決めた構成で工程を進める。
|
|
22
|
+
|
|
23
|
+
- [工程](../../references/dev-comparison/workflow.md)
|
|
24
|
+
- [構成表](../../references/dev-comparison/configurations.md)
|
|
25
|
+
- [起動手順](../../references/dev-comparison/launch.md)
|
|
26
|
+
- [実行記録](../../references/dev-comparison/record.md)
|
|
27
|
+
|
|
28
|
+
担当指示は工程の役割表から辿る `roles/` の各ファイルを使う。
|
|
29
|
+
|
|
30
|
+
## 守ること
|
|
31
|
+
|
|
32
|
+
- 構成表のこの構成の行にある担当だけを、`codex exec` で起動する。構成表に無い AI への依頼(個人用のセカンドオピニオン、AI Terminal Bridge、他の AI を起動するスキルを含む)をしない。
|
|
33
|
+
- 既存の `dev`・`review`・`refine`・`simplify` スキル、登録済みのカスタムエージェント、`spawn_agent` を使わない。
|
|
34
|
+
|
|
35
|
+
## 完了報告
|
|
36
|
+
|
|
37
|
+
- 工程の結果(工程の Phase 9 の報告項目)
|
|
38
|
+
- `run-record.md` の判定([実行記録](../../references/dev-comparison/record.md) の区分。当たるものをすべて)と、指定のみの項目、パス
|
|
39
|
+
- 未検証の項目と、その理由
|