mcpField
C
claudia

claudia

本地服务
github.com/yuvalsuede生产力1535 周前更新

关于 claudia

claudia 是面向 AI Agent 的任务管理系统,提供命令行界面和 MCP 服务。它通过任务层级、依赖关系、冲刺、验收检查和 Agent 协作来组织项目工作。

主要功能

  1. 01层级任务与依赖关系
  2. 02冲刺和项目组织
  3. 03按任务存储 JSON 上下文
  4. 04验收标准验证
  5. 05原子化任务认领与 Agent 协作
  6. 06命令行和 Web 看板

适用场景

  1. 01将项目工作拆分为有依赖的子任务
  2. 02协调共同参与项目的多个 Agent
  3. 03在不同会话间保留任务上下文
  4. 04在完成任务前验证验收标准

MCP 相关

MCP 服务提供任务创建、更新、状态转换、依赖管理、协作、上下文、验证、冲刺和项目等工具。Agent 可通过这些工具认领、转交或释放任务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"yuvalsuede-claudia": {
"command": "npx",
"args": [
"-y",
"claudia-cli"
]
}
}
}
启动命令npx -y claudia-cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmclaudia-cli0.1.3

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Claudia

License: GPLv3 Bun MCP

专为 AI Agent 打造的任务管理系统。

官方网站:https://claudiacli.com/

Claudia 提供结构化任务跟踪,并内置 Model Context Protocol(MCP)服务,让 Claude 等 AI 助手能够通过分层任务、依赖关系、冲刺和验收标准验证来管理自己的工作。

Claudia Dashboard Demo

为什么选择 Claudia?

AI Agent 需要以下能力:

  • 跟踪进度,处理复杂的多步骤任务
  • 协同工作,支持多个 Agent 在同一项目上协作
  • 记住上下文,跨会话保留信息(每个任务可存储 64KB JSON)
  • 验证工作,在完成前根据验收标准进行检查
  • 组织工作,按冲刺和项目层级进行管理

Claudia 通过 CLI 和 MCP 服务接口提供上述所有功能。

快速开始

# 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
试用演示

通过示例数据体验 Claudia:

# Seed demo project with sample tasks and sprints
bun run seed:demo

# Open the web dashboard
./claudia @@ --port 3333

然后在浏览器中打开 http://localhost:3333,探索看板和冲刺视图。

截图

任务看板

Claudia Tasks View

冲刺管理

Claudia Sprints View

功能

功能说明
分层任务支持父子关系,并以树状图呈现
状态机验证状态转换:pending → in_progress → verification → completed
依赖关系在前置任务完成前阻止任务执行,并检测循环依赖
冲刺将任务分组成有时间限制的工作周期
多项目隔离任务命名空间,并根据工作目录自动检测项目
Agent 记忆每个任务可存储 64KB JSON 上下文
验收标准在任务完成前定义并验证要求
多 Agent 协同原子化任务认领、乐观锁和冲突检测
Web 仪表板支持按项目和冲刺筛选的可视化看板
MCP 服务可直接集成 Claude Code 和其他 MCP 客户端

安装

前置条件
  • Bun 运行时(v1.0+)
从源代码安装
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/

使用方法

CLI 命令
任务管理
# 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 <task-id>

# Update a task
claudia task update <task-id> --title "New title" --priority p0

# Transition status
claudia task transition <task-id> --to in_progress

# Delete a task
claudia task delete <task-id> --force
任务层级
# Create a subtask
claudia task create --title "Subtask" --parent <parent-id>

# View task tree
claudia task tree              # Full tree
claudia task tree <task-id>    # Subtree from task
任务上下文(Agent 记忆)
# Set context (overwrites)
claudia task context-set <task-id> '{"key": "value"}'

# Merge context (deep merge)
claudia task context-merge <task-id> '{"additional": "data"}'

# Get context
claudia task context-get <task-id>
依赖关系
# Add dependency (task depends on blocker)
claudia task depends <task-id> --on <blocker-id>

# Remove dependency
claudia task undepends <task-id> --on <blocker-id>

