情報科学 › Claude Code の中身 › ツールと権限

フックの決定と権限規則の合成

定義 7.1(「ツールと権限」§7)

フックの決定の集合を H={deny,ask,allow,⊥}H = \{\mathrm{deny}, \mathrm{ask}, \mathrm{allow}, \bot\} とし、順序 deny≻ask≻allow≻⊥\mathrm{deny} \succ \mathrm{ask} \succ \mathrm{allow} \succ \bot を入れる(⊥\bot は決定なし。終了コード 2 による中止は deny\mathrm{deny} に含める。defer は扱わない)。呼び出し qq に対して複数のフックが決定 η1,…,ηk\eta_1, \ldots, \eta_k を返したとき、合成したフックの決定を、この順序での最大元 η=max⁡(η1,…,ηk)\eta = \max(\eta_1, \ldots, \eta_k) とする(フックが無ければ ⊥\bot)。フックの決定 η\eta、規則集合 RR、モード μ\mu に対する判定 Cμ,R(η,q)C_{\mu,R}(\eta, q) を、次の順に調べて最初に当てはまるもので定める。

  1. η=deny\eta = \mathrm{deny} ならば block\mathrm{block}。
  2. q∈Matdeny(R)q \in \mathrm{Mat}_{\mathrm{deny}}(R) ならば block\mathrm{block}。
  3. q∈Matask(R)q \in \mathrm{Mat}_{\mathrm{ask}}(R) ならば prompt\mathrm{prompt}。
  4. η=ask\eta = \mathrm{ask} ならば prompt\mathrm{prompt}。
  5. η=allow\eta = \mathrm{allow} ならば run\mathrm{run}。
  6. それ以外(η=⊥\eta = \bot)は Dμ,R(q)D_{\mu,R}(q)(定義 6.1)。

本文で読む(前後の説明と例)→

閉包の状態

定義

定義は閉包の起点です(証明を要しません)。

印の意味: ✓公理まで証明済み ・ △証明あり(閉包未完)・ ※主張のみ。テーマごとの集計は 閉包の状況。

これを使っている定理

証明で明示的に参照している定理は、まだありません。

関連するノック 2 問