すべてのドキュメント
dvarドキュメント

ポリシーモデル

dvar.yaml、操作の正規化、判断、モード、決定論的なルール優先順位を理解します。

リポジトリを見る
dvarドキュメント
6ページ中2ページ

Dvarのポリシーはdvar.yamlに記述します。このポリシーは、ツール、MCP呼び出し、framework tool、ローカルプロセスの実行を許可する前に、提案された操作をどのように評価するかを定義します。

主な判断効果

Dvarは1つの最終効果を生成します。

効果意味
allow操作を続行できます。
deny操作を実行してはいけません。
require_approval実行前にreviewerまたはapproval providerによる承認が必要です。

ポリシーは決定論的です。判断は、正規化された操作、ポリシー、lockfile状態、approval状態、runtime safety状態から再現できる必要があります。

モード

モード動作
offDvarはポリシーを適用しません。
monitorDvarは実行を許可しつつ、本来allow、deny、escalateした内容を記録します。
enforceDvarはdenyとapproval-gated actionを実行前にブロックします。
strictDvarは未宣言のsafetyまたはintegrityの不確実性でもfail closedします。

rollout中はmonitorを使います。monitor modeを保護として訴求しないでください。

最小ポリシー

yaml
schemaVersion: "1"
mode: monitor
defaultEffect: deny

rules:
  - id: allow-safe-read-tools
    effect: allow
    when:
      tool.capabilities:
        containsAny: ["read"]

  - id: approve-production-finance
    effect: require_approval
    when:
      environment: production
      tool.capabilities:
        containsAny: ["finance"]
    approval:
      provider: manual
      scope: once

正規化された操作フィールド

ルールは、identity、environment、tenant、session、task、server、tool、arguments、destination、resource、risk、metadataの各フィールドを評価できます。

よく使うルール対象は次の通りです。

  • principal.id
  • agent.id
  • environment
  • server.id
  • tool.name
  • tool.capabilities
  • arguments.*
  • destination.value
  • risk.level

ポリシーテスト

ポリシーに例を追加して実行します。

bash
npx dvar test-policy
npx dvar replay actions.replay.jsonl --policy dvar.yaml

Replayはツールを実行しません。過去のaction recordを現在のポリシーに対して評価し、チームがポリシー変更を安全にレビューできるようにします。