Command Reference
Complete reference for all /armor commands available in ArmorClaude
/armor Command Reference
All ArmorClaude commands start with /armor. Type /armor alone to see the help text. Commands run in the UserPromptSubmit hook before Claude's LLM sees the prompt - they are processed instantly without an LLM call.
Use /armor only. The legacy /armor-policy prefix is intentionally unsupported.
Quick Reference
| Command | Description |
|---|---|
/armor | Show help |
/armor yes | Apply the current staged proposal |
/armor no | Discard the current staged proposal |
Policy Commands
Viewing Policy
| Command | Description |
|---|---|
/armor policy list | Show all rules with IDs and effects |
/armor policy view | Show the active policy as raw JSON |
/armor policy export | Export full policy state (version history included) |
Adding Rules
/armor policy add allow Read
/armor policy add deny WebFetch
/armor policy add hold Bash
/armor policy add allow Read and Grep, deny Write, hold BashEffects: allow, deny (or block), hold (or require_approval, ask before).
Multiple rules in one command are comma-separated. All changes are staged - confirm with /armor yes.
Removing Rules
/armor policy remove stmt_1Removes a specific rule by ID. Check IDs with /armor policy list.
Resetting Policy
/armor policy resetProposes clearing all rules back to an empty policy. Must be confirmed.
Setting Default Decision
/armor policy default allow
/armor policy default deny
/armor policy default holdControls what happens when no rule matches a tool call.
Applying Templates
/armor policy template balancedAvailable templates:
| Name | Description |
|---|---|
all-allow | Everything permitted, intent planning still enforced |
strict-read-only | Only Read/Grep/Glob allowed |
balanced | Read allowed, Bash/Write/Edit require approval |
lockdown | All tools require approval |
Crypto Binding
/armor policy rebindReissues the Merkle tree crypto binding for the current policy. Required only when the binding gets out of sync (rare).
Staging and Confirmation
Every policy change goes through a two-step process:
/armor policy add deny Bash # stages the change
/armor yes # applies it| Command | Description |
|---|---|
/armor yes | Apply the current staged proposal |
/armor no | Discard the current staged proposal |
/armor policy confirm | Apply (same as /armor yes) |
/armor policy confirm pol_abc12345 | Apply a specific proposal by ID |
/armor policy cancel | Discard (same as /armor no) |
/armor policy cancel pol_abc12345 | Discard a specific proposal by ID |
Staged proposals expire after 30 minutes.
Draft Workflow
For complex policy changes, work with drafts before staging:
| Command | Description |
|---|---|
/armor policy draft validate <json> | Validate pasted policy JSON, create a draft |
/armor policy draft edit <draft-id> <json> | Replace a draft's JSON |
/armor policy revise <draft-id> "<instruction>" | Apply a deterministic edit to a draft |
/armor policy stage <draft-id> | Move a draft into the staging area |
/armor policy stage <json> | Stage raw JSON directly |
Example: Draft → Stage → Confirm
/armor policy draft validate {"schemaVersion":"armor.policy.v1","kind":"PolicyProfile","metadata":{"name":"custom"},"defaults":{"decision":"deny","conflictResolution":"deny_overrides"},"statements":[{"id":"s1","effect":"permit","principal":{"type":"agent","id":"claude-code"},"action":{"type":"tool","eq":"Read"},"resource":{"type":"workspace","scope":"current"},"conditions":[]}]}Response: draft_abc12345 created.
/armor policy stage draft_abc12345
/armor yesMCP Server Management
Control which MCP servers are trusted:
| Command | Description |
|---|---|
/armor mcp list | Show all detected MCP servers and their status |
/armor mcp approve <server> | Persistently approve an MCP server |
/armor mcp deny <server> | Persistently deny an MCP server |
By default, ArmorClaude denies unknown MCP servers (mcpDenyByDefault: true). When an unknown server's tool is called, ArmorClaude uses Claude Code's native approval UI for a one-time allow. Use /armor mcp approve to trust a server permanently.
Profile Management
Save, switch, and share policy profiles:
| Command | Description |
|---|---|
/armor profile list | Show all saved profiles |
/armor profile save <name> | Save current policy as a named profile |
/armor profile switch <name> | Stage switching to a saved profile (requires confirm) |
/armor profile delete <name> | Delete a saved profile |
/armor profile push <name> | Push a profile to the ArmorIQ backend (requires API key) |
/armor profile pull | Pull all org profiles from the backend (requires API key) |
Example: Save and Switch Profiles
/armor policy template balanced
/armor yes
/armor profile save my-balanced
/armor policy template lockdown
/armor yes
/armor profile save my-lockdown
/armor profile switch my-balanced
/armor yesSettings
| Command | Description |
|---|---|
/armor settings | Show current enforcement engine and settings |
/armor settings enforcement local | Switch to local policy evaluation |
/armor settings enforcement opa | Switch to OPA-based enforcement (requires ARMORCLAUDE_OPA_PDP_URL) |
Backend Sync
| Command | Description |
|---|---|
/armor sync | Push current policy state to the ArmorIQ backend (requires API key) |
Complete Command List
/armor - show help
/armor policy list - show current rules
/armor policy view - show active policy JSON
/armor policy export - export full policy state
/armor policy default <allow|deny|hold> - set default decision
/armor policy add <rules> - stage new rules
/armor policy remove <rule-id> - propose removing a rule
/armor policy reset - propose clearing all rules
/armor policy template <name> - propose applying a template
/armor policy rebind - reissue crypto binding
/armor policy draft validate <json> - validate and create a draft
/armor policy draft edit <id> <json> - replace a draft's JSON
/armor policy revise <id> "<instr>" - edit a draft deterministically
/armor policy stage <id|json> - move draft/JSON to staging
/armor policy confirm [proposal-id] - apply staged change
/armor policy cancel [proposal-id] - discard staged change
/armor yes - apply current staged change
/armor no - discard current staged change
/armor mcp list - show detected MCP servers
/armor mcp approve <server> - approve an MCP server
/armor mcp deny <server> - deny an MCP server
/armor profile list - show saved profiles
/armor profile save <name> - save current policy as profile
/armor profile switch <name> - switch to a saved profile
/armor profile delete <name> - delete a profile
/armor profile push <name> - push profile to backend
/armor profile pull - pull org profiles from backend
/armor settings - show settings
/armor settings enforcement <engine> - switch enforcement engine
/armor sync - push policy to backend