Communitygithub.com

Tick 多智能体协调

通过结构化 Markdown 文件协调人类与 AI 智能体之间的工作。用户与你自然交互,你则透明地在 TICK.md 中维护任务。

Tick 多智能体协调 是什么?

Tick 是一个基于 Git 的任务协调协议,通过结构化 Markdown 文件(TICK.md)实现人类与 AI 智能体之间的工作协调。它支持所有 Markdown 编辑器、CLI 工具、MCP(模型上下文协议)服务器以及脚本集成,提供完整的版本控制和审计追踪。Tick 的核心价值在于让用户以自然语言提出需求,而 AI 智能体自动在后台创建、分配、更新和完成任务,无需用户直接操作 Tick 命令。其工作流包括:用户提出请求 → 智能体创建任务 → 注册并认领任务 → 执行并记录进展 → 标记完成并同步。Tick 还支持依赖管理、批量操作、实时监控、智能体注册与查询等功能,非常适合多智能体协作场景。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Purple-Horizons/tick-md/tree/main/clawhub-plugin/skills/tick-coordination

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Tick 多智能体协调 是做什么的?

通过结构化 Markdown 文件协调人类与 AI 智能体之间的工作。用户与你自然交互,你则透明地在 TICK.md 中维护任务。

安装

前置条件:你的环境中应已安装并配置好 Tick CLI 和 MCP 服务器。

首次安装? 请参阅 INSTALL.md 获取编辑器特定的安装说明。

快速检查:

# 验证 CLI 是否可用
tick --version

# 检查项目中是否存在 TICK.md
ls TICK.md

# 如果不存在,则初始化
tick init

核心概念

Tick 协议 = 通过 TICK.md 文件实现的基于 Git 的任务协调

  • 人类可读:标准 Markdown 搭配 YAML
  • 机器可解析:结构化为工具使用
  • Git 支撑:完整的版本控制和审计追踪
  • 本地优先:无需云端

快速开始

检查 Tick 是否已初始化

ls TICK.md

如果未初始化

tick init

获取当前状态

tick status

常见工作流

1. 用户要求你做某事

用户:“你能重构一下认证系统吗?”

你的操作:

# 1. 创建任务
tick add "重构认证系统" --priority high --tags backend,security

# 2. 注册自己(仅首次)
tick agent register @your-name --type bot --roles "engineer,refactoring"

# 3. 认领任务
tick claim TASK-XXX @your-name

# 4. 开始工作(执行实际工作)

# 5. 添加进展注释
tick comment TASK-XXX @your-name --note "正在分析当前认证流程"
tick comment TASK-XXX @your-name --note "已重构为使用 JWT 令牌"

# 6. 标记完成
tick done TASK-XXX @your-name

2. 用户询问项目状态

用户:“我们当前在做什么任务?”

# 获取全面状态
tick status

# 或者筛选并列出任务
tick list --status in_progress
tick list --claimed-by @bot-name

用自然语言向用户总结输出。

3. 与其他智能体协调

用户:“其他智能体完成他们的任务了吗?”

# 检查总体状态
tick status

# 列出智能体及其工作
tick agent list --verbose

# 验证项目
tick validate

4. 分解复杂工作

用户:“构建一个带图表和数据导出功能的用户仪表盘”

你的操作:

# 创建父任务
tick add "构建用户仪表盘" --priority high --tags frontend

# 创建带依赖的子任务
tick add "设计仪表盘布局" --priority high --tags frontend,design
tick add "实现数据图表" --priority medium --tags frontend,charts --depends-on TASK-XXX
tick add "添加 CSV 导出" --priority low --tags frontend,export --depends-on TASK-XXX

# 可视化依赖关系
tick graph

命令参考

项目管理

tick init                          # 初始化新项目
tick status                        # 查看项目概览
tick list                          # 使用筛选条件列出任务
tick graph                         # 可视化依赖关系
tick watch                         # 实时监控变更
tick validate                      # 检查错误
tick sync --push                   # 提交并推送到 git

任务操作

tick add "任务标题" \
  --priority high \                # urgent|high|medium|low
  --tags backend,api \             # 逗号分隔的标签
  --assigned-to @agent \           # 分配给智能体
  --depends-on TASK-001 \          # 依赖关系
  --estimated-hours 4              # 预估时间

tick claim TASK-001 @agent         # 认领任务(设置为 in_progress)
tick release TASK-001 @agent       # 释放任务(回到 todo)
tick done TASK-001 @agent          # 完成任务
tick reopen TASK-001 @agent        # 重新打开已完成的任务
tick delete TASK-001               # 删除任务
tick comment TASK-001 @agent \     # 添加注释
  --note "进度更新"
tick edit TASK-001 \               # 直接编辑字段
  --title "新标题" \
  --priority high \
  --status in_progress

修正与恢复

tick reopen TASK-001 @agent        # 重新打开已完成的任务
tick reopen TASK-001 @agent \      # 重新打开并重新阻塞其依赖者
  --re-block

tick delete TASK-001               # 删除任务,清理依赖
tick delete TASK-001 --force       # 强制删除,即使有依赖

tick edit TASK-001 --title "X"     # 修改标题
tick edit TASK-001 --priority high # 修改优先级
tick edit TASK-001 --status todo   # 直接修改状态
tick edit TASK-001 --tags a,b,c    # 替换标签
tick edit TASK-001 --add-tag new   # 添加标签
tick edit TASK-001 --remove-tag old # 移除标签
tick edit TASK-001 \               # 编辑依赖
  --depends-on TASK-002,TASK-003

tick undo                          # 撤销上次 tick 操作
tick undo --dry-run                # 预览将要撤销的内容

批量操作

tick import tasks.yaml             # 从 YAML 文件导入任务
tick import - < tasks.yaml         # 从标准输入导入
tick import tasks.yaml --dry-run   # 预览导入结果

tick batch start                   # 开始批量模式(无自动提交)
tick batch status                  # 检查批量状态
tick batch commit                  # 提交所有批量更改
tick batch abort                   # 丢弃所有批量更改

高级任务列表

tick list                          # 所有任务,按状态分组
tick list --status blocked         # 仅阻塞的任务
tick list --priority urgent        # 高优先级任务
tick list --assigned-to @alice     # 特定智能体的任务
tick list --tag backend            # 带有特定标签的任务
tick list --json                   # 输出 JSON 格式供脚本使用

依赖可视化

tick graph                         # ASCII 依赖树
tick graph --format mermaid        # Mermaid 流程图
tick graph --show-done             # 包含已完成的任务

实时监控

tick watch                         # 监控变更
tick watch --interval 10           # 自定义轮询间隔
tick watch --filter in_progress    # 仅显示特定状态

智能体管理

tick agent register @name \        # 注册新智能体
  --type bot \                     # human|bot
  --roles "dev,qa" \               # 逗号分隔的角色
  --status idle                    # working|idle|offline

tick agent list                    # 列出所有智能体
tick agent list --verbose          # 详细信息
tick agent list --type bot         # 按类型筛选
tick agent list --status working   # 按状态筛选

MCP 工具(CLI 替代方案)

如果使用模型上下文协议,可以使用以下工具代替 CLI 命令:

状态与检查

  • tick_status - 获取项目状态(智能体、任务、进度)
  • tick_validate - 验证 TICK.md 结构
  • tick_agent_list - 列出智能体(可选筛选条件)

任务管理

  • tick_add - 创建新任务
  • tick_claim - 为智能体认领任务
  • tick_release - 释放已认领的任务
  • tick_done - 完成任务(自动解除依赖者的阻塞)
  • tick_comment - 为任务添加注释

修正与恢复

  • tick_reopen - 重新打开已完成的任务
  • tick_delete - 删除任务
  • tick_edit - 直接编辑字段(绕过状态机)
  • tick_undo - 撤销上次 tick 操作

智能体操作

  • tick_agent_register - 注册新智能体

MCP 示例:

// 通过 MCP 创建任务
await tick_add({
  title: "重构身份认证",
  priority: "high",
  tags: ["backend", "security"],
  assignedTo: "@bot-name"
})

// 认领任务
await tick_claim({
  taskId: "TASK-023",
  agent: "@bot-name"
})

最佳实践

1. 先进行自然对话

✅ 好:用户说“重构认证”,你自动创建任务 ❌ 不好:让用户明确创建任务

