Open source / Built for agent teams

Give every agent
a clear next task.

No servers. No daemons. No queues. Durable task coordination through one SQLite file. Agents claim work atomically, report progress, survive crashes, and hand off reviews without anything in the middle.

  • 1Go binary
  • 0services to run
  • 15mrecoverable leases
terminal agentic-kanban
# Manager creates work
$ kanban task dispatch \
  --title "Implement token refresh" \
  --role worker --priority 8

{"id":"TASK-04","status":"TODO"}

# Agent claims the next task
$ kanban task claim-next \
  --agent worker-2 --role worker

{
  "id": "TASK-04",
  "title": "Implement token refresh",
  "status": "IN_PROGRESS",
  "lease_owner": "worker-2"
}
SQLite connected exit 0

01 / Install

One command. Nothing to host.

curl -sfL https://raw.githubusercontent.com/mrSamDev/agentic-kanban/main/install.sh | sh

Single Go binary + SQLite. For pinned versions, use GitHub Releases.

02 / Problem

One agent is fine.
Two agents need coordination.

One edits code. Another writes tests. A third reviews. Without shared state, they conflict, duplicate work, and wait.

Most setups reach for familiar infrastructure:

  • Agent frameworks
  • Message queues
  • Redis
  • Postgres
  • Background services
  • Complex orchestration layers

That's a lot to run for a handful of agents on the same machine.

The simpler answer

Treat coordination as a database problem.

Every agent reads and writes to the same SQLite file. No RPC. No event bus. No server process. Just durable shared state.

03 / Why

Coordination that stays out of the way.

Use the filesystem you already share. Keep task ownership explicit and recoverable.

01

No server process

One .db file per project. No Redis, Postgres, queue, daemon, or network dependency.

02

Atomic claims

Concurrent agents calling claim-next receive different tasks through SQLite write serialization.

03

Crash recovery

Tasks use 15-minute leases. Progress renews ownership; expired work becomes claimable again.

04

Stable JSON

Commands write predictable JSON to stdout. Errors use stderr and exit code 2.

05

Bounded storage

Write-Ahead Log checkpointing prevents unbounded disk growth during long-running coordination.

06

Readable protocol

Markdown role skills teach agents the workflow without another tool-calling protocol.

04 / Workflow

A small protocol with clear ownership.

  1. 01

    Dispatch

    A manager creates prioritized work for a role.

  2. 02

    Claim

    An agent atomically claims the highest-priority task.

  3. 03

    Work

    Progress notes renew the lease and preserve context.

  4. 04

    Review

    Complete directly or hand the task to a reviewer.

quick-start.sh
# Initialize this project
$ kanban init --harness pi

# Dispatch work
$ kanban task dispatch \
  --title "Set up auth" \
  --role worker --priority 10

# Claim, report, complete
$ kanban task claim-next \
  --agent my-agent --role worker
$ kanban task log-progress TASK-1 \
  --agent my-agent --note "Working"
$ kanban task complete TASK-1 \
  --agent my-agent --review
01TODO
02IN_PROGRESS
03IN_REVIEW
04DONE
architecture
       SQLite Database
              │
 ┌────────────┼────────────┐
 │            │            │
Worker A   Worker B   Reviewer
 │            │            │
claim-next  claim-next  approve
 │            │            │
progress    progress    reject
 │            │
complete   complete
No server. No daemon. No coordination service.

05 / Reference

The complete command surface.

Small enough to learn, explicit enough to debug.

CommandRoleWhat it does
task dispatch --title --role [--project] [--priority]any

Create a task in TODO.

task claim-next --agent --role [--project]worker, reviewer

Atomically claim the highest-priority task.

task log-progress <id> --agent --note [--type]worker

Log progress and renew the 15-minute lease.

task block <id> --agent --reasonworker

Mark blocked and clear the current lease.

task complete <id> --agent [--review]worker

Mark done or submit the task for review.

task view <id> [--notes] [--history]all

View task detail, notes, and history.

task search [--status] [--role] [--agent] [--project]manager

Filter the task list.

task approve <id> --agentreviewer

Move IN_REVIEW to DONE.

task reject <id> --agent --reasonreviewer

Return IN_REVIEW to TODO with context.

task batch set-priority --ids --prioritymanager

Set priority for multiple tasks.

task batch set-project --ids --projectmanager

Set a project label for multiple tasks.

init [--harness] [--plan] [--dir]setup

Scaffold the database and role skills.

06 / Skills

The agent runtime.

Skills teach agents the coordination protocol. One set per role.

RoleSkillsWhat the agent learns
manager/dispatch-task, dispatch-plan, approve-plan, review-backlog, view-task

Plan work, dispatch tasks, review progress

worker/claim-next-task, log-progress, complete-task, block-task

Claim tasks, report progress, finish work

reviewer/claim-review, approve-task, reject-task

Review submissions, approve or reject

Protocol skills vs task skills

Protocol skills teach coordination—they ship with the binary. Task skills teach domain logic—you bring your own. Both live side by side in the agent's skill directory. The agents change. The protocol stays.

07 / Hooks

React to every event.

Drop an executable in .kanban/hooks/ and extend the workflow without touching the core.

EventExecutableWhen it fires
task.createdtask-created

Task dispatched

task.claimedtask-claimed

Agent claims a task

task.progresstask-progress

Progress logged

task.completedtask-completed

Task finished

task.submitted_for_reviewtask-submitted-for-review

Submitted for review

task.blockedtask-blocked

Blocked

review.approvedreview-approved

Approved

review.rejectedreview-rejected

Rejected

task.priority_updatedtask-priority-updated

Batch priority update

task.project_updatedtask-project-updated

Batch project label update

Hooks receive event JSON on stdin with a 30-second timeout. Errors log to stderr but don't fail the operation. Missing hooks are silently ignored. Chain multiple hooks using a .d/ directory — hooks run concurrently so a slow notifier won't block the caller.

.kanban/hooks/
task-created
task-completed
task-completed.d/
  slack
  metrics
  dashboard

08 / Fit

Built for local agent teams.

Not another agent framework.

Agentic Kanban solves one problem: reliable coordination. Bring your own agents, models, and workflow.

  • × Agent runtimes
  • × Tool calling
  • × Memory systems
  • × Planning engines
  • × Model hosting

Best for Claude Code subagents, PI subagents, Codex workflows, and local coding agents on the same machine or shared filesystem. Concurrency tested up to 50 agents.

Read the source

Use it when

  • Agents need durable shared state
  • Task ownership must survive crashes
  • You want zero infrastructure overhead

× Skip it when

  • Agents run across untrusted networks
  • You need real-time push notifications
  • You have thousands of concurrent workers

Ready to coordinate?

Git became the shared source of truth for code.
Agentic Kanban becomes the shared source of truth for work.

One database.
Every agent aligned.