@shinaps/skills 0.38.0 → 0.39.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 CHANGED
@@ -18,10 +18,12 @@ sharedで採用する `instructions.md` は共有JSONの `references.specificati
18
18
 
19
19
  0.35.0から通常設定の `review_flow.mode` に `ask` を追加しました(パス別ルールは `auto`・`manual` だけ)。既存の設定は変更不要です。
20
20
 
21
- CLIはpluginに含まれないため、利用中のskillと同じ `@shinaps/skills@0.38.0` を導入し、`shinaps-skills --version` で確認します。`shinaps-skills validate-linear-config <明示ファイル>` は同梱schemaだけで検証し、ネットワーク取得・正本探索・Git操作・入力変更は行いません。`$schema` は固定URLによるエディタ補助で、契約の正本は[同梱schema](plugins/shinaps-claude/references/linear/configuration.schema.json)です。Managed Agentsの `.shinaps/managed.json` も `shinaps-skills validate-managed-config <明示ファイル>` で同じ方式で検証します。0.38.0から `config_version: 2`(リポジトリとアカウント別のvault)になり、lockはアカウントごとの管理ディレクトリへ移ります([Managedの設定と移行](plugins/shinaps-claude/references/managed/configuration.md))。
21
+ 0.39.0からauto経路のClaude CLIは、起動とresumeの両方を `--permission-mode bypassPermissions` で行います。bypassへの継続的な同意は許可 `claude_cli_bypass_permissions` で表し、`claude_cli` だけの既存設定では、Codexが起動前に人へ確認します([Claude CLIの操作権限](plugins/shinaps-claude/references/linear/claude-cli.md#操作権限))。この許可を使う設定では `$schema` も0.39.0以降のURLにします。
22
+
23
+ CLIはpluginに含まれないため、利用中のskillと同じ `@shinaps/skills@0.39.0` を導入し、`shinaps-skills --version` で確認します。`shinaps-skills validate-linear-config <明示ファイル>` は同梱schemaだけで検証し、ネットワーク取得・正本探索・Git操作・入力変更は行いません。`$schema` は固定URLによるエディタ補助で、契約の正本は[同梱schema](plugins/shinaps-claude/references/linear/configuration.schema.json)です。Managed Agentsの `.shinaps/managed.json` も `shinaps-skills validate-managed-config <明示ファイル>` で同じ方式で検証します。0.38.0から `config_version: 2`(リポジトリとアカウント別のvault)になり、lockはアカウントごとの管理ディレクトリへ移ります([Managedの設定と移行](plugins/shinaps-claude/references/managed/configuration.md))。
22
24
 
23
25
  ```sh
24
- npm install -g @shinaps/skills@0.38.0
26
+ npm install -g @shinaps/skills@0.39.0
25
27
  shinaps-skills --version
26
28
  shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
27
29
  shinaps-skills validate-managed-config /absolute/repository/.shinaps/managed.json
@@ -49,7 +51,7 @@ shinaps-skills validate-managed-config /absolute/repository/.shinaps/managed.jso
49
51
 
50
52
  コミット・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に含めない。
51
53
 
