Content inspection

Read every argument before the tool ever runs.

More than 131 detectors walk every string in a tool call and score what they find. Secrets are fingerprinted and masked out of the stored record, so you keep the proof without keeping the secret.

131+ detectors · 7 categories · redacted at write time

scan · argumentscritical
AWS access key idenv.AWS_ACCESS_KEY_ID
Email addresstext
Unbounded SELECT *sql
stored: secrets fingerprinted, never raw
0+
Content detectors
0
Signal categories
0
Severity tiers
0+
Critical-signal floor

The taxonomy

Seven categories, one pass over the payload.

Every string leaf is checked against detectors grouped into seven categories. A call can light up more than one at once.

Secret

AWS keys, tokens, private keys, and more. A live credential floors the score.

Destructive

Recursive deletes, DROP and TRUNCATE, and DELETE without a WHERE clause.

Injection

Prompt injection, SQL, NoSQL, template and shell injection, SSRF, and indirect injection in tool output.

Malware

Reverse shells, encoded PowerShell, download-and-run pipes, and credential dumping. Denied by default.

Financial

Crypto wallets, IBAN and SWIFT codes. Seed phrases and private keys are redacted like secrets.

PII

Emails, national IDs, bank routing numbers, IP addresses, and Luhn-checked cards.

Egress

Unbounded SELECT *, bulk export, exfiltration hosts, and oversized field values.

Model I/O guardrails

Guard the prompt and the response, not just the tools.

The same engine inspects what you send a model and what it sends back. inspectPrompt catches prompt injection, jailbreaks, and a secret or PII leaking into the prompt. inspectCompletion catches injected instructions, PII egress, and a leaked secret in the output. Both run locally, with no key and no network, or wrap your chat client to guard every call.

Inspect a prompt or a completion

import { inspectPrompt, inspectCompletion } from "@axiorank/sdk";

const p = inspectPrompt(userMessage);
if (p.decision === "deny") throw new Error(p.reason);

const out = await model.generate(userMessage);
const c = inspectCompletion(out.text);

Wrap your chat client

import OpenAI from "openai";
import { guardOpenAIChat } from "@axiorank/sdk";

const openai = new OpenAI();
const chat = guardOpenAIChat(openai.chat.completions);

// every call is scored on both sides
const res = await chat.create({ model: "gpt-4.1", messages });

Live inspector

Paste a tool call. Watch it get scanned.

Detection runs in your browser using the same patterns and severities as the gateway, and the score uses the production scoring function. Edit the arguments and the result updates instantly.

valid JSON · every string leaf is scanned

risk scorebase 9096
96/100
signals · 1
Secret
  • AWS access key idcritical
    secret.aws_access_key · env.AWS_ACCESS_KEY_ID
    redacted · sha256:96bca470

Secrets and personal data never reach the audit log in the clear.

From signals to a score

Many signals, with diminishing returns.

Each finding carries points by severity. The most severe signal counts in full, and each one after it counts for a little less, so a pile of tiny findings cannot game the number.

Weighted by severity

Low, medium, high, and critical findings each carry their own weight before they are combined.

Diminishing returns

Signals are combined so the score climbs fast on the first real finding and levels off after.

Critical floor

A live cloud key, a private key, or a forged signature floors the score at 90 or above on its own.

One credential is enough

A single live credential pushes the risk score to at least 90, no matter how harmless the rest of the call looks.

Redaction

Proof a secret was there, without storing it.

When a detector finds a secret, the audit log keeps a fingerprint, not the value. You can prove a key leaked, see where, and confirm it was caught, while the raw secret is masked at write time and never persisted.

What your agent sent

{ "env": { "AWS_ACCESS_KEY_ID": "AKIAIOSFODNN7EXAMPLE" } }

What gets stored

{ "env": { "AWS_ACCESS_KEY_ID": "«redacted:secret.aws_access_key»" } }
fingerprint: redacted · sha256:1a2b3c4d

Every detector

Browse the catalog, scan an example.

Filter by category and severity, then run an example payload to see exactly which detectors fire.

Scan an example
Category
Severity

