# aion 0.1.0: a second mind for buyer emotion, one call from any agent

aion is a free command that gives any agent a second mind for how buyers feel: one call to Aion 3.5, with a spend cap on the call, the day and the month. Half the calls in its log cost 2.2 cents or less. Install with one cargo line.

`aion ask "question"` gives an agent a second mind for how a buyer feels. It sends one question to Aion 3.5, for example how a painter reads your page's first screen, and prints the answer. It has three spend caps, and it logs every call. Across the 117 calls in our log that finished, the middle one took 61 seconds and cost 2.2 cents.[1] Why did every call that hit the cap still finish above it?

## What do I get?

1. **A model with no tools.** Aion cannot open files or browse. You pass it what you already read with `--attach FILE`, as many files as you like, so it answers from what you gave it.
2. **Three caps.** The defaults are $0.10 a call, $10 a day and $10 a month. A call that reaches the cap is stopped. A call is refused when the day or month spend is already at its cap.
3. **A conversation when you want one.** `--session NAME` starts a back-and-forth, and `--persona FILE` says who Aion is for that session. `aion transcript NAME` prints the whole exchange.
4. **A spend line you can read.** `aion status` shows today and this month against the caps.
5. **An exit code for each outcome.** 0 answered, 1 failed, 2 bad usage, 3 refused at a cap, 4 answered but stopped at the per-call cap.

## What does using it look like?

```
$ aion ask --attach notes.md "Which of these three offers would a plumber read first, and why?"
```

The answer comes on stdout and the cost and caps on stderr, so you can pipe the answer on. `aion status` reads like this:

```
Aion spend, 2026-10-27: today $0.2564 of $10.0000 (13 calls); this month $4.8169 of $10.0000; per call $0.1000.
Caps are the defaults (no [aion] table in ~/.config/aion/budget.toml).
```

Every call goes into a log, `~/.local/share/aion/calls.jsonl`. Two real rows from ours, trimmed to the interesting fields:

```
2026-10-24T19:09:24  finished  590 in  4026 out  $0.025643   77.6 s
2026-10-26T10:19:22  capped    265 in 24370 out  $0.146756  454.3 s
```

The second call hit the $0.10 cap and was stopped, with the answer it had so far. It ended at $0.147, because a call is stopped at the end of the turn that reaches the cap, so a capped call can cost up to one turn more than the cap. In 133 calls, 10 were capped, and every one of those finished above $0.10.[3] To set the caps yourself, put an `[aion]` table with `per_call_usd`, `per_day_usd` and `per_month_usd` in `~/.config/aion/budget.toml`.

## How do I install it?

You need Rust, an OpenRouter key in `OPENROUTER_API_KEY`, and pi 1.4.0. Then:

```
cargo install --git https://github.com/mackenziebowes/aion --tag v0.1.0
```

The code is MIT licensed.[2] What did its first five days cost, and why did every capped call finish above the cap? The answers are in [why every agent on our machine has a second mind for buyer emotion](/posts/aion-a-capped-call-to-a-model-with-no-tools).

If you're giving your agents a second mind for how buyers feel, I'd like to compare notes: mackenzie@mackenziebowes.com or [@_mackenziebowes](https://x.com/_mackenziebowes).

## Sources

1. aion, MIT licence, Mackenzie Bowes, README. <https://github.com/mackenziebowes/aion>
2. aion v0.1.0, published 2026-10-28T02:10Z. <https://github.com/mackenziebowes/aion/releases/tag/v0.1.0>
3. Mackenzie Bowes, "Why every agent on our machine has a second mind for buyer emotion", 2026-10-27. <https://mackenziebowes.com/posts/aion-a-capped-call-to-a-model-with-no-tools>

---

Published 2026-10-27. Web page: https://www.mackenziebowes.com/posts/aion-release-a-capped-call-to-a-model-with-no-tools
