Communitygithub.com

Purple-Horizons/tick-md

透過結構化 Markdown 檔案協調人類與 AI 代理人之間的工作。使用者以自然語言與你互動,而你則在 TICK.md 中透明地維護任務。

tick-md 是什麼?

Tick 是一種基於 Git 的任務協調協定,其核心是存放在專案根目錄中的 TICK.md 檔案。這個檔案同時具備人類可讀性(標準 Markdown 與 YAML)與機器可解析性(結構化資料),並透過 Git 提供完整的版本控制與稽核軌跡,且完全不需要雲端服務。 Tick 支援 CLI 指令與 MCP(Model Context Protocol)工具兩種操作方式,可整合至 Claude Code、Cursor、Codex 等支援 MCP 的 AI 代理平台。使用者只需以自然語言提出需求(例如「重構認證系統」),AI 代理便會自動執行 `tick add`、`tick claim`、`tick done` 等指令來管理任務,並在 TICK.md 中留下完整的操作記錄。 Tick 具備豐富的功能:任務生命週期管理(新增、認領、完成、重新開啟)、依賴關係與自動解鎖、批次操作、即時監控、代理註冊與列表、YAML 匯入匯出,以及驗證機制(包含循環依賴檢測)。這些功能讓開發團隊能有效追蹤跨代理的工作進度,適合需要與多個 AI 代理協作或管理大型專案的使用者。

相容平台~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         # 從 stdin 匯入
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 的替代方案)

若使用 Model Context Protocol,請使用這些工具來取代 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. Frontmatter(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

# 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,並記錄在歷史中

# 將狀態設回 in_progress,並記錄在歷史中

tick reopen TASK-001 @bot --re-block
# 同時重新封鎖依賴於此任務的其他任務

修正錯誤

# 復原上一次 tick 操作
# 復原上一次 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.

相關技能