clu

Web UI

The bundled TanStack Start app served by `clu web`.

clu ships with a small web UI — kanban board, issue list, approvals, and issue detail — that's served by the CLI itself.

clu web — kanban board grouped by status with assignee avatars and in-progress timers

clu web

starts the frontend on :5757 (--web-port) backed by an in-process REST API on :7777 (--api-port), both over the same SQLite store. The default web port avoids colliding with common dev servers (3000 / 5173 / 8080); pass 0 for either to pick a free port.

Installation

make install runs clu web --install automatically. To rebuild the UI bundle explicitly:

clu web --install

This runs pnpm install + pnpm build inside web/clu-web/ and copies the output to ~/.local/share/clu/web so clu web can find it from any directory. If pnpm isn't on PATH, the step is skipped silently — the CLI still works without the UI.

What's in it

  • Board — kanban columns by status, with assignee avatars and how long each task has been in progress.
  • List — filterable table with the same data as clu list, including started_at ("started 3h ago").
  • Ready — what's unblocked right now.
  • Approvals — pending checkpoint gates with suggested approvers and what they block; approve or fail inline.
  • Workflows — the templates you can instantiate.
  • Detail — full issue view with status/priority/type controls, comments, notes, and dependency edges.
  • Theme toggle — light + dark.

The List view — every issue with priority, status, and started_at:

clu web — issue list with priority, status, and started-at timestamps

The Approvals view — pending checkpoint gates with suggested approvers and what they block:

clu web — approvals view with pending checkpoint cards

The Detail view — controls, the checkpoint gate, comments, and dependency edges:

clu web — issue detail with checkpoint gate and dependency edges

When to use it vs. the CLI

Use the web UI when you want to see the shape of the work — what's stuck, what's piling up, which agent is overloaded. Use the CLI for everything else: it's faster, scriptable, and is what every agent talks to anyway.

On this page