Skip to content
SYipPublic

Repository files navigation

Dirban

Zero-database, folder-based Kanban board for builders, knowledge workers, and AI agents.

CI npm version Visual Studio Marketplace Open VSX License: MIT Buy Me A Coffee


What is Dirban?

Dirban (Directory + Kanban) tracks task state using plain directories and Markdown files. It is designed for solo builders, knowledge workers, and AI agents (Cursor, Claude Code, Antigravity, Obsidian).

The physical directory is the task state. Moving a task between stages is just moving a file (mv).

Dirban Terminal TUI

  • Directories as Columns: Workflow stages are plain folders (01-todo/, 02-doing/, 03-done/).
  • Customizable Workflows: Tailor column names, staging pipelines, and priority tiers to your exact workflow using .dirban.json.
  • Isolated Task Files: Each task is a self-contained Markdown file with an optional priority and checklist (- [ ]). Editing one task never collides with another in Git or file sync.
  • Agent-Ready & Context-Efficient: AI tools and scripts read only the active task file (dirban current), keeping token usage low and focus sharp.
  • Git is Completely Optional: While Dirban automates Git branching and worktrees for developers, it works equally well on plain folders (branchStrategy: "none") in Obsidian vaults, Dropbox, or local drives.
  • Built for Fast Iteration: Cloud tools assume sprint cycles measured in weeks. Autonomous agents iterate in minutes. Dirban keeps pace without browser tabs, OAuth tokens, or sync delays.
  • 100% Local & Future-Proof: Your data is just plain files. If you ever uninstall Dirban, your tasks remain standard Markdown notes readable in any text editor.

Quick Start (60 Seconds)

1. Install & Initialize

# Install globally via Bun or npm:
bun add -g dirban
# or: npm install -g dirban

# Or run instantly without installing:
# npx dirban init

(Alternatively, download a standalone prebuilt binary from GitHub Releases or build locally via bun link.)

Initialize a Board

# Run inside any repository, vault, or folder:
dirban init

This creates a lightweight task hierarchy under docs/tasks/:

docs/tasks/
├── backlog/       # Staging and future ideas
├── 01-todo/       # Ready to be picked up
├── 02-doing/      # Actively executing tasks (human or AI agent)
├── 03-done/       # Completed tasks
└── archive/       # Historical archive

2. The Core Execution Loop

# Create a new task with auto-assigned sequential ID
dirban new "Implement search filtering" --priority=p1

# Pick up and start work (moves to 02-doing/ & creates Git branch)
dirban start 26-001

# Inspect active task, branch alignment, and criteria checklist
dirban current

# Complete task (moves to 03-done/ and squashes branch)
dirban done

Interfaces: Terminal & Editor

Work from the terminal or directly inside your editor:

1. Interactive Terminal UI (TUI)

# Launch interactive terminal Kanban board
dirban board

# Or print static board to stdout (ideal for CI, scripts, and piping)
dirban board --static

2. Editor Extension (VS Code Marketplace & Open VSX)

  • Install directly in VS Code, VSCodium, Cursor, or Gitpod: Search for Dirban (syip.dirban-vscode).
  • Focus View: Pinned sidebar panel showing the currently active task, branch alignment, and interactive checklist.
  • Status Bar Indicator: Real-time status badge ($(checklist) 26-001 [2/5]) linking directly to the active task.
  • Embedded Webview Kanban Board: Visual drag-and-drop Kanban board running natively inside an editor tab.

The Core Workflow: Questions & Answers

Dirban maps directly to the questions developers and AI agents ask when executing work:

Question You're Asking Command What Dirban Does
"Where do things stand overall?" dirban board Opens the interactive Kanban TUI (or --static for stdout)
"How do I queue up work from the backlog?" dirban ready <id> Moves unblocked tasks from backlog/ into 01-todo/
"What should I focus on next?" dirban next Recommends the highest-priority unblocked task in 01-todo/
"How do I begin working on it?" dirban start <id> Moves task to 02-doing/ and creates a matching Git branch or worktree
"What am I currently doing?" dirban current Displays the active task, branch alignment, and criteria checklist
"How do I complete my task?" dirban done Moves to 03-done/, squashes/merges the branch, and cleans up

Want to know what happens under the hood?
Every command maps to simple POSIX filesystem commands (mv, ls, cat) and standard Git operations. See Forget About Dirban: Zero Lock-In & Plain Shell Equivalents for the complete command-by-command mapping.


Deep-Dive Documentation


Status & What's Next

Dirban is under active development. Current focus areas:

  • Enhanced Planning Mode (dirban plan): Smarter dependency graph visualization, multi-task batch promotions, and automated unblocking rules.
  • Archive & History Search (dirban archive): Full-text searching across historical tasks, completed date indexing, and archival export options.

Feedback, bug reports, and suggestions are welcome on GitHub Discussions and Issues.


Support

If you find Dirban useful, you can support its development:

Buy Me A Coffee


License

MIT

Releases

Packages

Contributors

Languages