Skip to content

:projects and :project — project views

:projects (aliases pj, proj) lists the tracker's projects: state, priority, progress, lead, teams, target date. / filters, t switches team, s sorts, enter opens one.

c on a project hands your terminal straight to a design session for it — a worktree and a live claude, the same thing :plan's c does, without opening the plan first. Wanting to talk something through shouldn't require visiting the document that comes out of it. S is the same door with a different destination: the same worktree, handed to your shell instead of an agent.

Either way the checkout has to exist first, and cutting one is a fetch and a worktree add — long enough on a large repository that a keypress with no response reads as a keypress that did nothing. So the wait is shown: a panel naming what the worktree is for, how long it has been going, and the plan agent's own activity underneath. esc stops watching without leaving the view; the checkout is still cut, so the next c or S is instant.

:project NAME (alias p) is a kanban of that project's issues, whether or not they're dispatched. Where the provider has milestones, each card's second line names the milestone the issue is filed under, after the assignee.

New projects (n)

n opens a template: the team it belongs to, the state it starts in (planned / started / paused), its priority, and a brief — a paragraph-sized box where enter is a newline and ctrl-d creates.

An agent turns the brief into the project: a name someone can read, the one line the list shows, and a body covering the problem, what is in scope, what is explicitly not, and how anyone will know it worked. It is told not to invent a schedule, owners, or an issue breakdown — issues get filed separately, and :plan is where a breakdown comes from.

The form asks only for the facts a model should not be guessing. Everything it can write, it writes.

While it writes, a progress popup streams the agent's activity and then holds the result — the project's name (with o to open it in the tracker), or the failure — until you dismiss it. The drafting agent runs in the daemon, so esc closes the popup without stopping it; it carries on in :agents.

Demo mode runs no agent: the first line of the brief becomes the name and the rest becomes the body, which is a plainer version of the same shape.

Needs a provider with the createProjects capability.

Keys (:projects)

key what
enter open the project's board
n new project — the template above
p the planning chat for the project under the cursor
c a design session — a worktree and a live claude, entered directly
S a shell in that same worktree
/ filter · t team · s sort · o open in the tracker · r refresh

Keys (:project)

key what
h/l j/k / arrows move between issues
space select
d dispatch · D dispatch skipping triage · c custom dispatch
p open the planning chat for this project
M the project's coordination channel — one message to every agent working an issue in it (experimental)
enter task detail, for issues already dispatched
s attach claude in its worktree · S a plain shell
o open in the tracker · r refresh

enter, s and S need colinear to be the one running the issue. In Progress is the tracker's opinion, and an issue can be started by a person, or by someone else entirely, with no task and no session behind it — so on an issue colinear has not dispatched, those keys say that and point at d rather than doing nothing.

Both views need a provider with the projects capability; one without says so rather than showing an empty table.