Skip to content

Repository files navigation

Agento

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.

Release CI Downloads Stars License Last commit

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.


Agento's Insights view: cost, autonomy, cache-hit and tool-error cards over your Claude Code sessions, with every tool call attributed to a skill, MCP server or sub-agent


⚑ Install

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 xattr command; 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.app

Either 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, openSUSE

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


🧭 What you get

Every token type, priced properly

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.

Token Usage: token composition, tokens over time, cache efficiency

Cost is attributed to the model that spent it β€” sub-agents included β€” and to the project.

Show screenshot

Cost by model and by project

Find out whether you are getting more effective

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.

Show screenshot

Tool calls attributed to skills, plugins, MCP servers and reasoning effort

Understand your working patterns

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.

Show screenshot

Weekly rhythm heatmap and busiest sessions

Browse and search every session you have ever run

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.

Show screenshot

The Sessions list with the inspector

Replay any session step by step

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.

A session transcript with tool calls and a sub-agent delegation expanded

Show the session's own metrics

Session detail with the inspector's activity and token panels

Chat with agents you built yourself

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.

Show screenshots

A chat with the code-reviewer agent

The agents list and builder

The agent builder's capabilities section

Put agents on a schedule

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.

Show screenshot

Scheduled tasks with recent runs

Connect the tools you already use

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.

Show screenshot

Integrations: GitHub connected, with its services and tools

Route your other tools through Agento

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.

LLM Gateway Overview: the listener running on 127.0.0.1:8880, the Create gateway token button, and copyable env snippets for the OpenAI SDK, the Anthropic SDK, Claude Code and curl

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.

LLM Gateway Providers: a Moonshot provider on the OpenAI adapter with its base URL, an empty API key field and connect, first-byte and idle timeouts

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.

LLM Gateway Models: the open-weight-models alias routing to Moonshot k3 first, then z_ai_glm glm-5.2, with a fallback below

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.

LLM Gateway Usage: requests, tokens, cost, error rate and p95 latency cards over 30 days, with requests, tokens and spend over time and breakdowns by alias and provider

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.

Gateway Settings: enable the gateway, port 8880, start with the app, and a 90-day usage-log retention horizon

Setup, both base URLs and the token scopes are in the user guide.

Honest pricing, your data

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.

Show screenshots

The model pricing catalog

Data settings: idle threshold and hidden projects

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.


⌨️ Keyboard shortcuts

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

⭐ Spread the word

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

X LinkedIn Bluesky Reddit Hacker News

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.
Star history
Star history chart for shaharia-lab/agento

πŸ“š Documentation

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

🀝 Contributing

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.

Contributors

πŸ“„ License

MIT β€” do what you like, no warranty.

Built with Tauri and Rust Β· runs on the Claude Code CLI you already have.


Made with ❀️ by Shaharia Lab

⭐ Star Agento if it saved you money or time.

About

Production ready Personal AI Agent Platform using Claude Code CLI. Focused on productivity, reliability and security at it's core

Topics

Resources

Contributing

Security policy

Stars

31 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages