by mikehasa
See what your coding agents did and what it cost. Breaks each task down into work steps — tools used, files changed, tests run, time and tokens spent. Local-first dashboard for Claude Code, Codex, OpenCode, and more. No login, no telemetry.
# Add to your Claude Code skills
git clone https://github.com/mikehasa/agentacctagentacct is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by mikehasa. See what your coding agents did and what it cost. Breaks each task down into work steps — tools used, files changed, tests run, time and tokens spent. Local-first dashboard for Claude Code, Codex, OpenCode, and more. No login, no telemetry. It has 530 GitHub stars.
agentacct's catalog security scan is still queued. You can run an instant dependency and prompt-injection check now with the "Scan for vulnerabilities" button above.
Clone the repository with "git clone https://github.com/mikehasa/agentacct" and add it to your Claude Code skills directory (see the Installation section above).
agentacct is primarily written in Python. It is open-source under mikehasa on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh agentacct against similar tools.
No comments yet. Be the first to share your thoughts!
Unlocks once the catalog security scan passes (runs nightly).
The deep catalog scan for this skill is still queued. Run an instant dependency check now instead.
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.

Screenshots show a synthetic demo workspace; your dashboard renders your machine's real local data.
client_reported; costs are clearly marked pricing-table estimates, never invoices.Verified evidence, an agent's own claim stays labeled Agent reported.exact/high/medium/low). Missing attribution beats wrong attribution: when agentacct cannot prove a link, it shows the gap instead of a guess.
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).
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.
agentacct is early alpha, and it would rather show you a gap than a guess:
agentacct capabilities agents prints the same truth for your machine.Interfaces may change while agentacct is alpha.
agentacct keeps two evidence streams separate and joins them on real client ids instead of guessing:
client_reported, and costs are pricing-table estimates — never provider invoices.agentacct_record_section, agentacct_record_machine_check), plus machine checks like test runs.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.
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
agentacct is early alpha. Useful feedback:
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.