# Show dependencies
claudia task deps <task-id>

# 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 <sprint-id>

# Activate a sprint
claudia sprint activate <sprint-id>
项目
# Create a project
claudia project create --name "My Project" --path /path/to/project

# List projects
claudia project list

# Select active project
claudia project select <project-id>

# Show current project
claudia project current
Web 仪表板
# Open dashboard in browser
claudia @@

# Custom port
claudia @@ --port 8080

仪表板提供:

  • 任务视图:支持拖放列的看板
  • 冲刺视图:显示进度指示器的冲刺卡片
  • 项目筛选器:将视图限定到特定项目
  • 清除已完成项:归档已完成的任务
MCP 服务集成

启动 MCP 服务,以便与 Claude Code 配合使用:

claudia mcp
Claude Code 配置

将以下内容添加到项目根目录中的 .mcp.json:

{
  "mcpServers": {
    "claudia": {
      "command": "/path/to/claudia",
      "args": ["mcp"]
    }
  }
}

或者用于开发(无需构建):

{
  "mcpServers": {
    "claudia": {
      "command": "bun",
      "args": ["run", "/path/to/claudia/src/mcp/server.ts"],
      "cwd": "/path/to/claudia"
    }
  }
}

添加配置后,重启 Claude Code 以建立连接。

可用的 MCP 工具

复合操作(建议 Agent 使用)

工具描述
task_start在一次操作中创建并启动任务
task_finish完成任务,可附带摘要
task_workspace获取当前 Agent 的工作区上下文
task_handoff将任务转交给另一个 Agent
task_abandon将任务释放回待处理状态

任务管理

工具描述
task_create创建新任务
task_read按 ID 获取任务
task_update更新任务字段
task_delete删除任务
task_list使用筛选条件查询任务
task_transition更改任务状态
task_tree获取任务层级视图

协作

工具描述
task_claim以原子方式认领任务
task_release释放已认领的任务
task_blocked列出受阻任务
task_ready列出就绪任务
task_dependency_add添加任务依赖项

验证

工具描述
task_verify将标准标记为已验证
task_verification_status获取验证进度

如需完整文档,请参阅下方的完整 MCP 工具参考。

任务工作流

┌─────────┐     ┌─────────────┐     ┌──────────────┐     ┌───────────┐
│ pending │────▶│ in_progress │────▶│ verification │────▶│ completed │
└─────────┘     └─────────────┘     └──────────────┘     └───────────┘
     │                │                    │                    │
     ▼                ▼                    ▼                    ▼
┌─────────┐                         ┌──────────┐
│ blocked │                         │ archived │ (terminal)
└─────────┘                         └──────────┘

有效的状态转换:

  • pending → in_progress、blocked、archived
  • in_progress → pending、verification、completed、blocked、archived
  • verification → in_progress、completed、blocked、archived
  • blocked → pending、in_progress、archived
  • completed → in_progress、archived
  • archived →(终止状态)

如果未定义验收标准,任务可以跳过 verification。

多 Agent 协作

Claudia 支持多个 AI Agent 在同一项目上并行工作。

认领任务
// 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
});
建议的模式
  1. task_ready - 列出依赖项均已满足的任务
  2. task_claim - 以原子方式预留任务
  3. task_transition - 将任务移至 in_progress
  4. task_context_merge - 保存进度
  5. task_transition - 将任务移至 completed
  6. 失败时:task_release - 让另一个 Agent 重试

配置

环境变量描述默认值
CLAUDIA_DB数据库文件路径~/.claudia/tasks.db

开发

# Development mode
bun run dev

# Run tests
bun test

# Type checking
bun run typecheck

退出代码

代码含义
0成功
1一般错误
2未找到资源
3冲突(版本不匹配)
4验证错误
5存储错误

MCP 工具参考

复合操作
task_start

在一次操作中创建并启动任务。自动为当前 Agent 认领任务。

{
  "title": "Task title",
  "description": "Optional description",
  "priority": "p0|p1|p2|p3",
  "parent_id": "optional-parent-uuid",
  "acceptance_criteria": ["criterion 1", "criterion 2"]
}
task_finish

