A Linear-style board for Maitake.
Browser or VS Code. Same tickets, same git notes, your repo.
Features Β· Install Β· Packages Β· Maitake
Maitake gives you tickets, reviews, PRs, and docs β all stored as git notes. maiboard is the visual layer: a Linear-style board for the same data, in the browser or inside VS Code.
Drag tickets across status columns. Group by epic. Review code in-editor with file diffs and a verdict button. Every change goes through mai and lands in refs/notes/maitake β append-only, mergeable, in your repo.
Two surfaces, one backend. Open the browser board via mai-board, or install the pi0.maiboard extension in VS Code / VSCodium. Both surfaces compute live from mai. The same project shows the same state in both.
Status: early. APIs and storage are still moving. Run it from this monorepo for now.
Drag-and-drop kanban over your mai tickets. List, Board, and Graph layouts. Status columns, tag chips, saved views, group-by status/type/epic, board sort and filter presets. No separate database β the source of truth is your repo's .tickets/ directory.
In-editor code reviews driven by mai review tickets. Pick a base, pick a head, scrub the last 1 / 3 / 5 / 10 commits, inspect file-level diffs with syntax highlighting, leave a verdict message. Approve or Request changes β either way the verdict round-trips back into the ticket as an audited comment.
- Bun β₯ 1.3
- Maitake (
mai) installed and on$PATH - VS Code or VSCodium 1.110+ (only for the extension)
git clone https://github.com/Cygnusfear/maiboard
cd maiboard
bun install
bun run typecheck
bun run lint
bun run build
bun run package:vscode| Package | Description |
|---|---|
packages/board |
Vite + React board UI (List / Board / Graph views). |
packages/server |
Bun HTTP API server. Shells out to mai for ticket reads/writes. |
packages/cli |
mai-board binary. Direct launcher and the mai board plugin entry are the same. |
packages/api |
Shared TypeScript-only route/domain types. Zero runtime deps. |
packages/vscode |
VS Code / Codium extension (pi0.maiboard). Reimplements the API in-process. |
The extension vendors the board build into packages/vscode/vendor/board at build time, so the vsix is self-contained except for mai and git on the user's PATH:
bun run package:vscode
codium --install-extension packages/vscode/maiboard-0.3.1.vsix --forceReload the Codium window after installing a new vsix.
No postinstall hooks mutate global state. Register explicitly:
bun run --filter mai-board dev -- --registerThat writes board = "mai-board" to ~/.maitake/plugins.toml if needed. After the binary is on PATH, mai board resolves to mai-board.


