A task management system built for AI agents. Official website: https://claudiacli.com/ Claudia provides structured task tracking with a Model Context Protocol (MCP) server, enabling AI assistants like Claude to manage their own work through hierarchical tasks, dependencies, sprints, and acceptance criteria verification. AI agents need a way to: - Track progress across complex, multi-step tasks -
Add this skill
npx mdskills install yuvalsuede/claudiaComprehensive task management system with MCP integration, multi-agent coordination, and rich CLI/web interface
A task management system built for AI agents.
Official website: https://claudiacli.com/
Claudia provides structured task tracking with a Model Context Protocol (MCP) server, enabling AI assistants like Claude to manage their own work through hierarchical tasks, dependencies, sprints, and acceptance criteria verification.
AI agents need a way to:
Claudia provides all of this through both a CLI and MCP server interface.
# Install Bun if you haven't already
curl -fsSL https://bun.sh/install | bash
# Clone and build
git clone https://github.com/yuvalsuede/claudia.git
cd claudia
bun install
bun run build
# Initialize and start using
./claudia db init
./claudia task create --title "My first task"
./claudia task list
See Claudia in action with sample data:
# Seed demo project with sample tasks and sprints
bun run seed:demo
# Open the web dashboard
./claudia @@ --port 3333
Then open http://localhost:3333 in your browser to explore the kanban board and sprint views.


