Skip to main content

agentacct

tests PyPI Python License: MIT

See what your coding agents actually did — and what it cost — on a dashboard that never leaves your machine.

agentacct is local-first Agent Work Intelligence for coding agents. It reads the session logs that Claude Code and Codex already write on your machine, joins them with the work each session records as it goes, and shows the result — tokens, estimated cost, tasks, and evidence — on a local dashboard.

Private by design. Everything stays on your machine: state is plain local files, the dashboard binds to 127.0.0.1, and there is no phone-home telemetry, no account, no cloud sync. agentacct never stores or requests a provider API key.

agentacct dashboard: token usage, estimated cost, and per-agent breakdown charts

Screenshots show a synthetic demo workspace; your dashboard renders your machine's real local data.

What you get

  • Honest usage and cost. Tokens per agent, model, and day — read from the clients' own local session files and labeled client_reported; costs are clearly marked pricing-table estimates, never invoices.
  • The work, not just the tokens. Sessions roll up into Tasks with recorded work steps and machine checks: a passing test is Verified evidence, an agent's own claim stays labeled Agent reported.
  • Attribution you can trust. Every join between usage and recorded work carries a confidence label (exact/high/medium/low). Missing attribution beats wrong attribution: when agentacct cannot prove a link, it shows the gap instead of a guess.

agentacct dashboard: recent tasks with work steps, checks, and per-task token totals

Install

Requires Python >= 3.11 on macOS or Linux; Windows is supported only via WSL.

pipx install agentacct
agentacct onboard   # once per machine (global by default)

No pipx yet? Install it first with brew install pipx (macOS) or python3 -m pip install --user pipx — or skip pipx entirely and use uv tool install agentacct. See INSTALL.md for a plain-venv fallback.

onboard installs agentacct once per machine (global by default, writing zero files into your repo): it detects your local coding-agent logs, sets up a global store, runs a first usage sync, and starts the dashboard at http://127.0.0.1:8765. Then open a new agent session in any repo — MCP servers and hooks bind at session start, so the session that ran onboarding cannot become the first recorded Task. (Prefer a per-repo install? Run agentacct onboard --scope project instead.)

Prefer to let the agent do it? Paste this into your coding agent:

Install and set up agentacct — a local-first dashboard that reads my
coding-agent logs read-only and shows honest token usage and cost.

Run `pipx install agentacct`
(or `pipx install git+https://github.com/mikehasa/agentacct`),
then `agentacct onboard` (installs once per machine, global by default, zero
files written into the repo), then tell me the dashboard URL.

Observe-only: never store, request, or echo any API key; all state stays local
on this machine. Don't modify my global client config without showing the exact
command first.

The agent then follows INSTALL.md, the canonical runbook: the global install, the manual per-client setup, and the full per-client capability matrix. agentacct setup prompt --agent <client> prints the same prompt.

Want to look around before touching your real data? agentacct demo runs a safe local walkthrough in a throwaway temporary store — no provider keys, no paid API calls.

The managed runtime is controlled with agentacct start / status / stop / repair; all state lives in the global store (by default ~/.local/state/agentacct/state; older global stores under ~/.agent-sentinel-global/state are still recognized). A --scope project install keeps its state in the repo's .agent-sentinel/ directory instead (gitignored; the directory keeps its pre-rename spelling for data compatibility).

Uninstall

agentacct stop                 # stop the managed sync + dashboard (owned processes only)
agentacct uninstall-autostart  # only if you installed autostart
pipx uninstall agentacct

Then remove what onboarding added. For a global install (the default): delete the global store (~/.local/state/agentacct/state — keep it if you want the history) and the agentacct entries in your user config (~/.claude.json, the merged blocks in ~/.claude/settings.json, the ~/.claude/hooks/ wrapper, and ~/.codex/config.toml). For a --scope project install: delete that repo's .agent-sentinel/ directory (that project's local ledger) and the agentacct entries onboarding added to .mcp.json / .claude/settings.local.json / ~/.codex/config.toml. If you installed the standing instruction block, remove it first with agentacct setup instructions --agent <client> --user --remove.

