See what Claude Code really costs you, replay any session, and put agents to work β from one desktop app.
Agento reads the session files Claude Code already writes to your disk and turns them into cost analytics, productivity insights and a searchable, replayable history of every run. It also lets you build agents, chat with them, schedule them, and connect them to the tools you use. No API key, no account, no telemetry. Everything stays on your machine.
Install Β· What you get Β· Shortcuts Β· Docs Β· Contributing
β Like the idea? Star the repo.
It takes two seconds, and it is how the next Claude Code user finds Agento.
Three steps, about a minute. Agento runs on macOS, Windows and Linux.
1. Have Claude Code β installed and signed in
Agento runs every agent through the Claude Code CLI you already
have and reuses its sign-in. If claude works in your terminal, you are ready. There is no
Anthropic API key to enter; the app tells you on launch if the CLI is missing.
2. Download β pick your platform from the latest release
| Platform | File | Updates |
|---|---|---|
| macOS Apple Silicon / Intel | Agento_<version>_aarch64.dmg / _x64.dmg |
In-app |
| Windows x64 | Agento_<version>_x64-setup.exe |
In-app |
| Linux any distro | Agento_<version>_amd64.AppImage / _aarch64.AppImage |
In-app |
| Linux Debian / Ubuntu | Agento_<version>_amd64.deb / _arm64.deb |
Notify only |
| Linux Fedora / RHEL / openSUSE | Agento-<version>-1.x86_64.rpm / .aarch64.rpm |
Notify only |
[!IMPORTANT] macOS: the app is ad-hoc signed, not notarised. The first launch needs one trip to System Settings β Privacy & Security β Open Anyway, or one
xattrcommand; updates the app installs itself never ask again.
In-app means Agento downloads, verifies and installs the next version itself. .deb
and .rpm are owned by your package manager, so Agento only tells you when one exists.
Want in-app updates on Linux? Take the AppImage. Every file ships with a .sig from
Agento's own update key.
macOS β first launch
Drag Agento into Applications and open it. macOS blocks it once, because the app is not signed with an Apple Developer certificate: go to System Settings β Privacy & Security, scroll down, click Open Anyway.
If the warning only offers Move to Trash and Done, and no Open Anyway line appears in Privacy & Security, remove the quarantine flag instead:
xattr -dr com.apple.quarantine /Applications/Agento.appEither way you do it once. Updates installed by the app never ask again.
Windows β first launch
Run the installer. SmartScreen warns about an unrecognised publisher: click More info, then Run anyway. It asks for administrator rights because it installs for all users, and brings its own WebView2 runtime if your machine has none.
Linux β AppImage, deb, rpm
chmod +x Agento_*.AppImage && ./Agento_*.AppImage # no install, no root, updates in place
sudo apt install ./Agento_*_amd64.deb # Debian, Ubuntu
sudo dnf install ./Agento-*.x86_64.rpm # Fedora, RHEL, openSUSEThe packages declare their GTK and WebKitGTK dependencies; your package manager resolves them.
Full details, including building from source, in the installation guide.
3. Launch β your history is already there
Agento opens on Chats and starts indexing the Claude Code history on your disk. A large
history takes a few minutes the first time; the Sessions view shows progress and everything
else works meanwhile. Your data lives in ~/.agento (%USERPROFILE%\.agento on Windows)
as one SQLite file. Nothing is uploaded anywhere.
Tip
Ctrl K (β K on macOS) opens the command palette from anywhere β every view, action
and setting is one keystroke away. The rest of the shortcuts are below.
Input, output, cache reads and cache writes bill at very different rates, so Agento keeps them apart instead of multiplying one total by one price. The model with the most tokens is often not the model taking your money.
Cost is attributed to the model that spent it β sub-agents included β and to the project.
Insights goes past raw counts: turns per session, how far Claude got before it had to ask you something, cache hit rate, tool error rate β then every tool call attributed to the skill, plugin, MCP server or sub-agent responsible. Durations mean active time; idle gaps beyond a threshold you set are excluded everywhere.
Sessions per day, model mix, busiest days, and a weekly heatmap that counts a session in every hour it was running, not only the hour it finished.
Filtered and paged in SQL, so it stays fast at 5,000 sessions. Search titles and content; filter by project, model, date, cost or duration; see permission mode, linked pull requests, tokens and cost on every row, with the inspector beside it.
Open a session and read the whole run in order β every prompt, response, tool call and result, with sub-agent delegations and failing commands where they happened. When a long autonomous run goes wrong, this is where you find out where.
Give an agent a name, a system prompt, a model, a thinking mode and an explicit allowlist
of tools; {{current_date}}-style variables are filled in at runtime. Then chat with it
in the app β every turn runs through your own Claude Code CLI, tool calls and Markdown
render inline, and the inspector shows what it cost.
Cron, fixed interval, or once at a given time. Every run is recorded with status, duration and full output, so you can see exactly what happened while you were away.
GitHub, Slack, Jira, Confluence, Telegram and Google (Calendar, Gmail, Drive) are built in,
each running as an MCP server inside the app β no extra daemon. Any other MCP server can be
added through ~/.agento/mcps.yaml.
Turn on the built-in LLM Gateway and Agento serves an OpenAI-compatible and an
Anthropic-native endpoint on 127.0.0.1, forwarding to providers you configure with your
own keys. Point the OpenAI SDK, the Anthropic SDK or Claude Code at it and get ordered
fallback between providers plus a record of what every tool spent. Off by default β a
fresh install binds no port.
Show the LLM Gateway, view by view (five screenshots)
Overview. Is the listener up, mint the one token a tool config needs, and copy the
environment variables for the OpenAI SDK, the Anthropic SDK or Claude Code. The token is
llm-scoped: it can spend your provider credits and can reach nothing else in Agento.
Providers. One upstream account each: adapter type, base URL, your API key and the three timeouts. A stored key is never returned by any read, so the field is empty every time you open the form.
Models. An alias is the whole routing key: the name your tools send as model. Its
targets are tried in order, and the fallbacks are walked only after every target has
failed.
Usage. One row per served request, with requests, tokens, cost, error rate and p50 / p95 latency, broken down by alias, provider, wire format and which token spent it. A model the pricing catalogue does not cover is counted and named, never charged at zero.
Gateway Settings. The enable switch, the port you paste into tool configs, whether the listener starts with the app, and how long usage rows are kept.
Setup, both base URLs and the token scopes are in the user guide.
Rates for Anthropic, Moonshot, Z.ai and Alibaba models ship with the app and are
effective-dated; a model with no published rate is reported as unknown rather than priced
as something else. Agento reads ~/.claude and caches into a local SQLite file β there is
no account and no server. Hide projects from every report, set the idle threshold yourself.
Screenshots are taken from the app: the Claude Code views over a synthetic dataset, the
LLM Gateway views from a live gateway configuration with no key or token on screen. See
docs/screenshots/README.md.
Ctrl on Windows and Linux, β on macOS.
| Shortcut | Action | Shortcut | Action |
|---|---|---|---|
Ctrl K |
Command palette | Ctrl B |
Show / hide the sidebar |
Ctrl N |
New chat | Ctrl I |
Show / hide the inspector |
Ctrl , |
Settings | Ctrl [ / Ctrl ] |
Back / forward |
Ctrl 1 β¦ Ctrl 7 |
Jump to a section |
Made it this far? Then Agento is probably useful to you β and the fastest way to keep it alive is to make it easier for the next person to find.
β Star Agento Β· π¬ Say hello in Discussions Β· π Report something broken
Share it with one person who uses Claude Code
In rough order of usefulness:
- β Star the repo β the single highest-leverage thing.
- π Open an issue when something breaks or a view feels wrong.
- π¬ Tell one person who uses Claude Code every day.
- βοΈ Write about it β a blog post, a work Slack message, a comment on HN or Reddit.
- π οΈ Send a PR β see Contributing below.
Everything lives in docs/.
|
User guide β how to use it
|
Developer docs β how to work on it npm install
npm run app # dev window, hot reload
npm run app:build # installers for this platform |
Contributions are very welcome. Open an issue first describing what and why, wait
for triage, then send a PR that links it. Start with
good first issue
or help wanted.
The full policy is in CONTRIBUTING.md; security issues go through
SECURITY.md, never a public issue.
MIT β do what you like, no warranty.
Built with Tauri and Rust Β· runs on the Claude Code CLI you already have.



















