
<!-- Code generated by "dvx gen-docs"; DO NOT EDIT. Run "make gen-cli-docs" to regenerate. -->

## NAME

dvx - Daevix - execution-time control plane for autonomous agents

## SYNOPSIS

dvx

```
[--help|-h]
[--version|-v]
```

## DESCRIPTION

dvx is the single Daevix binary: it runs the server components (dvx serve controlplane|imds|broker|relay|gateway|llmproxy) and drives them as an authenticated operator client (agent, grant, policy, config, secret, enclaves, audit, ...).

Conventions that hold across every command:

- Environment: each flag also reads from a DVX_-prefixed variable (e.g. --addr from
  DVX_ADDR, --database-dsn from DVX_DATABASE_DSN). Precedence is flag > environment > default.
- Server components are TLS-only: --tls-cert and --tls-key (PEM) are required to serve.
- Errors returned by the servers are RFC 9457 problem documents.
- Audit output is a first-class stream, separate from application logging; both go to
  stdout and are told apart by a top-level "stream" key.

**Usage**:

```
dvx [GLOBAL OPTIONS] [command [COMMAND OPTIONS]] [ARGUMENTS...]
```

## GLOBAL OPTIONS

**--help, -h**: show help

**--version, -v**: print the version


## COMMANDS

### serve

Run a Daevix server component

**--help, -h**: show help

#### controlplane

Run the controlplane (management plane; never handles sovereign data)

**--addr**="": TLS listen address for the component API (default: ":8443")

**--agent-token-issuer-url**="": public base URL the controlplane issues 60s agent-operator tokens as (bd_2_0-bvw.3): the iss claim + where discovery (/.well-known/openid-configuration) + JWKS (/.well-known/jwks.json) are served. Enabling it mounts the enclave agent-token mint endpoint; requires --oidc-issuer + a database

**--agent-token-ttl**="": lifetime of a minted agent-operator token (bd_2_0-bvw.3); 0 uses the 60s default. NOT aligned with the 15-min SVID TTL on purpose: containment is enforced by levers (mint-gate, gateway drop, deny-all, grant deletion), not expiry (default: 0s)

**--audit-capture-or-deny**: fail-closed durability for the AUTHORITY audit tier (bd_2_0-4p8.3, docs/audit-evidence-tiers.md): authority records are durably spooled to the WAL BEFORE the gated effect (denials returned, grants committed, credentials handed over), and the effect is REFUSED if that cannot happen within --audit-capture-timeout. ON by default; set false for best-effort recording (rungs 1+2, never refuses)

**--audit-capture-timeout**="": how long an authority-gated path blocks for the audit WAL to accept the record before refusing the effect (capture-or-deny, bd_2_0-4p8.3) (default: 5s)

**--audit-dsn**="": clickhouse-go DSN for the controlplane's OWN platform-audit store (bd_2_0-8kl.11); when set, audit -> ClickHouse instead of stdout. Empty leaves audit on stdout

**--audit-wal-dir**="": on-disk WAL dir for the audit store (bd_2_0-8kl.10): durable across a ClickHouse outage/restart, replays on start. REQUIRED with --audit-dsn (fail-closed durability, bd_2_0-8kl.15)

**--audit-wal-max-bytes**="": per-table on-disk WAL spool ceiling in BYTES (bd_2_0-8kl.16, durability rung 2): the durable buffer absorbing a ClickHouse outage. Size to a realistic outage window and BELOW the WAL disk capacity; past it audit drops (bounded, counted, alertable) rather than filling disk. 0 => the reviewed per-component default (internal/config, bd_2_0-4p8.1; see docs/runbooks/audit-durability.md) (default: 0)

**--config-enclave-id**="": enclave the published config snapshot is scoped for (self-describing in the snapshot)

**--config-org**="": the single org the target enclave serves (bd_2_0-j9r) for config scoping; snapshot carries the platform floor plus only this org. Empty = platform-only

**--config-publish**="": local path to publish the config-value snapshot (bd_2_0-7ha) for one enclave's IMDS to resolve; requires a database

**--config-publish-dir**="": directory to fan config values out to, one file per registered enclave (<dir>/<enclave_id>.json), scoped from the enclave registry; requires a database

**--database-dsn**="": PostgreSQL DSN; empty runs in skeleton mode (no DB)

**--exec-access**: provision the interactive PTY/exec mode (no WireGuard); independent of --wireguard-access (bd_2_0-0f7.2)

**--exec-session-ttl**="": lifetime of a minted exec-kind rendezvous session for interactive PTY/exec (bd_2_0-0f7.2); 0 uses the default (default: 0s)

**--help, -h**: show help

**--kms-config**="": opaque provider config JSON for --kms-provider (e.g. {"address":"http://vault:8200","token_path":"/etc/dvx/kms/token"})

**--kms-provider**="": operator at-rest key store backend (e.g. 'vault') for controlplane metadata encryption; empty stores policy values plaintext. The operator's provider, never a customer's

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--metrics-addr**="": listen address for the dedicated TLS /metrics endpoint (Prometheus); empty disables it. Reuses --tls-cert/--tls-key; lock to the scraper with a network policy (bd_2_0-pmy)

**--oidc-audience**="": expected token audience for the operator API; a token minted for another audience is rejected

**--oidc-issuer**="": trusted OIDC issuer URL (self-hosted Zitadel); with a database, mounts the operator API behind OIDC auth + capability authorization

**--policy-enclave-id**="": enclave the published snapshot is scoped for (self-describing in the snapshot)

**--policy-org**="": the single org the target enclave serves (bd_2_0-j9r); the snapshot carries the platform floor plus only this org's policy. Empty = platform-only

**--policy-publish**="": local path to publish the governance policy snapshot (platform/org/group/agent) for an enclave gateway to resolve out-of-band; requires a database

**--policy-publish-dir**="": directory to fan the governance policy out to, one file per registered enclave (<dir>/<enclave_id>.json), scoped from the enclave registry; requires a database

**--reference-values**="": local path to publish the attestation policy (ReferenceValues JSON) for enclaves to read out-of-band

**--rendezvous-signer-key**="": PEM file with the controlplane's rendezvous ECDSA private key; provisions the shared rendezvous transport all interactive-access modes ride (bd_2_0-0f7); requires a database

**--ssh-cert-ttl**="": lifetime of a minted operator SSH cert + ssh-kind tunnel session (bd_2_0-0f7.3); 0 uses the default (default: 0s)

**--tls-cert**="": path to the TLS certificate (PEM)

**--tls-key**="": path to the TLS private key (PEM)

**--token-endpoint-override**="": override the token endpoint the /oauth/token facade proxies to (default: derived from --oidc-issuer as <issuer>/oauth/v2/token)

**--tunnel-ticket-ttl**="": lifetime of a minted tunnel pairing ticket (the entitlement leash); 0 uses the default (default: 0s)

**--wireguard-access**: provision the WireGuard access modes (localhost tunnel + SSH); set false to run exec-only with no tunnel/SSH endpoints (bd_2_0-0f7)

**--zitadel-api-base**="": override the Zitadel management-API base URL (default: derived from --oidc-issuer)

**--zitadel-key**="": path to a Zitadel service-account key JSON; enables provisioning the Zitadel mgmt API (org create/map) from the operator API

##### help, h

Shows a list of commands or help for one command

#### imds

Run the IMDS node daemon (enclave satellite; hosts the agent-facing IMDS on a unix socket)

**--addr**="": TLS listen address for the component API (default: ":8444")

**--audit-capture-or-deny**: fail-closed durability for the AUTHORITY audit tier (bd_2_0-4p8.3, docs/audit-evidence-tiers.md): authority records are durably spooled to the WAL BEFORE the gated effect (denials returned, credentials handed over), and the effect is REFUSED if that cannot happen within --audit-capture-timeout. ON by default; set false for best-effort recording (rungs 1+2, never refuses)

**--audit-capture-timeout**="": how long an authority-gated path blocks for the audit WAL to accept the record before refusing the effect (capture-or-deny, bd_2_0-4p8.3) (default: 5s)

**--audit-dsn**="": clickhouse-go DSN for the in-enclave audit store (bd_2_0-8kl); when set, the enclave sends its audit to ClickHouse (not stdout) and (with --oidc-issuer) serves the audit query API. Empty leaves audit on stdout

**--audit-wal-dir**="": on-disk WAL dir for the audit store (bd_2_0-8kl.10): durable across a ClickHouse outage/restart, replays on start. REQUIRED with --audit-dsn (fail-closed durability, bd_2_0-8kl.15)

