Command reference
Every hexel command, its arguments and flags.
On this page
- Global flags
- activity
- hexel activity api
- hexel activity audit count
- hexel activity audit get
- hexel activity audit list
- hexel activity audit verify
- hexel activity logs
- hexel activity requests
- auth
- hexel auth login
- hexel auth logout
- hexel auth token
- hexel auth whoami
- billing
- hexel billing balance
- hexel billing budgets
- hexel billing forecast
- hexel billing invoice get
- hexel billing invoice list
- hexel billing invoice pdf
- hexel billing ledger
- hexel billing plans
- hexel billing subscription
- hexel billing usage
- completion
- hexel completion bash
- hexel completion fish
- hexel completion powershell
- hexel completion zsh
- config
- hexel config set
- hexel config view
- context
- hexel context delete
- hexel context list
- hexel context set
- hexel context show
- hexel context use
- env
- hexel env list
- iam
- hexel iam api-key create
- hexel iam api-key list
- hexel iam api-key revoke
- hexel iam group list
- hexel iam group members
- hexel iam members
- hexel iam policy get
- hexel iam policy list
- hexel iam role get
- hexel iam role list
- hexel iam service-user create
- hexel iam service-user delete
- hexel iam service-user get
- hexel iam service-user list
- hexel iam service-user policy attach
- hexel iam service-user policy detach
- hexel iam service-user policy list
- memory
- hexel memory add
- hexel memory delete
- hexel memory forget
- hexel memory get
- hexel memory history
- hexel memory job
- hexel memory list
- hexel memory recall
- hexel memory store create
- hexel memory store delete
- hexel memory store get
- hexel memory store list
- hexel memory store stats
- org
- hexel org get
- hexel org list
- skills
- hexel skills audit
- hexel skills deprecate
- hexel skills get
- hexel skills list
- hexel skills namespace create
- hexel skills namespace list
- hexel skills publish
- hexel skills remove
- hexel skills resolve
- hexel skills restore
- hexel skills scan
- hexel skills search
- hexel skills tag delete
- hexel skills tag list
- hexel skills tag set
- hexel skills versions
- hexel skills whoami
- hexel skills yank
- titan
- hexel titan agent create
- hexel titan agent events
- hexel titan agent get
- hexel titan agent list
- hexel titan agent resume
- hexel titan agent retire
- hexel titan agent suspend
- hexel titan agent-deployment create
- hexel titan agent-deployment events
- hexel titan agent-deployment get
- hexel titan agent-deployment list
- hexel titan agent-deployment resume
- hexel titan agent-deployment retire
- hexel titan agent-deployment suspend
- hexel titan approval approve
- hexel titan approval deny
- hexel titan approval list
- hexel titan binding create
- hexel titan binding events
- hexel titan binding get
- hexel titan binding list
- hexel titan binding resume
- hexel titan binding retire
- hexel titan binding suspend
- hexel titan control list
- hexel titan control quarantine
- hexel titan control resume
- hexel titan control-profile create
- hexel titan control-profile events
- hexel titan control-profile get
- hexel titan control-profile list
- hexel titan control-profile resume
- hexel titan control-profile retire
- hexel titan control-profile suspend
- hexel titan deployment domains
- hexel titan deployment get
- hexel titan deployment list
- hexel titan deployment retire
- hexel titan discovery events
- hexel titan discovery get
- hexel titan discovery list
- hexel titan discovery resume
- hexel titan discovery retire
- hexel titan discovery search
- hexel titan discovery suspend
- hexel titan enrollment create
- hexel titan enrollment get
- hexel titan finding list
- hexel titan fleet list
- hexel titan kill
- hexel titan ledger list
- hexel titan ledger verify
- hexel titan principal create
- hexel titan principal events
- hexel titan principal get
- hexel titan principal list
- hexel titan principal resume
- hexel titan principal retire
- hexel titan principal suspend
- hexel titan revision create
- hexel titan revision events
- hexel titan revision get
- hexel titan revision list
- hexel titan revision publish
- hexel titan revision resume
- hexel titan revision retire
- hexel titan revision suspend
- hexel titan session get
- hexel titan session list
- hexel titan session resume
- hexel titan session revoke
- hexel titan session suspend
- tools
- hexel tools apply
- hexel tools auth-config list
- hexel tools connection list
- hexel tools import openapi
- hexel tools mcp import
- hexel tools mcp list
- hexel tools mcp register
- hexel tools tool delete
- hexel tools tool deprecate
- hexel tools tool get
- hexel tools tool list
- hexel tools tool publish
- hexel tools tool retire
- hexel tools toolkit create
- hexel tools toolkit delete
- hexel tools toolkit get
- hexel tools toolkit list
- version
- hexel version
- workspace
- hexel workspace list
Run hexel <command> --help for the same information in your terminal.
Global flags
Every command accepts these flags.
| Flag | Description |
|---|---|
--context | context to use (default: the current context; or HEXEL_CONTEXT) |
--env | environment id (overrides the context; or HEXEL_ENV) |
--org | organization id (overrides the context; or HEXEL_ORG) |
-o, --output | output format: table, json or yaml (default table) |
--workspace | workspace id (overrides the context; or HEXEL_WORKSPACE) |
activity
Audit log, API activity and logs
hexel activity api
Summarize the organization's API calls: volume, errors and latency
hexel activity api [flags]| Flag | Description |
|---|---|
--period | 1h, 6h, 24h (default) or 7d |
hexel activity audit count
Count audit events (same filters as list)
hexel activity audit count [flags]| Flag | Description |
|---|---|
--action | only this action, e.g. token.issue |
--deployment-id | only events for this deployment |
--resource | only this resource |
--session | only events in this session |
--since | from this long ago (30m, 24h, 7d) or this RFC 3339 time |
--trace | only events in this trace |
--until | up to this long ago or this RFC 3339 time |
--user | only events by this user or service user ID |
hexel activity audit get
Show an audit event
hexel activity audit get EVENT_IDhexel activity audit list
List audit events, newest first
hexel activity audit list [flags]Also: ls.
hexel activity audit list --since 24h
hexel activity audit list --action token.issue --user su_123 --limit 20| Flag | Description |
|---|---|
--action | only this action, e.g. token.issue |
--deployment-id | only events for this deployment |
--limit | events to show (1-1000) (default 50) |
--offset | events to skip (default 0) |
--resource | only this resource |
--session | only events in this session |
--since | from this long ago (30m, 24h, 7d) or this RFC 3339 time |
--trace | only events in this trace |
--until | up to this long ago or this RFC 3339 time |
--user | only events by this user or service user ID |
hexel activity audit verify
Check an audit event: Titan's audit service verifies the event's signature over its signed payload and that the indexed copy matches it. Exits 1 when the event does not verify.
hexel activity audit verify EVENT_IDhexel activity logs
Show the organization's service logs, newest first
hexel activity logs [flags]hexel activity logs --level error --period 24h
hexel activity logs --service titan-gateway --search denied| Flag | Description |
|---|---|
--level | only this level, e.g. error |
--limit | lines to show (1-500) (default 100) |
--period | 1h (default), 6h, 24h, 7d or 30d |
--search | only lines containing this text |
--service | only this service |
hexel activity requests
List the organization's recent API requests, newest first
hexel activity requests [flags]hexel activity requests --status server_error --period 7d
hexel activity requests --request-id 97b7eff1-7802-4a5f-ab76-20df483c9a42| Flag | Description |
|---|---|
--limit | requests to show (1-200) (default 50) |
--period | 1h, 6h, 24h (default) or 7d |
--request-id | only this request |
--status | success, client_error, server_error or a 3-digit status |
auth
Sign in, sign out, and show who you are
hexel auth login
Sign in with your Hexel account: hexel shows a code, you approve it in the browser, and the login is stored in your OS keychain.
For CI and scripts, use a service user's API key instead:
echo "$KEY" | hexel auth login --with-api-keyor set HEXEL_API_KEY, which is used without being stored.
hexel auth login [flags]| Flag | Description |
|---|---|
--with-api-key | read an API key from standard input (or prompt for it) |
hexel auth logout
Sign out and remove stored credentials
hexel auth logouthexel auth token
Print a CIAM access token for the current organization (for scripts)
hexel auth tokenhexel auth whoami
Show who you are signed in as, and the current context
hexel auth whoamiAlso: status.
billing
Balance, usage, subscription, invoices and credits
hexel billing balance
Show the balance and its credit buckets
hexel billing balancehexel billing budgets
List budgets and what they have spent
hexel billing budgetsAlso: budget.
hexel billing forecast
Show month-to-date spend and the projection for the month
hexel billing forecast [flags]| Flag | Description |
|---|---|
--period | month, YYYY-MM (default: this month, UTC) |
hexel billing invoice get
Show an invoice
hexel billing invoice get IDhexel billing invoice list
List invoices
hexel billing invoice listAlso: ls.
hexel billing invoice pdf
Download an invoice as PDF
hexel billing invoice pdf ID [flags]| Flag | Description |
|---|---|
-f, --file | where to save it (default: ID.pdf; - for standard output) |
hexel billing ledger
List credit ledger entries (newest first)
hexel billing ledger [flags]| Flag | Description |
|---|---|
--limit | entries to show (at most 200) (default 50) |
hexel billing plans
List the plans you can subscribe to
hexel billing planshexel billing subscription
Show the organization's subscription
hexel billing subscriptionAlso: plan.
hexel billing usage
Show a month's costs, by meter, workspace, environment or principal
hexel billing usage [flags]hexel billing usage
hexel billing usage --period 2026-09 --by workspace
hexel billing usage --workspace ws_123 --by environment| Flag | Description |
|---|---|
--by | break the total down by meter, workspace, environment or principal (default meter) |
--period | month, YYYY-MM (default: this month, UTC) |
--view | cash (usage as billed, the default) or amortized |
completion
Generate the autocompletion script for the specified shell
hexel completion bash
Generate the autocompletion script for bash
hexel completion bash| Flag | Description |
|---|---|
--no-descriptions | disable completion descriptions |
hexel completion fish
Generate the autocompletion script for fish
hexel completion fish [flags]| Flag | Description |
|---|---|
--no-descriptions | disable completion descriptions |
hexel completion powershell
Generate the autocompletion script for powershell
hexel completion powershell [flags]| Flag | Description |
|---|---|
--no-descriptions | disable completion descriptions |
hexel completion zsh
Generate the autocompletion script for zsh
hexel completion zsh [flags]| Flag | Description |
|---|---|
--no-descriptions | disable completion descriptions |
config
View and change hexel's settings (endpoints)
hexel config set
Set a setting: api, sts, issuer or client-id (empty value restores the default)
hexel config set KEY VALUEhexel config view
Show the effective settings and where they are stored
hexel config viewcontext
Choose the organization, workspace, environment and deployment to work in
hexel context delete
Delete a context
hexel context delete NAMEhexel context list
List contexts
hexel context listAlso: ls.
hexel context set
Set fields of the current context
hexel context set [flags]hexel context set --org org_123 --workspace ws_456
hexel context set --deployment td-0123… # default for hexel titan commands| Flag | Description |
|---|---|
--deployment | Titan deployment id (td-…) |
--env | environment id |
--org | organization id |
--workspace | workspace id |
hexel context show
Show the current context
hexel context showhexel context use
Switch to a context (created empty when it does not exist)
hexel context use NAMEenv
Environments in the current workspace
hexel env list
List environments
hexel env listAlso: ls.
iam
Identity and access: service users, API keys, policies, groups, roles and members
hexel iam api-key create
Create an API key for a service user. The key is printed once: Hexel Studio stores only a hash. Keys expire after 90 days unless --expires says otherwise, and at most a year from today.
hexel iam api-key create SERVICE_USER_ID --name NAME [flags]hexel iam api-key create su_123 --name github-actions --expires 30d
KEY=$(hexel iam api-key create su_123 --name ci -o json | jq -r .api_key)| Flag | Description |
|---|---|
--description | a longer note |
--expires | 30d, a date (2026-12-31) or an RFC 3339 time (default: 90 days) |
--name | what the key is for, e.g. github-actions (required) |
hexel iam api-key list
List a service user's active API keys (never the keys themselves)
hexel iam api-key list SERVICE_USER_IDAlso: ls.
hexel iam api-key revoke
Revoke an API key (permanent)
hexel iam api-key revoke SERVICE_USER_ID KEY_ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel iam group list
List groups
hexel iam group listAlso: ls.
hexel iam group members
List a group's members
hexel iam group members GROUP_IDhexel iam members
List the organization's members
hexel iam membersAlso: member.
hexel iam policy get
Show a policy and its document
hexel iam policy get IDhexel iam policy list
List policies (managed and your own)
hexel iam policy listAlso: ls.
hexel iam role get
Show a role and its trust policy
hexel iam role get IDhexel iam role list
List roles
hexel iam role listAlso: ls.
hexel iam service-user create
Create a service user (it can do nothing until you attach a policy)
hexel iam service-user create NAME [flags]| Flag | Description |
|---|---|
--description | what the service user is for |
--display-name | display name (default: NAME) |
hexel iam service-user delete
Delete a service user (its API keys stop working)
hexel iam service-user delete ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel iam service-user get
Show a service user
hexel iam service-user get IDhexel iam service-user list
List service users
hexel iam service-user listAlso: ls.
hexel iam service-user policy attach
Attach a policy to a service user
hexel iam service-user policy attach SERVICE_USER_ID POLICY_IDhexel iam service-user policy detach
Detach a policy (by attachment ID, from policy list)
hexel iam service-user policy detach SERVICE_USER_ID ATTACHMENT_IDhexel iam service-user policy list
List the policies attached to a service user
hexel iam service-user policy list SERVICE_USER_IDAlso: ls.
memory
Memory stores: what your agents remember, and recall
hexel memory add
Add a memory (or, with --extract, let Hexel Studio extract facts from TEXT)
hexel memory add STORE_ID TEXT [flags]hexel memory add mst_123 "Prefers metric units" --user u_42
hexel memory add mst_123 "I moved to Pune last month and work nights now" --user u_42 --extract| Flag | Description |
|---|---|
--agent | the agent the memories belong to |
--extract | treat TEXT as a message and extract facts from it (waits up to 10s) |
--run | the run (conversation) the memories belong to |
--user | the end user the memories are about |
hexel memory delete
Delete a memory
hexel memory delete STORE_ID MEMORY_IDhexel memory forget
Erase everything a store holds for a user, agent or run (permanent)
hexel memory forget STORE_ID --user ID | --agent ID | --run ID [flags]| Flag | Description |
|---|---|
--agent | the agent the memories belong to |
--run | the run (conversation) the memories belong to |
--user | the end user the memories are about |
-y, --yes | do not ask for confirmation |
hexel memory get
Show a memory
hexel memory get STORE_ID MEMORY_IDhexel memory history
Show how a memory changed
hexel memory history STORE_ID MEMORY_IDhexel memory job
Show an extraction job
hexel memory job STORE_ID JOB_IDhexel memory list
List a store's memories (oldest first)
hexel memory list STORE_ID [flags]Also: ls.
| Flag | Description |
|---|---|
--agent | the agent the memories belong to |
--limit | memories to show (default 100) |
--run | the run (conversation) the memories belong to |
--user | the end user the memories are about |
hexel memory recall
Recall the memories that best match a query, from up to 8 stores
hexel memory recall QUERY --store STORE_ID [--store STORE_ID...] [flags]hexel memory recall "what units does she use" --store mst_123 --user u_42
hexel memory recall "deployment preferences" --store mst_1 --store mst_2 --top-k 5| Flag | Description |
|---|---|
--agent | the agent the memories belong to |
--run | the run (conversation) the memories belong to |
--store | a store to recall from (repeat for up to 8) |
--top-k | memories to return (default 0) |
--user | the end user the memories are about |
hexel memory store create
Create a memory store in the current workspace and environment.
--scope-policy caller_managed (the default) lets callers choose the scope of each memory; principal_bound always files a memory under the caller.
hexel memory store create NAME [flags]| Flag | Description |
|---|---|
--description | what the store is for |
--retention-days | delete memories after this many days (default: keep) (default 0) |
--scope-policy | caller_managed (default) or principal_bound |
--tier | standard (default) or enterprise |
hexel memory store delete
Delete a store and every memory in it (permanent)
hexel memory store delete STORE_ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel memory store get
Show a store
hexel memory store get STORE_IDhexel memory store list
List memory stores
hexel memory store listAlso: ls.
hexel memory store stats
Count a store's memories
hexel memory store stats STORE_IDorg
Organizations you belong to
hexel org get
Show an organization (default: the current one)
hexel org get [ID]hexel org list
List your organizations
hexel org listAlso: ls.
skills
Agent skills in the Hexel Studio registry: publish, version, tag and resolve
hexel skills audit
Show your organization's registry audit log (hash-chained)
hexel skills audit [flags]| Flag | Description |
|---|---|
--after | records after this sequence number (default 0) |
--limit | records to show (default 50) |
hexel skills deprecate
Deprecate a version (consumers get a warning)
hexel skills deprecate NAMESPACE/NAME@VERSION [flags]| Flag | Description |
|---|---|
--reason | shown to consumers as a warning or error |
hexel skills get
Show a skill (its tags), or one version (files, digest, scan, status)
hexel skills get NAMESPACE/NAME[@VERSION]hexel skills list
List the skills in a namespace
hexel skills list NAMESPACEAlso: ls.
hexel skills namespace create
Create a namespace in your organization. Names are global across the registry and cannot be renamed or moved yet, so pick a stable one. Names reserved for Hexel Studio (hexel*, titan*, look-alikes, words like official) are refused.
hexel skills namespace create SLUGhexel skills namespace list
List your organization's namespaces
hexel skills namespace listAlso: ls.
hexel skills publish
Publish the skill in DIR (its SKILL.md and every file beside it) as a new version. The name comes from SKILL.md's frontmatter (or --name) and the version from its metadata.version (or --version). Versions are never reused: publishing the same content again is a no-op, different content under a published version is refused.
The registry checks the skill, signs the version and scans it; it returns warnings when the change looks bigger than the version bump. Skills up to 10 MB publish in one request; for larger ones use the registry's skills CLI.
hexel skills publish DIR --namespace NAMESPACE [flags]hexel skills publish ./release-notes --namespace acme --dry-run
hexel skills publish ./release-notes --namespace acme --tag beta
hexel skills publish . --namespace acme --version 1.2.0 --tag stable| Flag | Description |
|---|---|
--dry-run | list what would be published, without publishing |
--name | skill name (default: SKILL.md's name) |
--namespace | the namespace to publish in (required) |
--tag | also point these tags at the new version |
--version | semantic version (default: SKILL.md's metadata.version) |
hexel skills remove
Remove a version's content (needs registry admin; permanent)
hexel skills remove NAMESPACE/NAME@VERSION [flags]| Flag | Description |
|---|---|
--detach-tags | also remove custom tags that point at the version (required when one does) |
--reason | shown to consumers as a warning or error |
-y, --yes | do not ask for confirmation |
hexel skills resolve
Resolve references (NS/NAME, NS/[email protected], NS/NAME@stable, NS/NAME@^1.2) to pinned versions
hexel skills resolve REF...hexel skills restore
Make a deprecated or yanked version active again
hexel skills restore NAMESPACE/NAME@VERSION [flags]| Flag | Description |
|---|---|
--reason | shown to consumers as a warning or error |
hexel skills scan
Show a version's content scan and its findings
hexel skills scan NAMESPACE/NAME@VERSIONhexel skills search
Search the skills your organization may read
hexel skills search QUERY [flags]| Flag | Description |
|---|---|
--namespace | only this namespace |
hexel skills tag delete
Delete a tag
hexel skills tag delete NAMESPACE/NAME TAGhexel skills tag list
List a skill's tags
hexel skills tag list NAMESPACE/NAMEAlso: ls.
hexel skills tag set
Point a tag at a version (latest moves by itself)
hexel skills tag set NAMESPACE/NAME TAG VERSION [flags]hexel skills tag set acme/release-notes stable 1.2.0
hexel skills tag set acme/release-notes stable 1.3.0 --if-match 1.2.0 # only if it still points at 1.2.0| Flag | Description |
|---|---|
--if-match | only move the tag if it points at this version ("": only if it does not exist) |
hexel skills versions
List a skill's versions, highest first
hexel skills versions NAMESPACE/NAME [flags]| Flag | Description |
|---|---|
--status | only these statuses: active, deprecated, yanked, removed |
hexel skills whoami
Show how the registry sees you: organization and permissions
hexel skills whoamihexel skills yank
Yank a version (pinned consumers get an error)
hexel skills yank NAMESPACE/NAME@VERSION [flags]| Flag | Description |
|---|---|
--detach-tags | also remove custom tags that point at the version (required when one does) |
--reason | shown to consumers as a warning or error |
-y, --yes | do not ask for confirmation |
titan
Titan: control and audit what your AI agents do
These flags apply to every hexel titan command:
| Flag | Description |
|---|---|
--deployment | Titan deployment id (td-…; overrides the context; or HEXEL_DEPLOYMENT) |
hexel titan agent create
Register an agent
hexel titan agent create --name NAME [flags]hexel titan agent create --name support-bot --label team=support| Flag | Description |
|---|---|
--description | description |
--label | label KEY=VALUE (repeatable) |
--name | display name |
hexel titan agent events
List an agent's registry events
hexel titan agent events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan agent get
Show an agent
hexel titan agent get IDhexel titan agent list
List agents in the organization
hexel titan agent listAlso: ls.
hexel titan agent resume
Resume a suspended agent
hexel titan agent resume IDhexel titan agent retire
Retire an agent (permanent)
hexel titan agent retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan agent suspend
Suspend an agent (until resumed)
hexel titan agent suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan agent-deployment create
Create an agent deployment: a published revision, running under a control profile, in the workspace and environment of the context (or --workspace and --env). --runtime-class is workload, interactive, ephemeral, titan_managed or external_managed.
hexel titan agent-deployment create --name NAME --revision REVISION_ID --control-profile PROFILE_ID --runtime-class CLASS [flags]hexel titan agent-deployment create --name support-prod --revision rev_123 --control-profile dcp_123 --runtime-class workload| Flag | Description |
|---|---|
--control-profile | the deployment control profile |
--name | display name |
--revision | the published agent revision to run |
--runtime-class | workload, interactive, ephemeral, titan_managed or external_managed |
--valid-until | when it stops being valid: 30d, a date (2026-12-31) or an RFC 3339 time (default: no end) |
hexel titan agent-deployment events
List an agent deployment's registry events
hexel titan agent-deployment events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan agent-deployment get
Show an agent deployment
hexel titan agent-deployment get IDhexel titan agent-deployment list
List agent deployments
hexel titan agent-deployment list [flags]Also: ls.
| Flag | Description |
|---|---|
--agent | only this agent's deployments |
--limit | maximum number of results (default 100) |
hexel titan agent-deployment resume
Resume a suspended agent deployment
hexel titan agent-deployment resume IDhexel titan agent-deployment retire
Retire an agent deployment (permanent)
hexel titan agent-deployment retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan agent-deployment suspend
Suspend an agent deployment (until resumed)
hexel titan agent-deployment suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan approval approve
Approve a pending request
hexel titan approval approve IDhexel titan approval deny
Deny a pending request
hexel titan approval deny IDhexel titan approval list
List approvals (default: pending)
hexel titan approval list [flags]Also: ls.
| Flag | Description |
|---|---|
--state | pending, approved, denied, expired, revoked, invalidated or all (default pending) |
hexel titan binding create
Create an identity binding from a JSON request body (- reads standard input). A Kubernetes service account binding:
{"type": "kubernetes_service_account", "runtime_principal_id": "…",
"selector": {"cluster_id": "…", "issuer": "…", "audience": "…",
"namespace": "…", "service_account_name": "…",
"service_account_uid": "…"}}Optional: maximum_assurance and valid_until (RFC 3339). A device key binding (type titan_device_key) is made by hexel titan enrollment create.
hexel titan binding create -f FILE [flags]hexel titan binding create -f binding.json| Flag | Description |
|---|---|
-f, --file | the binding as JSON (- for standard input) |
hexel titan binding events
List an identity binding's registry events
hexel titan binding events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan binding get
Show an identity binding
hexel titan binding get IDhexel titan binding list
List identity bindings
hexel titan binding list [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
--principal | only this runtime principal's bindings |
hexel titan binding resume
Resume a suspended identity binding
hexel titan binding resume IDhexel titan binding retire
Retire an identity binding (permanent)
hexel titan binding retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan binding suspend
Suspend an identity binding (until resumed)
hexel titan binding suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan control list
List the quarantines and kills in force
hexel titan control list [flags]Also: ls.
| Flag | Description |
|---|---|
--target | only this target's controls |
--type | with --target: what it names (agent or deployment) (default agent) |
hexel titan control quarantine
Quarantine stops a target at once and reversibly: Titan refuses its actions until hexel titan control resume. --type chooses what TARGET_ID names: agent (default) or deployment (an agent deployment).
hexel titan control quarantine TARGET_ID [flags]hexel titan control quarantine agt_123 --reason SECURITY_INCIDENT| Flag | Description |
|---|---|
--reason | OPERATOR_REQUEST, SECURITY_INCIDENT or POLICY_VIOLATION (default OPERATOR_REQUEST) |
--type | what TARGET_ID names: agent or deployment (default agent) |
-y, --yes | do not ask for confirmation |
hexel titan control resume
Lift a quarantine
hexel titan control resume TARGET_ID [flags]hexel titan control resume agt_123| Flag | Description |
|---|---|
--reason | OPERATOR_REQUEST, SECURITY_INCIDENT or POLICY_VIOLATION (default OPERATOR_REQUEST) |
--type | what TARGET_ID names: agent or deployment (default agent) |
hexel titan control-profile create
Create a deployment control profile in an enforcement deployment (default: the context's deployment). The switches it records are what Titan requires of every agent deployment that uses the profile.
hexel titan control-profile create --attestation none|platform_bound|titan_managed [flags]hexel titan control-profile create --attestation titan_managed --mandatory-mediation --credential-isolation --runtime-peer-auth --deny-egress-bypass| Flag | Description |
|---|---|
--attestation | platform instance attestation: none, platform_bound or titan_managed |
--credential-isolation | agents never hold tool credentials |
--deny-egress-bypass | deny destination egress that bypasses Titan |
--enforcement-deployment | enforcement deployment td-… (default: the context's deployment) |
--mandatory-mediation | every action must go through Titan |
--runtime-peer-auth | require runtime peer authentication |
--valid-until | when it stops being valid: 30d, a date (2026-12-31) or an RFC 3339 time (default: no end) |
hexel titan control-profile events
List a control profile's registry events
hexel titan control-profile events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan control-profile get
Show a control profile
hexel titan control-profile get IDhexel titan control-profile list
List control profiles
hexel titan control-profile list [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan control-profile resume
Resume a suspended control profile
hexel titan control-profile resume IDhexel titan control-profile retire
Retire a control profile (permanent)
hexel titan control-profile retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan control-profile suspend
Suspend a control profile (until resumed)
hexel titan control-profile suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan deployment domains
List a deployment's custom domains
hexel titan deployment domains [ID]hexel titan deployment get
Show a deployment (default: the context's)
hexel titan deployment get [ID]hexel titan deployment list
List deployments in the organization
hexel titan deployment list [flags]Also: ls.
| Flag | Description |
|---|---|
--all | include retired deployments |
hexel titan deployment retire
Retire a deployment (permanent: its agents stop getting tokens)
hexel titan deployment retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan discovery events
List a discovery card's registry events
hexel titan discovery events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan discovery get
Show a discovery card
hexel titan discovery get IDhexel titan discovery list
List the organization's discovery cards
hexel titan discovery list [flags]Also: ls.
| Flag | Description |
|---|---|
--agent-deployment | only this agent deployment's cards |
--limit | maximum number of results (default 100) |
hexel titan discovery resume
Resume a suspended discovery card
hexel titan discovery resume IDhexel titan discovery retire
Retire a discovery card (permanent)
hexel titan discovery retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan discovery search
Search the discovery cards visible to the organization
hexel titan discovery search [--capability ID] [flags]hexel titan discovery search --capability invoice.summarize| Flag | Description |
|---|---|
--capability | only cards offering this capability |
--limit | maximum number of results (default 100) |
hexel titan discovery suspend
Suspend a discovery card (until resumed)
hexel titan discovery suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan enrollment create
Enroll a device's Ed25519 public key (base64url, unpadded: the 32 raw bytes, as titand stores it) for a runtime principal. Titan creates the device key identity binding with it.
hexel titan enrollment create --principal ID --public-key KEY [flags]hexel titan enrollment create --principal rp_123 --public-key 3q2-7w…| Flag | Description |
|---|---|
--principal | the runtime principal |
--public-key | the device's Ed25519 public key (base64url) |
--valid-until | when it stops being valid: 30d, a date (2026-12-31) or an RFC 3339 time (default: no end) |
hexel titan enrollment get
Show a device enrollment
hexel titan enrollment get IDhexel titan finding list
List Defender findings
hexel titan finding listAlso: ls.
hexel titan fleet list
List the fleet's sessions
hexel titan fleet listAlso: ls.
hexel titan kill
Stops a target at once: Titan refuses its next action, and running sessions end. --type chooses what TARGET_ID names: agent (default), session, deployment, workspace, environment, connection, capability, destination or organization.
hexel titan kill TARGET_ID [flags]hexel titan kill agt_123 --reason SECURITY_INCIDENT| Flag | Description |
|---|---|
--reason | OPERATOR_REQUEST, SECURITY_INCIDENT or POLICY_VIOLATION (default OPERATOR_REQUEST) |
--type | what TARGET_ID names (default agent) |
-y, --yes | do not ask for confirmation |
hexel titan ledger list
Lists the Agent Ledger, oldest first: up to --limit entries with a sequence number (SEQ) above --after. To read the next page, pass the last SEQ shown as --after. Entries the deployment has pruned are not returned.
EXECUTOR is the Tool Gateway's own refusal code behind a PRE_DISPATCH_FAILED execution (for example NO_ELIGIBLE_CONNECTION); it is empty on other entries.
--type and --outcome filter on the client: the API returns the page of --limit entries, and the CLI shows only the entries in it that match (case-insensitive). A filtered page can show fewer entries than --limit, or none; page on with --after as usual.
hexel titan ledger list [flags]Also: ls.
hexel titan ledger list --limit 20
hexel titan ledger list --after 300 --type execution --outcome failed| Flag | Description |
|---|---|
--after | show entries with a SEQ above this (the last SEQ of the previous page) (default 0) |
--limit | entries to read (1-1000) (default 100) |
--outcome | only entries with this outcome, within the page read (client-side) |
--type | only entries of this event type, within the page read (client-side) |
hexel titan ledger verify
Recomputes the Agent Ledger's hash chain on the deployment, from the prune checkpoint to the head. It exits 1 when the chain is broken, and says at which entry.
hexel titan ledger verifyhexel titan principal create
Create a runtime principal for an agent deployment
hexel titan principal create --agent-deployment ID --name NAME [flags]hexel titan principal create --agent-deployment dep_123 --name worker-1| Flag | Description |
|---|---|
--agent-deployment | the agent deployment it belongs to |
--name | display name |
--valid-until | when it stops being valid: 30d, a date (2026-12-31) or an RFC 3339 time (default: no end) |
hexel titan principal events
List a runtime principal's registry events
hexel titan principal events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan principal get
Show a runtime principal
hexel titan principal get IDhexel titan principal list
List runtime principals
hexel titan principal list [flags]Also: ls.
| Flag | Description |
|---|---|
--agent-deployment | only this agent deployment's principals |
--limit | maximum number of results (default 100) |
hexel titan principal resume
Resume a suspended runtime principal
hexel titan principal resume IDhexel titan principal retire
Retire a runtime principal (permanent)
hexel titan principal retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan principal suspend
Suspend a runtime principal (until resumed)
hexel titan principal suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan revision create
Create a draft revision of an agent (publish it to use it)
hexel titan revision create AGENT_ID --artifact-digest D --configuration-digest D --manifest-digest D [flags]hexel titan revision create agt_123 --artifact-digest sha256:… --configuration-digest sha256:… --manifest-digest sha256:… --capability tools.call| Flag | Description |
|---|---|
--artifact-digest | digest of the agent artifact |
--capability | a capability it declares (repeatable) |
--configuration-digest | digest of its configuration |
--manifest-digest | digest of its manifest |
hexel titan revision events
List a revision's registry events
hexel titan revision events ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan revision get
Show a revision
hexel titan revision get IDhexel titan revision list
List an agent's revisions
hexel titan revision list AGENT_ID [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of results (default 100) |
hexel titan revision publish
Publish a revision so it can be deployed
hexel titan revision publish IDhexel titan revision resume
Resume a suspended revision
hexel titan revision resume IDhexel titan revision retire
Retire a revision (permanent)
hexel titan revision retire ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan revision suspend
Suspend a revision (until resumed)
hexel titan revision suspend ID [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel titan session get
Show a session
hexel titan session get IDhexel titan session list
List sessions
hexel titan session list [flags]Also: ls.
| Flag | Description |
|---|---|
--limit | maximum number of sessions (default 100) |
--state | active, suspended, revoked, expired or closed |
hexel titan session resume
Resume a suspended session
hexel titan session resume ID [flags]| Flag | Description |
|---|---|
--reason | OPERATOR_REQUEST, SECURITY_INCIDENT or POLICY_VIOLATION (default OPERATOR_REQUEST) |
hexel titan session revoke
Revoke a session permanently
hexel titan session revoke ID [flags]| Flag | Description |
|---|---|
--reason | OPERATOR_REQUEST, SECURITY_INCIDENT or POLICY_VIOLATION (default OPERATOR_REQUEST) |
-y, --yes | do not ask for confirmation |
hexel titan session suspend
Suspend a session (it can be resumed)
hexel titan session suspend ID [flags]| Flag | Description |
|---|---|
--reason | OPERATOR_REQUEST, SECURITY_INCIDENT or POLICY_VIOLATION (default OPERATOR_REQUEST) |
tools
Toolkits, tools, connections and MCP servers your agents use
hexel tools apply
Register the toolkit and tools a manifest describes: create what is missing, update drafts that changed, and leave the rest alone, after showing the plan. hexel tools import openapi --out writes a manifest; you can also write one by hand (the fields are the registry's create-tool fields).
hexel tools apply -f FILE [flags]hexel tools apply -f tools.yaml --dry-run
hexel tools apply -f tools.yaml --publish --yes| Flag | Description |
|---|---|
--dry-run | show the plan only |
-f, --file | the manifest (- for standard input) |
--publish | publish the tools after registering (default: leave them as drafts) |
-y, --yes | do not ask for confirmation |
hexel tools auth-config list
List auth configs in the current workspace
hexel tools auth-config listAlso: ls.
hexel tools connection list
List connected accounts in the current workspace
hexel tools connection listAlso: ls.
hexel tools import openapi
Turn every operation of an OpenAPI 3 or Swagger 2.0 document (a file or an https URL, JSON or YAML) into a tool of one toolkit, and register them.
hexel shows the plan first: each operation, whether it changes data, and whether it is created, updated or left alone; operations the executor cannot call (a non-JSON body, a GET with a body, a required header) are listed as skipped with the reason. Nothing changes until you confirm.
Tools are registered as drafts: review them, then publish the ones your agents may use (--publish publishes them now). Running the import again is safe: unchanged tools are left alone and changed drafts are updated.
Authentication comes from the document's security schemes (an API key in a header or query parameter, HTTP bearer or basic, or OAuth 2); --auth overrides it. Connections of the toolkit supply the credential.
To review or edit the tools before registering, write them to a manifest with --out, then register it with hexel tools apply -f.
hexel tools import openapi SPEC [flags]hexel tools import openapi ./openapi.yaml --dry-run
hexel tools import openapi https://api.example.com/openapi.json --toolkit EXAMPLE --read-only
hexel tools import openapi spec.json --include 'GET /orders*' --exclude '*Admin*' --publish
hexel tools import openapi spec.json --out tools.yaml # review, then: hexel tools apply -f tools.yaml| Flag | Description |
|---|---|
--auth | credential placement: none, bearer, basic, header:NAME or query:NAME (default: from the document) |
--base-url | https base URL of the API (default: the document's first server) |
--dry-run | show the plan only |
--exclude | leave out operations matching these globs |
--include | only operations matching these globs: operationId, "GET /path*" or "/path*" |
--out | write the tools to this manifest (.yaml or .json) instead of registering them |
--publish | publish the tools after registering (default: leave them as drafts) |
--read-only | only GET operations |
--tag | only operations with one of these tags |
--toolkit | toolkit slug (default: from the document's title) |
--version | tool version (default: the document's info.version) |
-y, --yes | do not ask for confirmation |
hexel tools mcp import
Read the server's tools/list and register each tool as a draft in the server's toolkit; publish them with hexel tools tool publish --toolkit <toolkit> --all. Re-importing is safe: slugs stay stable, and a tool that changed upstream returns to draft.
A server that needs authentication is imported with a connection of your organization (--connection) or a bearer token read from an environment variable (--bearer-env), used for this import only.
hexel tools mcp import SERVER_ID [flags]| Flag | Description |
|---|---|
--bearer-env | authenticate the import with the bearer token in this environment variable |
--connection | authenticate the import with this connection |
hexel tools mcp list
List MCP servers
hexel tools mcp listAlso: ls.
hexel tools mcp register
Register an MCP server, then import its tools with hexel tools mcp import. --auth-toolkit names the toolkit whose connections authenticate the server's tools, when it needs authentication.
hexel tools mcp register URL --slug SLUG [flags]hexel tools mcp register https://mcp.example.com/mcp --slug example --name "Example MCP"
hexel tools mcp import <server-id> && hexel tools tool publish --toolkit <toolkit> --all| Flag | Description |
|---|---|
--auth-toolkit | toolkit whose connections authenticate the server's tools |
--name | display name (default: the slug) |
--slug | server slug: lowercase letters, digits and _ (required) |
hexel tools tool delete
Delete tools
hexel tools tool delete [SLUG|ID...] [--toolkit SLUG] [--all] [flags]| Flag | Description |
|---|---|
--all | every draft or retired tool of --toolkit |
--toolkit | the tools' toolkit (needed for slugs shared by several toolkits, and for --all) |
--version | the tool version (default: the latest) |
-y, --yes | do not ask for confirmation |
hexel tools tool deprecate
Deprecate published tools
hexel tools tool deprecate [SLUG|ID...] [--toolkit SLUG] [--all] [flags]| Flag | Description |
|---|---|
--all | every published tool of --toolkit |
--toolkit | the tools' toolkit (needed for slugs shared by several toolkits, and for --all) |
--version | the tool version (default: the latest) |
-y, --yes | do not ask for confirmation |
hexel tools tool get
Show a tool, with its input schema
hexel tools tool get SLUG [flags]| Flag | Description |
|---|---|
--toolkit | toolkit slug, when several toolkits have a tool of this slug |
hexel tools tool list
List tools
hexel tools tool list [flags]Also: ls.
hexel tools tool list --toolkit GITHUB| Flag | Description |
|---|---|
--lifecycle | draft, published, deprecated or retired |
--limit | maximum number of tools (default 100) |
--toolkit | only this toolkit's tools (slug) |
hexel tools tool publish
Publish draft tools (the owner's approval: only published tools reach agents)
hexel tools tool publish [SLUG|ID...] [--toolkit SLUG] [--all] [flags]| Flag | Description |
|---|---|
--all | every draft tool of --toolkit |
--toolkit | the tools' toolkit (needed for slugs shared by several toolkits, and for --all) |
--version | the tool version (default: the latest) |
-y, --yes | do not ask for confirmation |
hexel tools tool retire
Retire tools (agents can no longer use them); published tools are deprecated first
hexel tools tool retire [SLUG|ID...] [--toolkit SLUG] [--all] [flags]| Flag | Description |
|---|---|
--all | every published or deprecated tool of --toolkit |
--toolkit | the tools' toolkit (needed for slugs shared by several toolkits, and for --all) |
--version | the tool version (default: the latest) |
-y, --yes | do not ask for confirmation |
hexel tools toolkit create
Create a toolkit in your organization
hexel tools toolkit create SLUG --name NAME [flags]| Flag | Description |
|---|---|
--auth-scheme | api_key or oauth2 (repeat for several; default: none) |
--category | category (default custom) |
--description | what the toolkit is for |
--docs-url | the API's documentation |
--name | display name (default: SLUG) |
hexel tools toolkit delete
Delete one of your organization's toolkits
hexel tools toolkit delete SLUG [flags]| Flag | Description |
|---|---|
-y, --yes | do not ask for confirmation |
hexel tools toolkit get
Show a toolkit
hexel tools toolkit get SLUGhexel tools toolkit list
List toolkits
hexel tools toolkit list [flags]Also: ls.
| Flag | Description |
|---|---|
--category | only toolkits in this category |
version
Show the hexel version
hexel version
Show the hexel version
hexel versionworkspace
Workspaces in the current organization
hexel workspace list
List workspaces
hexel workspace listAlso: ls.