Showing 131 of 131 detectors

  • AWS access key id
    secret.aws_access_key
    critical
  • AWS secret access key
    secret.aws_secret_key
    critical
  • Azure storage account key
    secret.azure_storage_key
    critical
  • Google API key
    secret.google_api_key
    high
  • Google OAuth access token
    secret.google_oauth_token
    high
  • Cloudflare API token
    secret.cloudflare_token
    high
  • DigitalOcean token
    secret.digitalocean_token
    critical
  • GitHub token
    secret.github_token
    critical
  • GitHub fine-grained PAT
    secret.github_pat
    critical
  • GitLab personal access token
    secret.gitlab_pat
    critical
  • npm access token
    secret.npm_token
    critical
  • PyPI upload token
    secret.pypi_token
    critical
  • LLM provider API key
    secret.llm_key
    critical
  • Hugging Face token
    secret.huggingface_token
    high
  • Slack token
    secret.slack_token
    critical
  • Slack incoming webhook
    secret.slack_webhook
    high
  • SendGrid API key
    secret.sendgrid_key
    critical
  • Mailgun API key
    secret.mailgun_key
    high
  • Twilio auth token
    secret.twilio_token
    high
  • Telegram bot token
    secret.telegram_bot_token
    high
  • Discord bot token
    secret.discord_bot_token
    high
  • Stripe live key
    secret.stripe_key
    critical
  • Stripe webhook signing secret
    secret.stripe_webhook_secret
    high
  • Square access token
    secret.square_token
    critical
  • Shopify access token
    secret.shopify_token
    critical
  • HashiCorp Vault token
    secret.hashicorp_vault
    critical
  • Terraform Cloud token
    secret.terraform_cloud
    critical
  • Doppler token
    secret.doppler_token
    critical
  • Database URL with password
    secret.db_connection_string
    high
  • Supabase service key
    secret.supabase_key
    critical
  • PlanetScale token
    secret.planetscale_token
    critical
  • Databricks token
    secret.databricks_token
    high
  • Datadog API key
    secret.datadog_key
    high
  • New Relic API key
    secret.newrelic_key
    high
  • Sentry auth token
    secret.sentry_token
    high
  • Grafana service-account token
    secret.grafana_token
    high
  • Postman API key
    secret.postman_key
    high
  • Okta API token
    secret.okta_token
    high
  • Linear API key
    secret.linear_key
    high
  • Notion integration token
    secret.notion_token
    high
  • Figma access token
    secret.figma_token
    high
  • Dropbox access token
    secret.dropbox_token
    high
  • Private key (PEM)
    secret.private_key
    critical
  • JSON Web Token
    secret.jwt
    high
  • Bearer token
    secret.bearer
    high
  • Hardcoded credential
    secret.assignment
    medium
  • Email address
    pii.email
    medium
  • US Social Security Number
    pii.ssn
    high
  • US Individual Taxpayer ID
    pii.itin
    high
  • US Employer ID Number
    pii.ein
    medium
  • Phone number
    pii.phone
    low
  • Credit card number
    pii.credit_card
    high
  • US bank routing number
    pii.us_routing
    medium
  • UK National Insurance number
    pii.uk_nino
    medium
  • Canada Social Insurance Number
    pii.ca_sin
    medium
  • India Aadhaar number
    pii.aadhaar
    high
  • Passport number
    pii.passport
    medium
  • IPv4 address
    pii.ipv4
    low
  • IPv6 address
    pii.ipv6
    low
  • MAC address
    pii.mac_address
    low
  • Recursive/forced file delete
    destructive.rm_rf
    high
  • World-writable permissions
    destructive.chmod_777
    medium
  • Disk format or overwrite
    destructive.disk_wipe
    high
  • PowerShell recursive force delete
    destructive.powershell_remove
    high
  • Git force push
    destructive.force_push
    medium
  • Git hard reset / clean
    destructive.git_history_wipe
    medium
  • SQL DROP/TRUNCATE
    destructive.sql_drop
    high
  • SQL DELETE/UPDATE without WHERE
    destructive.sql_no_where
    high
  • SQL GRANT/REVOKE ALL
    destructive.sql_grant
    medium
  • Resource destruction
    destructive.resource_delete
    high
  • Infrastructure teardown
    destructive.iac_destroy
    high
  • Kubernetes/Helm delete
    destructive.k8s_delete
    high
  • Container/volume prune
    destructive.container_prune
    medium
  • Cloud resource delete
    destructive.cloud_delete
    high
  • Datastore flush
    destructive.datastore_flush
    high
  • Host shutdown/reboot
    destructive.system_power
    medium
  • Firewall disable/flush
    destructive.firewall_flush
    medium
  • Crontab wipe
    destructive.cron_clear
    medium
  • Dangerous CLI flag
    destructive.dangerous_flag
    low
  • Prompt injection
    injection.prompt
    high
  • System-prompt override
    injection.system_override
    high
  • SQL injection
    injection.sql
    high
  • NoSQL operator injection
    injection.nosql
    high
  • Shell/command injection
    injection.shell
    high
  • Code-execution sink
    injection.code_exec
    high
  • Template (SSTI) injection
    injection.template
    medium
  • XML external entity
    injection.xxe
    high
  • Cross-site scripting
    injection.xss
    medium
  • CRLF / header injection
    injection.crlf
    medium
  • Unsafe deserialization / prototype pollution
    injection.deserialization
    high
  • LDAP injection
    injection.ldap
    medium
  • SSRF / internal endpoint
    injection.ssrf
    high
  • Path traversal
    injection.path_traversal
    medium
  • DAN-style jailbreak
    injection.jailbreak.dan
    high
  • No-restrictions jailbreak
    injection.jailbreak.no_restrictions
    high
  • Safety-policy override
    injection.jailbreak.policy_override
    high
  • Roleplay-escape jailbreak
    injection.jailbreak.roleplay_escape
    medium
  • Adversarial persona
    injection.jailbreak.persona
    high
  • System-prompt exfiltration
    injection.jailbreak.prompt_leak
    high
  • Emotional-pretext jailbreak
    injection.jailbreak.emotional_pretext
    medium
  • Instruction override in tool output
    injection.tool_output_override
    high
  • Data-exfiltration markdown link or image
    injection.exfil_markdown
    high
  • Embedded tool-call directive
    injection.tool_directive
    high
  • Fake role or chat marker in content
    injection.role_marker
    medium
  • Suspicious encoded blob
    injection.encoded_payload
    medium
  • Hidden unicode smuggling
    injection.hidden_unicode
    high
  • Unbounded SELECT *
    egress.select_star
    medium
  • Bulk data export
    egress.bulk_export
    high
  • Exfiltration / tunnel host
    egress.exfil_host
    high
  • Encoded blob in outbound URL
    egress.base64_in_url
    medium
  • Large embedded data URI
    egress.data_uri
    medium
  • Outbound to suspicious TLD
    egress.suspicious_tld
    low
  • Bulk recipient list
    egress.bulk_recipients
    medium
  • Large field value
    egress.large_value
    low
  • Reverse shell
    malware.reverse_shell
    critical
  • Encoded PowerShell
    malware.encoded_powershell
    critical
  • Download-and-run pipe
    malware.remote_exec_pipe
    critical
  • Download cradle
    malware.download_cradle
    high
  • Embedded PE executable
    malware.pe_header
    high
  • Credential dumping
    malware.credential_dumping
    critical
  • Security-control tampering
    malware.disable_defense
    high
  • Persistence mechanism
    malware.persistence
    high
  • Obfuscated eval of encoded payload
    malware.base64_eval
    high
  • Obfuscated shell decode-and-run
    malware.obfuscated_shell
    medium
  • Fork bomb
    malware.fork_bomb
    high
  • Crypto private key
    financial.crypto_privkey
    critical
  • Bitcoin address
    financial.btc_address
    medium
  • Ethereum address
    financial.eth_address
    medium
  • SWIFT / BIC code
    financial.swift_bic
    medium
  • IBAN
    financial.iban
    high
  • Crypto seed phrase
    financial.seed_phrase
    critical

See what your agents are really sending.

Route a tool call through the gateway and get a scored, redacted record of every payload in under 100 milliseconds.