Skip to main content
Glama
backloghq

backlog

backlog

GitHub stars License: MIT CI Docs

为 Claude Code 提供持久化、跨会话的任务管理。任务可以在会话间保留,因此一个智能体开始的工作可以由另一个智能体继续完成。

基于 @backloghq/agentdb 构建 —— 支持类型化模式、自动递增 ID、虚拟过滤器和 Blob 存储。纯 TypeScript 编写,零原生依赖。

安装

/plugin marketplace add backloghq/backlog
/plugin install backlog@backloghq-backlog

从源码安装

git clone https://github.com/backloghq/backlog.git
cd backlog && npm install && npm run build
claude --plugin-dir /path/to/backlog

独立 MCP 服务器

添加到项目的 .claude/settings.json 中:

{
  "mcpServers": {
    "backlog": {
      "command": "node",
      "args": ["/path/to/agent-teams-task-mcp/dist/index.js"],
      "env": {
        "TASKDATA": "/path/to/task-data"
      }
    }
  }
}

技能

技能

描述

/backlog:tasks

显示当前待办事项 —— 待处理、进行中、阻塞、逾期任务

/backlog:plan

将目标分解为带有依赖项、优先级和规范的任务

/backlog:standup

每日站会 —— 已完成、进行中、阻塞、下一步

/backlog:refine

整理待办事项 —— 修复模糊的任务、缺失的优先级、损坏的依赖项、陈旧的项目

/backlog:spec

在实施前为任务编写规范文档

/backlog:implement

领取任务、阅读规范、实施并标记为完成

/backlog:handoff

为下一次会话做准备 —— 注释进度、停止活动任务、总结状态

智能体

当有人需要规划工作时,Claude 可以自动调用 task-planner 智能体。它会读取代码库,将目标分解为带有依赖项的任务,并为复杂项目编写规范。

钩子

事件

作用

SessionStart

会话开始时显示待处理任务数量

TaskCreated

将 Claude 内置任务同步到持久化待办事项中

TaskCompleted

当 Claude 完成内置任务时,将对应的待办事项标记为完成

SubagentStart

将未分配的待处理任务自动分配给生成的智能体

工具 (MCP)

24 个用于完整任务生命周期管理的工具:

工具

描述

task_list

使用过滤器语法查询任务。返回包含所有字段的 JSON 数组。

task_count

统计符合过滤器的任务数量。语法与 task_list 相同。

task_add

创建一个新的待处理任务。仅需描述;其他字段可选。

task_log

直接以已完成状态记录已完成的工作。

task_modify

对符合过滤器的任务进行部分更新。仅修改提供的字段。

task_duplicate

复制现有任务,并可选择覆盖字段。

task_done

将任务标记为完成,并记录结束时间戳。

task_delete

软删除任务。可通过 task_undo 恢复。使用 task_purge 永久删除。

task_annotate

添加带时间戳的注释。长内容请使用 task_doc_write。

task_denotate

通过精确文本匹配删除注释。

task_start

将任务标记为正在进行。在 +ACTIVE 查询中可见。

task_stop

停止处理任务。将其返回到待处理状态。

task_undo

撤销最近的操作。可重复调用。

task_info

通过 ID 或 UUID 获取单个任务的完整 JSON 详情。

task_import

从 JSON 数组批量创建任务。原子批处理操作。

task_purge

永久删除已删除的任务。不可逆。

task_doc_write

为任务附加/替换 Markdown 文档(规范、注释、上下文)。

task_doc_read

读取附加到任务的 Markdown 文档。

task_doc_delete

删除任务的文档。永久操作。

task_archive

将旧的已完成/已删除任务移动到季度归档段。

task_archive_list

列出可用的归档段。

task_archive_load

加载归档任务以进行只读检查。

task_projects

列出包含待处理/循环任务的项目名称。

task_tags

列出包含待处理/循环任务的标签。

过滤器语法

status:pending                    # all pending tasks
project:backend +bug              # bugs in backend project
priority:H due.before:friday      # high priority due before friday
+OVERDUE                          # overdue tasks
+ACTIVE                           # tasks currently being worked on
+BLOCKED                          # tasks blocked by dependencies
+READY                            # actionable tasks (past scheduled date)
agent:explorer                    # tasks assigned to the explorer agent
( project:web or project:api )    # boolean with parentheses
description.contains:auth         # substring match

支持属性修饰符(.before, .after, .by, .has, .not, .none, .any, .startswith, .endswith)、标签(+tag, -tag)、虚拟标签(+OVERDUE, +ACTIVE, +BLOCKED, +READY, +TAGGED, +ANNOTATED 等)以及布尔运算符(and, or)。

任务文档

为任何任务附加 Markdown 文档(规范、上下文、交接笔记):

task_doc_write  id:"1"  content:"# Spec\n\nBuild the auth flow.\n"
task_doc_read   id:"1"
task_doc_delete id:"1"

编写文档会添加 +doc 标签和 has_doc:yes,以便智能体可以发现带有文档的任务:

task_list filter:"+doc"
task_list filter:"has_doc:yes"

智能体身份

任务支持 agent 字段,用于跟踪哪个智能体拥有该任务:

task_add  description:"Investigate bug"  agent:"explorer"
task_list filter:"agent:explorer status:pending"

项目隔离

每个项目都会自动获得自己的任务数据。作为插件使用时,任务数据位于 ~/.claude/plugins/data/backlog/projects/<project-slug>/。独立使用时,请显式设置 TASKDATA

变量

描述

TASKDATA

任务数据目录的显式路径(覆盖自动推导)

TASKDATA_ROOT

自动推导的项目级任务数据的根目录

BACKLOG_BACKEND

存储后端:留空为文件系统(默认),s3 为 Amazon S3

BACKLOG_S3_BUCKET

S3 存储桶名称(当 BACKLOG_BACKEND=s3 时必需)

BACKLOG_S3_REGION

AWS 区域(如果使用默认凭证则可选)

S3 后端

将任务数据存储在 S3 中以供团队共享或云端持久化。需要 @backloghq/opslog-s3

npm install @backloghq/opslog-s3

通过 .claude/settings.json 中的环境变量进行配置:

{
  "mcpServers": {
    "backlog": {
      "command": "node",
      "args": ["/path/to/backlog/dist/index.js"],
      "env": {
        "TASKDATA": "my-project/tasks",
        "BACKLOG_BACKEND": "s3",
        "BACKLOG_S3_BUCKET": "my-team-backlog",
        "BACKLOG_S3_REGION": "us-east-1"
      }
    }
  }
}

使用 S3 时,TASKDATA 将成为存储桶中的键前缀,而不是文件系统路径。

Docker

docker build -t backlog .
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' \
  | docker run --rm -i backlog

开发

npm install
npm run build          # compile TypeScript
npm run lint           # run ESLint
npm test               # run tests (189 tests)
npm run test:coverage  # run tests with coverage
npm run dev            # watch mode

社区

如果 backlog 对你有帮助,请考虑给它点个星标 —— 这有助于其他人发现该项目。

许可证

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/backloghq/backlog'

If you have feedback or need assistance with the MCP directory API, please join our Discord server