@shinaps/skills 0.32.1 → 0.33.1
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 +23 -136
- package/dist/bin/skills.js +1 -1
- package/dist/lib/linear-config.js +3 -3
- package/package.json +1 -3
- package/plugins/shinaps-claude/.claude-plugin/plugin.json +1 -1
- package/plugins/shinaps-claude/agents/shinaps-architect.md +3 -2
- package/plugins/shinaps-claude/agents/shinaps-implementer.md +1 -1
- package/plugins/shinaps-claude/agents/shinaps-plan-reviewer.md +1 -1
- package/plugins/shinaps-claude/agents/shinaps-refine-agent.md +1 -1
- package/plugins/shinaps-claude/agents/shinaps-review-verifier.md +1 -1
- package/plugins/shinaps-claude/agents/shinaps-reviewer.md +1 -1
- package/plugins/shinaps-claude/agents/shinaps-simplifier.md +1 -1
- package/plugins/shinaps-claude/agents/shinaps-split-reviewer.md +3 -3
- package/plugins/shinaps-claude/references/dev/launch.md +1 -1
- package/plugins/shinaps-claude/references/dev/staffing.md +2 -2
- package/plugins/shinaps-claude/references/dev/workflow.md +6 -6
- package/plugins/shinaps-claude/references/human-review.md +17 -23
- package/plugins/shinaps-claude/references/linear/bridge.md +55 -0
- package/plugins/shinaps-claude/references/linear/claude-cli.md +4 -4
- package/plugins/shinaps-claude/references/linear/configuration.md +55 -42
- package/plugins/shinaps-claude/references/linear/configuration.schema.json +12 -38
- package/plugins/shinaps-claude/references/linear/execution.md +5 -7
- package/plugins/shinaps-claude/references/linear/qa.md +1 -1
- package/plugins/shinaps-claude/references/linear/workflow.md +51 -68
- package/plugins/shinaps-claude/references/testing.md +1 -1
- package/plugins/shinaps-claude/skills/commit/SKILL.md +7 -9
- package/plugins/shinaps-claude/skills/debug/SKILL.md +1 -1
- package/plugins/shinaps-claude/skills/explore/SKILL.md +1 -1
- package/plugins/shinaps-claude/skills/linear-execute/SKILL.md +15 -47
- package/plugins/shinaps-claude/skills/review/SKILL.md +1 -1
- package/plugins/shinaps-claude/skills/spec/SKILL.md +1 -1
- package/plugins/shinaps-codex/.codex-plugin/plugin.json +1 -1
- package/plugins/shinaps-codex/agents/shinaps-architect.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-implementer.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-plan-reviewer.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-refine-agent.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-review-verifier.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-reviewer.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-simplifier.toml +1 -1
- package/plugins/shinaps-codex/agents/shinaps-split-reviewer.toml +2 -2
- package/plugins/shinaps-codex/references/dev/launch.md +3 -3
- package/plugins/shinaps-codex/references/dev/staffing.md +2 -2
- package/plugins/shinaps-codex/references/dev/workflow.md +6 -6
- package/plugins/shinaps-codex/references/human-review.md +17 -23
- package/plugins/shinaps-codex/references/linear/bridge.md +55 -0
- package/plugins/shinaps-codex/references/linear/claude-cli.md +4 -4
- package/plugins/shinaps-codex/references/linear/configuration.md +55 -42
- package/plugins/shinaps-codex/references/linear/configuration.schema.json +12 -38
- package/plugins/shinaps-codex/references/linear/execution.md +5 -7
- package/plugins/shinaps-codex/references/linear/qa.md +1 -1
- package/plugins/shinaps-codex/references/linear/workflow.md +51 -68
- package/plugins/shinaps-codex/references/testing.md +1 -1
- package/plugins/shinaps-codex/skills/commit/SKILL.md +7 -9
- package/plugins/shinaps-codex/skills/debug/SKILL.md +2 -2
- package/plugins/shinaps-codex/skills/explore/SKILL.md +2 -2
- package/plugins/shinaps-codex/skills/linear-execute/SKILL.md +12 -19
- package/plugins/shinaps-codex/skills/review/SKILL.md +1 -1
- package/plugins/shinaps-codex/skills/spec/SKILL.md +2 -2
- package/plugins/shinaps-claude/references/linear/codex-task.md +0 -38
- package/plugins/shinaps-claude/references/linear/managed-session.md +0 -144
- package/plugins/shinaps-codex/references/linear/codex-task.md +0 -38
- package/plugins/shinaps-codex/references/linear/managed-session.md +0 -144
- package/plugins/shinaps-codex/skills/dev-codex/SKILL.md +0 -10
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# shinaps-skills
|
|
2
2
|
|
|
3
|
-
Shinaps AIの利用者向け開発ワークフロー。Claude CodeとCodexにはそれぞれに適したplugin
|
|
3
|
+
Shinaps AIの利用者向け開発ワークフロー。Claude CodeとCodexにはそれぞれに適したplugin・カスタムエージェントとして配布する。実装はClaude Codeが行い、Codexは進行・QA・レビュー等を担当する。スキルのダウンロードと導入にShinaps AIのアカウントは不要。サービスのrule検索・登録を使うときにアカウント作成と認証を行う。
|
|
4
4
|
|
|
5
5
|
## プロジェクトごとの条件
|
|
6
6
|
|
|
@@ -14,12 +14,12 @@ sharedで採用する `instructions.md` は共有JSONの `references.specificati
|
|
|
14
14
|
|
|
15
15
|
## JSON設定の検証
|
|
16
16
|
|
|
17
|
-
0.
|
|
17
|
+
0.33.0から `.shinaps/linear.json`(`config_version: 2`)を使います。`config_version: 1`・`implementation_skill`・`review_flow.tool`・許可の `codex_task`/`managed_session:*`、旧YAML・scalar review_flowは受け付けず、[移行手順](plugins/shinaps-claude/references/linear/configuration.md#config_version-1-からの移行)に従います。
|
|
18
18
|
|
|
19
|
-
CLIはpluginに含まれないため、利用中のskillと同じ `@shinaps/skills@0.
|
|
19
|
+
CLIはpluginに含まれないため、利用中のskillと同じ `@shinaps/skills@0.33.1` を導入し、`shinaps-skills --version` で確認します。`shinaps-skills validate-linear-config <明示ファイル>` は同梱schemaだけで検証し、ネットワーク取得・正本探索・Git操作・入力変更は行いません。`$schema` は固定URLによるエディタ補助で、契約の正本は[同梱schema](plugins/shinaps-claude/references/linear/configuration.schema.json)です。
|
|
20
20
|
|
|
21
21
|
```sh
|
|
22
|
-
npm install -g @shinaps/skills@0.
|
|
22
|
+
npm install -g @shinaps/skills@0.33.1
|
|
23
23
|
shinaps-skills --version
|
|
24
24
|
shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
|
|
25
25
|
```
|
|
@@ -30,13 +30,13 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
|
|
|
30
30
|
|---|---|
|
|
31
31
|
| `explore` | 対話しながら既存挙動と変更影響を調べる |
|
|
32
32
|
| `spec` | 目的・仕様・実現方法を詰める |
|
|
33
|
-
| `dev-claude` (Claudeのみ)
|
|
33
|
+
| `dev-claude` (Claudeのみ) | メインが作業に応じて担当・人数を判断し、計画・実装・検証・独立レビューを進める |
|
|
34
34
|
| `debug` | 不具合の原因を検証する |
|
|
35
35
|
| `review` | 差分や既存コードをレビューする |
|
|
36
36
|
| `refine` | Shinaps AIのruleと実ファイルを照合する |
|
|
37
37
|
| `extract-rules` | PRレビューからruleを抽出する |
|
|
38
38
|
| `simplify` | 目的から見直して不要な構造や手順を削る |
|
|
39
|
-
| `commit` | 各単位のreview_flowに従い、autoはAIがレビュー・コミット、manualはAI
|
|
39
|
+
| `commit` | 各単位のreview_flowに従い、autoはAIがレビュー・コミット、manualはAIが退避・stage・提示し、人と修正を相談して、人の単位承認後にAIがコミットする |
|
|
40
40
|
| `create-pr` | リポジトリの規約に合わせてPRを作成する |
|
|
41
41
|
| `release` | 公開条件を確定し、対象バージョンの利用可能性を確認する |
|
|
42
42
|
| `linear-plan` | 相談・必要なspec/explore・Issue作成と整理・プロジェクト設定を行い、実装前で止める |
|
|
@@ -44,9 +44,9 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
|
|
|
44
44
|
|
|
45
45
|
コミット・PR・リリースは、利用者の依頼またはLinear進行で合意済みの継続許可に従う。[共通設定](plugins/shinaps-claude/references/linear/configuration.md)・[担当と工程](plugins/shinaps-claude/references/linear/workflow.md)・[終了と待機](plugins/shinaps-claude/references/linear/execution.md)を参照し、必要な前工程が揃えば再確認せずに進む。単独スキル利用にはLinear進行や新しいゴールを必須にしない。`autonomous-commit-review` の役割は `commit` に統合した。個人用の別AI呼び出し・ブラウザ管理・ゴール管理・動画制作はこのpluginに含めない。
|
|
46
46
|
|
|
47
|
-
`linear-execute`
|
|
47
|
+
`linear-execute` は初版では利用者本人の環境向けで、Codexが進行役として進行・Agent QA・Issueの記録・人への窓口を担当し、Claude Codeが実装・修正・コミットを行う。主フローは着手・実装・差分確定・公開確認・結果報告の5工程。運用項目は明示必須で、未記載を既定値で補わない。経路は着手時に通常の `review_flow.mode` で決まる。autoはCodexがローカル `claude -p` を起動して同じsessionをresumeし(許可 `claude_cli`、[CLI手順](plugins/shinaps-claude/references/linear/claude-cli.md))、CLIの既存権限・model・effort・pluginsを保持する。manualはWebStorm内の対話Claude CodeセッションへBridgeで依頼する(許可 `bridge_request`、[Bridge](plugins/shinaps-claude/references/linear/bridge.md))。初期体制はClaudeのメインが決めて報告し、Codexは判断の材料を渡す。Bridge本体は同梱せず、導入済みのMCPとWebStormプラグインを使う。`SKILL.md` は担当ごとに両版で書き分け、共通の手順と書式は `references/linear/` に置く。`references/linear/` はClaude版を編集元としてCodex版へ同じ内容を複製し、テストで一致を確認する。
|
|
48
48
|
|
|
49
|
-
`review_flow: { "mode": "auto" }` はAIが自然な単位を決め、独立レビュー・QA後にstage・commitする。`review_flow: { "mode": "manual"
|
|
49
|
+
`review_flow: { "mode": "auto" }` はAIが自然な単位を決め、独立レビュー・QA後にstage・commitする。`review_flow: { "mode": "manual" }` はAIが単位外を安全に退避して単位をstage・提示し、人と修正を相談し、人がその単位を承認した後にAIがcommitする。両方のstage・AI commit権限は利用者との明示合意に含まれ、未合意ファイルからは得ない。`path_policy_overrides` は `paths` と `review_flow` だけを持つ。全変更が一つのルールで覆われる単位だけ適用し、改名は旧新両パスを判定する。競合時は止める。旧 `human_code_review`・`commit_mode`・permissionsのstage/commit・パス別ai_commitは明示移行が必要。[共通設定](plugins/shinaps-claude/references/linear/configuration.md#パス別の方針)を参照する。
|
|
50
50
|
|
|
51
51
|
0.29.0では旧 `document_only_changes: ai_commit` を廃止した。利用先では依存工程を止め、具体的なパス例外への移行または例外廃止を合意する。説明だけの変更の許可とは同値でないため自動変換しない。旧 `none` もJSONへ明示移行し、新規設定は `path_policy_overrides: []` にする。
|
|
52
52
|
|
|
@@ -56,21 +56,15 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
|
|
|
56
56
|
|
|
57
57
|
### dev の入口と体制
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
| --- | --- | --- |
|
|
61
|
-
| `dev-claude` | Claude Code | Opus / medium(登録エージェントの定義) |
|
|
62
|
-
| `dev-codex` | Codex | `gpt-6-astra` / medium(起動時に指定) |
|
|
63
|
-
| `dev-managed-cc` | Managed Agents | leadはFable 5.1 / medium、担当はOpus / medium・fast |
|
|
59
|
+
実装の入口は Claude Code の `dev-claude` だけで、Codexに実装の入口はない。メインは利用者のClaude CLI・セッションの設定(model・effort)を保持し、起動引数で上書きしない。担当は登録エージェントの定義(Opus / medium)で動く。
|
|
64
60
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
[実装体制の判断](plugins/shinaps-claude/references/dev/staffing.md)に従い、executeの進行役が各Issue開始時に関連コードを確認し、設計前に役割別の人数・理由・専任なしの責任者・必須検証を決めて渡す。単独devではメインが判断する。不確実性・影響範囲・失敗時の影響を基準に、途中でも必要な担当を追加する。人数を増やすだけで許可・予算・品質条件は変えない。
|
|
61
|
+
[実装体制の判断](plugins/shinaps-claude/references/dev/staffing.md)に従い、devのメインが設計前に役割別の人数・理由・専任なしの責任者・必須検証を決める。linear-executeでは進行役のCodexが判断の材料を渡し、メインが決めて報告する。不確実性・影響範囲・失敗時の影響を基準に、途中でも必要な担当を追加する。人数を増やすだけで許可・予算・品質条件は変えない。
|
|
68
62
|
|
|
69
63
|
小さく明確な変更はメインが計画し、実装1体と独立コードレビュー1体で進められる。設計の比較や重要な契約の独立確認が必要なら該当する役割だけ増やす。規約照合・簡素化・指摘検証は専任なしでも責任者を決めて行う。
|
|
70
64
|
|
|
71
|
-
- 工程と体制基準はClaude版を編集元としてCodex
|
|
72
|
-
- Claudeは登録エージェント、Codex
|
|
73
|
-
- explore・spec・review・debug
|
|
65
|
+
- 工程と体制基準はClaude版を編集元としてCodexへ複製する。起動手順だけはruntimeごとに異なる。
|
|
66
|
+
- Claudeは登録エージェント、Codexは名前付きサブエージェントを使う。モデル・推論の設定は今回の人数判断で変更しない。
|
|
67
|
+
- Claudeのexplore・spec・review・debugからは `dev-claude` へ引き継ぐ。ClaudeのdevはSkillツールからの起動も許可する。Codexのスキルは実装へ引き継がず、Linear進行では `linear-execute` でClaudeへ依頼する。
|
|
74
68
|
- テスト方針は各版の `references/testing.md` を正本とし、役割定義に同じ段落を複製して検証する。
|
|
75
69
|
|
|
76
70
|
## Claude Code
|
|
@@ -84,7 +78,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
|
|
|
84
78
|
|
|
85
79
|
## Codex
|
|
86
80
|
|
|
87
|
-
Node.js 22以上と、`plugin marketplace add` / `plugin add` に対応したCodex CLIを使う。Claude Code
|
|
81
|
+
Node.js 22以上と、`plugin marketplace add` / `plugin add` に対応したCodex CLIを使う。Codexのスキルだけを使う場合、Claude Codeのインストールは不要。`linear-execute` の開発進行には、autoではローカルClaude Code CLI、manualではWebStorm内のClaude CodeとBridgeが必要になる。
|
|
88
82
|
|
|
89
83
|
導入・更新・削除:
|
|
90
84
|
|
|
@@ -99,7 +93,7 @@ npx @shinaps/skills@latest recover codex
|
|
|
99
93
|
|
|
100
94
|
ローカル開発では、このcheckoutから `node bin/skills.ts install codex` のように同じ操作を実行できる。Node.js 22.18以上なら型除去でTypeScriptをそのまま実行する (ビルド不要)。
|
|
101
95
|
|
|
102
|
-
CLIはスキルをCodex pluginとして登録し、16個のカスタムエージェントを`${CODEX_HOME:-~/.codex}/agents/`へ配置する。新しいセッションで`shinaps:
|
|
96
|
+
CLIはスキルをCodex pluginとして登録し、16個のカスタムエージェントを`${CODEX_HOME:-~/.codex}/agents/`へ配置する。新しいセッションで`shinaps:review`、`shinaps:linear-execute`等が読み込まれる。Codexに実装の入口はなく、review・debug・spec等のスキルが担当を使う。担当のモデルと推論設定は親セッションから継承する。実装担当以外の調査・レビュー担当は読み取り専用を既定にする。0.23.0 まで配置していた比較専用の役割は、更新時に管理済みエージェントとして削除される。親セッションの実行時設定が優先される場合もあるため、権限の強制境界とは扱わない。
|
|
103
97
|
|
|
104
98
|
配布物は`~/.local/share/shinaps-ai/skills/codex/`へ保持し、一時的なnpxキャッシュに依存しない。同じ親ディレクトリの`state.json`に配置したエージェントと内容のハッシュを記録する。管理対象外の同名ファイルや、導入後に編集されたエージェントは上書き・削除せず停止する。必要な変更を退避・整理してから再実行する。`CODEX_HOME`を変更する場合は元の配置先で先にuninstallする。
|
|
105
99
|
|
|
@@ -134,122 +128,15 @@ macOS以外では予定実行の登録に対応していないため手動更新
|
|
|
134
128
|
|
|
135
129
|
Claude Codeは標準のmarketplace自動更新機能を使う。`/plugin` のMarketplacesから対象marketplaceのauto-updateを有効にする。GitHubから自動取得するにはリモートmarketplaceを登録する必要があり、ローカルcheckout登録ではソースのgit pullまで自動実行しない。
|
|
136
130
|
|
|
137
|
-
## Claude Managed Agents
|
|
138
|
-
|
|
139
|
-
`managed-agents/` に、lead `shinaps-dev-managed-cc`、devの8役割、skill `dev-managed-cc`、環境 `shinaps-dev` の定義を置く。leadが体制を引き継いで必要な担当へ委任する。
|
|
140
|
-
|
|
141
|
-
lead は Fable 5.1(`claude-fable-5-1` / medium)、役割は Opus 5.5 の fast(`speed: fast`)で動く。人数と再確認によって費用は変わるため、固定体制時の費用を現在の見積りに使わない。セッションの合意済み予算内で体制を決め、増員のために予算を自動で増やさない。計画の再確認はManagedの起動手順に従い最大2ラウンドとする。QA修正も同じセッションの予算に含める。
|
|
142
|
-
|
|
143
|
-
前提は `ant` CLI 1.42.0 以上と `ant auth login` 済みであること。定義の作成・更新は次の npm script だけで行う。
|
|
144
|
-
|
|
145
|
-
```sh
|
|
146
|
-
npm run managed:plan # 送信内容の確認。全項目は npm run managed:plan -- -v
|
|
147
|
-
npm run managed:apply # 作成・更新。確認に対話で答えられない実行では、先に managed:plan の出力を確認してから -- --yes を付ける
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
`ant apply` を直接実行しない。`ant apply` は指定したディレクトリを再帰的に走査し、`agents/` の下のファイルと `SKILL.md` を持つディレクトリを送信対象にするので、リポジトリ直下を対象にすると `plugins/` の下にある Claude 版・Codex 版の定義も送信対象に含まれる。また lockfile は実行した場所から上へ探し、キーは lockfile のディレクトリからの相対パスになる。別の場所から実行すると、既存の lockfile と対応づかずに同じリソースが重複して作られる。npm script は `managed-agents/` に移動してから実行するので、対象と lockfile の位置が常に同じになる。
|
|
151
|
-
|
|
152
|
-
`managed-agents/claude-lock.json` は apply が書き出す。リソースの ID を記録しているので commit する。lockfile は shinaps 組織のリソースの記録である。別の組織で使う場合は、lockfile を消してから実行するか、`npm run managed:apply -- --lock-file claude-lock.<組織名>.json` のように別の lockfile を指定する。パスは `managed-agents/` から見た位置で、lockfile は `managed-agents/` の中に置く(外に置くとキーの形が変わり、下の jq の例と合わなくなる)。ID は次のように引ける。
|
|
153
|
-
|
|
154
|
-
```sh
|
|
155
|
-
jq -r '.resources["./agents/shinaps-dev-managed-cc.md"].id' managed-agents/claude-lock.json
|
|
156
|
-
jq -r '.resources["./environments/shinaps-dev.yaml"].id' managed-agents/claude-lock.json
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
旧ultraのクラウドリソースとlockの対応は過去セッションの参照用に保持する。新規実行には使わず、通常の更新で `--prune` による削除を行わない。
|
|
160
|
-
|
|
161
|
-
定義を変えたら `npm run managed:apply` を実行する。lead が参照する役割と skill の版も同じ実行で更新される。
|
|
162
|
-
|
|
163
|
-
### セッション
|
|
164
|
-
|
|
165
|
-
linear-execute の Managed の入口では、セッションの作成・観測・取り出し・差分の適用を、進行役が [Managedセッション](plugins/shinaps-claude/references/linear/managed-session.md) の手順で行う。以下は手動で作る場合の例である。
|
|
166
|
-
|
|
167
|
-
lead は shinaps-ai MCP の `list_search_facets`・`search_rules` を使う。規約を取得するには、shinaps-ai の API トークンが使えるようになってから、利用者が vault を作って資格情報を登録する。vault はセッションの作成時にしか渡せない。vault を渡さないセッションでも作業は進むが、規約照合は未確認になる。
|
|
168
|
-
|
|
169
|
-
```sh
|
|
170
|
-
ant beta:vaults create --display-name shinaps-ai --transform id --raw-output # 返された ID を VAULT_ID にする
|
|
171
|
-
read -rs SHINAPS_AI_TOKEN # 画面に表示せずに入力する
|
|
172
|
-
ant beta:vaults:credentials create --vault-id "$VAULT_ID" --display-name shinaps-ai <<YAML
|
|
173
|
-
auth:
|
|
174
|
-
type: static_bearer
|
|
175
|
-
mcp_server_url: https://app.shinaps.ai/mcp
|
|
176
|
-
token: "$SHINAPS_AI_TOKEN"
|
|
177
|
-
YAML
|
|
178
|
-
unset SHINAPS_AI_TOKEN
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
token は stdin の YAML で渡す。`--auth.token` の引数で渡すと、シェルの履歴とプロセスの一覧に見える(`ant` 自身も、引数で資格情報を渡すことを非推奨にしている)。YAML の値を二重引用符で囲むので、token に `"` や `\` が含まれる場合は、その文字の前に `\` を付けてから入力する。
|
|
182
|
-
|
|
183
|
-
作業先を git bundle にして添付する。利用者共通方針(`~/.claude/CLAUDE.md`)も同じようにアップロードして添付する。どちらもリポジトリには入れない。
|
|
184
|
-
|
|
185
|
-
```sh
|
|
186
|
-
git bundle create /tmp/<repo>.bundle <branch>
|
|
187
|
-
BUNDLE_ID=$(ant files upload --file /tmp/<repo>.bundle --expires-in-seconds 604800 --transform id --raw-output)
|
|
188
|
-
CLAUDE_MD_ID=$(ant files upload --file ~/.claude/CLAUDE.md --expires-in-seconds 604800 --transform id --raw-output)
|
|
189
|
-
ant beta:sessions create \
|
|
190
|
-
--agent "$LEAD_ID" \
|
|
191
|
-
--environment-id "$ENV_ID" \
|
|
192
|
-
--vault-id "$VAULT_ID" \
|
|
193
|
-
--budget '{type: limit, max_list_cost: {amount: "4000", currency: USD}}' <<YAML
|
|
194
|
-
resources:
|
|
195
|
-
- {type: file, file_id: $BUNDLE_ID, mount_path: /<repo>.bundle}
|
|
196
|
-
- {type: file, file_id: $CLAUDE_MD_ID, mount_path: /CLAUDE.md}
|
|
197
|
-
YAML
|
|
198
|
-
ant beta:sessions connect --web "$SESSION_ID"
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
- 最初のメッセージで、作業先の bundle(`/mnt/session/uploads/<repo>.bundle`)、ブランチ、比較元の SHA を伝える。lead は起動手順に従って `/workspace/<repo>` に clone してから工程を始める。
|
|
202
|
-
- bundle の代わりに GitHub のリポジトリをマウントすることもできる。その場合は resources の bundle を次に置き換える。token は Contents: Read だけを許可した fine-grained token にする。
|
|
203
|
-
|
|
204
|
-
```yaml
|
|
205
|
-
- type: github_repository
|
|
206
|
-
url: https://github.com/<owner>/<repo>
|
|
207
|
-
authorization_token: <Contents: Read だけを許可した fine-grained token>
|
|
208
|
-
checkout: {type: branch, name: <branch>}
|
|
209
|
-
```
|
|
210
|
-
|
|
211
|
-
- 予算はセッション作成時にしか付けられない(後から変更・削除はできる)。金額はセント単位の文字列で、`"4000"` は 40 USD である。
|
|
212
|
-
- lead の model を上書きするときは、`--agent` を外し、stdin の YAML に次を加える。上書きすると定義の effort は引き継がれないので、effort も指定する。
|
|
213
|
-
|
|
214
|
-
```yaml
|
|
215
|
-
agent:
|
|
216
|
-
type: agent_with_overrides
|
|
217
|
-
id: <LEAD_ID>
|
|
218
|
-
model: {id: <model>, effort: <effort>}
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
- `ant beta:sessions connect --web` は全スレッドを見られるビューアを開く。lead の質問には、次のメッセージで答える。
|
|
222
|
-
|
|
223
|
-
作業記録は、lead が終了時に `/mnt/session/outputs/` へ tar.gz でまとめる。正本はサンドボックス内の `.shinaps/work/` である。あわせて、比較元からの差分の全体を `changes.patch` として同じ場所に置く。
|
|
224
|
-
|
|
225
|
-
```sh
|
|
226
|
-
ant beta:files list --scope-id "$SESSION_ID" --beta managed-agents-2026-04-01
|
|
227
|
-
ant files download --file-id <file ID> -o <保存先>
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
ファイルはセッションが待機状態になってから数秒遅れて一覧に現れることがある。予算に達して止まったセッションでは、予算を引き上げて lead が終了処理を行うまで tar は作られない。
|
|
231
|
-
|
|
232
|
-
担当の委任・継続の方法と、Claude Code 固有の手段の置き換え・未対応のものは、[起動手順](managed-agents/skills/dev-managed-cc/references/dev/launch.md)にある。
|
|
233
|
-
|
|
234
|
-
### ネットワークと危険
|
|
235
|
-
|
|
236
|
-
環境 `shinaps-dev` のネットワークは制限しない(`unrestricted`)。
|
|
237
|
-
|
|
238
|
-
- bash の実行は承認なし(`always_allow`)なので、サンドボックスにあるもの(マウントしたコード、添付した CLAUDE.md)は外へ送ることができる。
|
|
239
|
-
- 取得した Web ページやリポジトリの内容に書かれた指示に従ってしまう危険(プロンプトインジェクション)がある。
|
|
240
|
-
- bash を `always_ask` か `auto` にすれば軽減できるが、担当ごとの承認待ちで工程が止まるので採らない。
|
|
241
|
-
- 秘密情報はサンドボックスに置かない。マウントするリポジトリの token は読み取りだけに限る。
|
|
242
|
-
- bundle で送るのはコミット済みの内容だけで、ignore 済みのファイルや作業記録は送らない。
|
|
243
|
-
|
|
244
131
|
## 開発と配布
|
|
245
132
|
|
|
246
133
|
- Claude版: `plugins/shinaps-claude/`、marketplaceは`.claude-plugin/marketplace.json`
|
|
247
134
|
- Codex版: `plugins/shinaps-codex/`、marketplaceは`.agents/plugins/marketplace.json`
|
|
248
135
|
- Codexカスタムエージェント: `plugins/shinaps-codex/agents/`
|
|
249
|
-
-
|
|
136
|
+
- `managed-agents/claude-lock.json` は既存クラウドリソースの記録として保持する。`managed-agents/` で `ant` を実行しない(apply・prune・削除をしない)
|
|
250
137
|
- 配布CLI: ソースは `bin/skills.ts` と `lib/*.ts`。`npm run build` (`tsc`) で `dist/` にJSを出力し、npmにはそれを配布する。Node.jsは`node_modules`配下の`.ts`に型除去を適用しないため、ソースのままは配布できない。checkoutでは型除去で直接実行するので、`enum`など型除去で消せない構文は使わない (`tsconfig.json` の `erasableSyntaxOnly`)
|
|
251
138
|
|
|
252
|
-
品質基準とプロジェクト設定の方針は揃えつつ、クライアント固有の実行手順・エージェント形式は別々に管理する。
|
|
139
|
+
品質基準とプロジェクト設定の方針は揃えつつ、クライアント固有の実行手順・エージェント形式は別々に管理する。Codex版の工程の資料(`references/` の、`dev/launch.md` を除くもの)はClaude版と一致させ、テストで確認する。Codex版は役割の本文とスキルを書き分け、Claude向けのエージェント呼び出しをCodexに読み替えさせる方式は使わない。スキルを追加・変更した場合は各版への適用可否を判断する。
|
|
253
140
|
|
|
254
141
|
```sh
|
|
255
142
|
npm test
|
|
@@ -259,9 +146,9 @@ npm pack --dry-run
|
|
|
259
146
|
|
|
260
147
|
公開前にはnpmスコープ`@shinaps`の利用権限とtarball内容を確認する。CLIのバージョンと両pluginのバージョンを揃える。開発中の同一バージョンも`update codex`で再配置できる。
|
|
261
148
|
|
|
262
|
-
###
|
|
149
|
+
### manualの提示と承認
|
|
263
150
|
|
|
264
|
-
manual
|
|
151
|
+
manualではWebStorm内の対話Claude Codeセッションで、Claudeが単位外を退避して単位の差分をstage・提示します。人はWebStormの差分表示で確認し、Claudeと修正を相談します。人がその単位を承認したら、Claudeが承認したtreeと一致することを確かめてコミットします。承認後に単位の差分が変われば再提示・再承認が必要です。手順は[共通手順](plugins/shinaps-claude/references/human-review.md)に従います。autoには人レビュー待ちを追加しません。
|
|
265
152
|
|
|
266
153
|
### CIとnpm自動公開
|
|
267
154
|
|
|
@@ -300,7 +187,7 @@ codex mcp login shinaps-ai
|
|
|
300
187
|
|
|
301
188
|
未登録の利用者は[Shinaps AI](https://app.shinaps.ai)でアカウントを作成する。未認証でもスキルの導入は完了できる。MCPが使えないときに照合済みと報告しない。`simplify`・`commit`・`create-pr`・`release`・`linear-plan`・`linear-execute` の基本手順はMCP接続を必須としない。
|
|
302
189
|
|
|
303
|
-
## Subagents (Claude: 16 / Codex: 16
|
|
190
|
+
## Subagents (Claude: 16 / Codex: 16)
|
|
304
191
|
|
|
305
192
|
| Subagent | 役割 |
|
|
306
193
|
|---|---|
|
|
@@ -321,16 +208,16 @@ codex mcp login shinaps-ai
|
|
|
321
208
|
| `shinaps-debug-validator` | 仮説の実コード検証 (root-cause / contributing-factor / red-herring / needs-reproduction 分類) |
|
|
322
209
|
| `shinaps-split-reviewer` | `shinaps:commit` のmanualの分割案を「単位の diff だけで妥当性を判断できるか」で批判 + 修正版最終分割計画 (worktree は read-only) |
|
|
323
210
|
|
|
324
|
-
Claude版はMarkdown、Codex版はTOMLで役割を定義する。
|
|
211
|
+
Claude版はMarkdown、Codex版はTOMLで役割を定義する。
|
|
325
212
|
|
|
326
|
-
Claude版は全16エージェントが `opus / medium`。Codex
|
|
213
|
+
Claude版は全16エージェントが `opus / medium`。Codex版の役割定義はモデルを書かず、モデルと推論は親セッションから継承する。dev での担当の割り当ては[dev の工程](plugins/shinaps-claude/references/dev/workflow.md)にある。
|
|
327
214
|
|
|
328
215
|
**subagent 内では shinaps MCP を直接呼び出さず、rule 全文は Skill 側から prompt 経由で渡す** 原則を全 system prompt に明記する。MCP呼び出しの利用量が重複しないようにするため。
|
|
329
216
|
|
|
330
217
|
|
|
331
218
|
## 作業成果物
|
|
332
219
|
|
|
333
|
-
作業記録は現在の作業先の `.shinaps/work/` に保存する。[作業記録の共通手順](plugins/shinaps-claude/references/work-records.md)に従い、既存の共有例外を保持し、workの除外が不足する場合だけ `/work/` を追加する。設定の共有方式は記録作成では変更しない。共通手順はClaude版を編集元としてCodex
|
|
220
|
+
作業記録は現在の作業先の `.shinaps/work/` に保存する。[作業記録の共通手順](plugins/shinaps-claude/references/work-records.md)に従い、既存の共有例外を保持し、workの除外が不足する場合だけ `/work/` を追加する。設定の共有方式は記録作成では変更しない。共通手順はClaude版を編集元としてCodex版へ複製し、テストで一致を確認する。
|
|
334
221
|
|
|
335
222
|
```text
|
|
336
223
|
.shinaps/
|
package/dist/bin/skills.js
CHANGED
|
@@ -15,7 +15,7 @@ try {
|
|
|
15
15
|
if (rest.length !== 1)
|
|
16
16
|
throw new Error('Usage: shinaps-skills validate-linear-config <file>');
|
|
17
17
|
await validateLinearConfig(rest[0]);
|
|
18
|
-
console.log('Linear configuration is valid (config_version:
|
|
18
|
+
console.log('Linear configuration is valid (config_version: 2).');
|
|
19
19
|
}
|
|
20
20
|
else if (command === 'auto-update')
|
|
21
21
|
await autoUpdate(rest);
|
|
@@ -8,10 +8,10 @@ export async function validateLinearConfig(path) {
|
|
|
8
8
|
// 版の不一致は設定修正とskill更新で対処が異なるため、schema検証より先に案内する。
|
|
9
9
|
if (typeof input === 'object' && input !== null && !Array.isArray(input)) {
|
|
10
10
|
const version = 'config_version' in input ? input.config_version : undefined;
|
|
11
|
-
if (version === undefined || (Number.isInteger(version) && Number(version) <
|
|
12
|
-
throw new Error('config_version is missing or old. Migrate with linear-plan to config_version:
|
|
11
|
+
if (version === undefined || (Number.isInteger(version) && Number(version) < 2)) {
|
|
12
|
+
throw new Error('config_version is missing or old. Migrate with linear-plan to config_version: 2.');
|
|
13
13
|
}
|
|
14
|
-
if (Number.isInteger(version) && Number(version) >
|
|
14
|
+
if (Number.isInteger(version) && Number(version) > 2) {
|
|
15
15
|
throw new Error('Future config_version. Update the skill and matching CLI before continuing.');
|
|
16
16
|
}
|
|
17
17
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shinaps/skills",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.33.1",
|
|
4
4
|
"description": "Install Shinaps AI workflows and custom agents for Codex",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -22,8 +22,6 @@
|
|
|
22
22
|
"test": "node --test \"test/*.test.ts\"",
|
|
23
23
|
"check": "npm run format:check && tsc --noEmit",
|
|
24
24
|
"verify:package": "node scripts/verify-package.ts",
|
|
25
|
-
"managed:plan": "cd managed-agents && ant apply --dry-run .",
|
|
26
|
-
"managed:apply": "cd managed-agents && ant apply .",
|
|
27
25
|
"format": "biome format --write .",
|
|
28
26
|
"format:check": "biome format ."
|
|
29
27
|
},
|
|
@@ -48,7 +48,8 @@ color: green
|
|
|
48
48
|
|
|
49
49
|
- **アーキテクチャ判断**: 採用アプローチと、なぜ他を却下したかの WHY
|
|
50
50
|
- **責務と配置**: 変更後の所有者・配置先・利用側からの依存方向と根拠。利用範囲が変わる責務は、移動する/現状に残す理由を示す
|
|
51
|
-
-
|
|
51
|
+
- **目的と不変条件**: 守る性質を不変条件で書く
|
|
52
|
+
- **変更範囲**: 変更・移動・削除・新規の対象ファイル(絶対パス)と、各ファイルの責務を 1 行。個々の置換・文言の列挙は書かず、実装担当が現物に合わせて決める
|
|
52
53
|
- **コンポーネント設計**: 主要クラス / 関数 / 型のシグネチャ
|
|
53
54
|
- **データフロー**: 主要なリクエスト・イベントの流れ
|
|
54
55
|
- **ビルド順序**: 依存関係を考慮した実装順
|
|
@@ -80,4 +81,4 @@ color: green
|
|
|
80
81
|
|
|
81
82
|
## テスト方針
|
|
82
83
|
|
|
83
|
-
|
|
84
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
@@ -17,7 +17,7 @@ color: blue
|
|
|
17
17
|
|
|
18
18
|
## テスト方針
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
21
21
|
|
|
22
22
|
## 簡素化と検証
|
|
23
23
|
|
|
@@ -54,4 +54,4 @@ rule については **アーキテクチャ / 責務分割 / 依存方向 / ス
|
|
|
54
54
|
|
|
55
55
|
## テスト方針
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
@@ -77,4 +77,4 @@ Skill 側から渡された「rule 全件」と「対象ファイルの現状全
|
|
|
77
77
|
|
|
78
78
|
## テスト方針
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
@@ -27,4 +27,4 @@ color: orange
|
|
|
27
27
|
|
|
28
28
|
## テスト方針
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
@@ -64,7 +64,7 @@ color: red
|
|
|
64
64
|
|
|
65
65
|
## テスト方針
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
68
68
|
|
|
69
69
|
## devから割り当てられた確認
|
|
70
70
|
|
|
@@ -33,4 +33,4 @@ color: cyan
|
|
|
33
33
|
|
|
34
34
|
## テスト方針
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
テスト追加は既定の作業にしない。既存の規約・テストから何を保証したいプロジェクトかを確認し、仕様として固定する代表的な成功パターンを中心にして、既存テストの拡張を優先する。既存テストで保証できる内容は重複させず、テストの現状だけから未合意の仕様を作らない。想像上のエッジケースやエラーの網羅を標準の要求にしない。実際に発生・再現した不具合は、修正前に失敗し修正後に成功する回帰テストで固定する(自動化が困難なら理由と再現確認の結果を残す)。明示された必須仕様・拒否境界の代表例、仕様を表す既存テスト、プロジェクトが定める必須検証は維持し、期待値を弱めたり既存テストを一括削除したりしない。実装手順をなぞるだけのテストやライブラリ単体の挙動を確かめるテストは追加せず、実装方法を変えても変わってはならない挙動を検証する。テスト不足を指摘する場合は、防ぐ不具合または固定する仕様と、既存テストの拡張では足りない理由を示し、テストを追加していないことだけを差し戻しの理由にしない。必須検証の失敗や明示された保証の欠落は指摘する。テストの統合・削除は保証が残る根拠を示して行う。テストを追加しない場合も、変更に必要な既存検証と動作確認は行う。検証の成否は検証コマンド自身の終了コードで判定し、ログの短縮・要約は判定の後に行う(`npm test | tail` のようにパイプで短縮した出力の終了コードを検証結果にしない)。
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: shinaps-split-reviewer
|
|
3
|
-
description: shinaps:commit のmanual
|
|
3
|
+
description: shinaps:commit のmanualで、人が単位ごとにレビュー・承認する前に分割計画を確認するレビューエージェント。メインスレッドが提案したコミット単位の分割を、各単位の diff だけを読んで変更の妥当性を判断できるか (下限) / 一言で説明できる範囲か (上限) / 依存順 / 網羅性の観点で批判的にレビューし、指摘を反映した修正版最終分割計画までを返す。worktree は read-only で扱い、stash / add / checkout / Edit は一切行わない
|
|
4
4
|
model: opus
|
|
5
5
|
effort: medium
|
|
6
6
|
color: blue
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
あなたは `/shinaps:commit` のmanual
|
|
10
|
-
メインスレッドが提案した **コミット単位の分割計画** を、「この単位の diff だけを渡された人間レビュアーが、変更の妥当性を判断できるか」という視点で **批判的に検証** し、Critical / Warning / Info の指摘を出したうえで、**指摘を反映した修正版最終分割計画 (Part 2)**
|
|
9
|
+
あなたは `/shinaps:commit` のmanualで、人が単位ごとにレビュー・承認する前に分割計画を確認するレビューエージェントです。
|
|
10
|
+
メインスレッドが提案した **コミット単位の分割計画** を、「この単位の diff だけを渡された人間レビュアーが、変更の妥当性を判断できるか」という視点で **批判的に検証** し、Critical / Warning / Info の指摘を出したうえで、**指摘を反映した修正版最終分割計画 (Part 2)** までを返してください。人が単位ごとにレビュー・承認する前に区切り方を確かめる立場なので(人のレビュー・承認は代行しない)、「概ね良い」で済ませずに各単位を実際に読んで判定します。
|
|
11
11
|
|
|
12
12
|
## 作業前の必須確認
|
|
13
13
|
|
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
- 同じ役割の複数担当 は、同じ登録エージェントを別々に起動する。呼び出しごとに別のコンテキストになるので、互いの結果は共有されない。担当番号は起動前に固定し、返された ID と対応づけて保持する。
|
|
7
7
|
- 並行する担当はバックグラウンドで起動し、全担当の完了を待つ。同時に起動できなかった担当は、実行中の担当の完了後に起動する。
|
|
8
8
|
- 同じ担当の継続は、同じ ID へ SendMessage で依頼する。
|
|
9
|
-
- 対話セッションの質問は `AskUserQuestion` で一問ずつ行う。CodexからローカルCLI
|
|
9
|
+
- 対話セッションの質問は `AskUserQuestion` で一問ずつ行う。CodexからローカルCLIで受けた依頼(auto経路)では質問・障害・再開点を最終resultへ返してターンを終了し(CLI内で `AskUserQuestion` や入力待ちを行わない)、同じsessionのresumeで回答を受ける([CLI手順](../linear/claude-cli.md))。Bridgeで受けた依頼(manual経路の対話セッション)では人へ `AskUserQuestion` で確認し、決定を依頼元Codexへの報告に含める([Bridge](../linear/bridge.md))。進捗は `TaskCreate`・`TaskUpdate` で管理する。他スキル(`commit`・`create-pr`・`release`)への引き継ぎは `Skill` を使う。現在のセッションで提供されていないツールは仮定しない。
|
|
10
10
|
- `EnterPlanMode` は使わない。bypassPermissions モード(リモート実行など)と両立させるため。
|
|
11
11
|
- 起動できない、または完了しない担当は未完了として記録する。他のモデルや Fable へ切り替えず、メインが代わりに作業して独立確認済みと報告しない。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# 実装体制の判断
|
|
2
2
|
|
|
3
|
-
人数を入口名や変更行数で固定しない。linear-execute の進行役は各Issue
|
|
3
|
+
人数を入口名や変更行数で固定しない。devのメインが設計担当の起動前に初期体制を決める。linear-execute の進行役は各Issue開始時に受入条件・関連範囲・既存検証・リスクを材料として渡し、体制は決めない。「メイン」はdevを実行するClaude Codeのセッション(CLIまたは対話)を指し、linear-executeの進行役とは区別する。
|
|
4
4
|
|
|
5
5
|
## 判断すること
|
|
6
6
|
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
|
|
28
28
|
起動前に、判断の根拠、工程ごとの役割・人数・確認範囲、専任なしの責任者、必須検証、設計と指摘の統合責任者を短く記録する。設計担当がいれば担当1が設計・統合を継続し、いなければdevのメインが責任を持つ。独立レビュー担当は実装担当と別のコンテキストにする。
|
|
29
29
|
|
|
30
|
-
linear-execute
|
|
30
|
+
linear-executeから受けた作業では、メインが決めた初期体制と根拠を進行役へ報告する。通常の体制判断で人の承認を待たない。材料が欠けていれば既定の人数へ戻さず、初期確認して体制を決める。ローカル記録は `.shinaps/work/` 以下へ保存する。別セッションへは本文も渡し、相手から見えないパスだけに依存しない。
|
|
31
31
|
|
|
32
32
|
## 途中の増員
|
|
33
33
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# dev の工程
|
|
2
2
|
|
|
3
|
-
Claude
|
|
3
|
+
Claude Codeのdev(`dev-claude`)の工程。役割・人数は[実装体制の判断](staffing.md)に従って作業ごとに決め、担当の起動・継続は[起動手順](launch.md)に従う。Codexのreview・debug・spec等も、ここで定める役割を使う。
|
|
4
4
|
|
|
5
5
|
## 1. 前提と作業記録
|
|
6
6
|
|
|
@@ -34,7 +34,7 @@ Claude・Codex・Managed Agentsのdevはこの工程を共有する。役割・
|
|
|
34
34
|
|
|
35
35
|
依頼・引数・指定された成果物から目的・受入条件・範囲を確定する。確定済みの内容を聞き直さず、依頼されていない過去の作業を始めない。成果物に実装可否の状態があればreadyを確認し、欠落・不明なら変更内容を推測せずタスクを確定する。内容ハッシュがある根拠は現在値と照合し、古い根拠は読み直す。
|
|
36
36
|
|
|
37
|
-
Issue・既存spec・調査記録・関連コード・検証方法を必要な範囲だけ確認する。linear-execute
|
|
37
|
+
Issue・既存spec・調査記録・関連コード・検証方法を必要な範囲だけ確認する。linear-executeからは体制判断の材料を受け取り、メインが `staffing.md` に従って初期体制を決める。設計担当を起動する前に、根拠・役割別人数・専任なしの責任者・統合責任者・必須検証を `staffing.md` として作業記録へ保存し、短く報告する。不足する調査があればPhase 2で補い、体制を更新する。
|
|
38
38
|
|
|
39
39
|
## 4. Phase 2: 規約と必要な探索
|
|
40
40
|
|
|
@@ -48,7 +48,7 @@ Issue・既存spec・調査記録・関連コード・検証方法を必要な
|
|
|
48
48
|
|
|
49
49
|
## 5. Phase 3: 設計と計画
|
|
50
50
|
|
|
51
|
-
設計責任者は設計担当1
|
|
51
|
+
設計責任者は設計担当1、専任なしならメインとする。目的・受入条件・調査結果・規約・既存配置を踏まえ、変更後の責務・依存方向・利用側・外部契約・実装順・検証を決める。計画には目的・不変条件・変更範囲(対象ファイルと責務)・実装順・検証を書き、個々の置換や文言は実装担当が現物に合わせて決める。構造変更が必要なら含め、単に変更量が少ない案を優先しない。不要な変更と仮想的な汎用化は避ける。
|
|
52
52
|
|
|
53
53
|
設計担当が複数なら同じ入力で独立に検討させ、全結果の後に担当1が根拠とトレードオフを比較して一つの案へ統合する。多数決にしない。各結果は `raw/architect-{n}.md`、統合案は `raw/architect.md` に保存する。専任なしならメインが短い案を作り、未実施の独立設計を行ったとは報告しない。
|
|
54
54
|
|
|
@@ -56,7 +56,7 @@ Issue・既存spec・調査記録・関連コード・検証方法を必要な
|
|
|
56
56
|
|
|
57
57
|
選んだ計画レビュー・計画簡素化の担当だけを起動し、同じ計画・要件・調査・規約を渡す。レビューは要件・実現可能性・設計リスク・検証方針、簡素化は目的と外部契約を保って減らせる構造・状態・手順を確認する。専任なしの観点は体制に記録した責任者が確認する。
|
|
58
58
|
|
|
59
|
-
全結果を `raw/plan-review-{round}-{n}.md` / `raw/plan-simplify-{round}-{n}.md` に保存し、「指摘の検証と統合」に従う。計画変更があれば `raw/architect-revised-{round}.md`
|
|
59
|
+
全結果を `raw/plan-review-{round}-{n}.md` / `raw/plan-simplify-{round}-{n}.md` に保存し、「指摘の検証と統合」に従う。計画変更があれば `raw/architect-revised-{round}.md` に残し、変更の影響を受ける担当へ同じ修正版と前回の採否を渡し、修正箇所と影響範囲を中心に再確認させる。影響範囲を確定できなければ再確認の範囲を広げる。契約・設計・検証条件に影響しない表記整理だけで新たなラウンドを作らない。
|
|
60
60
|
|
|
61
61
|
採用すべき指摘と必要な判断が解決したら `plan.md` を確定する。計画段階には回数上限を設けないが、目的のない反復や新しい根拠のない却下案の再提案は行わない。runtime固有の上限があれば起動手順に従い、未確認の最終変更と残課題を明示する。専任なしでも計画と検証方針は確定する。
|
|
62
62
|
|
|
@@ -97,7 +97,7 @@ Issue・既存spec・調査記録・関連コード・検証方法を必要な
|
|
|
97
97
|
|
|
98
98
|
設計責任者の修正指示を同じ実装担当へ返し、変更と必要な検証を `fix-log.md` に記録する。修正不要ならPhase 9へ進む。
|
|
99
99
|
|
|
100
|
-
実装後の全体レビューは初回を1として最大2ラウンド。1回目の後に修正したら、同じ最新差分でPhase 6の体制に必要な増員を加えて2回目を行い、検証・統合する。2回目の後に修正したら必要なテストを行い、3回目の全体レビューは起動せず、最終差分が再レビューされていないことを報告する。増員・交代・同じ対象の計画変更で上限をリセットしない。
|
|
100
|
+
実装後の全体レビューは初回を1として最大2ラウンド。1回目の後に修正したら、同じ最新差分でPhase 6の体制に必要な増員を加えて2回目を行い、検証・統合する。2回目は修正箇所と影響範囲を中心に確認し、影響範囲を確定できなければ確認範囲を広げる。範囲を絞った場合も必須検証は全体で実行し、完了前にメインが全差分を計画・受入条件と照合する。2回目の後に修正したら必要なテストを行い、3回目の全体レビューは起動せず、最終差分が再レビューされていないことを報告する。増員・交代・同じ対象の計画変更で上限をリセットしない。
|
|
101
101
|
|
|
102
102
|
重大な未解決事項、必須検証の失敗、必要な担当の未完了が残れば品質上の完了とは報告しない。
|
|
103
103
|
|
|
@@ -105,7 +105,7 @@ Issue・既存spec・調査記録・関連コード・検証方法を必要な
|
|
|
105
105
|
|
|
106
106
|
初期体制と変更理由、実際の担当・確認範囲、計画と実装後のレビュー回数、採否・修正、検証結果、未実施・未照合・未解決事項を報告する。
|
|
107
107
|
|
|
108
|
-
linear-executeから受けた作業は未コミットの差分と結果を進行役へ返す。devの完了はLocal Agent QAへの引き渡しであり、進行全体の終了ではない。[Linear共通設定](../linear/configuration.md)と[担当と工程](../linear/workflow.md)に従い、QA
|
|
108
|
+
linear-executeから受けた作業は未コミットの差分と結果を進行役へ返す。devの完了はLocal Agent QAへの引き渡しであり、進行全体の終了ではない。[Linear共通設定](../linear/configuration.md)と[担当と工程](../linear/workflow.md)に従い、QA後の差分確定の依頼を受けて `commit` を行う。auto経路は [Claude CLI](../linear/claude-cli.md) のresultへ報告し、同じsessionのresumeで質問・修正を受ける。manual経路は同じ対話セッションで人と作業し、[Bridge](../linear/bridge.md)で依頼元Codexへ報告する。
|
|
109
109
|
|
|
110
110
|
単独のdevではコミットが許可されている場合だけ範囲とモードを `commit` へ渡す。許可がなければ未コミットで返し、形式的な許可確認を追加しない。PR・リリースも許可された範囲で各スキルへ渡す。単独devにLinear進行・新しいゴールを必須にしない。
|
|
111
111
|
|