52
- `linear-execute` は初版では利用者本人の環境向けで、Codexが進行役として進行・Agent QA・Issueの記録・人への窓口を担当し、Claude Codeが実装・修正・コミットを行う。主フローは着手・実装・差分確定・公開確認・結果報告の5工程。運用項目は明示必須で、未記載を既定値で補わない。経路は着手時に通常の `review_flow.mode` で決まり、`ask` ではIssueごとに着手時の人の回答で決まる。autoはCodexがローカル `claude -p` を起動して同じsessionをresumeし(許可 `claude_cli`、[CLI手順](plugins/shinaps-claude/references/linear/claude-cli.md))、CLIの既存権限・effort・pluginsを保持する。メインのモデルは経路で分ける([経路](plugins/shinaps-claude/references/linear/configuration.md#経路))。manualはWebStorm内の対話Claude CodeセッションへBridgeで依頼する(許可 `bridge_request`、[Bridge](plugins/shinaps-claude/references/linear/bridge.md))。manualではQA後もCodexはcommitを依頼せず、人の依頼でClaudeがcommitする。体制はCodexが確認して依頼に書き、BASIC・ULTRAでは追加の担当をClaudeのメインが判断の材料と現物から決めて報告する。Bridge本体は同梱せず、導入済みのMCPとWebStormプラグインを使う。`SKILL.md` は担当ごとに両版で書き分け、共通の手順と書式は `references/linear/` に置く。`references/linear/` はClaude版を編集元としてCodex版へ同じ内容を複製し、テストで一致を確認する。
54
+ `linear-execute` は初版では利用者本人の環境向けで、Codexが進行役として進行・Agent QA・Issueの記録・人への窓口を担当し、Claude Codeが実装・修正・コミットを行う。主フローは着手・実装・差分確定・公開確認・結果報告の5工程。運用項目は明示必須で、未記載を既定値で補わない。経路は着手時に通常の `review_flow.mode` で決まり、`ask` ではIssueごとに着手時の人の回答で決まる。autoはCodexがローカル `claude -p` を起動して同じsessionをresumeし(許可 `claude_cli`・`claude_cli_bypass_permissions`、[CLI手順](plugins/shinaps-claude/references/linear/claude-cli.md))、起動とresumeの両方で `--permission-mode bypassPermissions` を指定し、effort・pluginsは保持する。メインのモデルは経路で分ける([経路](plugins/shinaps-claude/references/linear/configuration.md#経路))。manualはWebStorm内の対話Claude CodeセッションへBridgeで依頼する(許可 `bridge_request`、[Bridge](plugins/shinaps-claude/references/linear/bridge.md))。manualではQA後もCodexはcommitを依頼せず、人の依頼でClaudeがcommitする。体制はCodexが確認して依頼に書き、BASIC・ULTRAでは追加の担当をClaudeのメインが判断の材料と現物から決めて報告する。Bridge本体は同梱せず、導入済みのMCPとWebStormプラグインを使う。`SKILL.md` は担当ごとに両版で書き分け、共通の手順と書式は `references/linear/` に置く。`references/linear/` はClaude版を編集元としてCodex版へ同じ内容を複製し、テストで一致を確認する。
53
55
 
54
56
  `review_flow: { "mode": "auto" }` はAIが自然な単位を決め、独立レビュー・QA後にstage・commitする。`review_flow: { "mode": "manual" }` はAIがレビュー待ちを明示し、人がWebStormで差分を確認する。人のコミット開始依頼でAIが分割案を示し、人がその単位のコミットを依頼したらAIが単位外を安全に退避して単位をstage・検証・commitする。`review_flow: { "mode": "ask" }` は着手時に進行役が作業内容と推奨理由を添えてautoかmanualかを一問で確認し、回答を同じIssueの通常flowとして使う。パス別ルールには書けない。各modeの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#パス別の方針)を参照する。
55
57
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shinaps/skills",
3
- "version": "0.38.0",
3
+ "version": "0.39.0",
4
4
  "description": "Install Shinaps AI workflows and custom agents for Codex",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "shinaps",
3
3
  "description": "Shinaps AIの開発ワークフロー。プロジェクトの指示から条件を読み、調査・設計・実装・簡素化・レビュー・コミット・PR・リリースとLinearでの開発進行を支援する。",
4
- "version": "0.38.0",
4
+ "version": "0.39.0",
5
5
  "author": {
6
6
  "name": "shinaps",
7
7
  "email": "ryuta@shinaps.jp"
@@ -7,5 +7,5 @@
7
7
  - 並行する担当はバックグラウンドで起動し、全担当の完了を待つ。同時に起動できなかった担当は、実行中の担当の完了後に起動する。
8
8
  - 同じ担当の継続は、同じ ID へ SendMessage で依頼する。
9
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
- - `EnterPlanMode` は使わない。bypassPermissions モード(リモート実行など)と両立させるため。
10
+ - `EnterPlanMode` は使わない。bypassPermissions モード(Linear auto経路のローカルCLI、リモート実行など)と両立させるため。
11
11
  - 起動・再開できない、または完了しない担当は未完了として記録し、[工程](workflow.md)の「役割と継続」の交代へ進む。交代もできなければ未完了として必要な判断を返す。他のモデルや Fable へ切り替えず、メインがその独立確認を代わりに行わない。
@@ -1,17 +1,17 @@
1
1
  # ローカルClaude CLIによる実装
2
2
 
3
- 通常設定が `review_flow.mode: auto` のIssueと、`ask` で着手時にautoを選んだIssue([経路](configuration.md#経路))で、Codexが作業先でローカル `claude -p` を起動する。初回実装前に、正確なcheckout・branch・HEAD・既存差分、`claude_cli` の許可(または今回の明示依頼)、必須検証とそのツールチェーンの状態、依頼で使うコマンドの許可を確定する。必須検証は対象リポジトリの規約・CI・スクリプトから読み、ツールチェーンは実際のコマンド(例: `node --version`、依存の導入状態の確認)の結果で確かめる。確かめるのは依頼で実際に使うコマンドに限る。
3
+ 通常設定が `review_flow.mode: auto` のIssueと、`ask` で着手時にautoを選んだIssue([経路](configuration.md#経路))で、Codexが作業先でローカル `claude -p` を起動する。初回実装前に、正確なcheckout・branch・HEAD・既存差分、`claude_cli` と `claude_cli_bypass_permissions` の許可(または今回の明示依頼)、必須検証とそのツールチェーンの状態、依頼で許可・禁止する操作を確定する。必須検証は対象リポジトリの規約・CI・スクリプトから読み、ツールチェーンは実際のコマンド(例: `node --version`、依存の導入状態の確認)の結果で確かめる。確かめるのは依頼で実際に使うコマンドに限る。
4
4
 
5
5
  パス例外はコミット単位のreview_flowを全体置換し、実装sessionを途中で切り替えない。manual単位が生じた場合は[経路](configuration.md#経路)に従う。
6
6
 
7
7
  ## 起動と観測
8
8
 
9
- 通常の `-p` は既存の設定・skills・plugins・Agentを読み込む。`--bare` やsafe-modeで省かない。メインのモデルは[経路](configuration.md#経路)のとおり、起動とすべてのresumeで `--model opus` を指定する。resumeで省くと既定のモデルで再開され得るため、毎回指定する。effort・plugin構成は指定して上書きせず、利用者のCLI設定を保持する。Skill/Agentを技術的に呼べることと、その操作の権限が許可されることは別である。
9
+ 通常の `-p` は既存の設定・skills・plugins・Agentを読み込む。`--bare` やsafe-modeで省かない。メインのモデルは[経路](configuration.md#経路)のとおり、起動とすべてのresumeで `--model opus` を指定する。resumeで省くと既定のモデルで再開され得るため、毎回指定する。権限モードも同じ理由で、起動とすべてのresumeで `--permission-mode bypassPermissions` を指定する(下の「操作権限」)。effort・plugin構成は指定して上書きせず、利用者のCLI設定を保持する。Skill/Agentを技術的に呼べることと、その操作の権限が許可されることは別である。
10
10
 
11
- 依頼本文を作業記録のpromptファイルへ保存し、stdinで渡す。本文をshellへ展開しない。以下は絶対パスを今回の記録先に置き換え、コマンドのcwdを確定済みcheckoutへ指定して実行する例。毎回異なる出力名を使い、既存記録を上書きしない。必要なSkill/Agent・Read/Edit・検証コマンド等の `--allowedTools` は依頼の許可と範囲から個別に追加する。たとえばcommit段階の `Bash(git add <対象パス>)` と `Bash(git commit -m <確定メッセージ>)` は実際の引数に限定し、初回実装にはcommit権限を渡さない。広範な既存allow設定がある場合も対象外操作の許可とは扱わない。
11
+ 依頼本文を作業記録のpromptファイルへ保存し、stdinで渡す。本文をshellへ展開しない。以下は絶対パスを今回の記録先に置き換え、コマンドのcwdを確定済みcheckoutへ指定して実行する例。毎回異なる出力名を使い、既存記録を上書きしない。
12
12
 
13
13
  ```sh
14
- claude -p --model opus --output-format json --permission-mode dontAsk --permission-prompts none < /absolute/work/request.txt > /absolute/work/result.json 2> /absolute/work/stderr.log
14
+ claude -p --model opus --output-format json --permission-mode bypassPermissions --permission-prompts none < /absolute/work/request.txt > /absolute/work/result.json 2> /absolute/work/stderr.log
15
15
  ```
16
16
 
17
17
  途中経過が必要なら `--output-format stream-json --verbose` を使い、JSONLへ保存する。シェル実行ツールのprocess/session ID、開始時刻、cwd、Issue、出力パスを記録する。実行中は、実行ツールがprocessの終了を通知する場合はその通知を待つ。通知を受け取れるかは、利用時の実行ツールが実際に提供する機能で判断する。通知を受け取れない場合だけ、起動または前回の確認から5分おきに同じprocessの終了だけを確認する。この5分は確認の間隔で、進行役の1回の待機の長さ([実行](execution.md) の「待機の手順(進行役)」)とは別に扱い、短い待機から戻るたびには確認しない。終了を待つ間は、stream-json・stderr・出力ファイルなどのログや途中成果を読まない。異常の根拠がある場合と利用者に依頼された場合だけ、必要な範囲で調べる。新しいCLIを並行起動せず、終了したら終了コードを取得して結果を会話へ返す。
@@ -20,18 +20,24 @@ jsonの `session_id`、`result`、`is_error`、`permission_denials` を読み、
20
20
 
21
21
  ## 依頼・質問・修正・コミット
22
22
 
23
- promptにはIssue、`shinaps:dev-claude`、成果物と受入条件、体制と体制判断の材料、exact cwd・branch・HEAD・既存差分、必須検証コマンドと確かめたツールチェーンの状態、許可・禁止操作と起動時に渡す `--allowedTools` の個別エントリ、規約と参照先、返却条件を含める。通常設定が `ask` なら、解決したmodeと回答の記録も含め、Claudeが再質問しないようにする。依頼の体制で進め、BASIC・ULTRAでは追加の担当をClaudeのメインが材料と現物から決め、体制と理由をresultに含める。linear-executeを再起動せず、実装後は未コミット差分を返してLocal Agent QAを待つ。spec/explore/review/debugの結果も同じ依頼へ渡す。質問・障害は最終resultに返し、Codexが既存合意で回答できれば回答、目的・権限の判断が必要なら人へ一問ずつ取り次ぐ。[途中確認](qa.md#qaの時点対象最終qa)の依頼は、実行中の担当が無い時点でresultに返す。この依頼は完了報告ではなく、CodexはLocal Agent QAへ進めない。CLIからBridge送信や人の対話入力を待たせない。
23
+ promptにはIssue、`shinaps:dev-claude`、成果物と受入条件、体制と体制判断の材料、exact cwd・branch・HEAD・既存差分、必須検証コマンドと確かめたツールチェーンの状態、許可・禁止操作、規約と参照先、返却条件を含める。通常設定が `ask` なら、解決したmodeと回答の記録も含め、Claudeが再質問しないようにする。依頼の体制で進め、BASIC・ULTRAでは追加の担当をClaudeのメインが材料と現物から決め、体制と理由をresultに含める。linear-executeを再起動せず、実装後は未コミット差分を返してLocal Agent QAを待つ。spec/explore/review/debugの結果も同じ依頼へ渡す。質問・障害は最終resultに返し、Codexが既存合意で回答できれば回答、目的・権限の判断が必要なら人へ一問ずつ取り次ぐ。[途中確認](qa.md#qaの時点対象最終qa)の依頼は、実行中の担当が無い時点でresultに返す。この依頼は完了報告ではなく、CodexはLocal Agent QAへ進めない。CLIからBridge送信や人の対話入力を待たせない。
24
24
 
25
25
  回答・QA修正・QA後のautoコミット依頼は、元のprocess終了後、記録済みの正確なIDで同じセッションをresumeする。`--continue` で別セッションを推測しない。
26
26
 
27
27
  ```sh
28
- claude -p --resume '<recorded-session-id>' --model opus --output-format json --permission-mode dontAsk --permission-prompts none < /absolute/work/follow-up.txt > /absolute/work/follow-up-result.json 2> /absolute/work/follow-up-stderr.log
28
+ claude -p --resume '<recorded-session-id>' --model opus --output-format json --permission-mode bypassPermissions --permission-prompts none < /absolute/work/follow-up.txt > /absolute/work/follow-up-result.json 2> /absolute/work/follow-up-stderr.log
29
29
  ```
30
30
 
31
31
  resumeにも同じcwdと許可境界を指定し、外部で変化したHEAD・差分を渡す。commit依頼にはLocal Agent QA結果、独立レビュー、単位案と全差分、実効review_flowと合意根拠(askでは解決したmodeと回答の記録)を含める。完了報告は体制(必須担当の完了・未完了と合意による未実施を含む)と途中の増員、変更範囲、検証、未解決事項、単位案と予定差分、Local Agent QAの後に修正があった場合は変更記録([qa.md](qa.md#qaの時点対象最終qa))、commitした場合はSHA・単位照合・残差分・stash復元結果・修正サイクルで確定した変更を含める。復帰不能時は理由を報告し、黙って別sessionに作り直さない。
32
32
 
33
33
  ## 操作権限
34
34
 
35
- `review_flow.mode: auto` はClaudeの `--permission-mode auto` を意味しない。非対話起動では `--permission-mode dontAsk` を明示し、既存設定がbypassでも継承しない。effort・pluginsは保持し、操作許可は既存の個別allow設定と今回の範囲に限定する。`--permission-prompts none` は対話できないpromptを拒否として返すためであり、許可を付与しない。permission_denialsがあれば操作と必要な権限を報告し、既存の明示許可が対象を満たすか確認する。満たす場合だけ必要なSkill/Agentや対象を限定した `--allowedTools` を明示し、同じsessionへ明示的に再依頼する。新しい権限が必要ならCodexが人へ確認する。`--allowedTools` を使う場合も対象・操作に限定し、無条件の `Bash(*)`、bypassPermissions、dangerously-skip-permissionsを使わない。拒否を隠すsilent retryをしない。会話上の許可はCLIの権限チェックを消さない。
35
+ `review_flow.mode: auto` はClaudeの `--permission-mode auto` を意味しない。非対話起動と同じsessionのresumeでは `--permission-mode bypassPermissions` を明示する。依頼で必要になる操作を個別のallowで事前に列挙しきれず、非対話では足りない許可を求められないまま作業が止まるためである。`--allowedTools` で個別の許可を足したり、dontAskなど別のモードで起動したりしない。`--permission-prompts none` は、bypassでも残る確認を入力待ちにせず拒否としてresultへ返すために付け、許可を付与しない。
36
36
 
37
- CLI仕様の参照: [headless](https://code.claude.com/docs/en/headless)、[CLI reference](https://code.claude.com/docs/en/cli-reference)。利用版で必要なflagが非対応なら状態を報告して停止し、権限回避へ切り替えない。
37
+ bypassでの起動には、`claude_cli` に加えて利用者が明示的に同意した `claude_cli_bypass_permissions`(または今回の明示依頼)が必要で、`claude_cli` だけをbypassへの同意とみなさない。同意が無ければCodexは起動前に人へ一問で確認し、回答まで起動しない。回答は同じIssueの起動とすべてのresumeに引き継ぐ。同意が得られなければauto経路では起動せず、許可不足のブロッカー([実行](execution.md))として報告する。manual経路で進めるかは利用者が決め、その場合は[経路](configuration.md#経路)のとおり設定(通常設定がaskなら同じIssueの選択)を見直してから着手する。
38
+
39
+ bypassはCLIの権限チェックを省くだけで、操作の許可ではない。Claudeが行う操作は依頼の範囲と、[共通設定](configuration.md)の `permissions`・合意済みの `review_flow` に限る。stage・commitは、QA後の差分確定の依頼を受けたときだけ `shinaps:commit` に従って行う。push・公開・外部への送信・破壊的操作は、それぞれの許可と工程に従う。CLIで実行できることや会話上の許可を、依頼の範囲外の操作の許可とは扱わない。
40
+
41
+ permission_denialsがあれば操作と理由を報告し、拒否を隠すsilent retryをしない。bypassでも残る拒否(deny設定・保護されたパス・組織の設定など)は、同じ指定で再依頼しても解消しない。依頼の範囲内で別の手段を指示できる場合だけ同じsessionへ再依頼し、それ以外や新しい許可が必要な場合はCodexが人へ確認する。
42
+
43
+ CLI仕様の参照: [headless](https://code.claude.com/docs/en/headless)、[CLI reference](https://code.claude.com/docs/en/cli-reference)。利用版で必要なflagが非対応、またはbypassPermissionsが組織の設定などで無効なら、状態を報告して停止し、別の権限モードへ切り替えて進めない。
@@ -4,10 +4,12 @@
4
4
 
5
5
  ## 検証CLIと契約版
6
6
 
7
- 利用中のskillとCLIの版を確認し、0.38.0のskillには同じ版のnpm CLIを導入する(`npm install -g @shinaps/skills@0.38.0`)。pluginだけにはCLIは含まれない。導入・更新が必要ならその権限を確認し、検証のたびに `npx latest` を取得しない。
7
+ 利用中のskillとCLIの版を確認し、0.39.0のskillには同じ版のnpm CLIを導入する(`npm install -g @shinaps/skills@0.39.0`)。pluginだけにはCLIは含まれない。導入・更新が必要ならその権限を確認し、検証のたびに `npx latest` を取得しない。
8
8
 
9
9
  0.35.0から通常設定の `review_flow.mode` に `ask` を受理する。`config_version` は2のままで、既存のauto・manualの設定は変更不要。0.33.0〜0.34.xのCLIと `$schema` のURLは `ask` を拒否するため、`ask` を使う設定では `$schema` も0.35.0以降のURLにする。
10
10
 
11
+ 0.39.0から許可 `claude_cli_bypass_permissions` を受理する。`config_version` は2のままで、0.33.0〜0.38.xのCLIと `$schema` のURLはこの許可を拒否するため、使う設定では `$schema` も0.39.0以降のURLにする。
12
+
11
13
  ```sh
12
14
  shinaps-skills --version
13
15
  shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
@@ -75,7 +77,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
75
77
  | `team_settings` | `existing_only`(既存の定義に合わせ、変更しない)または `manage_on_setup`(初期設定・設定変更のときだけ変更案を示し、合意後に整備できる) |
76
78
  | `statuses` | 状態キーと待ち状態の `human_input` から、実在するステータス名への対応。複数のキーに同じステータスを指定できる |
77
79
  | `stop_after` | 終了地点(下の「終了地点」) |
78
- | `permissions` | 継続的に許可した操作の一覧(下の「許可」)。経路の許可(auto: `claude_cli`、manual: `bridge_request`)も含む。許可なしは `[]` |
80
+ | `permissions` | 継続的に許可した操作の一覧(下の「許可」)。経路の許可(auto: `claude_cli` と `claude_cli_bypass_permissions`、manual: `bridge_request`)も含む。許可なしは `[]` |
79
81
  | `references` | `specifications`・`validation`・`environments`・`deployment`・`publication` の5分類をすべて記載し、既存資料のパスまたはURLの一覧を指定する。該当資料なしは `[]` |
80
82
  | `cycle_report` | Cycle報告の設定(下の「Cycle報告」)。報告を使わない場合は `null` |
81
83
  | `review_flow` | `{ "mode": "auto" }`(AIが自然な単位を決め、独立レビュー・QA後にstage・commit)または `{ "mode": "manual" }`(AIがレビュー待ちを明示し、人がWebStormで差分を確認する。人のコミット開始依頼でAIが分割案を示し、人が単位ごとに依頼したらAIがstage・commit)、または `{ "mode": "ask" }`(着手時に進行役が人へautoかmanualかを一問で確認し、回答を同じIssueの通常flowとして使う)。開始時の値(askでは回答)で経路も決まる(下の「経路」) |
@@ -92,7 +94,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
92
94
 
93
95
  | 通常設定 | 経路 | 必要な許可 | メインのモデル |
94
96
  | --- | --- | --- | --- |
95
- | `auto` | Codexが起動するローカルClaude CLIの同じsession([Claude CLI](claude-cli.md)) | `claude_cli` | Opus。起動とすべてのresumeで `--model opus` を指定する |
97
+ | `auto` | Codexが起動するローカルClaude CLIの同じsession([Claude CLI](claude-cli.md)) | `claude_cli`・`claude_cli_bypass_permissions` | Opus。起動とすべてのresumeで `--model opus` を指定する |
96
98
  | `manual` | WebStorm内の対話Claude CodeセッションへBridgeで依頼する([Bridge](bridge.md)) | `bridge_request` | Opusを基本とし、Issueの着手時にFableかOpusかを確認する。同じIssueの一括修正・継続・再開では選択を引き継ぐ |
97
99
  | `ask` | 着手時に人へ一問で確認した回答(auto・manual)の経路 | 回答した経路の許可 | 回答した経路のモデル |
98
100
 
@@ -152,7 +154,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
152
154
 
153
155
  1. 現在の設定・許可・補足・進行中Issueを確認する。
154
156
  2. `config_version: 2` にし、`implementation_skill`、`review_flow.tool`、`path_policy_overrides[].review_flow.tool` を削除する。
155
- 3. `permissions` から `codex_task`・`managed_session:*` を削除する。経路の許可(通常設定がautoなら `claude_cli`、manualなら `bridge_request`)は、そのリポジトリの利用者と合意して明示的に追加する。既存の `bridge_request` は、任意の引き渡しに加えてmanual経路の依頼も表すようになるため、残すかを確認する。他の許可は増やさない。
157
+ 3. `permissions` から `codex_task`・`managed_session:*` を削除する。経路の許可(通常設定がautoなら `claude_cli` と `claude_cli_bypass_permissions`、manualなら `bridge_request`)は、そのリポジトリの利用者と合意して明示的に追加する。既存の `bridge_request` は、任意の引き渡しに加えてmanual経路の依頼も表すようになるため、残すかを確認する。他の許可は増やさない。
156
158
  4. `statuses` は変更しない。補足からCodex実装タスク・Managed・tool・人がコミットする条件の記述とそれらの資料へのリンクを除き、合意日付を残す。
157
159
  5. `$schema` を利用中の公開版のURLへ更新し、CLIで検証して読み戻す。
158
160
 
@@ -177,7 +179,8 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
177
179
  | --- | --- |
178
180
  | `issue_update` | 対象のteam・projectの中で、利用者が任せたIssue・Cycleの範囲に対する運用上の更新(本文・コメント・状態・依存・Linearへの添付、整理で必要になったIssueの作成・分割)と、利用者から任された目的の作業を着手前にIssueへ紐づけるための作成([issue.md](issue.md) の「着手前に作業をIssueへ紐づける」)。チーム設定の変更、未合意の範囲・期限の変更、Cycle外への進行、Issueの削除、外部への送信を含めない |
179
181
  | `development_operations` | 任された対象の開発に必要な、既存アカウントへの通常のログイン、ローカル環境準備、プロジェクトの依存導入、開発サーバー・Simulatorの起動停止、ビルド・テスト・QA操作を継続的に許可する。下の範囲に従う |
180
- | `claude_cli` | auto経路で、Codexが行うClaudeのローカルCLI起動、同じsessionの状態・結果取得、質問への回答・修正・許可済みコミットのresume。メインのモデル([経路](#経路))の指定のほかは既存CLI設定を保持し、個別の操作権限を維持する([手順](claude-cli.md)) |
182
+ | `claude_cli` | auto経路で、Codexが行うClaudeのローカルCLI起動、同じsessionの状態・結果取得、質問への回答・修正・許可済みコミットのresume。メインのモデル([経路](#経路))と権限モードの指定のほかは既存CLI設定を保持する([手順](claude-cli.md))。bypassPermissionsでの起動への同意は含まない |
183
+ | `claude_cli_bypass_permissions` | auto経路のClaudeのローカルCLIを、起動と同じsessionのすべてのresumeで `--permission-mode bypassPermissions` にすることへの、利用者の継続的な同意。CLIの権限チェックを省くだけで、操作の許可を追加しない。Claudeの操作は依頼の範囲と他の許可・合意済みの `review_flow` に限る([手順](claude-cli.md#操作権限)) |
181
184
  | `bridge_request` | manual経路で、CodexがBridgeで対話Claude Codeセッションへ行う依頼と報告の受け取り、および別会話との任意の進行の引き渡し。報告は照合材料であり、操作許可を変更しない([手順](bridge.md)) |
182
185
  | `push` | 対象Issueの作業ブランチの通常のpush |
183
186
  | `pr_create` | 対象IssueのPRの作成と更新 |
@@ -187,7 +190,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
187
190
  | `dev_delegation` | `shinaps:dev-claude` の中で、サブエージェントへ委託する。許可がない場合、入口のメインは担当の作業を代わりに行わず、必要な許可を求める。worktreeの作成は含まない |
188
191
  | `evidence:<保存先>` | Linear以外の指定した保存先へQA素材を保存する(LinearのIssueへの添付は `issue_update` に含む) |
189
192
 
190
- - 開発進行には `issue_update` と、[経路](#経路)の許可が必要(auto: `claude_cli` とローカルClaude CLI、manual: `bridge_request` と、Bridge MCP・WebStorm内の対話Claude Codeセッション。ask: 着手時に選んだ経路の許可)。今回の明示依頼による同じ経路の許可も引き継ぐ。初期設定は `issue_update`・経路の許可(askでは選択肢にする両経路の許可)・`dev_delegation` と `review_flow` を具体的に提案し、合意を得る。設定の存在だけでは許可を得ない。
193
+ - 開発進行には `issue_update` と、[経路](#経路)の許可が必要(auto: `claude_cli`・`claude_cli_bypass_permissions` とローカルClaude CLI、manual: `bridge_request` と、Bridge MCP・WebStorm内の対話Claude Codeセッション。ask: 着手時に選んだ経路の許可)。今回の明示依頼による同じ経路の許可も引き継ぐ。初期設定は `issue_update`・経路の許可(askでは選択肢にする両経路の許可)・`dev_delegation` と `review_flow` を具体的に提案し、合意を得る。設定の存在だけでは許可を得ない。
191
194
  - `development_operations` は、既存の認証手段と利用者が許可した既存アカウントを使い、対象の開発・検証環境と専用の検証データで行う操作に限る。本人の二要素認証・セキュリティキー・CAPTCHA等が必要なら具体的に依頼し、回避しない。ログイン成功を新しい権限への同意と扱わず、新規アカウント・OAuth権限の拡大・課金・新規クラウド資源・共有環境への破壊的変更・実利用者データの操作は含めない。秘密値をIssueや証拠へ記載しない。
192
195
  - この包括許可は `stage`・`commit`・`push`・`pr_create`・`merge`・`deploy:*`・`publish:*`・外部への送信・履歴やデータの破壊的操作を含まない。テストや環境準備がこれらを伴うときも、stage・commitは合意済みflow、その他はそれぞれの許可が必要。人レビュー・Human QA・ツール側の承認条件を省略しない。`permissions` に明示された場合だけ適用し、既存設定に自動で追加しない。
193
196
  - 一つの操作が別の操作を伴う場合は、伴う操作の許可も必要とする(マージで本番へ自動配備される場合は `merge` と `deploy:production`)。
@@ -214,7 +217,7 @@ manualの設定例。同じprojectを複数のリポジトリがそれぞれの
214
217
 
215
218
  ```json
216
219
  {
217
- "$schema": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.35.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
220
+ "$schema": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.39.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
218
221
  "config_version": 2,
219
222
  "config_storage": "shared",
220
223
  "target": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.35.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
3
+ "$id": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.39.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
4
4
  "title": "Shinaps Linear configuration v2",
5
5
  "type": "object",
6
6
  "properties": {
@@ -142,6 +142,7 @@
142
142
  "issue_update",
143
143
  "development_operations",
144
144
  "claude_cli",
145
+ "claude_cli_bypass_permissions",
145
146
  "bridge_request",
146
147
  "dev_delegation",
147
148
  "push",
@@ -23,7 +23,7 @@ Linear MCPで扱えない画面操作(添付、並べ替え、Cycleへの紐
23
23
 
24
24
  | 工程 | 状態キー | 内容と次へ進む条件 |
25
25
  | --- | --- | --- |
26
- | 着手 | `ready` | Readyと依存を確認し、作業先設定を読み、通常設定の `review_flow` から経路と必要な許可(auto: `claude_cli`、manual: `bridge_request`)を確定する。通常設定がaskなら、Claudeへの依頼前に作業内容と推奨理由を添えてautoかmanualかを人へ一問で確認し、回答まで着手しない。回答と根拠を作業記録に残し、同じIssueでは再質問しない。依頼の前に `dev_delegation`(または今回の明示依頼)があるかを確かめ、無ければ人へ一問で確認する。経路・メインのモデル(manualのみ。[経路](configuration.md#経路))・体制([体制の選択](../dev/staffing.md))は別の項目とし、指定されていないものだけを推奨とともに一問ずつ確認して記録する。体制は依頼にも書く。checkout・branch・HEAD・既存差分を固定し、体制判断の材料を添えてClaudeへ依頼する。経路がautoでmanualのパス別ルールがあれば、起こり得る停止([経路](configuration.md#経路))を依頼に書く |
26
+ | 着手 | `ready` | Readyと依存を確認し、作業先設定を読み、通常設定の `review_flow` から経路と必要な許可(auto: `claude_cli` と `claude_cli_bypass_permissions`、manual: `bridge_request`)を確定する。通常設定がaskなら、Claudeへの依頼前に作業内容と推奨理由を添えてautoかmanualかを人へ一問で確認し、回答まで着手しない。回答と根拠を作業記録に残し、同じIssueでは再質問しない。依頼の前に `dev_delegation`(または今回の明示依頼)があるかを確かめ、無ければ人へ一問で確認する。経路・メインのモデル(manualのみ。[経路](configuration.md#経路))・体制([体制の選択](../dev/staffing.md))は別の項目とし、指定されていないものだけを推奨とともに一問ずつ確認して記録する。体制は依頼にも書く。checkout・branch・HEAD・既存差分を固定し、体制判断の材料を添えてClaudeへ依頼する。経路がautoでmanualのパス別ルールがあれば、起こり得る停止([経路](configuration.md#経路))を依頼に書く |
27
27
  | 実装 | `coding`, `local_agent_qa` | Claudeのメインが依頼の体制の担当(BASIC・ULTRAでは追加の担当を含む)を決めて報告し、`shinaps:dev-claude` で実装・検証・独立レビューを行い、未コミット差分・単位案・予定差分・判定記録を返す。manualでは人へユーザーのレビュー待ちと明示する。CodexがLocal Agent QA(判定記録と経路の整合、必須担当の照合を含む)を行う。依頼に書いた体制の必須担当([実装体制の判断](../dev/staffing.md))は、完了または合意の記録付きの未実施を合格とする。不合格(必須担当のそれ以外の未完了や代替を含む)なら同じsessionへ戻し、再QAは[初回QAの一部](qa.md#qaの時点対象最終qa)として合格まで続ける |
28
28
  | 差分確定 | `code_review` | QA合格後、Codexが実効flow・判定記録・QA結果を同じsessionへ渡し、Claudeが `shinaps:commit` を行う。autoは単位ごとに独立レビュー後にcommitする。manualではCodexはcommitを依頼せず、渡した後は報告を待つ。人のコミット開始依頼でClaudeが分割案を示し、人が単位ごとに依頼したcommitを行う。Codexは各コミットの単位照合と全体照合を行う。差分確定中の実装の修正は、devの修正サイクル([工程](../dev/workflow.md)の「役割と継続」)で行い、ステータスは `code_review` のままにする。修正やコミットのたびにCodexのQAへ戻さない([最終QA](qa.md#qaの時点対象最終qa)) |
29
29
  | 公開確認 | `post_commit`, `staging_agent_qa`, `staging_human_qa`, `release`, `production_agent_qa`, `production_human_qa` | 受入条件と許可に応じて必要なものだけ行う: push前の最終Agent QAとpushするHEADの照合([最終QA](qa.md#qaの時点対象最終qa))、push・PR作成、環境配備とStaging/ProductionのAgent QA、必要なHuman QA、merge・配備・公開。適用しない項目は理由を記録する |
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shinaps",
3
- "version": "0.38.0",
3
+ "version": "0.39.0",
4
4
  "description": "Shinaps AIのCodex向け開発ワークフロー",
5
5
  "skills": "./skills/"
6
6
  }
@@ -1,17 +1,17 @@
1
1
  # ローカルClaude CLIによる実装
2
2
 
3
- 通常設定が `review_flow.mode: auto` のIssueと、`ask` で着手時にautoを選んだIssue([経路](configuration.md#経路))で、Codexが作業先でローカル `claude -p` を起動する。初回実装前に、正確なcheckout・branch・HEAD・既存差分、`claude_cli` の許可(または今回の明示依頼)、必須検証とそのツールチェーンの状態、依頼で使うコマンドの許可を確定する。必須検証は対象リポジトリの規約・CI・スクリプトから読み、ツールチェーンは実際のコマンド(例: `node --version`、依存の導入状態の確認)の結果で確かめる。確かめるのは依頼で実際に使うコマンドに限る。
3
+ 通常設定が `review_flow.mode: auto` のIssueと、`ask` で着手時にautoを選んだIssue([経路](configuration.md#経路))で、Codexが作業先でローカル `claude -p` を起動する。初回実装前に、正確なcheckout・branch・HEAD・既存差分、`claude_cli` と `claude_cli_bypass_permissions` の許可(または今回の明示依頼)、必須検証とそのツールチェーンの状態、依頼で許可・禁止する操作を確定する。必須検証は対象リポジトリの規約・CI・スクリプトから読み、ツールチェーンは実際のコマンド(例: `node --version`、依存の導入状態の確認)の結果で確かめる。確かめるのは依頼で実際に使うコマンドに限る。
4
4
 
5
5
  パス例外はコミット単位のreview_flowを全体置換し、実装sessionを途中で切り替えない。manual単位が生じた場合は[経路](configuration.md#経路)に従う。
6
6
 
7
7
  ## 起動と観測
8
8
 
9
- 通常の `-p` は既存の設定・skills・plugins・Agentを読み込む。`--bare` やsafe-modeで省かない。メインのモデルは[経路](configuration.md#経路)のとおり、起動とすべてのresumeで `--model opus` を指定する。resumeで省くと既定のモデルで再開され得るため、毎回指定する。effort・plugin構成は指定して上書きせず、利用者のCLI設定を保持する。Skill/Agentを技術的に呼べることと、その操作の権限が許可されることは別である。
9
+ 通常の `-p` は既存の設定・skills・plugins・Agentを読み込む。`--bare` やsafe-modeで省かない。メインのモデルは[経路](configuration.md#経路)のとおり、起動とすべてのresumeで `--model opus` を指定する。resumeで省くと既定のモデルで再開され得るため、毎回指定する。権限モードも同じ理由で、起動とすべてのresumeで `--permission-mode bypassPermissions` を指定する(下の「操作権限」)。effort・plugin構成は指定して上書きせず、利用者のCLI設定を保持する。Skill/Agentを技術的に呼べることと、その操作の権限が許可されることは別である。
10
10
 
11
- 依頼本文を作業記録のpromptファイルへ保存し、stdinで渡す。本文をshellへ展開しない。以下は絶対パスを今回の記録先に置き換え、コマンドのcwdを確定済みcheckoutへ指定して実行する例。毎回異なる出力名を使い、既存記録を上書きしない。必要なSkill/Agent・Read/Edit・検証コマンド等の `--allowedTools` は依頼の許可と範囲から個別に追加する。たとえばcommit段階の `Bash(git add <対象パス>)` と `Bash(git commit -m <確定メッセージ>)` は実際の引数に限定し、初回実装にはcommit権限を渡さない。広範な既存allow設定がある場合も対象外操作の許可とは扱わない。
11
+ 依頼本文を作業記録のpromptファイルへ保存し、stdinで渡す。本文をshellへ展開しない。以下は絶対パスを今回の記録先に置き換え、コマンドのcwdを確定済みcheckoutへ指定して実行する例。毎回異なる出力名を使い、既存記録を上書きしない。
12
12
 
13
13
  ```sh
14
- claude -p --model opus --output-format json --permission-mode dontAsk --permission-prompts none < /absolute/work/request.txt > /absolute/work/result.json 2> /absolute/work/stderr.log
14
+ claude -p --model opus --output-format json --permission-mode bypassPermissions --permission-prompts none < /absolute/work/request.txt > /absolute/work/result.json 2> /absolute/work/stderr.log
15
15
  ```
16
16
 
17
17
  途中経過が必要なら `--output-format stream-json --verbose` を使い、JSONLへ保存する。シェル実行ツールのprocess/session ID、開始時刻、cwd、Issue、出力パスを記録する。実行中は、実行ツールがprocessの終了を通知する場合はその通知を待つ。通知を受け取れるかは、利用時の実行ツールが実際に提供する機能で判断する。通知を受け取れない場合だけ、起動または前回の確認から5分おきに同じprocessの終了だけを確認する。この5分は確認の間隔で、進行役の1回の待機の長さ([実行](execution.md) の「待機の手順(進行役)」)とは別に扱い、短い待機から戻るたびには確認しない。終了を待つ間は、stream-json・stderr・出力ファイルなどのログや途中成果を読まない。異常の根拠がある場合と利用者に依頼された場合だけ、必要な範囲で調べる。新しいCLIを並行起動せず、終了したら終了コードを取得して結果を会話へ返す。
@@ -20,18 +20,24 @@ jsonの `session_id`、`result`、`is_error`、`permission_denials` を読み、
20
20
 
21
21
  ## 依頼・質問・修正・コミット
22
22
 
23
- promptにはIssue、`shinaps:dev-claude`、成果物と受入条件、体制と体制判断の材料、exact cwd・branch・HEAD・既存差分、必須検証コマンドと確かめたツールチェーンの状態、許可・禁止操作と起動時に渡す `--allowedTools` の個別エントリ、規約と参照先、返却条件を含める。通常設定が `ask` なら、解決したmodeと回答の記録も含め、Claudeが再質問しないようにする。依頼の体制で進め、BASIC・ULTRAでは追加の担当をClaudeのメインが材料と現物から決め、体制と理由をresultに含める。linear-executeを再起動せず、実装後は未コミット差分を返してLocal Agent QAを待つ。spec/explore/review/debugの結果も同じ依頼へ渡す。質問・障害は最終resultに返し、Codexが既存合意で回答できれば回答、目的・権限の判断が必要なら人へ一問ずつ取り次ぐ。[途中確認](qa.md#qaの時点対象最終qa)の依頼は、実行中の担当が無い時点でresultに返す。この依頼は完了報告ではなく、CodexはLocal Agent QAへ進めない。CLIからBridge送信や人の対話入力を待たせない。
23
+ promptにはIssue、`shinaps:dev-claude`、成果物と受入条件、体制と体制判断の材料、exact cwd・branch・HEAD・既存差分、必須検証コマンドと確かめたツールチェーンの状態、許可・禁止操作、規約と参照先、返却条件を含める。通常設定が `ask` なら、解決したmodeと回答の記録も含め、Claudeが再質問しないようにする。依頼の体制で進め、BASIC・ULTRAでは追加の担当をClaudeのメインが材料と現物から決め、体制と理由をresultに含める。linear-executeを再起動せず、実装後は未コミット差分を返してLocal Agent QAを待つ。spec/explore/review/debugの結果も同じ依頼へ渡す。質問・障害は最終resultに返し、Codexが既存合意で回答できれば回答、目的・権限の判断が必要なら人へ一問ずつ取り次ぐ。[途中確認](qa.md#qaの時点対象最終qa)の依頼は、実行中の担当が無い時点でresultに返す。この依頼は完了報告ではなく、CodexはLocal Agent QAへ進めない。CLIからBridge送信や人の対話入力を待たせない。
24
24
 
25
25
  回答・QA修正・QA後のautoコミット依頼は、元のprocess終了後、記録済みの正確なIDで同じセッションをresumeする。`--continue` で別セッションを推測しない。
26
26
 
27
27
  ```sh
28
- claude -p --resume '<recorded-session-id>' --model opus --output-format json --permission-mode dontAsk --permission-prompts none < /absolute/work/follow-up.txt > /absolute/work/follow-up-result.json 2> /absolute/work/follow-up-stderr.log
28
+ claude -p --resume '<recorded-session-id>' --model opus --output-format json --permission-mode bypassPermissions --permission-prompts none < /absolute/work/follow-up.txt > /absolute/work/follow-up-result.json 2> /absolute/work/follow-up-stderr.log
29
29
  ```
30
30
 
31
31
  resumeにも同じcwdと許可境界を指定し、外部で変化したHEAD・差分を渡す。commit依頼にはLocal Agent QA結果、独立レビュー、単位案と全差分、実効review_flowと合意根拠(askでは解決したmodeと回答の記録)を含める。完了報告は体制(必須担当の完了・未完了と合意による未実施を含む)と途中の増員、変更範囲、検証、未解決事項、単位案と予定差分、Local Agent QAの後に修正があった場合は変更記録([qa.md](qa.md#qaの時点対象最終qa))、commitした場合はSHA・単位照合・残差分・stash復元結果・修正サイクルで確定した変更を含める。復帰不能時は理由を報告し、黙って別sessionに作り直さない。
32
32
 
33
33
  ## 操作権限
34
34
 
35
- `review_flow.mode: auto` はClaudeの `--permission-mode auto` を意味しない。非対話起動では `--permission-mode dontAsk` を明示し、既存設定がbypassでも継承しない。effort・pluginsは保持し、操作許可は既存の個別allow設定と今回の範囲に限定する。`--permission-prompts none` は対話できないpromptを拒否として返すためであり、許可を付与しない。permission_denialsがあれば操作と必要な権限を報告し、既存の明示許可が対象を満たすか確認する。満たす場合だけ必要なSkill/Agentや対象を限定した `--allowedTools` を明示し、同じsessionへ明示的に再依頼する。新しい権限が必要ならCodexが人へ確認する。`--allowedTools` を使う場合も対象・操作に限定し、無条件の `Bash(*)`、bypassPermissions、dangerously-skip-permissionsを使わない。拒否を隠すsilent retryをしない。会話上の許可はCLIの権限チェックを消さない。
35
+ `review_flow.mode: auto` はClaudeの `--permission-mode auto` を意味しない。非対話起動と同じsessionのresumeでは `--permission-mode bypassPermissions` を明示する。依頼で必要になる操作を個別のallowで事前に列挙しきれず、非対話では足りない許可を求められないまま作業が止まるためである。`--allowedTools` で個別の許可を足したり、dontAskなど別のモードで起動したりしない。`--permission-prompts none` は、bypassでも残る確認を入力待ちにせず拒否としてresultへ返すために付け、許可を付与しない。
36
36
 
37
- CLI仕様の参照: [headless](https://code.claude.com/docs/en/headless)、[CLI reference](https://code.claude.com/docs/en/cli-reference)。利用版で必要なflagが非対応なら状態を報告して停止し、権限回避へ切り替えない。
37
+ bypassでの起動には、`claude_cli` に加えて利用者が明示的に同意した `claude_cli_bypass_permissions`(または今回の明示依頼)が必要で、`claude_cli` だけをbypassへの同意とみなさない。同意が無ければCodexは起動前に人へ一問で確認し、回答まで起動しない。回答は同じIssueの起動とすべてのresumeに引き継ぐ。同意が得られなければauto経路では起動せず、許可不足のブロッカー([実行](execution.md))として報告する。manual経路で進めるかは利用者が決め、その場合は[経路](configuration.md#経路)のとおり設定(通常設定がaskなら同じIssueの選択)を見直してから着手する。
38
+
39
+ bypassはCLIの権限チェックを省くだけで、操作の許可ではない。Claudeが行う操作は依頼の範囲と、[共通設定](configuration.md)の `permissions`・合意済みの `review_flow` に限る。stage・commitは、QA後の差分確定の依頼を受けたときだけ `shinaps:commit` に従って行う。push・公開・外部への送信・破壊的操作は、それぞれの許可と工程に従う。CLIで実行できることや会話上の許可を、依頼の範囲外の操作の許可とは扱わない。
40
+
41
+ permission_denialsがあれば操作と理由を報告し、拒否を隠すsilent retryをしない。bypassでも残る拒否(deny設定・保護されたパス・組織の設定など)は、同じ指定で再依頼しても解消しない。依頼の範囲内で別の手段を指示できる場合だけ同じsessionへ再依頼し、それ以外や新しい許可が必要な場合はCodexが人へ確認する。
42
+
43
+ CLI仕様の参照: [headless](https://code.claude.com/docs/en/headless)、[CLI reference](https://code.claude.com/docs/en/cli-reference)。利用版で必要なflagが非対応、またはbypassPermissionsが組織の設定などで無効なら、状態を報告して停止し、別の権限モードへ切り替えて進めない。
@@ -4,10 +4,12 @@
4
4
 
5
5
  ## 検証CLIと契約版
6
6
 
7
- 利用中のskillとCLIの版を確認し、0.38.0のskillには同じ版のnpm CLIを導入する(`npm install -g @shinaps/skills@0.38.0`)。pluginだけにはCLIは含まれない。導入・更新が必要ならその権限を確認し、検証のたびに `npx latest` を取得しない。
7
+ 利用中のskillとCLIの版を確認し、0.39.0のskillには同じ版のnpm CLIを導入する(`npm install -g @shinaps/skills@0.39.0`)。pluginだけにはCLIは含まれない。導入・更新が必要ならその権限を確認し、検証のたびに `npx latest` を取得しない。
8
8
 
9
9
  0.35.0から通常設定の `review_flow.mode` に `ask` を受理する。`config_version` は2のままで、既存のauto・manualの設定は変更不要。0.33.0〜0.34.xのCLIと `$schema` のURLは `ask` を拒否するため、`ask` を使う設定では `$schema` も0.35.0以降のURLにする。
10
10
 
11
+ 0.39.0から許可 `claude_cli_bypass_permissions` を受理する。`config_version` は2のままで、0.33.0〜0.38.xのCLIと `$schema` のURLはこの許可を拒否するため、使う設定では `$schema` も0.39.0以降のURLにする。
12
+
11
13
  ```sh
12
14
  shinaps-skills --version
13
15
  shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
@@ -75,7 +77,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
75
77
  | `team_settings` | `existing_only`(既存の定義に合わせ、変更しない)または `manage_on_setup`(初期設定・設定変更のときだけ変更案を示し、合意後に整備できる) |
76
78
  | `statuses` | 状態キーと待ち状態の `human_input` から、実在するステータス名への対応。複数のキーに同じステータスを指定できる |
77
79
  | `stop_after` | 終了地点(下の「終了地点」) |
78
- | `permissions` | 継続的に許可した操作の一覧(下の「許可」)。経路の許可(auto: `claude_cli`、manual: `bridge_request`)も含む。許可なしは `[]` |
80
+ | `permissions` | 継続的に許可した操作の一覧(下の「許可」)。経路の許可(auto: `claude_cli` と `claude_cli_bypass_permissions`、manual: `bridge_request`)も含む。許可なしは `[]` |
79
81
  | `references` | `specifications`・`validation`・`environments`・`deployment`・`publication` の5分類をすべて記載し、既存資料のパスまたはURLの一覧を指定する。該当資料なしは `[]` |
80
82
  | `cycle_report` | Cycle報告の設定(下の「Cycle報告」)。報告を使わない場合は `null` |
81
83
  | `review_flow` | `{ "mode": "auto" }`(AIが自然な単位を決め、独立レビュー・QA後にstage・commit)または `{ "mode": "manual" }`(AIがレビュー待ちを明示し、人がWebStormで差分を確認する。人のコミット開始依頼でAIが分割案を示し、人が単位ごとに依頼したらAIがstage・commit)、または `{ "mode": "ask" }`(着手時に進行役が人へautoかmanualかを一問で確認し、回答を同じIssueの通常flowとして使う)。開始時の値(askでは回答)で経路も決まる(下の「経路」) |
@@ -92,7 +94,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
92
94
 
93
95
  | 通常設定 | 経路 | 必要な許可 | メインのモデル |
94
96
  | --- | --- | --- | --- |
95
- | `auto` | Codexが起動するローカルClaude CLIの同じsession([Claude CLI](claude-cli.md)) | `claude_cli` | Opus。起動とすべてのresumeで `--model opus` を指定する |
97
+ | `auto` | Codexが起動するローカルClaude CLIの同じsession([Claude CLI](claude-cli.md)) | `claude_cli`・`claude_cli_bypass_permissions` | Opus。起動とすべてのresumeで `--model opus` を指定する |
96
98
  | `manual` | WebStorm内の対話Claude CodeセッションへBridgeで依頼する([Bridge](bridge.md)) | `bridge_request` | Opusを基本とし、Issueの着手時にFableかOpusかを確認する。同じIssueの一括修正・継続・再開では選択を引き継ぐ |
97
99
  | `ask` | 着手時に人へ一問で確認した回答(auto・manual)の経路 | 回答した経路の許可 | 回答した経路のモデル |
98
100
 
@@ -152,7 +154,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
152
154
 
153
155
  1. 現在の設定・許可・補足・進行中Issueを確認する。
154
156
  2. `config_version: 2` にし、`implementation_skill`、`review_flow.tool`、`path_policy_overrides[].review_flow.tool` を削除する。
155
- 3. `permissions` から `codex_task`・`managed_session:*` を削除する。経路の許可(通常設定がautoなら `claude_cli`、manualなら `bridge_request`)は、そのリポジトリの利用者と合意して明示的に追加する。既存の `bridge_request` は、任意の引き渡しに加えてmanual経路の依頼も表すようになるため、残すかを確認する。他の許可は増やさない。
157
+ 3. `permissions` から `codex_task`・`managed_session:*` を削除する。経路の許可(通常設定がautoなら `claude_cli` と `claude_cli_bypass_permissions`、manualなら `bridge_request`)は、そのリポジトリの利用者と合意して明示的に追加する。既存の `bridge_request` は、任意の引き渡しに加えてmanual経路の依頼も表すようになるため、残すかを確認する。他の許可は増やさない。
156
158
  4. `statuses` は変更しない。補足からCodex実装タスク・Managed・tool・人がコミットする条件の記述とそれらの資料へのリンクを除き、合意日付を残す。
157
159
  5. `$schema` を利用中の公開版のURLへ更新し、CLIで検証して読み戻す。
158
160
 
@@ -177,7 +179,8 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
177
179
  | --- | --- |
178
180
  | `issue_update` | 対象のteam・projectの中で、利用者が任せたIssue・Cycleの範囲に対する運用上の更新(本文・コメント・状態・依存・Linearへの添付、整理で必要になったIssueの作成・分割)と、利用者から任された目的の作業を着手前にIssueへ紐づけるための作成([issue.md](issue.md) の「着手前に作業をIssueへ紐づける」)。チーム設定の変更、未合意の範囲・期限の変更、Cycle外への進行、Issueの削除、外部への送信を含めない |
179
181
  | `development_operations` | 任された対象の開発に必要な、既存アカウントへの通常のログイン、ローカル環境準備、プロジェクトの依存導入、開発サーバー・Simulatorの起動停止、ビルド・テスト・QA操作を継続的に許可する。下の範囲に従う |
180
- | `claude_cli` | auto経路で、Codexが行うClaudeのローカルCLI起動、同じsessionの状態・結果取得、質問への回答・修正・許可済みコミットのresume。メインのモデル([経路](#経路))の指定のほかは既存CLI設定を保持し、個別の操作権限を維持する([手順](claude-cli.md)) |
182
+ | `claude_cli` | auto経路で、Codexが行うClaudeのローカルCLI起動、同じsessionの状態・結果取得、質問への回答・修正・許可済みコミットのresume。メインのモデル([経路](#経路))と権限モードの指定のほかは既存CLI設定を保持する([手順](claude-cli.md))。bypassPermissionsでの起動への同意は含まない |
183
+ | `claude_cli_bypass_permissions` | auto経路のClaudeのローカルCLIを、起動と同じsessionのすべてのresumeで `--permission-mode bypassPermissions` にすることへの、利用者の継続的な同意。CLIの権限チェックを省くだけで、操作の許可を追加しない。Claudeの操作は依頼の範囲と他の許可・合意済みの `review_flow` に限る([手順](claude-cli.md#操作権限)) |
181
184
  | `bridge_request` | manual経路で、CodexがBridgeで対話Claude Codeセッションへ行う依頼と報告の受け取り、および別会話との任意の進行の引き渡し。報告は照合材料であり、操作許可を変更しない([手順](bridge.md)) |
182
185
  | `push` | 対象Issueの作業ブランチの通常のpush |
183
186
  | `pr_create` | 対象IssueのPRの作成と更新 |
@@ -187,7 +190,7 @@ shinaps-skills validate-linear-config /absolute/repository/.shinaps/linear.json
187
190
  | `dev_delegation` | `shinaps:dev-claude` の中で、サブエージェントへ委託する。許可がない場合、入口のメインは担当の作業を代わりに行わず、必要な許可を求める。worktreeの作成は含まない |
188
191
  | `evidence:<保存先>` | Linear以外の指定した保存先へQA素材を保存する(LinearのIssueへの添付は `issue_update` に含む) |
189
192
 
190
- - 開発進行には `issue_update` と、[経路](#経路)の許可が必要(auto: `claude_cli` とローカルClaude CLI、manual: `bridge_request` と、Bridge MCP・WebStorm内の対話Claude Codeセッション。ask: 着手時に選んだ経路の許可)。今回の明示依頼による同じ経路の許可も引き継ぐ。初期設定は `issue_update`・経路の許可(askでは選択肢にする両経路の許可)・`dev_delegation` と `review_flow` を具体的に提案し、合意を得る。設定の存在だけでは許可を得ない。
193
+ - 開発進行には `issue_update` と、[経路](#経路)の許可が必要(auto: `claude_cli`・`claude_cli_bypass_permissions` とローカルClaude CLI、manual: `bridge_request` と、Bridge MCP・WebStorm内の対話Claude Codeセッション。ask: 着手時に選んだ経路の許可)。今回の明示依頼による同じ経路の許可も引き継ぐ。初期設定は `issue_update`・経路の許可(askでは選択肢にする両経路の許可)・`dev_delegation` と `review_flow` を具体的に提案し、合意を得る。設定の存在だけでは許可を得ない。
191
194
  - `development_operations` は、既存の認証手段と利用者が許可した既存アカウントを使い、対象の開発・検証環境と専用の検証データで行う操作に限る。本人の二要素認証・セキュリティキー・CAPTCHA等が必要なら具体的に依頼し、回避しない。ログイン成功を新しい権限への同意と扱わず、新規アカウント・OAuth権限の拡大・課金・新規クラウド資源・共有環境への破壊的変更・実利用者データの操作は含めない。秘密値をIssueや証拠へ記載しない。
192
195
  - この包括許可は `stage`・`commit`・`push`・`pr_create`・`merge`・`deploy:*`・`publish:*`・外部への送信・履歴やデータの破壊的操作を含まない。テストや環境準備がこれらを伴うときも、stage・commitは合意済みflow、その他はそれぞれの許可が必要。人レビュー・Human QA・ツール側の承認条件を省略しない。`permissions` に明示された場合だけ適用し、既存設定に自動で追加しない。
193
196
  - 一つの操作が別の操作を伴う場合は、伴う操作の許可も必要とする(マージで本番へ自動配備される場合は `merge` と `deploy:production`)。
@@ -214,7 +217,7 @@ manualの設定例。同じprojectを複数のリポジトリがそれぞれの
214
217
 
215
218
  ```json
216
219
  {
217
- "$schema": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.35.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
220
+ "$schema": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.39.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
218
221
  "config_version": 2,
219
222
  "config_storage": "shared",
220
223
  "target": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.35.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
3
+ "$id": "https://cdn.jsdelivr.net/npm/@shinaps/skills@0.39.0/plugins/shinaps-claude/references/linear/configuration.schema.json",
4
4
  "title": "Shinaps Linear configuration v2",
5
5
  "type": "object",
6
6
  "properties": {
@@ -142,6 +142,7 @@
142
142
  "issue_update",
143
143
  "development_operations",
144
144
  "claude_cli",
145
+ "claude_cli_bypass_permissions",
145
146
  "bridge_request",
146
147
  "dev_delegation",
147
148
  "push",
@@ -23,7 +23,7 @@ Linear MCPで扱えない画面操作(添付、並べ替え、Cycleへの紐
23
23
 
24
24
  | 工程 | 状態キー | 内容と次へ進む条件 |
25
25
  | --- | --- | --- |
26
- | 着手 | `ready` | Readyと依存を確認し、作業先設定を読み、通常設定の `review_flow` から経路と必要な許可(auto: `claude_cli`、manual: `bridge_request`)を確定する。通常設定がaskなら、Claudeへの依頼前に作業内容と推奨理由を添えてautoかmanualかを人へ一問で確認し、回答まで着手しない。回答と根拠を作業記録に残し、同じIssueでは再質問しない。依頼の前に `dev_delegation`(または今回の明示依頼)があるかを確かめ、無ければ人へ一問で確認する。経路・メインのモデル(manualのみ。[経路](configuration.md#経路))・体制([体制の選択](../dev/staffing.md))は別の項目とし、指定されていないものだけを推奨とともに一問ずつ確認して記録する。体制は依頼にも書く。checkout・branch・HEAD・既存差分を固定し、体制判断の材料を添えてClaudeへ依頼する。経路がautoでmanualのパス別ルールがあれば、起こり得る停止([経路](configuration.md#経路))を依頼に書く |
26
+ | 着手 | `ready` | Readyと依存を確認し、作業先設定を読み、通常設定の `review_flow` から経路と必要な許可(auto: `claude_cli` と `claude_cli_bypass_permissions`、manual: `bridge_request`)を確定する。通常設定がaskなら、Claudeへの依頼前に作業内容と推奨理由を添えてautoかmanualかを人へ一問で確認し、回答まで着手しない。回答と根拠を作業記録に残し、同じIssueでは再質問しない。依頼の前に `dev_delegation`(または今回の明示依頼)があるかを確かめ、無ければ人へ一問で確認する。経路・メインのモデル(manualのみ。[経路](configuration.md#経路))・体制([体制の選択](../dev/staffing.md))は別の項目とし、指定されていないものだけを推奨とともに一問ずつ確認して記録する。体制は依頼にも書く。checkout・branch・HEAD・既存差分を固定し、体制判断の材料を添えてClaudeへ依頼する。経路がautoでmanualのパス別ルールがあれば、起こり得る停止([経路](configuration.md#経路))を依頼に書く |
27
27
  | 実装 | `coding`, `local_agent_qa` | Claudeのメインが依頼の体制の担当(BASIC・ULTRAでは追加の担当を含む)を決めて報告し、`shinaps:dev-claude` で実装・検証・独立レビューを行い、未コミット差分・単位案・予定差分・判定記録を返す。manualでは人へユーザーのレビュー待ちと明示する。CodexがLocal Agent QA(判定記録と経路の整合、必須担当の照合を含む)を行う。依頼に書いた体制の必須担当([実装体制の判断](../dev/staffing.md))は、完了または合意の記録付きの未実施を合格とする。不合格(必須担当のそれ以外の未完了や代替を含む)なら同じsessionへ戻し、再QAは[初回QAの一部](qa.md#qaの時点対象最終qa)として合格まで続ける |
28
28
  | 差分確定 | `code_review` | QA合格後、Codexが実効flow・判定記録・QA結果を同じsessionへ渡し、Claudeが `shinaps:commit` を行う。autoは単位ごとに独立レビュー後にcommitする。manualではCodexはcommitを依頼せず、渡した後は報告を待つ。人のコミット開始依頼でClaudeが分割案を示し、人が単位ごとに依頼したcommitを行う。Codexは各コミットの単位照合と全体照合を行う。差分確定中の実装の修正は、devの修正サイクル([工程](../dev/workflow.md)の「役割と継続」)で行い、ステータスは `code_review` のままにする。修正やコミットのたびにCodexのQAへ戻さない([最終QA](qa.md#qaの時点対象最終qa)) |
29
29
  | 公開確認 | `post_commit`, `staging_agent_qa`, `staging_human_qa`, `release`, `production_agent_qa`, `production_human_qa` | 受入条件と許可に応じて必要なものだけ行う: push前の最終Agent QAとpushするHEADの照合([最終QA](qa.md#qaの時点対象最終qa))、push・PR作成、環境配備とStaging/ProductionのAgent QA、必要なHuman QA、merge・配備・公開。適用しない項目は理由を記録する |
@@ -11,7 +11,7 @@ Issueの責務・受入条件・ステータスを、実際の成果と一致さ
11
11
 
12
12
  着手時に作業先設定の通常の `review_flow.mode` で経路を決め、Issueの途中で切り替えない([経路](../../references/linear/configuration.md#経路))。
13
13
 
14
- - auto: [ローカルClaude CLI](../../references/linear/claude-cli.md)を起動し、質問への回答・修正・差分確定を同じsessionのresumeで依頼する。許可は `claude_cli`。
14
+ - auto: [ローカルClaude CLI](../../references/linear/claude-cli.md)を起動し、質問への回答・修正・差分確定を同じsessionのresumeで依頼する。許可は `claude_cli` と、起動・resumeを `--permission-mode bypassPermissions` にする同意の `claude_cli_bypass_permissions`。
15
15
  - manual: WebStorm内の対話Claude Codeセッションへ[Bridge](../../references/linear/bridge.md)で依頼する。人とClaudeの作業中は同じIssueへ指示を送らず(Claudeが依頼した途中確認への応答と、[UIの微調整](../../references/linear/workflow.md#codexによるuiの微調整)の人と調整したうえでの一時停止の依頼・返却を除く)、報告を待つ。QA合格後もcommitを依頼せず、QA結果と判定記録を渡して人の依頼によるcommitの報告を待つ。許可は `bridge_request`。
16
16
  - ask: Claudeへ依頼する前に、Issueの作業内容と推奨する経路の理由を添えてautoかmanualかを人へ一問で確認し、回答まで着手しない。記録・再質問しない条件・許可は[経路](../../references/linear/configuration.md#経路)に従う。Claudeへの依頼には解決したmodeと回答の記録を添える。
17
17