What it is honest about

agentacct is early alpha, and it would rather show you a gap than a guess:

  • No hosted anything. No hosted dashboard, no phone-home telemetry, no automatic cloud account sync. agentacct can receive telemetry locally when you explicitly point an OTLP exporter at it.
  • Estimates are labeled as estimates. There is no exact Claude Code/Codex subscription invoice access; costs come from a local pricing table and are labeled accordingly. See docs/usage-truth-table.md for what each path can and cannot prove.
  • No silent monitoring. agentacct only reads the local session files of detected clients and never watches unrelated processes started outside agentacct/integrations. Hard stops apply only to runs agentacct itself launched or the opt-in proxy path.
  • Support is per-capability, not per-logo. Claude Code and Codex have live-observed usage paths today; other clients (Hermes, OpenCode, OpenClaw, Cursor) have narrower, explicitly-scoped paths. The per-client claims are pinned in the capability matrix in INSTALL.md and docs/reference.md, and agentacct capabilities agents prints the same truth for your machine.

Interfaces may change while agentacct is alpha.

How it works

agentacct keeps two evidence streams separate and joins them on real client ids instead of guessing:

  • Usage truth comes from the client's own local session files: imported tokens are labeled client_reported, and costs are pricing-table estimates — never provider invoices.
  • Work meaning comes from the sections and events the agent records over MCP while it works (agentacct_record_section, agentacct_record_machine_check), plus machine checks like test runs.
  • The join links the two through session/transcript ids and labels every attribution exact, high, medium, or low. For Claude Code, an installed hook bridge captures real session/transcript ids at session start and on every tool call; for Codex, the link is evidenced from the client's own session logs at import time.

The per-client join mechanics, confidence-label glossary, daily workflow, MCP tool list, and optional enforcement extras are in docs/reference.md.

Documentation

Development

See CONTRIBUTING.md for contribution scope, safety principles, and PR expectations.

Run tests from a clone (the pipx install above ships no test tooling):

python3 -m venv .venv
.venv/bin/python -m pip install -e .
.venv/bin/python -m pip install pytest
.venv/bin/python -m pytest tests/ -q --tb=short

Feedback

agentacct is early alpha. Useful feedback:

  • Which agent or tool do you use?
  • What runaway, cost, or observability issue did you hit?
  • Which join/attribution result looked wrong or missing?
  • What report would help you trust a run?
  • Which integration should be supported next?

Open an issue with a bug report, feature request, or integration request. Please scrub any provider API keys or private paths from logs before sharing them.

Metadata

Release files for agentacct 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agentacct 0.5.0
File Size Uploaded
agentacct-0.5.0.tar.gz 987.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agentacct 0.5.0
File Interpreter ABI Platform
agentacct-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.0 MB

Release files / agentacct-0.5.0.tar.gz

Download URL agentacct-0.5.0.tar.gz
Size 987.6 kB
Tags Source
SHA-256 checksum
How to use checksums
b7fd310f57303bdb4dfa1d76797f89642d16d0554c30a582c4ed4d5512565050
BLAKE2b-256 checksum
How to use checksums
70ef640e39a6bb4d339ff819300b0ed0e1a43e0b76fb52311b5e8a5e789df549
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 29, 2026.

Transparency log

Release files / agentacct-0.5.0-py3-none-any.whl

Download URL agentacct-0.5.0-py3-none-any.whl
Size 1.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
c9db73cf4d1a1dc156250e3d4af8d76366c181141e25fa10d10b56b7399758ca
BLAKE2b-256 checksum
How to use checksums
36b07f3cd6df875ae49e92ead20efe1b4991e799953556ad24699af18e7cd966
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 29, 2026.

Transparency log

Release history Release notifications | RSS feed

0.12.9

2 release files

0.12.8

2 release files

0.12.7

2 release files

0.12.6

2 release files

0.12.5

2 release files

0.12.4

2 release files

0.12.3

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.9

2 release files

0.10.8

2 release files

0.10.7

2 release files

0.10.4

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

This release

0.5.0 This release

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page