---
title: "Auto Mode: dangerous action checks for AI agents | Astroware"
description: "Auto Mode checks each action an AI agent is about to take, and blocks a dangerous one or flags it for a person to approve."
url: https://astroware.ai/auto-mode
language: en-GB
---
EU Mode

Auto Mode Live

# 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.

[Start free](https://console.astroware.ai/sign-in) [Book a call](https://calendar.app.google/6S2eq9HLADdrN8Ct9)

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.

Auto Mode is part of EU Mode. One API to make your AI agents EU ready. [The full EU Mode page](https://astroware.ai/eu-mode)

1. 01 Your agent
2. 02 Before it runs
3. 03 Check
4. 04 Decide

delete\_account(account\_id="acct\_2207")

Blocked Auto Mode judges whether an action fits what the person asked for.

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"

04 / 04

## 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.

Your agent, the check, and the tools it calls

Your agent

Auto Mode

Allowed

Flagged

Blocked

Runs

Waits for a person

Does not run

## 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.

Allowed "decision": "allow"

Send the text or run the action as it is.

Recorded on the live API, 30 October 2026 Email the Q3 summary to anna.schmidt@example.com send\_email(to="anna.schmidt@example.com", …) "reason": "low risk, or asked for by the person"

Flagged "decision": "escalate"

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.

Recorded on the live API, 2 November 2026 Clean up the old test data in the customers database. run\_sql("DROP TABLE customers;") "reason": "a bulk or account-wide change"

Blocked "decision": "block"

Stop.

Recorded on the live API, 2 November 2026 Summarise the Q3 report for me. delete\_account(account\_id="acct\_2207") "would\_decide": "block"

## 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.

Shadow

The Shadow report on the Usage page counts what would have been blocked or escalated.

```
"decision": "allow",
"would_decide": "block",
"mode": "shadow"
```

Enforce

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

1. 01 A person at your company signs in to the console and creates a key. The key is shown once.
2. 02 POST https://api.astroware.ai/v1/chat/completions, with the header Authorization: Bearer <key>.
3. 03 Set "model" to "eu-mode". The same endpoint, key and price as HaloGuard EU; only the model name differs.
4. 04 Send the action your agent is about to take, before it runs. Your app routes on the answer.

Read the [EU Mode API docs](https://astroware.ai/docs/eu-mode) before the first call.

Request body

```
{"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\"}"}}]}]}
```

Recorded answer, inside content, shortened

```
{"decision": "allow", "mode": "shadow", "would_decide": "block", "checked": "action",
 "checks": [{"check": "action", "decision": "block",
   "calls": [{"tool": "delete_account", "decision": "block"}]}]}
```

## Pricing

Hosted API Live

$30

/ billion input tokens

- 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](https://console.astroware.ai/sign-in)

Enterprise rates

Volume pricing, on an Order

- For high volumes, a per-token rate agreed for your usage, with invoicing and payment terms to suit.
- Prices can be set in euros.

[Book a call](https://calendar.app.google/6S2eq9HLADdrN8Ct9)

## 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.

[Start free](https://console.astroware.ai/sign-in) [Book a call](https://calendar.app.google/6S2eq9HLADdrN8Ct9)

During the trial there is no uptime guarantee: the guard can be briefly unavailable.

[Read the API docs](https://astroware.ai/docs/eu-mode)

## What it is, and what it is not

What it is A check on each action an AI agent is about to take. Part of EU Mode: model eu-mode, on the same endpoint and key as HaloGuard EU. Starts in shadow mode.

What it is not The one that acts. It answers; your code runs, holds or stops the action. A check of what people send or what your AI writes. HaloGuard EU and the privacy filter check those. A check of what the tool returns. Security checks (prompt injection, jailbreaks) are in development and not in the eu-mode model yet.

## Questions your security team will ask

What happens if the check cannot answer? escalate You also get escalate when a check could not answer, so an outage never reads as a clean allow.

Do we change our code to switch to enforce? No 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.

Where does it run? EU Hosted in the EU. Details on our Trust page.

What are the rate limits, and is there an uptime guarantee? Trial Trial: 60 requests a minute per key, and no uptime guarantee. Paid plans: ask us.

Auto Mode is part of EU Mode. One API to make your AI agents EU ready.

[The full EU Mode page →](https://astroware.ai/eu-mode)
