design-kanban-md-outpu…
Preserve and evolve kanban-md table, compact, and JSON output contracts. Use when changing output defaults, format-selection…
Autonomous, parallel-safe development workflow using kanban-md. Use when the user asks to work through tasks, do kanban-based development, or when multiple agents need to coordinate work on the same codebase. Optimized for explicit handoffs and a "defer to user" protocol when
Claude Code
$ npx -y skills add antopolskiy/kanban-md --skill kanban-based-development --agent claude-code
Codex
$ npx skills add antopolskiy/kanban-md --skill kanban-based-development -a codex -y
Cursor
$ npx skills add antopolskiy/kanban-md --skill kanban-based-development -a cursor -y
Gemini CLI
$ npx skills add antopolskiy/kanban-md --skill kanban-based-development -a gemini-cli -y
GitHub Copilot
$ npx skills add antopolskiy/kanban-md --skill kanban-based-development -a github-copilot -y
OpenCode
$ npx skills add antopolskiy/kanban-md --skill kanban-based-development -a opencode -y
Windsurf
$ npx skills add antopolskiy/kanban-md --skill kanban-based-development -a windsurf -y
name: kanban-based-development description: > Autonomous, parallel-safe development workflow using kanban-md. Use when the user asks to work through tasks, do kanban-based development, or when multiple agents need to coordinate work on the same codebase. Optimized for explicit handoffs and a "defer to user" protocol when human intervention is required. allowed-tools: - Bash(kanban-md *) - Bash(kbmd *) - Bash(git *) - Bash(go *) - Bash(golangci-lint *) - Bash(awk *)
<!-- kanban-md-skill-version: 0.38.0 -->
Autonomous, parallel-safe development using `kanban-md` to coordinate work on a shared board. Claims expose task ownership and reduce duplicate work when participants follow the protocol; `review` is the waiting room (handoff, user action, merge, decisions).
**This board is shared.** Multiple agents and humans may be working on it simultaneously. You are NOT the only one reading or modifying tasks. This means:
The **claim** mechanic is the coordination primitive. It lets cooperating agents exclude work already owned by someone else. **You MUST claim a task before starting any work on it, and you MUST only pick unclaimed tasks.** Claims are leases rather than a security or distributed-transaction boundary; ignoring the protocol can still cause duplicate work and merge conflicts.
At the start of the session, determine and remember `<board-home>`:
cd <the canonical repo directory that owns the shared board> pwd # remember this path as <board-home>
Recommended: keep two shells (or split panes) open:
Do not run multiple mutating `kanban-md` commands in parallel against the same board directory.
If you are unsure you’re using the shared board, run `kanban-md board --compact` and confirm the board name/shape is what you expect.
By default, agents should take tasks all the way to `done` (worktree → commit → merge → done).
Defer to the user (leave the task in `review` with a handoff) only when you need:
Each agent session must generate a unique name to identify itself for claims. At the very start of a session, run:
kanban-md agent-name
This produces a name like `quiet-storm` or `frost-maple`. **Remember this name in your context** and use it as a literal string in all claim/release commands for the rest of the session. Do not store it in a file or environment variable — those are not persistent or isolated between agents.
Example: if the generated name is `frost-maple`, use `--claim frost-maple` in every claim command.
Use `--compact` for board/list/log output whenever available to keep output short.
Before picking work, ensure board home is on `main`:
cd <board-home> git switch main git status
From board home:
Pick only from startable columns to avoid accidentally re-picking `review` work:
kanban-md pick --claim <agent> --status todo --move in-progress
If `todo` is empty:
kanban-md pick --claim <agent> --status backlog --move in-progress
This replaces a separate list → choose → claim sequence and records ownership immediately. By default, `pick` also prints the full task details, including the body, so a follow-up `show` is unnecessary.
Create a worktree for the task branch from board home:
git worktree add ../kanban-md-task-<ID> -b task/<ID>-<kebab-description> cd ../kanban-md-task-<ID>
Skip a worktree only for truly non-conflicting work (e.g., board-only changes or writing an untracked research report). If you touch tracked code/config, use a worktree.
Implement the smallest change that satisfies the task.
Commit in the worktree when green:
git add <files> git commit -m "feat: <description>"
While a task is `in-progress`, leave short timestamped notes in the task body from **board home** (especially after major steps or before/after running tests). This makes handoffs and reviews much faste
An agent-first, file-based Kanban board for coordinating AI coding agents and human supervisors. It runs locally as a single binary: no database, server, account, or SaaS dependency.
Preserve and evolve kanban-md table, compact, and JSON output contracts. Use when changing output defaults, format-selection…
Evolve kanban-md config.yml schemas and task Markdown frontmatter without breaking existing boards. Use when changing config…
Review kanban-md feature requests, issues, PRs, and design proposals for product fit, domain-model growth, configurability, and…
Manage project tasks using kanban-md, a file-based kanban board CLI. Use when the user mentions tasks, kanban, board, backlog,…
Release kanban-md through its tag-triggered GoReleaser workflow, monitor CI, recover safely from failures, and publish…
Plan and run verification for kanban-md changes, including test-driven bug fixes, Go package tests, CLI end-to-end tests, TUI…
Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…
Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…