> ## Documentation Index > Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt > Use this file to discover all available pages before exploring further. # Armor ## Example Usage ```typescript theme={null} import { Armor } from "@openrouter/sdk/models"; let value: Armor = {}; ``` ## Fields | Field | Type | Required | Description | Example | | - | - | - | - | - | | `classifierContext` | [models.ArmorContext](../models/armorcontext.mdx) | ➖ | The Armor context: Claude Code's `classifier_context` (v1), with `auto_mode.{hard_deny,soft_deny,allow}` rules as strings or `{ id, instructions, threshold? }` objects and `auto_mode.environment` entries as `"Name: value"` strings or `{ name, value }` objects. `threshold` applies when Armor evaluates; when the provider evaluates natively (Anthropic dangerous-tool-use beta) rules are judged at the provider's own boundary. | \{ "auto\_mode": \{ "allow": \[], "environment": \[ "Trusted repo: github.com/acme/app" ], "hard\_deny": \[], "soft\_deny": \[ \{ "id": "secrets-in-vcs", "instructions": "Staging, committing or pushing a file that holds secrets, including indirectly through git add -A when the tree shows one." } ] }, "v": 1 } | | `mode` | [models.GuardrailModerationPolicyConfigMode](../models/guardrailmoderationpolicyconfigmode.mdx) | ➖ | `enforce` withholds blocked calls; `audit` evaluates and reports the same verdicts without withholding any calls, regardless of `on_error`. Default `enforce`. | | | `onError` | [models.GuardrailModerationPolicyConfigOnError](../models/guardrailmoderationpolicyconfigonerror.mdx) | ➖ | When the classifier cannot answer (timeout, upstream error, context too long) the call is reported `unavailable`; `block` rejects it and `log` releases it. Default `block`. | | | `useCcStyleDefaultRules` | *boolean* | ➖ | Prepend Claude Code's built-in auto-mode rule set (1 hard-deny, 72 soft-deny, 17 allow, 21 environment slots) ahead of every configured rule. Defaults to true on the Anthropic Messages API and false elsewhere. | |