Skip to content
MilanFoxPublic

About

Self-hostable issue tracker for agentic workflows: one Docker per project

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

203 Commits

Folders and files

Repository files navigation

Chartroom

npm

A self-hosted issue tracker for coding agents, so their maps, specs and tickets stay out of your client's tracker.

What it is

Built specifically for the workflow of Matt Pocock's skills: Wayfinder maps, specs, tickets, triage labels and Efforts are native, instead of conventions squeezed into a generic tracker. One Instance per project is a single container: a web UI for testers and clients, an HTTP API and CLI for agents. Nothing is shared between Instances.

Install

npx -y chartroom-cli@latest init my-chartroom
cd my-chartroom
docker compose up -d

my-chartroom is the folder for the Instance's files; name it anything, it is created if missing. init asks you to choose the admin and viewer passwords, then for the public URL and the port, then writes compose.yaml and .env into it. The Instance listens on loopback only, port 3000 by default; put a TLS reverse proxy in front of it. See Operating an Instance.

First run

init ends by printing these steps with your URL filled in.

  1. Open the Instance, http://localhost:3000 by default, and sign in with your viewer password.
  2. Elevate with the admin password.
  3. Create the first Token holder from the setup checklist on the admin page. Its secret is shown once. Project name, Effort Display label and Environments are optional.

Connect your agents

Install the CLI (npm install -g chartroom-cli@latest), put CHARTROOM_URL and CHARTROOM_TOKEN in the repo's untracked .env, then run /setup-matt-pocock-skills with Other as the issue tracker, answering: "Chartroom at <url>. Run chartroom adapter and write each file it prints, verbatim, to the path in its marker line." Step by step, with a first run and troubleshooting: Connect your agents.

CLI

npm install -g chartroom-cli@latest puts chartroom on your PATH; npx -y chartroom-cli@latest in front of a command works without installing. On an Instance older than the latest major, use @<major>; the CLI names it when they differ. Output is JSON.

Command Does
chartroom issue list --view frontier Unblocked open work
chartroom issue view 12 One issue
chartroom issue create --kind ticket --title "…" --parent 3 New ticket under an Effort, map or spec
chartroom issue claim 12 Assign yourself
chartroom issue close 12 --comment "Shipped in #21" Close with a comment
chartroom effort list All Efforts
chartroom adapter --write docs/agents Write the Adapter files

Every command: CLI reference.

Docs

  • Connect your agents: end-to-end setup with the skills
  • Operating an Instance: environment variables, TLS, Snapshots, upgrade, rollback, uninstall
  • HTTP API for scripts and other tools: reference at <your Instance>/api/docs, OpenAPI at <your Instance>/api/v1/openapi.json; a Token holder's secret is the bearer token
  • Release notes
  • MIT licence

Screenshots

Workbench: open issues grouped by Effort, with kind, labels, assignee and state, plus saved views and filters in a sidebar Issue Document for ticket #6: markdown body with a table and lists, and a sidebar with labels, claim, parent, blockers and Links
Dashboard for the Effort Checkout redesign: summary cards for its map, spec, triage and Links above the map's decision tickets Dependency graph of a map's tickets, left to right by blocking order, with closed, frontier and claimed tickets marked

About

Self-hostable issue tracker for agentic workflows: one Docker per project

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages