Communitygithub.com

Tick 多智能体协调 | Purple-Horizons/tick-md

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

tick-md 是什么?

Tick 多智能体协调技能定义了一种基于 Git 的任务协调协议,使用标准 Markdown 与 YAML 格式的 TICK.md 文件作为单一数据源。该协议支持人类可读与机器可解析的任务管理、完整的版本控制与审计追踪,无需依赖云服务。您可以通过 Tick CLI 或 MCP 工具集创建、认领、完成和追踪任务,并支持依赖图可视化、批量操作、实时监控及智能体的注册和管理。此技能适用于 Claude Code、Cursor 等支持 CLI 或 Model Context Protocol 的 AI 助手,帮助开发者与 AI 智能体在本地优先、结构化的环境中高效协作。

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

在你喜欢的 AI 中提问

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

文档

Tick 多智能体协调

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

安装

前提条件:Tick CLI 和 MCP 服务器应由你的环境预先安装和配置。

首次设置? 请参阅 INSTALL.md 获取针对编辑器的安装说明。

安全边界

  • 在编辑编辑器 MCP 配置文件之前,需明确获得用户批准。
  • 在运行任何推送到远程 git 的命令(tick sync --push 或 git push)之前,需明确获得用户批准。
  • 如果用户批准不明确,请仅使用只读/状态命令,并解释待执行的写入操作。

快速检查:

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

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

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

核心概念

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

  • 人类可读:标准 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 --pull                   # 拉取最新变更
# tick sync --push                 # 仅限明确获得用户批准后执行

任务操作

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. 自然对话优先

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

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. Frontmatter(YAML):项目元数据
  2. 智能体表格(Markdown):谁在处理什么任务
  3. 任务块(YAML + Markdown):包含历史记录的单个任务

示例:

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

# Agents

| Name | Type | Roles | Status | Working On |
|------|------|-------|--------|------------|
| @alice | human | owner | working | TASK-003 |
| @bot | bot | engineer | idle | - |

# Tasks

```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: complete TASK-001, TASK-002; update 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.

相关技能