1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

2026-10-04 の公式ドキュメント更新:スキル呼び出し制御と環境変数の大幅追加

1
Posted at

この日の更新は、スキルを誰がどのように起動できるかの制御、フックにおけるユーザーインタラクション要件の明文化、多数の環境変数の追加、OpenTelemetry モニタリング属性の拡充という 4 方向に集中している。

スキルの呼び出し権限を細かく制御する 2 つのフィールド

/skills と /slash-commands の両ページに、スキルの呼び出し主体を制御するフロントマターフィールドの説明が追加された。disable-model-invocation: true を設定すると、Claude がセッション中に自律的にスキルを起動できなくなる。反対に user-invocable: false を設定すると、ユーザーは直接スキルを呼び出せなくなるが Claude は引き続き呼び出せる。コンテキストへの読み込みタイミングも各フィールドで異なる。

disable-model-invocation: true : Claude can't invoke the skill on its own.

(出典 [2])

(訳:disable-model-invocation: true を設定すると、Claude はスキルを単独で呼び出せなくなります。)

スキル名をメッセージのどの位置に書くかも動作に影響する。メッセージ冒頭に /deploy staging のように書いた場合は Claude Code がスキルを直接実行するが、文中に置いた場合は実行されず、Claude に実行を許可する合図にとどまる。

フックとユーザーインタラクションツールの条件が明文化

/hooks ページには、AskUserQuestion と ExitPlanMode がユーザーとのインタラクションを必須とすること、およびその条件の満たし方が追記された。

AskUserQuestion and ExitPlanMode require user interaction.

(出典 [1])

(訳:AskUserQuestion と ExitPlanMode はユーザーとのインタラクションを必要とします。)

-p フラグによる非インタラクティブ実行では、Agent SDK の canUseTool コールバックのようなパーミッションホストが存在する場合にのみこれらのツールが提供される。PreToolUse フックでこの要件を満たすには、ツール入力を stdin から読み取り、独自の UI で回答を収集し、permissionDecision: "allow" と updatedInput の両方を返す必要がある。"allow" だけを返しても不十分な点がドキュメントに明示された。あわせて、PreToolUse イベントのトップレベルにあった decision フィールドと reason フィールドが非推奨になったことも追記されている。

サブプロセス認証情報のスクラブと新しい環境変数

/env-vars ページには 2026-10-04 時点で複数の環境変数が追加されており、中でも CLAUDE_CODE_SUBPROCESS_ENV_SCRUB は運用上の影響が広い。

Set to 1 to strip credentials from the environments of the subprocesses Claude Code starts, such as Bash commands, hooks, and stdio MCP servers.

(出典 [4])

(訳:1 に設定すると、Bash コマンド、フック、stdio MCP サーバーなど Claude Code が起動するサブプロセスの環境から認証情報を取り除きます。)

この機能は変数名または値の形状から認証情報を識別する。ANTHROPIC_API_KEY や AWS_SECRET_ACCESS_KEY は削除されるが、GITHUB_TOKEN や HTTP_PROXY は残る。Linux ではサブプロセスを独立した PID 名前空間で動かすため、/proc 経由のホストプロセス環境の読み取りも防ぐ。ドキュメントには、プロンプトインジェクション攻撃対策の一層として、narrow permission rules と組み合わせる使い方を推奨すると記載されており、単独での完全な保護は想定されていない。v2.1.233 以降が必要。

モニタリング:prompt_text 属性と詳細トレーシング属性の追加

/monitoring-usage ページには、ユーザープロンプトを 2 つの属性(prompt と prompt_text)で保持する変更が追記された。バックエンドがドット区切りの属性名をネスト構造として解釈する場合、prompt.id のように読まれてプロンプト文字列が欠落することがある。この問題への対処として prompt_text が追加されている。

prompt_text : Same value as prompt , redacted under the same gate.

(出典 [5])

(訳:prompt_text は prompt と同じ値で、同じゲートの下で編集されます。)

また、フックのテレメトリ属性(hook_event、hook_name、num_hooks など)の定義と、OTEL_LOG_TOOL_DETAILS によるゲーティングが追記された。v2.1.287 以降が必要。

その他の更新

  • CLAUDE_CODE_DISABLE_INLINE_SHELL_RM_PROMPT を 1 にすると、シェルに -c で渡したスクリプト内のクリティカルパス削除をサイレントにスキャンしなくなる(v2.1.288 以降)
  • CLAUDE_CODE_WORKER_CHECKIN_SCHEDULE でバックグラウンドサブエージェントへのリマインダー間隔を秒単位で指定できる(v2.1.283 以降)
  • CLAUDE_CODE_DISABLE_LEGACY_MODEL_REMAP を 1 にすると Opus 4.0 / 4.1 から現行 Opus への自動リマップが止まる(v2.1.268 以降)
  • CLAUDE_CODE_AUTO_COMPACT_WINDOW でオートコンパクトのウィンドウを 100000〜1000000 トークンの範囲で指定できる
  • CLAUDE_CODE_TRANSCRIPT_LOCAL_GC を 1 にすると長期セッションのトランスクリプトが 5 MB 超になった時点で過去履歴を自動削除する(v2.1.287 以降)
  • CLAUDE_CODE_DISABLE_REFUSAL_FALLBACK を 1 にするとセーフティ分類器フラグ時のモデル自動切り替えを無効化できる

まとめ

2026-10-04 の更新でとくに運用に影響するのは、サブプロセスへの認証情報漏洩を防ぐ CLAUDE_CODE_SUBPROCESS_ENV_SCRUB と、スキルの自動起動を明示的に制限できる disable-model-invocation および user-invocable フィールドの 2 点だ。前者は MCP サーバーやフックを本番環境で使う場合のセキュリティ強化、後者はマルチエージェント構成でスキルの起動タイミングを管理したい場面に直接役立つ。環境変数の追加数が多いため、各変数のバージョン要件を事前に確認してから適用することが望ましい。

出典

本稿の引用はすべて一次資料と逐語照合(verify_article 通過)のうえ掲載しています(2026-10-06 検証)。

[1] https://code.claude.com/docs/en/hooks
[2] https://code.claude.com/docs/en/slash-commands
[3] https://code.claude.com/docs/en/skills
[4] https://code.claude.com/docs/en/env-vars
[5] https://code.claude.com/docs/en/monitoring-usage

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?