neatroots CLI

Local review of your AI agent runs: checks, traces and call replay, with Claude Code and Codex getting 23 MCP tools.

  • 80 ★ on the repository
  • Last commit
  • Apache-2.0
CLI

Extended access

Why this level

  • The service ingests traces with prompt content, replays model calls, and the `query_sql` tool reads the local run database.
All reasons and checks

neatlogs/neatroots

Install

Manual install

curl -fsSL https://raw.githubusercontent.com/neatlogs/neatroots/main/install.sh | sh

Then `neatroots start` and `neatroots connect` to wire up agents. Windows through WSL.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The service ingests traces with prompt content, replays model calls, and the `query_sql` tool reads the local run database.

This is third-party code. Review the repository files before installing.

What it does

neatroots runs on a laptop, takes traces of the agent under development through the Neatlogs SDKs, OpenTelemetry over OTLP or HTTP and stores them in SQLite. Rules in code look for loops, repeated calls, error streaks, leaked keys and empty runs. Yes or no questions are answered by a local decision model, and the explanation of a failure with a suggested fix is written by an LLM. A run is shown four ways: a chat-like overview, the trace tree, a timeline and the session conversation. A single LLM call can be re-run with an edited message, model or system prompt. `neatroots connect` wires Claude Code, Codex, Cursor and six more clients over MCP: 23 tools read a run, explain it, compare runs, create checks and replay calls. Claude Code and Codex also get four skills.

Who it is for. Developers of AI agents who debug failures on their own machine and want to hand ready evidence to a coding agent for the fix.

Good fit when

  • An agent reported success after a failed tool call and you need to find that run.
  • One failing step is replayed with another model without running the whole agent.
  • A streak of repeated tool calls becomes a rule that catches it from then on.
  • Runs from the Neatlogs cloud are pulled to the laptop for review.

Not a fit when

  • You need a permanent production monitoring platform, while neatroots is built for development.
  • Nothing may be installed through a `curl` install script.
  • You work on Windows without WSL, which is not supported.

Example request

Fix what neatroots found in my last run and add a check so this failure is caught next time.

Limitations

It runs on macOS and Linux (arm64 and x64) and on Windows through WSL. The installer puts a package of about 17 MB into `~/.neatroots`, uses your Node.js 22 or newer and downloads its own when it is missing. The Laya decision model weighs about 1.4 GB and is downloaded once on request. Questions and explanations need an LLM, local through Ollama by default, and with a cloud model on, run content goes to the provider with secrets removed. Sending to Neatlogs Cloud and hints to the running agent are switched on separately. The `replay` and `rerun` tools call models again and may cost money.

How to disable. Stop the `neatroots` service and delete the `~/.neatroots` directory with the link in `~/.local/bin`. Remove the `neatroots` entries from client MCP settings by hand.

FAQ

How do I try it without API keys?

Start `neatroots mock-llm` and an example from `~/.neatroots/app/examples`: the mock model speaks the OpenAI and Anthropic APIs. Open `http://localhost:4100` and find the run.

Which agents connect over MCP?

Claude Code, Codex, Cursor, OpenCode, Windsurf, Amp, Gemini CLI, VS Code and Claude Desktop. Other clients can use `http://localhost:4100/mcp` and `neatroots mcp` over stdio.

What leaves the machine?

Nothing until you send a run yourself or turn on a hosted model. Then the content a task needs goes to the provider with secrets removed.

Which traces does it accept?

From the Neatlogs SDKs (Python, TypeScript, Go, browser), the HTTP API or any OpenTelemetry exporter over OTLP. Trace files can be imported.

Is a local model required?

Rules need no model. Questions and explanations need an LLM: a local one through Ollama by default, or a hosted one switched on with `neatroots llm login`.

Discussion

No questions or reviews yet.

CLI tools

agentevals scores AI agent behavior from OpenTelemetry traces and ships MCP tools plus the /eval and /inspect skills.

CLIExtended access169Repository stars
Official

Official Antithesis CLI with an MCP server: an agent launches runs, reads properties, logs and events and checks docker-compose

MCP serverExtended access33Repository stars

A CLI that tests AI agents end to end: derives scenarios from code, runs them live and separates unverified from failed.

CLIExtended access81Repository stars

A local proxy and trace viewer for coding agents: shows system prompts, tool calls and token usage for Claude Code, Codex and other CLIs

CLIExtended access3.3KRepository stars
Official

An agent gets a live session of your web, iOS or Android app, sees the screen, writes tests and checks its own edits.

MCP serverExtended access13.8KRepository stars

A skill that teaches Claude Code and Cursor to wire in Tracely tracing and turn failing agent runs into CI tests

SkillExtended access948Repository stars

README in short

The README describes features, the data flow, installation, a two-minute example without keys, sending runs, connecting coding agents, model choice and the hints mode for the running agent. A command table closes it.

README badge

Report a problem