Dangerous action checks for AI agents.
For teams whose AI agents call tools.
Auto Mode is like Claude Code Auto Mode but for all agents.
Checks each action an AI agent is about to take, and blocks a dangerous one or flags it for a person to approve.
- 01Your agent
- 02Before it runs
- 03Check
- 04Decide
delete_account(account_id="acct_2207")
In shadow mode it lets the action through and reports what enforce would do. In enforce, your code stops it."decision": "allow", "would_decide": "block"
Where it sits
An agent acts thousands of times a day, in many languages, on instructions it reads from documents and tools. As your agents take actions for people, Auto Mode checks each action before it runs, and blocks a dangerous one or flags it for a person to approve.
Three answers
It answers allow, escalate or block. Your app routes on that answer. Auto Mode judges whether an action fits what the person asked for.
Send the text or run the action as it is.
Hold it for a person to approve. You also get escalate when a check could not answer, so an outage never reads as a clean allow.
Stop.
Shadow mode
Every key starts in shadow mode
It reports what it would have decided and blocks nothing, until you switch the key to enforce in the console.
The Shadow report on the Usage page counts what would have been blocked or escalated.
"decision": "allow", "would_decide": "block", "mode": "shadow"
Write your routing once. Switching a key from shadow to enforce needs no change to your code, and takes effect on the key’s next call.
"decision": "block", "would_decide": "block", "mode": "enforce"
Shadow: the recorded answer to delete_account. Enforce: the same fields, showing the shape, not a recording.
The API
How to call it
- 01A person at your company signs in to the console and creates a key. The key is shown once.
- 02POST https://api.astroware.ai/v1/chat/completions, with the header Authorization: Bearer <key>.
- 03Set "model" to "eu-mode". The same endpoint, key and price as HaloGuard EU; only the model name differs.
- 04Send the action your agent is about to take, before it runs. Your app routes on the answer.
Read the EU Mode API docs before the first call.
{"model": "eu-mode", "messages": [
{"role": "user", "content": "Summarise the Q3 report for me."},
{"role": "assistant", "content": null,
"tool_calls": [{"id": "call_1", "type": "function",
"function": {"name": "delete_account",
"arguments": "{\"account_id\": \"acct_2207\"}"}}]}]}{"decision": "allow", "mode": "shadow", "would_decide": "block", "checked": "action",
"checks": [{"check": "action", "decision": "block",
"calls": [{"tool": "delete_account", "decision": "block"}]}]}Pricing
- Output tokens are free on all models.
- The same endpoint, key and price as HaloGuard EU; only the model name differs.
- Tokens of your text are counted each time they go through a model: text sent to two models, or through two checks in eu-mode, is counted twice.
Start with a $5 trial budget
Start free- For high volumes, a per-token rate agreed for your usage, with invoicing and payment terms to suit.
- Prices can be set in euros.
Turn it on in shadow mode.
Sign in with your work email to start your company’s free trial: a $5 budget, shared by up to 5 active keys.
During the trial there is no uptime guarantee: the guard can be briefly unavailable.
What it is, and what it is not
Questions your security team will ask
Auto Mode is part of EU Mode. One API to make your AI agents EU ready.
The full EU Mode page →