**--audit-wal-max-bytes**="": per-table on-disk WAL spool ceiling in BYTES (bd_2_0-8kl.16, durability rung 2): the durable buffer absorbing a ClickHouse outage. Size to a realistic outage window and BELOW the WAL disk capacity; past it audit drops (bounded, counted, alertable) rather than filling disk. 0 => the reviewed per-component default (internal/config, bd_2_0-4p8.1; see docs/runbooks/audit-durability.md) (default: 0)

**--config-snapshot**="": local path to the published config-value snapshot (bd_2_0-7ha) the config-pull sidecar writes; the IMDS serves GET /v1/config from it. Empty disables config delivery

**--database-dsn**="": PostgreSQL DSN; empty runs in skeleton mode (no DB)

**--enclave-id**="": identifier for this enclave (sovereignty boundary)

**--enclave-name**="": friendly UNIQUE enclave name for display + audit alongside --enclave-id (bd_2_0-49z.2); never an addressing coordinate

**--help, -h**: show help

**--imds-ca-cert**="": local path (file/ConfigMap) to the gateway CA public cert; served by the IMDS at GET /v1/ca as an on-demand CA fallback. Public cert only

**--imds-socket**="": unix socket path for the IMDS-like metadata service agents mount (default: "/run/dvx/imds.sock")

**--inject-cred**="": per-use credential rule 'name=destination=header=secret' (repeatable); IMDS lists these at /v1/credentials (bd_2_0-lai)

**--kms-config**="": opaque provider config JSON for --kms-provider (e.g. {"address":"http://vault:8200","token":"..."})

**--kms-provider**="": at-rest key store backend for this enclave (e.g. 'vault'); empty disables sovereign data-at-rest encryption. Local deploy config, never sent to the controlplane

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--metrics-addr**="": listen address for the dedicated TLS /metrics endpoint (Prometheus); empty disables it. Reuses --tls-cert/--tls-key; lock to the scraper with a network policy (bd_2_0-pmy)

**--node-name**="": the node this enclave runs on (downward API spec.nodeName); the reconciler serves only mappings for this node

**--oidc-audience**="": expected token audience for the audit query API; empty skips the aud check (dev only)

**--oidc-issuer**="": trusted OIDC issuer (Zitadel) for the audit query API operator authenticator; empty leaves the query API unmounted (fail-closed)

**--oidc-org-claim**="": token claim to read the caller's org scope from (default urn:dvx:org); set for IdPs that name it differently

**--placement-driver**="": this imds's placement driver (mission bd_2_0-cwnz M3): empty/k8s = CRD registry + node matching; vm = local micro-VM driver (file registry, --vm-state-dir, --placement-id)

**--placement-id**="": this instance's positive placement id the reconciler matches mappings against (fail-closed); with --placement-driver=vm (the local analog of the node name)

**--policy-snapshot**="": local path to the published governance policy snapshot; the node tunnel terminator enforces tunnel.enabled + tunnel.ports locally from it (bd_2_0-kzb.3). Empty leaves the CP ticket gate + allow-all ports

**--reference-values**="": local path (file/ConfigMap) to load the attestation policy from; empty uses the reduced-assurance SAMPLE dev policy

**--registry-crd**: materialize agents by reconciling the broker-authored AgentMapping CRs for this node (durable HA registry); requires in-cluster RBAC

**--registry-file**="": file-backed AgentMapping registry path (with --placement-driver=vm): the same file the local broker authors

**--registry-namespace**="": namespace holding AgentMapping CRs; empty resolves the pod's ServiceAccount namespace

**--relay-ca**="": PEM CA file the node tunnel terminator trusts for the relay's serving cert on its dial-out (bd_2_0-kzb.3); empty uses the system trust store. Set for a relay fronted by a private CA (dev's mkcert)

**--relay-insecure**: skip TLS verification of the relay's serving cert on the node terminator's dial-out (DEV ONLY; overrides --relay-ca)

**--rendezvous-sessions**="": local path to the pending-session snapshot (bd_2_0-kzb.2) a cp-pull sidecar writes; the node stands the right handler up per session for its Kata agents (WireGuard terminator for tunnel/ssh, exec bridge for exec). Requires --vsock-relay. Empty disables all interactive-access modes on the node

**--secret-broker-ca**="": PEM CA to verify the broker's serving cert for secret reads (the published broker CA)

**--secret-broker-client-cert**="": PEM client cert (broker-issued imds identity) presented for the secret-read mTLS

**--secret-broker-client-key**="": PEM client key for --secret-broker-client-cert

**--secret-broker-url**="": broker mTLS channel base URL to read SECRET config values through (bd_2_0-dy6); empty uses the deprecated local sovereign store

**--tls-cert**="": path to the TLS certificate (PEM)

**--tls-key**="": path to the TLS private key (PEM)

**--vm-state-dir**="": the VM driver's per-agent VM state dir (with --placement-driver=vm); the imds serves each agent's vsock host socket from it

**--vsock-dir**="": kata runtime state dir the vsock relay reads (per-sandbox clh sockets + pod namespace) (default: "/run/vc")

**--vsock-relay**: serve the IMDS to Kata agent VMs over vsock (bd_2_0-aoq.7); requires the node kata state dir mounted

##### help, h

Shows a list of commands or help for one command

#### gateway

Run the network gateway (sole egress path; mediates redirected agent traffic)

**--agent-token-audience**="": audience the minted agent-operator tokens are scoped to; must equal the controlplane's --oidc-audience (its dvx authenticator enforces the same value). Empty uses the dvx-operator-api default (accepted by a controlplane with no pinned audience) (default: "dvx-operator-api")

**--agent-token-broker-ca**="": PEM CA cert verifying the broker's local serving cert; required with --agent-token-broker-url

**--agent-token-broker-client-cert**="": PEM client cert for the broker's local mTLS channel (the broker-minted dvx-gateway-broker-client identity); required with --agent-token-broker-url

**--agent-token-broker-client-key**="": PEM client key for the broker's local mTLS channel; required with --agent-token-broker-url

**--agent-token-broker-url**="": broker local mTLS channel base URL the gateway relays agent SVIDs to for token mints (bd_2_0-bvw.5), e.g. https://dvx-broker.dvx-enclave.svc.cluster.local:8450; required with --cp-api-host

**--allow-dest**="": allowed destination host suffix (repeatable); non-empty enables default-deny governance

**--assert-identity-dests**="": JSON array of structured in-cluster assert-identity destinations [{host,namespace,selector,port}] (bd_2_0-bwc/2ye); the gateway presents the agent's attested SVID over mTLS to each instead of injecting a credential. Requires --svid-dir + --k8s-attribution

**--audit-capture-or-deny**: fail-closed durability for the AUTHORITY audit tier (bd_2_0-4p8.3, docs/audit-evidence-tiers.md): egress DENY rows and body-capture ALLOW rows are durably spooled to the WAL BEFORE the gated effect (the denial is returned / the captured exchange completes), and the effect is REFUSED if that cannot happen within --audit-capture-timeout. ON by default; set false for best-effort recording (rungs 1+2, never refuses)

**--audit-capture-timeout**="": how long an authority-gated path blocks for the audit WAL to accept the record before refusing the effect (capture-or-deny, bd_2_0-4p8.3) (default: 5s)

**--audit-dsn**="": clickhouse-go DSN for the in-enclave audit store (bd_2_0-8kl); when set, the gateway sends its audit events to ClickHouse instead of stdout. Empty leaves audit on stdout

**--audit-header-hmac-salt-file**="": file holding the enclave-held salt that keyed-hashes SECRET header values in the capture (bd_2_0-xs0.3): lets an operator detect a credential repeating/rotating without disclosing it. Optional; use the SAME salt as llmproxy

**--audit-wal-dir**="": on-disk WAL dir for the audit store (bd_2_0-8kl.10): durable across a ClickHouse outage/gateway restart, replays on start. REQUIRED with --audit-dsn (fail-closed durability, bd_2_0-8kl.15)

**--audit-wal-max-bytes**="": per-table on-disk WAL spool ceiling in BYTES (bd_2_0-8kl.16, durability rung 2): the durable buffer absorbing a ClickHouse outage. Size to a realistic outage window and BELOW the WAL disk capacity; past it audit drops (bounded, counted, alertable) rather than filling disk. 0 => the reviewed per-component default (internal/config, bd_2_0-4p8.1; see docs/runbooks/audit-durability.md) (default: 0)

**--ca-cert**="": gateway CA certificate (PEM); with --ca-key enables TLS termination (MITM)

**--ca-key**="": gateway CA private key (PEM); never leaves the gateway

**--cp-api-ca**="": CA that signed the controlplane's serving cert, verified on the CP-bound re-origination hop. The operator API is a named internal destination with its own anchor — set this whenever --upstream-ca's bundle does not already carry the CP root. Empty uses the system roots

