Claude Media
Claude Code v2.1.294 — 命令文のprompt/agent hookが遮断しない不具合を修正

Claude Code v2.1.294 — 命令文のprompt/agent hookが遮断しない不具合を修正

Claude Code v2.1.294は、命令文で書いたpromptとagentのhookが止めるべき操作を通してしまう不具合を修正し、Stop系hookの判定も改善します。

このリリースで何が変わるか

Claude Code v2.1.294は、hookの判定まわりの2項目だけのリリースです。どちらも、promptを命令文で書いたhookの判定に関わります。1つ目はprompt型とagent型、2つ目はStop・SubagentStopのprompt型が対象です。

  • 「Block commands that...」のように命令文で書いたprompt・agentのhookが、止めるべき操作を許可してしまう不具合を修正
  • StopとSubagentStopのprompt型hookのうち、「Carry on if the build is broken」のような命令文のものの判定を改善。Claudeが早めに止まる可能性が下がる

誰に効くか

type: "prompt"やtype: "agent"のhookを使っていなければ、影響はありません。command型のhookも対象外です。

効くのは、禁止条件を命令文のままpromptに書いているチームです。たとえば次のような設定です(公式の書式に沿った例です)。

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "prompt",
            "prompt": "Block commands that delete files outside the repo. $ARGUMENTS"
          }
        ]
      }
    ]
  }
}

この形のhookが、更新前のバージョンでは遮断すべき場面で通してしまうことがありました。遮断を前提にした運用では、更新後に挙動が変わります。

Stop系も同じ構図です。「ビルドが壊れていたら続行する」という趣旨の命令文を渡したStop hookは、判定の結果、Claudeが早く止まってしまうことがありました。更新後はその余地が小さくなります。完了条件をprompt型のStop hookに任せている場合は、Stop hookの連続ブロック上限も一緒に確認しておくと、続行が増えた場合の挙動が読めます。

更新前に確かめたいこと

遮断が主目的のhookは、止めたい操作を実際に試すテストを1回通してから本番運用に戻すと安心です。更新後に拒否が増える可能性があるためです。hookの種類とイベントの対応は、Hooks完全ガイドに一覧があります。

前のバージョンはv2.1.293で、Haiku 5.5の追加が中心でした。

関連ガイド

このバージョン単体の位置づけや前後の版とのつながりは、Claude Codeの全体像でまとめて確認できます。

この記事を共有:XはてブLinkedIn