完成任务,可附带摘要。

{
  "id": "task-uuid",
  "summary": "Optional completion summary"
}
task_workspace

获取当前 Agent 的工作区上下文,包括已认领的任务。

{
  "include_completed": false
}
task_handoff

将任务转交给另一个 Agent。

{
  "task_id": "task-uuid",
  "to_agent_id": "target-agent",
  "notes": "Optional handoff notes"
}
task_abandon

将任务释放回待处理状态,并附上原因。

{
  "task_id": "task-uuid",
  "reason": "Why abandoning"
}
任务 CRUD
task_create
{
  "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"]
}
task_read
{ "id": "task-uuid" }
task_update
{
  "id": "task-uuid",
  "title": "New title",
  "version": 1
}
task_delete
{ "id": "task-uuid" }
task_list
{
  "status": ["pending", "in_progress"],
  "priority": ["p0", "p1"],
  "parent_id": "uuid",
  "sprint_id": "uuid",
  "assignee": "name",
  "limit": 100,
  "offset": 0
}
task_transition
{
  "id": "task-uuid",
  "to": "in_progress"
}
task_tree
{
  "id": "optional-root-uuid",
  "depth": 5
}
批量操作
task_create_many
{
  "tasks": [
    { "title": "Task 1" },
    { "title": "Task 2" }
  ],
  "parent_id": "optional-common-parent",
  "sprint_id": "optional-common-sprint"
}
task_update_many
{
  "ids": ["uuid1", "uuid2"],
  "updates": {
    "priority": "p1",
    "assignee": "agent-1"
  }
}
task_transition_many
{
  "ids": ["uuid1", "uuid2"],
  "to": "completed",
  "skip_invalid": true
}
依赖项与协作
task_dependency_add
{
  "task_id": "blocked-task",
  "depends_on_id": "blocking-task"
}
task_dependency_remove
{
  "task_id": "task-uuid",
  "depends_on_id": "dependency-uuid"
}
task_dependencies
{ "task_id": "task-uuid" }
task_blocked

列出所有依赖项尚未满足的任务。

task_ready

列出所有可开始处理的任务(依赖项均已满足)。

task_claim
{
  "task_id": "task-uuid",
  "agent_id": "claiming-agent"
}
#### task_release ```json { "task_id": "task-uuid", "agent_id": "releasing-agent" } ```
上下文存储
task_context_set

覆盖任务上下文(最大 64KB)。

{
  "id": "task-uuid",
  "context": { "any": "json data" }
}
task_context_merge

深度合并到现有上下文中。

{
  "id": "task-uuid",
  "context": { "additional": "data" }
}
task_context_get
{ "id": "task-uuid" }
验证
task_verify

将一项验收标准标记为已验证。

{
  "task_id": "task-uuid",
  "criterion_id": "criterion-uuid",
  "evidence": "Optional verification evidence"
}
task_verification_status

获取任务的验证进度。

{ "task_id": "task-uuid" }
冲刺
sprint_create
{
  "name": "Sprint 1",
  "start_at": "2024-01-15",
  "end_at": "2024-01-29"
}
sprint_list
{ "include_archived": false }
sprint_show
{ "id": "sprint-uuid" }
sprint_update
{
  "id": "sprint-uuid",
  "name": "New name",
  "status": "active"
}
sprint_delete
{ "id": "sprint-uuid" }
sprint_activate
{ "id": "sprint-uuid" }
项目
project_create
{
  "name": "Project name",
  "description": "Optional",
  "path": "/optional/directory/path"
}
project_list

列出所有项目。

project_read
{ "id": "project-uuid" }
project_update
{
  "id": "project-uuid",
  "name": "New name"
}
project_delete
{ "id": "project-uuid" }
project_select
{ "id": "project-uuid" }
project_current
{ "cwd": "/optional/path/for/autodetect" }

贡献

欢迎贡献!请参阅 CONTRIBUTING.md 了解指南。

许可证

GPLv3 - 详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。