**--cp-api-host**="": operator-API host suffix (repeatable) whose agent egress gets a 60s agent-operator token INJECTED (bd_2_0-bvw.5): the gateway mints it via the broker relay, caches it, and presents the Authorization bearer itself — nothing is handed to the agent. Requires --agent-token-broker-url, a gateway CA (MITM), attribution, and --svid-dir

**--dns-listen**="": local address for the transparent DNS forwarder (the VM driver's nftables rule steers agent udp/53 here): queries relay verbatim to the host resolver, answers spoof the original source. Requires CAP_NET_ADMIN

**--enclave-id**="": identifier for this enclave (sovereignty boundary)

**--enclave-name**="": friendly UNIQUE enclave name for display + audit alongside --enclave-id (bd_2_0-49z.2); never an addressing coordinate

**--envoy-socket**="": unix socket the gateway listens on; Cilium's Envoy dials it (PROXY-protocol v2) (default: "/var/run/cilium/envoy/sockets/dvx-gateway.sock")

**--help, -h**: show help

**--http-capture**: record request/response line, headers and a size-capped BODY for MITM'd HTTP/1.x egress the gateway allows (bd_2_0-uwi); bodies sealed per-org like headers. ON by default, but a NO-OP unless the gateway holds a KMS Crypter (--kms-provider) since bodies must be sealable — so it activates exactly where header capture does. Disable with --http-capture=false

**--http-capture-max-body**="": cap on PLAINTEXT bytes of each captured request/response body that are sealed (the full stream is still forwarded byte-exact); 0 uses the gateway default (16 KiB) (default: 0)

**--inject-cred**="": egress-injection rule 'name=destination=header=secret' (repeatable); the gateway attaches a per-use header credential on a matched egress (bd_2_0-lai)

**--k8s-attribution**: join source pod IP -> agent identity by listing CiliumEndpoints (in-cluster)

**--kms-config**="": opaque provider config JSON for --kms-provider (e.g. {"address":"http://vault:8200","token_path":"/etc/dvx/kms/token"})

**--kms-provider**="": enclave KMS backend (e.g. vault) used to SEAL captured request headers on MITM'd HTTP egress (bd_2_0-xs0.3). OPTIONAL: without it the gateway audits flows as before and captures no headers (header capture is opt-in, since headers can carry sovereign data)

**--llmproxy-addr**="": host:port of the llmproxy satellite; when set, classified LLM inference calls are force-routed there over mTLS presenting the agent SVID (bd_2_0-b06.1). Requires --ca-cert/--ca-key, --svid-dir, --k8s-attribution

**--llmproxy-ca**="": PEM CA bundle to verify llmproxy's serving cert on the routed mTLS hop (default: system roots)

**--llmproxy-host**="": SNI the gateway presents to llmproxy and verifies its serving cert against; empty derives it from --llmproxy-addr

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--metrics-addr**="": listen address for the dedicated TLS /metrics endpoint (Prometheus); empty disables it. Lock to the scraper with a network policy (bd_2_0-pmy)

**--metrics-tls-cert**="": PEM serving cert for the /metrics endpoint (required to enable --metrics-addr)

**--metrics-tls-key**="": PEM serving key for the /metrics endpoint

**--policy-snapshot**="": path to a published hierarchical governance policy snapshot (platform/org/group/agent); supersedes --allow-dest

**--svid-dir**="": node-local directory of per-agent SVIDs the enclave mints (bd_2_0-bwc); the gateway reads held credentials from here for the assert-identity tunnel and the LLM force-route

**--tcp-listen**="": local address for the transparent TCP datapath (the VM driver's nftables TPROXY target; mission bd_2_0-cwnz M4): agent VM egress redirected here is mediated like the Envoy path - MITM, policy, audit - with the original destination preserved. Requires CAP_NET_ADMIN

**--udp-listen**="": local address for the transparent UDP/QUIC datapath (TPROXY target); enables HTTP-3 termination. Requires --ca-cert/--ca-key

**--upstream-ca**="": PEM CA bundle to validate upstream server certs on re-origination (default: system roots); for private/test upstream CAs

**--vm-attribution-file**="": path to the VM driver's file-backed registry (mappings.json): mediation attribution joins the connection's source IP to the agent from the driver's VM→IP records (no Cilium). Mutually exclusive with --k8s-attribution

##### help, h

Shows a list of commands or help for one command

#### broker

Run the enclave broker (central control node; sole controlplane egress; re-serves metadata locally)

**--addr**="": TLS listen address for the component API (default: ":8450")

**--advertise-broker-url**="": the enclave's CLIENT-REACHABLE broker base URL (for an operator on the same network); announced alongside the relay URL (bd_2_0-cal.2)

**--advertise-relay-url**="": the enclave's CLIENT-REACHABLE relay base URL; announced up to the controlplane so operators can discover it (bd_2_0-cal.2). Empty disables announcing

**--assert-identity-dests**="": JSON array of structured in-cluster assert-identity destinations [{host,namespace,selector,port}] (bd_2_0-2ye); the broker authors the per-agent egress-redirect + gateway egress CiliumNetworkPolicies that make each reachable. Same value as the gateway's.

**--audit-capture-or-deny**: fail-closed durability for the AUTHORITY audit tier (bd_2_0-4p8.3, docs/audit-evidence-tiers.md): enclave grant authoring + denied authoring attempts are durably spooled to the WAL BEFORE the gated effect (the grant commits, the denial is returned), and the effect is REFUSED if that cannot happen within --audit-capture-timeout. ON by default; set false for best-effort recording (rungs 1+2, never refuses)

**--audit-capture-timeout**="": how long an authority-gated path blocks for the audit WAL to accept the record before refusing the effect (capture-or-deny, bd_2_0-4p8.3) (default: 5s)

**--audit-dsn**="": clickhouse-go DSN for the enclave audit store (bd_2_0-8kl.11); when set, the broker routes its own audit there AND serves the org-scoped audit query API on the operator listener. Empty leaves audit on stdout + the query API unmounted

**--audit-wal-dir**="": on-disk WAL dir for the audit store (bd_2_0-8kl.10): durable across a ClickHouse outage/restart, replays on start. REQUIRED with --audit-dsn (fail-closed durability, bd_2_0-8kl.15)

**--audit-wal-max-bytes**="": per-table on-disk WAL spool ceiling in BYTES (bd_2_0-8kl.16, durability rung 2): the durable buffer absorbing a ClickHouse outage. Size to a realistic outage window and BELOW the WAL disk capacity; past it audit drops (bounded, counted, alertable) rather than filling disk. 0 => the reviewed per-component default (internal/config, bd_2_0-4p8.1; see docs/runbooks/audit-durability.md) (default: 0)

**--ca-cert**="": PEM CA bundle to trust for the controlplane TLS cert

**--client-service**="": an enclave service to issue a local client identity for (repeatable), e.g. dvx-imds, dvx-gateway

**--controlplane**="": controlplane operator-API base URL to pull metadata from (the enclave's sole CP egress)

**--database-dsn**="": PostgreSQL DSN; empty runs in skeleton mode (no DB)

**--dev-agent-specs**="": Phase-1 dev seam: a JSON array of desired agents the reconcile engine provisions, bypassing the AUTHENTICATED controlplane agents channel (dev only; requires --dev-mode)

**--dev-mode**: acknowledge this is a DEV broker: permit dev-only seams (currently --dev-agent-specs) that bypass a production control. Never set in production (bd_2_0-ib4.2)

**--enclave-id**="": identifier for this enclave (sovereignty boundary)

**--enclave-name**="": friendly UNIQUE enclave name for display + audit alongside --enclave-id (bd_2_0-49z.2); never an addressing coordinate

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification for the pull (dev only)

**--issuer**="": OIDC issuer URL (Zitadel) the broker mints its pull bearer against; required with --zitadel-key

**--issuer-state-dir**="": deliver local-issuer material as FILES under this dir instead of Kubernetes Secrets (host-process enclave shape); requires --local-issuer

**--kms-config**="": opaque KMS provider config JSON/DSN passed verbatim to the provider

**--kms-provider**="": enclave at-rest KMS backend for the sovereign-secret store (e.g. vault); empty disables the store + secret API (bd_2_0-dy6)

**--local-issuer**: act as the enclave's local mTLS issuer: mint per-service client identities + require a client cert on the local channel (bd_2_0-aoq.5)

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--metrics-addr**="": listen address for the dedicated TLS /metrics endpoint (Prometheus); empty disables it. Reuses --tls-cert/--tls-key; lock to the scraper with a network policy (bd_2_0-pmy)

**--namespace**="": namespace the broker writes its CA + per-service client Secrets to; empty resolves the pod's ServiceAccount namespace

**--operator-addr**="": TLS listen address for the operator secret-authoring API, separate from the mTLS satellite channel (bearer auth); empty leaves it unmounted (bd_2_0-dy6)

**--operator-audience**="": expected audience of operator tokens on the secret API (OIDC aud)

**--operator-org-claim**="": token claim the operator's org scope is read from (default urn:dvx:org)

**--operator-require-client-cert**: require a broker-minted client cert (mTLS) on the operator listener so it is reachable ONLY through the enclave relay (bd_2_0-ib4.1); requires --local-issuer

**--owning-org**="": the enclave's owning-org coordinate; with --seed-admin, the broker seeds an initial org-admin enclave grant at provisioning time (bd_2_0-bs1.3)

**--placement-driver**="": this enclave's placement driver (mission bd_2_0-cwnz): empty/k8s = in-cluster CRD registry; vm = local micro-VM driver (file registry, --vm-*)

**--platform-image**="": dvx image the kata imds-shim sidecar runs when provisioning kata-grade (node-cvm-class) agents (default localhost/dvx:dev)

**--pull-interval**="": fallback re-pull cadence between SSE nudges (0 uses the default) (default: 0s)

**--registry-namespace**="": control namespace the broker writes AgentMapping CRs to; empty resolves the pod's ServiceAccount namespace

**--seed-admin**="": initial org-admin principal for the enclave's OWN ACL store, e.g. user:<sub> or group:<org>:<grp>; idempotently seeded at broker start with --owning-org (bd_2_0-bs1.3). Empty leaves no initial admin (fail-closed)

**--server-dns**="": a DNS SAN for the broker's minted serving cert (repeatable), e.g. its svc DNS name

**--sshd-image**="": Debian-based dvx image the in-Kata sshd sidecar runs (bd_2_0-0f7.3) (default localhost/dvx-sshd:dev)

**--tls-cert**="": path to the TLS certificate (PEM)

**--tls-key**="": path to the TLS private key (PEM)

**--vm-bridge**="": the persistent host bridge the agent taps enslave to (default dvx-br0). With --vm-net

**--vm-dns-tproxy-addr**="": the gateway's transparent DNS listener agent DNS is steered to (default 127.0.0.1:9453; must match the gateway's --dns-listen). With --vm-net

**--vm-gateway-ca-pub**="": gateway MITM CA public cert (PEM), injected into every agent rootfs trust store so MITM'd egress verifies with zero payload-side configuration

**--vm-helper-bin**="": dvx binary the root helper is invoked as (default: this broker's own executable)

**--vm-instance-id**="": this host's placement id (the local analog of the K8s node name); defaults to the hostname. With --placement-driver=vm

**--vm-kernel**="": the guest kernel bzImage (kata 6.18) for direct kernel boot. With --placement-driver=vm

**--vm-net**: enable the mediated egress datapath (persistent bridge + per-agent taps + nftables TPROXY steering into the gateway's transparent listener). Off = identity-only shape (agents get no network device)

**--vm-podman-bin**="": podman binary the rootfs pipeline uses (default: podman on PATH). With --placement-driver=vm

**--vm-state-dir**="": the VM driver's local state dir (registry/, images/, agents/, vms/); MUST be on ext4, never /tmp. With --placement-driver=vm

**--vm-subnet**="": the agent network (the bridge owns its first host as gateway/DNS). Default 172.16.60.0/24. With --vm-net

**--vm-tproxy-addr**="": the gateway's transparent TCP listener the TPROXY rules steer agent egress to (default 127.0.0.1:9443; must match the gateway's --tcp-listen). With --vm-net

**--vm-vmm-bin**="": the cloud-hypervisor binary path (static v51.1+). With --placement-driver=vm

**--zitadel-key**="": path to the enclave's Zitadel service-account key JSON (its broker identity); mints the CP pull bearer

##### help, h

Shows a list of commands or help for one command

#### relay

Run the enclave edge relay (fronts the private broker's operator API; broker stays dial-out-only)

**--addr**="": TLS listen address for the component API (default: ":8452")

**--broker-ca**="": PEM CA to verify the broker's serving cert on the proxied hop (the broker-published local CA, dvx-broker-ca)

**--broker-client-cert**="": PEM client cert (the broker-minted dvx-relay-broker-client identity) presented on the mTLS hop to the broker

**--broker-client-key**="": PEM client key for --broker-client-cert

**--broker-url**="": base URL of the private broker's operator listener to proxy allow-listed routes to (e.g. https://dvx-broker.dvx-enclave.svc.cluster.local:8451)

**--database-dsn**="": PostgreSQL DSN; empty runs in skeleton mode (no DB)

**--enclave-id**="": identifier for this enclave (sovereignty boundary; health + audit attribution)

**--enclave-name**="": friendly UNIQUE enclave name for display + audit alongside --enclave-id (bd_2_0-49z.2); never an addressing coordinate

**--help, -h**: show help

**--issuer**="": OIDC issuer URL (Zitadel) the relay validates operator tokens against at the edge; required (fail-closed)

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--metrics-addr**="": listen address for the dedicated TLS /metrics endpoint (Prometheus); empty disables it. Reuses --tls-cert/--tls-key; lock to the scraper with a network policy (bd_2_0-pmy)

**--operator-audience**="": expected audience of operator tokens (OIDC aud); empty accepts any token from the issuer (dev)

**--operator-org-claim**="": token claim the operator's org scope is read from (default urn:dvx:org)

**--rendezvous**: mount the mode-neutral operator<->agent rendezvous WSS surface (bd_2_0-0f7); hosts pairing for every interactive-access mode (tunnel, SSH, exec); off by default (operational kill-switch, not the per-scope capability)

**--rendezvous-idle-timeout**="": tear a rendezvous session down after this long with no frame in either direction (default: 0s)

**--rendezvous-join-timeout**="": how long the first rendezvous peer waits for its partner before the half-open session is torn down (default: 0s)

**--rendezvous-max-lifetime**="": absolute cap on a rendezvous session regardless of activity (the transport-level leash) (default: 0s)

**--rendezvous-ticket-pubkey**="": PEM file with the controlplane's rendezvous ECDSA public key; when set the relay requires a valid CP-minted ticket on every peer (production)

**--tls-cert**="": path to the TLS certificate (PEM)

**--tls-key**="": path to the TLS private key (PEM)

##### help, h

Shows a list of commands or help for one command

#### llmproxy

Run the enclave LLM inference gateway satellite (verifies force-routed agent SVIDs; forwards inference to upstreams)

**--addr**="": TLS listen address for the component API (default: ":8480")

**--agent-ca**="": PEM agent-identity trust bundle a presented SVID must chain to (hot-reloaded; fail-closed)

**--allow-unattested-host**: opt out of the default fail-closed posture: permit a force-routed call lacking the gateway's PROXY-v2 SNI preamble to fall back to the agent Host header (bd_2_0-1c0). Default off (strict) — leave off on gateway-fronted deployments

**--audit-capture-or-deny**: fail-closed durability for the sovereign received body (bd_2_0-8kl.19): spool the request record to the WAL before forwarding and DENY the inference if it cannot be durably captured within --audit-capture-timeout, rather than silently lose it. ON by default; set false for best-effort recording (rungs 1+2, never denies)

**--audit-capture-timeout**="": how long the request path blocks for the audit WAL to accept the sovereign record before denying (capture-or-deny, bd_2_0-8kl.19) (default: 5s)

**--audit-dsn**="": clickhouse-go DSN enabling the inference-audit producer (epic bd_2_0-8kl.6): one encrypted inference_request per forwarded call. Empty leaves it off

**--audit-header-hmac-salt-file**="": file holding the enclave-held salt that keyed-hashes SECRET header values in the audit capture (bd_2_0-xs0.2): lets an operator detect a credential repeating/rotating without disclosing it. Optional - empty still captures+seals+redacts headers, just omits the hash

**--audit-wal-dir**="": on-disk WAL dir for the audit store (bd_2_0-8kl.10): durable across a ClickHouse outage/restart. REQUIRED with --audit-dsn (fail-closed durability, bd_2_0-8kl.15)

**--audit-wal-max-bytes**="": per-table on-disk WAL spool ceiling in BYTES (bd_2_0-8kl.16, durability rung 2): the durable buffer absorbing a ClickHouse outage. Size to a realistic outage window and BELOW the WAL disk capacity; past it audit drops (bounded, counted, alertable) rather than filling disk. 0 => the reviewed per-component default (internal/config, bd_2_0-4p8.1; see docs/runbooks/audit-durability.md) (default: 0)

**--database-dsn**="": PostgreSQL DSN; empty runs in skeleton mode (no DB)

**--enclave-id**="": identifier for this enclave (sovereignty boundary; audit attribution)

**--enclave-name**="": friendly UNIQUE enclave name for display + audit alongside --enclave-id (bd_2_0-49z.2); never an addressing coordinate

**--escalation-timeout**="": how long a held (escalated) response waits for a decision before the fail-closed deny reaches the agent (default 5m) (default: 0s)

**--help, -h**: show help

**--inspection-disclosure**="": what the AGENT sees when the response-inspection pipeline rejects/denies/times out: "detailed" (default) names the reason, "opaque" sends a generic problem. Operators and the audit always see the detail

**--kms-config**="": opaque provider config JSON for --kms-provider (e.g. {"address":"http://vault:8200","token_path":"/etc/dvx/kms/token"})

**--kms-provider**="": enclave KMS backend (e.g. vault) used to SEAL inference bodies per-org before storage; REQUIRED with --audit-dsn (no plaintext bodies, bd_2_0-8kl.6.2)

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--metrics-addr**="": listen address for the dedicated TLS /metrics endpoint (Prometheus); empty disables it. Reuses --tls-cert/--tls-key; lock to the scraper with a network policy (bd_2_0-pmy)

**--min-tier**="": minimum attested assurance tier an agent must present (e.g. node-cvm); empty admits any verified SVID

**--policy-snapshot**="": path to a published governance policy snapshot; resolves per-agent->org credential_mode + upstream override + model allow/blocklist (bd_2_0-b06.3/.4/.6). Empty leaves the satellite ungoverned (passthrough + provider defaults, no model gating)

**--secret-broker-ca**="": PEM CA to verify the broker's serving cert on the secret/policy pull hop

**--secret-broker-client-cert**="": PEM client cert (the broker-issued llmproxy identity) presented on the mTLS pull hop

**--secret-broker-client-key**="": PEM client key for --secret-broker-client-cert

**--secret-broker-url**="": broker mTLS base URL to pull the sovereign llm.api_key from in inject mode (bd_2_0-b06.4); empty leaves inject unavailable (fail-closed)

**--tls-cert**="": path to the TLS certificate (PEM)

**--tls-key**="": path to the TLS private key (PEM)

**--translate**: enable cross-format translation: a request whose client wire format (anthropic-messages / openai-chat / openai-responses) differs from the resolved upstream's expected format is translated via internal/translation, and the response/stream/error translated back into the client's format. Same-format traffic stays byte-transparent; off (default) forwards every call byte-unchanged

**--translate-upstream-format**="": with --translate, force the EXPECTED wire format of the upstreams (e.g. openai-responses for a Responses-API upstream); empty derives each provider's expected format from the llmreg registry

**--upstream-ca**="": PEM CA bundle validating the provider's serving cert on the direct egress hop (default: system roots)

**--upstream-default**="": catch-all upstream base URL (absolute https) for requests whose provider is not path-resolvable; empty fails closed on an unresolvable upstream

##### help, h

Shows a list of commands or help for one command

#### forensics

Run the forensic-capture node daemon (enclave satellite; snapshots a contained agent's Kata VM state for evidence)

**--enclave-id**="": identifier for this enclave (sovereignty boundary); agent namespaces are parsed with the broker's naming.AgentNamespace rule (<12-hex prefix>-<uid>)

**--help, -h**: show help

**--log-format**="": log format (json|text) (default: "json")

**--log-level**="": log level (debug|info|warn|error) (default: "info")

**--poll-interval**="": how often to re-check the cluster's containment policies (default: 30s)

**--proc-dir**="": the /proc filesystem to scan for the VMM's RAM fds (the DaemonSet mounts the HOST /proc at /host/proc) (default: "/proc")

**--run-dir**="": this enclave's node run dir (/run/dvx/<prefix> subtree); snapshots land under forensics/ (default: "/run/dvx")

**--vc-dir**="": the node's kata runtime dir (/run/vc): per-sandbox persist.json + CLH control sockets (default: "/run/vc")

##### help, h

Shows a list of commands or help for one command

#### companion

Run the keyless in-Kata tunnel pipe (splice host->guest connections to the agent's localhost)

**--help, -h**: show help

**--pipe-port**="": AF_VSOCK port to accept host->guest tunnel connections on (default: 1401)

##### help, h

Shows a list of commands or help for one command

#### sshd

Run the in-guest stock-OpenSSH supervisor for operator SSH into the agent

**--agent-id**="": the agent this sshd fronts (binds certs by principal)

**--ca-pubkey**="": per-enclave SSH CA public key file (TrustedUserCAKeys), delivered by the controlplane (default: "/etc/dvx/ssh-ca/ca.pub")

**--exec-port**="": localhost port for the interactive PTY/exec host (bd_2_0-0f7.2); 0 uses the default (default: 2223)

**--help, -h**: show help

**--login-user**="": unprivileged account operators authenticate as (holds NOPASSWD sudo for nsenter) (default: "dvx")

**--port**="": localhost port to bind sshd on (default: 2222)

##### help, h

Shows a list of commands or help for one command

#### terminator

Run the trusted node-local tunnel terminator (terminate WireGuard on the host; forward into the agent guest over vsock)

**--agent-namespace**="": target agent's pod namespace; the guest sandbox is resolved under --vc-dir (preferred over --guest-vsock)

**--allow-port**="": restrict to these agent localhost ports (repeatable); omit to allow all

**--guest-vsock**="": override: target guest's hybrid-vsock socket (e.g. /run/vc/vm/<sandbox>/clh.sock)

**--help, -h**: show help

**--operator-pubkey**="": pin the operator WireGuard public key (base64); omit to learn it over the rendezvous preamble

**--pipe-port**="": AF_VSOCK pipe port the in-guest companion listens on (default: 1401)

**--private-key**="": pin the terminator's WireGuard private key (base64); omit to mint an ephemeral one and exchange keys over the rendezvous preamble

**--relay-ca**="": PEM CA file to trust for the relay's serving cert on the dial-out; empty uses the system trust store (bd_2_0-kzb.3)

**--relay-insecure**: skip TLS verification of the relay's serving cert (DEV ONLY; overrides --relay-ca)

**--relay-url**="": relay base URL (wss://...)

**--session**="": rendezvous session id

**--ticket**="": enclave-role pairing ticket (empty in dev)

**--tunnel-ip**="": terminator's tunnel IP (the operator dials this on any port) (default: "10.44.0.2")

**--vc-dir**="": kata runtime state dir for sandbox resolution (default: "/run/vc")

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### net-helper

Root helper: manage the VM driver's bridge/tap/nft datapath (run via `sudo -n dvx net-helper ...`; the only privileged dvx surface)

**--help, -h**: show help

#### ensure-bridge

ensure-bridge <bridge> <cidr> — create + bring up the persistent bridge with its gateway address

**--help, -h**: show help

##### help, h

Shows a list of commands or help for one command

#### ensure-tap

ensure-tap <bridge> <tap> — create a per-agent tap and enslave it to the bridge

**--help, -h**: show help

##### help, h

Shows a list of commands or help for one command

#### remove-tap

remove-tap <tap> — delete a per-agent tap

**--help, -h**: show help

##### help, h

Shows a list of commands or help for one command

#### ensure-nft

ensure-nft <bridge> <tcp-tproxy> <dns-tproxy> — install the TPROXY steering rules (tcp -> gateway listener, udp/53 -> gateway DNS forwarder)

**--help, -h**: show help

##### help, h

Shows a list of commands or help for one command

#### remove-nft

remove-nft — remove the dvx nftables table + policy-routing entries

**--help, -h**: show help

##### help, h

Shows a list of commands or help for one command

#### teardown

teardown <bridge> <tcp-tproxy> <dns-tproxy> — remove the whole datapath (nft + taps + bridge); zero residue

**--help, -h**: show help

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### agent

Create and manage agents via the controlplane operator API (the operator never touches K8s)

**--help, -h**: show help

#### create

Create (or replace) a desired agent; the enclave broker provisions it

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--command**="": container entrypoint override token (repeatable; optional)

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--enclave**="": enclave id to place the agent in

**--group**="": governance group id (optional; must belong to --org)

**--help, -h**: show help

**--image**="": agent container image (BYO)

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": human-facing agent name; defaults to the (generated) uid

**--org**="": org id the agent belongs to

**--policy-pack**="": policy pack (shared catalog) to install at this agent's scope in the same create call (repeatable; requires policy:write at the org)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--uid**="": stable unique agent id (names its namespace + IMDS socket); omit to auto-generate a memorable one (e.g. nostalgic-otter)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### list

List an org's desired agents

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### get

Show one desired agent

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--uid**="": agent id

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### delete

Withdraw a desired agent; the enclave broker tears it down

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--uid**="": agent id

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### contain

Contain an agent: freeze it IN PLACE (deny all egress + LLM inference, revoke agent-operator authority); the VM keeps running so evidence is preserved

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--uid**="": agent id

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### release

Release a contained agent: restore its prior policy surface and agent-operator authority

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--uid**="": agent id

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### grant

Create and manage grants (role/capability bindings) via the controlplane operator API

**--help, -h**: show help

#### create

Bind a principal to a role or capability in an org (homes a user principal to the org's dvx:org claim)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--capability**="": direct capability to grant (mutually exclusive with --role)

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": optional: narrow the grant to one group within the org

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id the grant is scoped to

**--principal**="": principal to bind, e.g. user:<zitadel-sub> or group:<org>:<group>

**--role**="": role to assign, e.g. admin | member (mutually exclusive with --capability)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### list

List an org's grants

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### delete

Revoke a grant by id

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--id**="": grant id

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id the grant is scoped to

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### policy

Author governance policy via the controlplane operator API

**--help, -h**: show help

#### destination

Set destination allow/deny policy at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--allow**="": allowed destination host suffix (repeatable)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--deny**="": denied destination host suffix (repeatable)

**--deny-reason**="": reason recorded on --deny rules (surfaced in audit)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### llm

Author LLM governance policy (credential mode, model + provider allow/blocklist, upstream override)

**--help, -h**: show help

##### credential-mode

Set upstream-auth mode: passthrough (agent's own auth) or inject (sovereign key)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--mode**="": passthrough|inject

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### models

Set the model allow/blocklist (ratchet: deny unions, each allow is an independent gate)

**--agent**="": agent id (requires --org; cannot be locked)

**--allow**="": allowed model name/glob (repeatable)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--deny**="": denied model name/glob (repeatable)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### upstream

Force a provider's upstream base URL (repeatable --set provider=https://...)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--set**="": provider=https://base-url (repeatable)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### providers

Restrict which known providers a scope may reach (ratchet: deny unions, each allow is a gate)

**--agent**="": agent id (requires --org; cannot be locked)

**--allow**="": allowed provider name/glob, e.g. hetzner (repeatable)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--deny**="": denied provider name/glob (repeatable)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### inspection

Set the response-inspection policy (inspectors + rules the enclave llmproxy pipeline runs)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--file**="": path to the inspection policy JSON (LLMInspectionPolicy: inspectors + rules); '-' reads stdin

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### tunnel

Enable or disable interactive agent access (tunnel/SSH/PTY) at a scope

**--help, -h**: show help

##### enable

Enable interactive access at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### disable

Disable interactive access at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### tunnel-ports

Set the interactive-access (tunnel) port allow-list at a scope

**--help, -h**: show help

##### set

Set the allowed agent-localhost ports at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--clear**: author an empty list (deny all ports) instead of an allow-list

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--port**="": an allowed agent-localhost port (repeatable)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### ssh

Enable or disable operator SSH access into an agent (filesystem + exec) at a scope

**--help, -h**: show help

##### enable

Enable operator SSH access at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### disable

Disable operator SSH access at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### exec

Enable or disable operator PTY/exec access into an agent (kube-exec over WSS) at a scope

**--help, -h**: show help

##### enable

Enable operator exec access at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### disable

Disable operator exec access at a scope (platform/org/group/agent)

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### pack

Define and install reusable policy packs (bd_2_0-apa.8)

**--help, -h**: show help

##### define

Define (upsert) a named pack in the shared catalog

**--allow**="": allowed destination host suffix (repeatable)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--deny**="": denied destination host suffix (repeatable)

**--deny-reason**="": reason recorded on --deny rules

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": pack name

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### install

Install a defined pack at an org/group/agent scope

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": pack name

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### uninstall

Remove a pack install at an org/group/agent scope

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": pack name

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### policy-pull

Actively pull this enclave's governance snapshot from the controlplane (sidecar)

**--ca-cert**="": PEM CA bundle to trust for the controlplane TLS cert

**--client-cert**="": PEM client certificate to present for mutual TLS (when the source requires it, e.g. the broker)

**--client-key**="": PEM client private key for --client-cert

**--controlplane**="": controlplane operator-API base URL (e.g. https://dvx-controlplane:8443)

**--enclave-id**="": this enclave's id (the snapshot is scoped to it)

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification (dev only)

**--interval**="": pull period (default: 30s)

**--issuer**="": OIDC issuer URL (Zitadel) for key-based auth; required with --zitadel-key

**--no-events**: disable the SSE nudge stream; poll on --interval only

**--snapshot**="": local path to write the snapshot to (a writable volume the gateway reads)

**--token-file**="": file holding a static bearer token (used only when --zitadel-key is unset)

**--zitadel-key**="": path to this enclave's Zitadel service-account key JSON; the puller mints its own bearer (key-based auth, preferred)

#### help, h

Shows a list of commands or help for one command

### config

Author agent config values via the controlplane operator API

**--help, -h**: show help

#### set

Set a config value at a scope: dvx config set <key> --value <json>

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--lock**: lock so more-specific scopes cannot override (refused at agent scope)

**--org**="": org id (omit for platform scope)

**--secret**: declare a SOVEREIGN secret (bd_2_0-7ha.2): no bytes cross the controlplane; inject them enclave-side with `dvx secret set`

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--value**="": the config value; raw JSON, or a bare string (auto-quoted). Omit with --secret

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### delete

Delete a config value at a scope: dvx config delete <key>

**--agent**="": agent id (requires --org; cannot be locked)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--group**="": group id (requires --org)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id (omit for platform scope)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### config-pull

Actively pull this enclave's config-value snapshot from the controlplane/broker (sidecar)

**--ca-cert**="": PEM CA bundle to trust for the controlplane TLS cert

**--client-cert**="": PEM client certificate to present for mutual TLS (when the source requires it, e.g. the broker)

**--client-key**="": PEM client private key for --client-cert

**--controlplane**="": controlplane/broker operator-API base URL to pull the config snapshot from

**--enclave-id**="": this enclave's id (the snapshot is scoped to it)

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification (dev only)

**--interval**="": pull period (default: 30s)

**--issuer**="": OIDC issuer URL (Zitadel) for key-based auth; required with --zitadel-key

**--no-events**: disable the SSE nudge stream; poll on --interval only

**--snapshot**="": local path to write the config snapshot to (a writable volume the IMDS reads)

**--token-file**="": file holding a static bearer token (used only when --zitadel-key is unset)

**--zitadel-key**="": path to this enclave's Zitadel service-account key JSON; the puller mints its own bearer (key-based auth, preferred)

#### help, h

Shows a list of commands or help for one command

### secret

Author sovereign secret bytes via the broker API (bd_2_0-dy6)

**--help, -h**: show help

#### set

Set a secret's bytes: dvx secret set <name> --value <bytes>

**--agent**="": agent id (agent-scoped secret; mutually exclusive with --group)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (the authenticated secret-authoring endpoint)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--group**="": group id (group-scoped secret shared by the group's agents; mutually exclusive with --agent)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--value**="": the secret bytes (a string)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### delete

Delete a secret: dvx secret delete <name>

**--agent**="": agent id (agent-scoped secret; mutually exclusive with --group)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (the authenticated secret-authoring endpoint)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--group**="": group id (group-scoped secret shared by the group's agents; mutually exclusive with --agent)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### approvals

List and decide pending tool-call approvals (human-in-the-loop)

**--help, -h**: show help

#### list

List pending and recently resolved approvals

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (directly at :8451, or through the relay at :8452)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### get

Show one approval by id

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (directly at :8451, or through the relay at :8452)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### approve

Approve a pending approval (the held response reaches the agent)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (directly at :8451, or through the relay at :8452)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### deny

Deny a pending approval (the agent gets an error)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (directly at :8451, or through the relay at :8452)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### stream

Live-tail approvals (SSE) until interrupted

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--broker-url**="": broker operator-API base URL (directly at :8451, or through the relay at :8452)

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### tunnel

Reach a running agent's localhost services over WireGuard (SOCKS5 by default, or a single forwarded port)

**--agent**="": agent id (uid) to tunnel to

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--local**="": single-port mode: local listen address (host:port) (default: "127.0.0.1:8080")

**--local-tunnel-ip**="": this end's tunnel IP (default: "10.44.0.1")

**--org**="": org id the agent belongs to

**--relay-ca**="": PEM CA file to trust for the relay's serving cert (defaults to --ca-cert); set when the relay is fronted by a private CA

**--relay-insecure**: skip TLS verification of the relay's serving cert (DEV ONLY; defaults to --insecure-skip-verify)

**--remote-port**="": single-port mode: fixed port on the agent's localhost to reach (omit for SOCKS5) (default: 0)

**--socks**="": local SOCKS5 listen address (any agent port routes through it) (default: "127.0.0.1:1080")

**--terminator-pubkey**="": pin the terminator's WireGuard public key (base64); omit to learn it over the rendezvous key-exchange preamble (bd_2_0-kzb.2)

**--terminator-tunnel-ip**="": the terminator's tunnel IP (default: "10.44.0.2")

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

#### help, h

Shows a list of commands or help for one command

### ssh

SSH into a running agent (file transfer + filesystem exploration) with a dvx-brokered cert

**--agent**="": agent id (uid) to SSH into

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--local-port**="": local port to forward to the agent's sshd (0 = auto-pick) (default: 0)

**--local-tunnel-ip**="": this end's tunnel IP (default: "10.44.0.1")

**--login-user**="": login user on the agent sshd sidecar (default: "dvx")

**--org**="": org id the agent belongs to

**--relay-ca**="": PEM CA file to trust for the relay's serving cert (defaults to --ca-cert)

**--relay-insecure**: skip TLS verification of the relay's serving cert (DEV ONLY; defaults to --insecure-skip-verify)

**--serve**: keep the tunnel + ssh-agent up and print a ~/.ssh/config stanza (for VS Code Remote-SSH / sshfs / sftp), instead of opening an interactive session

**--terminator-pubkey**="": pin the terminator's WireGuard public key (base64); omit to learn it over the rendezvous preamble

**--terminator-tunnel-ip**="": the terminator's tunnel IP (default: "10.44.0.2")

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

#### help, h

Shows a list of commands or help for one command

### exec

Open an interactive PTY/exec into a running agent (kube-exec -it style)

**--agent**="": agent id (uid) to exec into

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--org**="": org id the agent belongs to

**--relay-ca**="": PEM CA file to trust for the relay's serving cert (defaults to --ca-cert)

**--relay-insecure**: skip TLS verification of the relay's serving cert (DEV ONLY; defaults to --insecure-skip-verify)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--tty, -t**: allocate a pseudo-terminal (default true for an interactive shell)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

#### help, h

Shows a list of commands or help for one command

### rendezvous-sessions-pull

Actively pull this enclave's pending tunnel sessions from the controlplane/broker (sidecar)

**--ca-cert**="": PEM CA bundle to trust for the controlplane TLS cert

**--client-cert**="": PEM client certificate to present for mutual TLS (when the source requires it, e.g. the broker)

**--client-key**="": PEM client private key for --client-cert

**--controlplane**="": controlplane/broker operator-API base URL to pull the tunnel-session snapshot from

**--enclave-id**="": this enclave's id (the snapshot is scoped to it)

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification (dev only)

**--interval**="": pull period (default: 10s)

**--issuer**="": OIDC issuer URL (Zitadel) for key-based auth; required with --zitadel-key

**--no-events**: disable the SSE nudge stream; poll on --interval only

**--snapshot**="": local path to write the tunnel-session snapshot to (a writable volume the imds terminator reads)

**--token-file**="": file holding a static bearer token (used only when --zitadel-key is unset)

**--zitadel-key**="": path to this enclave's Zitadel service-account key JSON; the puller mints its own bearer (key-based auth, preferred)

#### help, h

Shows a list of commands or help for one command

### refvalues-pull

Actively pull this enclave's attestation reference values from the controlplane (sidecar)

**--ca-cert**="": PEM CA bundle to trust for the controlplane TLS cert

**--client-cert**="": PEM client certificate to present for mutual TLS (when the source requires it, e.g. the broker)

**--client-key**="": PEM client private key for --client-cert

**--controlplane**="": controlplane operator-API base URL (e.g. https://dvx-controlplane:8443)

**--enclave-id**="": this enclave's id (used to authenticate the pull)

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification (dev only)

**--interval**="": pull period (default: 30s)

**--issuer**="": OIDC issuer URL (Zitadel) for key-based auth; required with --zitadel-key

**--no-events**: disable the SSE nudge stream; poll on --interval only

**--out**="": local path to write the reference values to (a writable volume the enclave reads)

**--token-file**="": file holding a static bearer token (used only when --zitadel-key is unset)

**--zitadel-key**="": path to this enclave's Zitadel service-account key JSON; the puller mints its own bearer (key-based auth, preferred)

#### help, h

Shows a list of commands or help for one command

### wait-file

Block until a file exists and is non-empty (for init-container gating)

**--help, -h**: show help

**--path**="": file to wait for

**--poll**="": poll period (default: 2s)

**--timeout**="": give up after this long (default: 10m0s)

#### help, h

Shows a list of commands or help for one command

### enclaves

Manage the controlplane enclave registry via the operator API (discover, register, delete)

**--help, -h**: show help

#### list

List the enclaves serving your org and how to reach them (relay + broker URLs)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### refresh

Refresh the local enclave profile cache (~/.config/dvx/profile.json) from the controlplane

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### register-broker

Register an enclave by minting its broker identity+key via the operator API (bd_2_0-aoq.2)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--enclave-id**="": explicit canonical enclave id override; empty mints a random one

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": friendly, UNIQUE enclave name operators address it by (e.g. daevix-dev)

**--out**="": file to write the minted broker key JSON (0600); required

**--owning-org**="": owning org id (required: one enclave, one org)

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### delete

Delete an enclave from the registry (via the operator API)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--enclave-id**="": canonical enclave id; or use --name

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": enclave friendly name (resolved to its id); or use --enclave-id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### set-class

Author an enclave's requested isolation class (mission bd_2_0-cwnz.6, VAL-ISO-002)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--class**="": the requested isolation class (plain|vm|node-cvm|per-agent-tee)

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--enclave-id**="": canonical enclave id; or use --name

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": enclave friendly name (resolved to its id); or use --enclave-id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### get-class

Read an enclave's requested isolation class (mission bd_2_0-cwnz.6)

**--audience**="": project id to request as an additional token audience (bd_2_0-8kl.11); the target API pins DVX_OIDC_AUDIENCE to it

**--ca-cert**="": PEM CA bundle to trust for the operator-API TLS cert

**--controlplane**="": controlplane operator-API base URL (authoring goes through the authenticated API, which publishes + nudges enclaves)

**--enclave-id**="": canonical enclave id; or use --name

**--help, -h**: show help

**--insecure-skip-verify**: skip operator-API TLS verification (dev only)

**--issuer**="": OIDC issuer URL (required with --zitadel-key)

**--name**="": enclave friendly name (resolved to its id); or use --enclave-id

**--token-file**="": static bearer token file (alternative to --zitadel-key)

**--zitadel-key**="": service-account key JSON for API auth (mints its own token)

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### internal

In-boundary admin/break-glass tools that bypass the operator API (direct DB writes; Zitadel service-account admin)

**--help, -h**: show help

#### bootstrap

Seed the platform org, platform-ops org, and first platform-operator grant into the controlplane DB (in-boundary)

**--database-dsn**="": controlplane database DSN

**--help, -h**: show help

**--ops-org**="": platform-ops org coordinate id to seed (a normal, data-bearing org) (default: "platform-ops")

**--ops-org-name**="": display name for the platform-ops org (default: "Platform Ops")

**--org**="": platform org coordinate id to seed (default: "platform")

**--org-name**="": display name for the platform org (default: "Platform")

**--subject**="": the Zitadel `sub` of the platform operator (becomes the 'user:<sub>' grant principal)

##### help, h

Shows a list of commands or help for one command

#### register

Register or update an enclave directly in the DB (bootstrap seam; names its single owning org, bd_2_0-j9r)

**--database-dsn**="": controlplane database DSN

**--enclave-id**="": explicit canonical enclave id override; empty mints a random one (bootstrap/tests)

**--help, -h**: show help

**--name**="": friendly, UNIQUE enclave name operators address it by (e.g. daevix-dev)

**--owning-org**="": owning org id (required: one enclave, one org)

**--subject**="": service-account subject bound to this enclave (its metadata pull identity); empty keeps any existing binding

##### help, h

Shows a list of commands or help for one command

#### serviceaccount

Diagnostics for the controlplane's Zitadel service account

**--help, -h**: show help

##### check

Mint a service-account token and (optionally) provision + call the operator API

**--api-base**="": override the management API base (default: issuer)

**--controlplane**="": if set, GET <url>/api/v1/whoami as the service principal

**--create-org**="": if set, create a Zitadel Organization with this name and print its id

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification (dev only)

**--issuer**="": Zitadel issuer URL

**--key**="": path to the Zitadel service-account key JSON

**--operator-create-org**="": if set (with --controlplane), POST an org create to the operator API as the service principal (needs platform:orgs + drives the provisioner)

**--print-token**: print the minted Zitadel id_token (dev only; for scripting authenticated calls)

**--scope**="": override the token request scope (e.g. to request an extra project audience)

**--token-endpoint**="": override the token endpoint (default: <issuer>/oauth/v2/token)

###### help, h

Shows a list of commands or help for one command

##### ensure-project

Idempotently ensure a Zitadel project exists and print its id (dvx-platform audience, bd_2_0-8kl.11)

**--api-base**="": override the management API base

**--help, -h**: show help

**--issuer**="": Zitadel issuer URL

**--key**="": path to the Zitadel service-account key JSON

**--name**="": project name (default: "dvx-platform")

**--token-endpoint**="": override the token endpoint

###### help, h

Shows a list of commands or help for one command

##### set-metadata

Set a Zitadel user metadata key (management API). Run with a NON-admin key to verify a principal cannot self-write (bd_2_0-8kl.11 guardrail)

**--api-base**="": override the management API base

**--help, -h**: show help

**--issuer**="": Zitadel issuer URL

**--key**="": path to the Zitadel service-account key JSON

**--meta-key**="": metadata key

**--meta-value**="": metadata value

**--token-endpoint**="": override the token endpoint

**--user**="": target user id (defaults to the caller's own sub, for the self-write guardrail test)

###### help, h

Shows a list of commands or help for one command

##### inspect

GET a Zitadel management-API path and print the JSON (discovery for action flow/trigger types)

**--api-base**="": override the management API base

**--help, -h**: show help

**--issuer**="": Zitadel issuer URL

**--key**="": path to the Zitadel service-account key JSON

**--path**="": management API path, e.g. /management/v1/flows/_types

**--token-endpoint**="": override the token endpoint

###### help, h

Shows a list of commands or help for one command

##### ensure-org-claim-action

Install the Zitadel Action that projects dvx:org/dvx:groups/dvx:kind user metadata into the urn:dvx:org, urn:dvx:groups and urn:dvx:actor-kind token claims (bd_2_0-8kl.11, bd_2_0-ugb.2). The controlplane also reconciles this action at boot; this command is for explicit/manual use

**--api-base**="": override the management API base

**--decode**: base64-decode the metadata value in the action (use if the raw claim comes out base64)

**--help, -h**: show help

**--issuer**="": Zitadel issuer URL

**--key**="": path to the Zitadel service-account key JSON

**--token-endpoint**="": override the token endpoint

###### help, h

Shows a list of commands or help for one command

##### provision-operator

Create an org-scoped operator machine user (dvx:org metadata) and output its key JSON (bd_2_0-8kl.11)

**--api-base**="": override the management API base

**--help, -h**: show help

**--issuer**="": Zitadel issuer URL

**--key**="": path to the Zitadel service-account key JSON

**--org**="": the dvx org id to scope this operator to (dvx:org metadata)

**--out**="": write the key JSON here ('-' = stdout) (default: "-")

**--token-endpoint**="": override the token endpoint

**--username**="": machine-user login name

###### help, h

Shows a list of commands or help for one command

##### help, h

Shows a list of commands or help for one command

#### audit-reveal

Decrypt sealed HTTP-capture rows (network_flow bodies/headers) for forensic review (bd_2_0-uwi); in-boundary, KMS-backed

**--agent**="": narrow to one agent id (e.g. droid)

**--audit-dsn**="": clickhouse-go DSN for the enclave audit store

**--headers**: also print the sealed (decrypted) request headers

**--help, -h**: show help

**--kms-config**="": opaque provider config JSON for --kms-provider

**--kms-provider**="": enclave KMS backend (e.g. vault) that sealed the bodies

**--limit**="": max exchanges to reveal (newest first) (default: 10)

**--org**="": narrow to one org id

**--trace-id**="": reveal a single captured exchange by its trace id

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### login

Authenticate the CLI against the OIDC issuer via the device flow

**--help, -h**: show help

**--oidc-audience**="": controlplane API audience to request in the token

**--oidc-client-id**="": public device-flow client id registered in Zitadel

**--oidc-issuer**="": OIDC issuer URL (the self-hosted Zitadel)

#### help, h

Shows a list of commands or help for one command

### logout

Clear the cached CLI credentials

**--help, -h**: show help

#### help, h

Shows a list of commands or help for one command

### whoami

Show the caller's identity + effective capabilities from the controlplane

**--controlplane**="": controlplane base URL (e.g. https://localhost:8443)

**--help, -h**: show help

**--insecure-skip-verify**: skip controlplane TLS verification (dev only)

**--oidc-audience**="": controlplane API audience to request in the token

**--oidc-client-id**="": public device-flow client id registered in Zitadel

**--oidc-issuer**="": OIDC issuer URL (the self-hosted Zitadel)

#### help, h

Shows a list of commands or help for one command

### audit

Query the audit store (enclave sovereign audit or controlplane audit)

**--help, -h**: show help

#### events

Fetch a filtered page of audit events

**--action**="": filter by audit action (e.g. gateway.egress, secret.write)

**--agent**="": filter by agent id

**--ca-cert**="": PEM CA bundle to trust for the audit API TLS cert

**--controlplane**="": controlplane base URL for --source controlplane, and for discovering enclaves when --enclave is not given (e.g. https://localhost:8443)

**--dst-host**="": filter by destination host

**--enclave**="": enclave audit base URL for --source enclave (overrides discovery); point at the relay (:8452) or the broker (:8451) - both serve the same /api/v1/audit/* routes

**--enclave-id**="": select a discovered enclave by its id OR its friendly name (from the profile cache) instead of passing --enclave; requires --controlplane for discovery (bd_2_0-cal.3)

**--help, -h**: show help

**--insecure-skip-verify**: skip audit API TLS verification (dev only)

**--limit**="": max rows to return (<=1000) (default: 100)

**--offset**="": pagination offset (default: 0)

**--oidc-audience**="": token audience to request

**--oidc-client-id**="": public device-flow client id

**--oidc-issuer**="": OIDC issuer URL (for the cached device-flow credential)

**--outcome**="": filter by outcome (allow|deny|error)

**--proto**="": filter by protocol (tcp|udp)

**--scope**="": filter by scope (platform|agent)

**--since**="": only events at/after this RFC3339 time

**--source**="": which plane's audit to query: enclave | controlplane (default: "enclave")

**--token**="": bearer token to present (overrides the cached device-flow credential)

**--until**="": only events at/before this RFC3339 time

##### help, h

Shows a list of commands or help for one command

#### stream

Live-tail audit events (SSE) until interrupted

**--action**="": filter by audit action (e.g. gateway.egress, secret.write)

**--agent**="": filter by agent id

**--ca-cert**="": PEM CA bundle to trust for the audit API TLS cert

**--controlplane**="": controlplane base URL for --source controlplane, and for discovering enclaves when --enclave is not given (e.g. https://localhost:8443)

**--dst-host**="": filter by destination host

**--enclave**="": enclave audit base URL for --source enclave (overrides discovery); point at the relay (:8452) or the broker (:8451) - both serve the same /api/v1/audit/* routes

**--enclave-id**="": select a discovered enclave by its id OR its friendly name (from the profile cache) instead of passing --enclave; requires --controlplane for discovery (bd_2_0-cal.3)

**--help, -h**: show help

**--insecure-skip-verify**: skip audit API TLS verification (dev only)

**--oidc-audience**="": token audience to request

**--oidc-client-id**="": public device-flow client id

**--oidc-issuer**="": OIDC issuer URL (for the cached device-flow credential)

**--outcome**="": filter by outcome (allow|deny|error)

**--proto**="": filter by protocol (tcp|udp)

**--scope**="": filter by scope (platform|agent)

**--since**="": only events at/after this RFC3339 time

**--source**="": which plane's audit to query: enclave | controlplane (default: "enclave")

**--token**="": bearer token to present (overrides the cached device-flow credential)

**--until**="": only events at/before this RFC3339 time

##### help, h

Shows a list of commands or help for one command

#### help, h

Shows a list of commands or help for one command

### imds-shim

In-guest bridge: present the IMDS unix socket inside a Kata VM, proxy to the host over vsock

**--help, -h**: show help

**--host-cid**="": vsock context id of the host (2 = VMADDR_CID_HOST) (default: 2)

**--port**="": vsock port the host relay listens on (default: 1400)

**--socket**="": unix socket to present inside the guest (the path the agent dials) (default: "/run/dvx/imds.sock")

#### help, h

Shows a list of commands or help for one command

### echo-verify

Verifying destination for the agent-identity tunnel (bd_2_0-bwc): mTLS-verify a presented SVID and echo the attested identity

**--addr**="": TLS listen address (default: ":8480")

**--agent-ca**="": agent-identity trust bundle (ca.crt the enclave publishes); a presented SVID must chain to it

**--help, -h**: show help

**--log-format**="": application log format (json|text) (default: "json")

**--log-level**="": application log level (debug|info|warn|error) (default: "info")

**--min-tier**="": minimum attestation tier to accept (none|node-cvm|per-agent-tee); empty accepts any

**--tls-cert**="": the destination's own TLS serving certificate (PEM)

**--tls-key**="": the destination's TLS serving key (PEM)

#### help, h

Shows a list of commands or help for one command

### help, h

Shows a list of commands or help for one command