2. 始终使用你的智能体名称

注册一次:

tick agent register @your-bot-name --type bot --roles "engineer"

然后持续使用:

tick claim TASK-001 @your-bot-name
tick done TASK-001 @your-bot-name

3. 在注释中提供上下文

# ✅ 好 - 解释做了什么以及为什么
tick comment TASK-005 @bot --note "从 REST 切换为 GraphQL,以获得更好的类型安全并减少过度获取"

# ❌ 不好 - 过于模糊
tick comment TASK-005 @bot --note "更新了 API"

4. 分解大型任务

创建带依赖的子任务:

tick add "搭建 CI/CD 流水线" --priority high
tick add "配置 GitHub Actions" --depends-on TASK-010
tick add "添加部署脚本" --depends-on TASK-011
tick add "设置预发布环境" --depends-on TASK-011

5. 认领前检查状态

# 确保任务存在且未被认领
tick status

# 然后认领
tick claim TASK-XXX @your-name

理解 TICK.md 结构

文件包含三个部分:

  1. 前置元数据(YAML):项目元信息
  2. 智能体表格(Markdown):谁在做什么
  3. 任务块(YAML + Markdown):单个任务及其历史

示例:

---
project: my-app
schema_version: "1.0"
next_id: 5
---

# 智能体

| 名称 | 类型 | 角色 | 状态 | 当前任务 |
|------|------|-------|--------|------------|
| @alice | human | owner | working | TASK-003 |
| @bot | bot | engineer | idle | - |

# 任务


yaml
id: TASK-001
title: 构建身份认证
status: done
priority: high
claimed_by: null
# ... 更多字段
history:
  - ts: 2026-02-07T10:00:00Z
    who: @bot
    action: created
  - ts: 2026-02-07T14:00:00Z
    who: @bot
    action: done


实现了基于 JWT 的身份认证,包含令牌刷新...

高级功能

自动解除依赖阻塞

当你完成任务时,依赖该任务的任务会自动解除阻塞:

# TASK-002 依赖于 TASK-001
# TASK-002 状态:blocked

tick done TASK-001 @bot
# TASK-002 自动更改为:todo

循环依赖检测

验证过程会捕获循环依赖:

tick validate
# 错误:检测到循环依赖:TASK-001 → TASK-002 → TASK-003 → TASK-001

智能提交信息

tick sync --push
# 自动生成:"feat: 完成 TASK-001, TASK-002;更新 TASK-003"

重新打开已完成的任务

如果某个任务被错误地标记为完成:

tick reopen TASK-001 @bot
# 将状态设置回 in_progress,并在历史中记录

tick reopen TASK-001 @bot --re-block
# 同时重新阻塞依赖此任务的其他任务

修复错误

# 撤销上次 tick 操作
tick undo

# 先预览将要撤销的内容
tick undo --dry-run

# 直接字段编辑(绕过状态机)
tick edit TASK-001 --status todo --priority urgent

批量操作

适用于无需单独提交的多次更改:

tick batch start
# 现在进行多次更改...
tick add "任务 1" --priority high
tick add "任务 2" --priority medium
tick claim TASK-001 @bot
# ...
tick batch commit   # 所有更改一次性提交
# 或者:tick batch abort  # 丢弃所有更改

实时监控

tick watch
# [10:23:45] ✓ 已添加:TASK-015 - 实现用户搜索
# [10:24:12] 🔒 TASK-015 由 @bot 认领
# [10:26:33] ⟳ TASK-015: in_progress → done

快速参考卡片

工作流:      init → add → claim → work → comment → done → sync
核心命令:     status | add | claim | done | list | graph
修正:        reopen | delete | edit | undo
批量:        import | batch start/commit/abort
协调:        agent register | agent list | validate | watch
Git:         sync --pull | sync --push

关键提醒

  1. 用户与你交互,而不是直接操作 Tick
  2. 你透明地维护 TICK.md
  3. 仪表盘仅用于查看,而非主要交互方式
  4. 始终一致地使用你的智能体名称
  5. 经常添加注释以展示进展
  6. 同步之前进行验证
  7. 认领之前检查状态
  8. 将复杂工作分解为子任务

资源

许可证

MIT

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相关技能