tricorder plugin

tricorder watches a Haskell build in the background and hands an agent fresh errors and test results through tricorder status.

  • 70 ★ on the repository
  • Last commit
  • MIT
Plugin

Minimal access

Why this level

  • The daemon runs the project build and tests on your machine, and the agent reads their output and dependency sources from disk.
All reasons and checks

tweag/tricorder

Install

Manual install

/plugin marketplace add tweag/tricorder

The first command of the agents guide. Then `/plugin install tricorder@tricorder`; the `tricorder` binary is installed separately with `cabal install tricorder`.

Access and checks

How we review

Minimal accessThe tool runs nothing and makes no network calls.

  • The daemon runs the project build and tests on your machine, and the agent reads their output and dependency sources from disk.

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

What it does

tricorder is a daemon that rebuilds a Haskell project in a GHCi session on every change, surfaces diagnostics and runs tests afterwards. People get an interactive terminal UI, `tricorder ui`; agents get `tricorder status` and JSON output. The repository ships two plugins. `tricorder` adds a skill that reads build state through the command line, `tricorder-mcp` adds an MCP server with the same data. When both are installed Claude Code prefers the server and keeps the skill as a fallback. Packages are discovered from `cabal.project` or `stack.yaml`, and `tricorder source Some.Module` reads dependency sources from disk.

Who it is for. Haskell programmers working with a coding agent who do not want a full build and log parsing on every edit.

Good fit when

  • An agent edits several packages in `cabal.project` and needs a short error list after each step.
  • Tests fail after an edit and you want their outcome without triggering another build.
  • The agent must look up signatures from a library whose sources are on your disk.
  • You work in `tricorder ui` while the agent reads the same build from a neighbouring session.

Not a fit when

  • The project is not Haskell: the daemon builds only through GHCi.
  • A cloud or CI build is wanted, not a local daemon on your machine.
  • One `cabal build` an hour is enough and a background process is unnecessary.

Example request

Check the build status with tricorder, fix the errors in the Parser module and wait for green tests.

Limitations

Installation takes two steps: `tricorder` itself through `cabal install tricorder` or `stack install tricorder`, then the agent plugin. It is supported on Linux and macOS. On NixOS a cabal build may need the `--constraint='zlib +bundled-c-zlib'` flag. Connection details live in `docs/using-with-coding-agents.md`, and for Cursor the README points to Cursor's own documentation. The repository also holds the Atelier library set, which has nothing to do with agents.

How to disable. Stop the daemon and remove the plugins with `/plugin uninstall tricorder@tricorder` and `/plugin uninstall tricorder-mcp@tricorder`. Delete the `Bash(tricorder status)` lines from `permissions.allow`.

FAQ

What is the difference between the skill and the MCP plugin?

The skill calls the `tricorder status` command. The MCP plugin serves the same data through a server. With both installed the agent prefers the server.

How do I start the daemon?

Run `tricorder start`, or just `tricorder ui`, which starts the daemon when it is not running yet.

Which projects are supported?

Cabal and stack projects, including multi-package ones. Components are found from `cabal.project` or `stack.yaml` with no manual setup.

Can I get data for scripts?

Yes, `tricorder status --json` prints the build state in machine-readable form.

Do I need to allow the commands for the agent?

It is advisable. Add `Bash(tricorder status)` and `Bash(tricorder status --wait)` to `permissions.allow` and the prompts go away.

Discussion

No questions or reviews yet.

Plugins

An MCP server that builds a code graph once and serves the answer to the agent instead of re-reading files

MCP serverExtended access204Repository stars

A Claude Code plugin that hands a task to a local no_human and reviews a branch with a reviewer that never saw the coder's session

PluginBroad access322Repository stars

Plugins for git, Python and accessibility in one place: 400+ skills, subagents and hooks against dangerous agent commands.

PluginExtended access60Repository stars

CLI that builds a codebase index and a 250-token map so an agent does not read hundreds of files to find the right one.

CLIExtended access131Repository stars

A CLI records coding agent sessions locally, replays what happened and shows what the trace could not prove.

CLIExtended access104Repository stars

README in short

Covers human and agent modes, background builds, sane defaults, multi-package projects, dependency sources and JSON output.

README badge

Report a problem