| Feature | Description |
|---|---|
| Hierarchical Tasks | Parent-child relationships with tree visualization |
| State Machine | Validated transitions: pending → in_progress → verification → completed |
| Dependencies | Block tasks until prerequisites complete, with cycle detection |
| Sprints | Group tasks into time-boxed work periods |
| Multi-Project | Isolated task namespaces with auto-detection from working directory |
| Agent Memory | 64KB JSON context storage per task |
| Acceptance Criteria | Define and verify requirements before task completion |
| Multi-Agent Coordination | Atomic task claiming, optimistic locking, conflict detection |
| Web Dashboard | Visual kanban board with project/sprint filtering |
| MCP Server | Drop-in integration with Claude Code and other MCP clients |
git clone https://github.com/yuvalsuede/claudia.git
cd claudia
bun install
bun run build
# Creates ./claudia binary
# Optional: install globally
cp claudia ~/.bun/bin/
# Create a task
claudia task create --title "Implement feature X" --priority p1
# Create with acceptance criteria
claudia task create --title "Add login" --acceptance-criteria "Has email field" --acceptance-criteria "Has password field"
# List tasks
claudia task list
claudia task list --status in_progress --priority p0,p1
# Show task details
claudia task show
# Update a task
claudia task update --title "New title" --priority p0
# Transition status
claudia task transition --to in_progress
# Delete a task
claudia task delete --force
# Create a subtask
claudia task create --title "Subtask" --parent
# View task tree
claudia task tree # Full tree
claudia task tree # Subtree from task
# Set context (overwrites)
claudia task context-set '{"key": "value"}'
# Merge context (deep merge)
claudia task context-merge '{"additional": "data"}'
# Get context
claudia task context-get
# Add dependency (task depends on blocker)
claudia task depends --on
# Remove dependency
claudia task undepends --on
# Show dependencies
claudia task deps
# List blocked tasks
claudia task blocked
# List ready tasks (all deps satisfied)
claudia task ready
# Create a sprint
claudia sprint create --name "Sprint 1" --start 2024-01-15 --end 2024-01-29
# List sprints
claudia sprint list
# Show sprint with tasks
claudia sprint show
# Activate a sprint
claudia sprint activate
# Create a project
claudia project create --name "My Project" --path /path/to/project
# List projects
claudia project list
# Select active project
claudia project select
# Show current project
claudia project current
# Open dashboard in browser
claudia @@
# Custom port
claudia @@ --port 8080
The dashboard provides:
Start the MCP server for use with Claude Code:
claudia mcp
Add to .mcp.json in your project root:
{
"mcpServers": {
"claudia": {
"command": "/path/to/claudia",
"args": ["mcp"]
}
}
}
Or for development (without building):
{
"mcpServers": {
"claudia": {
"command": "bun",
"args": ["run", "/path/to/claudia/src/mcp/server.ts"],
"cwd": "/path/to/claudia"
}
}
}
After adding the config, restart Claude Code to connect.
Compound Operations (Recommended for agents)
| Tool | Description |
|---|---|
task_start | Create and start a task in one operation |
task_finish | Complete a task with optional summary |
task_workspace | Get current agent's workspace context |
task_handoff | Transfer task to another agent |
task_abandon | Release task back to pending |
Task Management
| Tool | Description |
|---|---|
task_create | Create a new task |
task_read | Get task by ID |
task_update | Update task fields |
task_delete | Delete a task |
task_list | Query tasks with filters |
task_transition | Change task status |
task_tree | Get hierarchical task view |
Coordination
| Tool | Description |
|---|---|
task_claim | Atomically claim a task |
task_release | Release a claimed task |
task_blocked | List blocked tasks |
task_ready | List ready tasks |
task_dependency_add | Add task dependency |
Verification
| Tool | Description |
|---|---|
task_verify | Mark criterion as verified |
task_verification_status | Get verification progress |
See the full MCP tools reference below for complete documentation.
┌─────────┐ ┌─────────────┐ ┌──────────────┐ ┌───────────┐
│ pending │────▶│ in_progress │────▶│ verification │────▶│ completed │
└─────────┘ └─────────────┘ └──────────────┘ └───────────┘
│ │ │ │
▼ ▼ ▼ ▼
┌─────────┐ ┌──────────┐
│ blocked │ │ archived │ (terminal)
└─────────┘ └──────────┘
Valid transitions:
pending → in_progress, blocked, archivedin_progress → pending, verification, completed, blocked, archivedverification → in_progress, completed, blocked, archivedblocked → pending, in_progress, archivedcompleted → in_progress, archivedarchived → (terminal state)Tasks can skip verification if no acceptance criteria are defined.
Claudia supports multiple AI agents working concurrently on the same project.
// Claim before working
const result = await task_claim({ task_id: "uuid", agent_id: "agent-1" });
if (result.success) {
// Task is yours - proceed
} else {
// Already claimed by another agent
}
// Release when done or on failure
await task_release({ task_id: "uuid", agent_id: "agent-1" });
// Read task first
const task = await task_read({ id: "uuid" });
// Update with version check
await task_update({
id: task.id,
title: "Updated",
version: task.version // Fails if modified by another agent
});
task_ready - List tasks with satisfied dependenciestask_claim - Atomically reserve a tasktask_transition - Move to in_progresstask_context_merge - Save progresstask_transition - Move to completedtask_release - Let another agent retry| Environment Variable | Description | Default |
|---|---|---|
CLAUDIA_DB | Database file path | ~/.claudia/tasks.db |
# Development mode
bun run dev
# Run tests
bun test
# Type checking
bun run typecheck
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | General error |
| 2 | Resource not found |
| 3 | Conflict (version mismatch) |
| 4 | Validation error |
| 5 | Storage error |
Compound Operations
Create and start a task in one operation. Auto-claims for the current agent.
{
"title": "Task title",
"description": "Optional description",
"priority": "p0|p1|p2|p3",
"parent_id": "optional-parent-uuid",
"acceptance_criteria": ["criterion 1", "criterion 2"]
}
Complete a task with optional summary.
{
"id": "task-uuid",
"summary": "Optional completion summary"
}
Get current agent's workspace context including claimed tasks.
{
"include_completed": false
}
Transfer task to another agent.
{
"task_id": "task-uuid",
"to_agent_id": "target-agent",
"notes": "Optional handoff notes"
}
Release task back to pending with reason.
{
"task_id": "task-uuid",
"reason": "Why abandoning"
}
Task CRUD
{
"title": "Required title",
"description": "Optional",
"status": "pending",
"priority": "p0|p1|p2|p3",
"parent_id": "uuid",
"sprint_id": "uuid",
"tags": ["tag1", "tag2"],
"assignee": "name",
"acceptance_criteria": ["criterion"]
}
{ "id": "task-uuid" }
{
"id": "task-uuid",
"title": "New title",
"version": 1
}
{ "id": "task-uuid" }
{
"status": ["pending", "in_progress"],
"priority": ["p0", "p1"],
"parent_id": "uuid",
"sprint_id": "uuid",
"assignee": "name",
"limit": 100,
"offset": 0
}
{
"id": "task-uuid",
"to": "in_progress"
}
{
"id": "optional-root-uuid",
"depth": 5
}
Bulk Operations
{
"tasks": [
{ "title": "Task 1" },
{ "title": "Task 2" }
],
"parent_id": "optional-common-parent",
"sprint_id": "optional-common-sprint"
}
{
"ids": ["uuid1", "uuid2"],
"updates": {
"priority": "p1",
"assignee": "agent-1"
}
}
{
"ids": ["uuid1", "uuid2"],
"to": "completed",
"skip_invalid": true
}
Dependencies & Coordination
{
"task_id": "blocked-task",
"depends_on_id": "blocking-task"
}
{
"task_id": "task-uuid",
"depends_on_id": "dependency-uuid"
}
{ "task_id": "task-uuid" }
List all tasks with unsatisfied dependencies.
List all tasks ready to work on (dependencies satisfied).
{
"task_id": "task-uuid",
"agent_id": "claiming-agent"
}
{
"task_id": "task-uuid",
"agent_id": "releasing-agent"
}
Context Storage
Overwrite task context (max 64KB).
{
"id": "task-uuid",
"context": { "any": "json data" }
}
Deep merge into existing context.
{
"id": "task-uuid",
"context": { "additional": "data" }
}
{ "id": "task-uuid" }
Verification
Mark an acceptance criterion as verified.
{
"task_id": "task-uuid",
"criterion_id": "criterion-uuid",
"evidence": "Optional verification evidence"
}
Get verification progress for a task.
{ "task_id": "task-uuid" }
Sprints
{
"name": "Sprint 1",
"start_at": "2024-01-15",
"end_at": "2024-01-29"
}
{ "include_archived": false }
{ "id": "sprint-uuid" }
{
"id": "sprint-uuid",
"name": "New name",
"status": "active"
}
{ "id": "sprint-uuid" }
{ "id": "sprint-uuid" }
Projects
{
"name": "Project name",
"description": "Optional",
"path": "/optional/directory/path"
}
List all projects.
{ "id": "project-uuid" }
{
"id": "project-uuid",
"name": "New name"
}
{ "id": "project-uuid" }
{ "id": "project-uuid" }
{ "cwd": "/optional/path/for/autodetect" }
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
GPLv3 - see LICENSE for details.
Install via CLI
npx mdskills install yuvalsuede/claudiaClaudia is a free, open-source AI agent skill. A task management system built for AI agents. Official website: https://claudiacli.com/ Claudia provides structured task tracking with a Model Context Protocol (MCP) server, enabling AI assistants like Claude to manage their own work through hierarchical tasks, dependencies, sprints, and acceptance criteria verification. AI agents need a way to: - Track progress across complex, multi-step tasks -
Install Claudia with a single command:
npx mdskills install yuvalsuede/claudiaThis downloads the skill files into your project and your AI agent picks them up automatically.
Claudia works with Claude Code, Claude Desktop, Cursor, Vscode Copilot, Windsurf, Continue Dev, Codex, Gemini Cli, Amp, Roo Code, Goose, Opencode, Trae, Qodo, Command Code. Skills use the open SKILL.md format which is compatible with any AI coding agent that reads markdown instructions.