Kanban Board
The Kanban board lives under the project Issues tab. Each column corresponds to a phase of the ShipCode pipeline, and each card is a GitHub issue, automation run, or quick-mode task.
Columns
| Column | Pipeline state | Contents |
|---|---|---|
| Backlog | todo | Unclaimed issues with a shipcode:agent:* label but no active pipeline |
| Agent | queued, planning, reviewing, revising, approval, executing, testing, verifying, shipping | Work the runtime can continue without a new human decision. Approved-but-capacity-limited runs appear in the Waiting section. |
| Attention | clarifying, approval, paused, failed | Work that needs a human decision, answer, resume, or retry. |
| Done | completed, closed | completed: ShipCode finished and the PR path is ready. closed: the issue is explicitly closed/finalized and ready to archive. |
| Deferred | deferred | Parked for later |
The board still groups work by phase, but the model choice is now shown on each card instead of in the column header. That matters because model selection is hierarchical:
- Global Settings provide the default for every phase
- Project Settings can override planner / reviewer / executor / verifier per project
- Issue Detail can override planner / reviewer / executor / verifier per issue
Each active card shows a compact chip with the effective model and the effective effort for that card’s current phase.
Cards also show the effective revision count for that issue. If a run is already in flight, the badge updates to show current revision progress such as Rev 1/3.
If the effective workflow for an issue requires a human approval gate before execution, the card also shows an Approval badge. Hover it to see whether that requirement comes from the app default, project override, or issue override.
After you approve a run, it no longer stays under the human approval section. If that project’s execution slots are full, the board moves it into Agent → Waiting so it is clear that approval is resolved and the runtime is only waiting for capacity.
Drag to launch
Drag any Backlog card into Planning to start the pipeline on that issue. The drag honors the shipcode:agent:* label on the GitHub issue and spawns the correct executor unless a narrower project or issue override applies.
The Kanban component lives in packages/ui/src/KanbanBoard.tsx and is mounted by apps/desktop/src/renderer/components/IssuesPanel.tsx.
List view
Click the toggle in the Kanban header to switch to a flat list view. The list mirrors the same column structure as Backlog / Agent / Attention / Done / Deferred, including the Done column’s Completed and Closed sub-sections. Use list view when you have more than a handful of concurrent runs and want a denser layout.
The header also has a Needs approval filter. Enable it to show only issues whose effective workflow will pause for human approval before execution. Approved runs that are only waiting for execution capacity are excluded from this filter.
Board review and auto-run
The board can run model-assisted triage over Backlog issues. The triage model classifies priority and can auto-apply high-confidence labels using the threshold configured in Settings → Pipeline → Models → Issue triage.
Auto-run starts matching Backlog issues without manually dragging each card. The global GitHub settings control priority filters and max tasks per run, while the project runtime capacity controls how many executions can run at once.
Card actions
Click a card to open the Issue Detail overlay, which shows:
- The GitHub issue PRD (body) with an Edit PRD button that opens the Create/Edit modal stacked on top
- The generated plan (with a full-screen viewer)
- The task graph, when the planner split a complex issue into executable nodes
- Review rounds and reviewer verdicts
- The diff (once the executor has produced one)
- Runtime QA and feature QA evidence when the PRD includes a QA State contract
- Cost + token totals for the thread
- Effective revision count for the next run, with issue-level override control
- Effective planner / reviewer / executor / verifier models for the next run
- Phase override controls with an
Inheritreset back to project/global defaults
Header quick-links
The Kanban header always shows a repo button for the repository itself. ShipCode auto-detects an associated GitHub Projects v2 board when the folder is added or refreshed, then shows the board button. You can override the detected URL in Project Settings.