Agent Skills
› Stanshy/AgentHub
› task-start
task-start
GitHub当Agent开始执行任务时,将任务状态从assigned更新为in_progress。支持查找Sprint子目录中的任务文件,获取真实时间,检查依赖关系,记录事件日志,并根据是否并行处理自动创建Git分支或确认当前分支。
Trigger Scenarios
用户输入 /task-start <task-id> 命令
Agent 准备开始执行新分配的任务
Install
npx skills add Stanshy/AgentHub --skill task-start -g -y
SKILL.md
Frontmatter
{
"name": "task-start",
"description": "Mark a task as in_progress when agent begins working",
"allowed-tools": "Read, Edit, Glob, Bash"
}
任務開始
Agent 開始執行任務時呼叫,將狀態從 assigned 改為 in_progress。
使用方式
/task-start <task-id>
參數
$0: 任務 ID(如T5)
執行步驟
- 找到對應的任務檔案(支援 Sprint 子目錄):
使用 Glob tool 搜尋
.tasks/**/$0-*.md,若無結果再搜尋.tasks/**/$0.md。 取得檔案路徑後用 Read tool 讀取內容。
任務檔案可能在
.tasks/sprint-{N}/T5-xxx.md,不再只在.tasks/根目錄。
-
取得真實時間(必要,不可跳過): !
node -e "console.log(new Date().toISOString())"⚠️ 禁止自行編造時間。Agent 不知道真實時間,必須透過上述指令取得。將輸出存為變數
$NOW供後續步驟使用。 -
更新找到的任務檔案:
- 將
| 狀態 | ... |改為| 狀態 | in_progress | - 將
| 開始時間 | ... |改為| 開始時間 | $NOW | - 若
開始時間已有非—的值,不覆蓋(代表曾被 blocked 後恢復,保留首次開始時間) - 若找不到
| 開始時間 |欄位,在| 建立時間 |行之後插入| 開始時間 | $NOW |
- 將
-
依賴檢查(必要):
- 讀取任務檔的
| 依賴 |欄位 - 若不為
—,使用 Glob tool 逐一找到依賴任務檔,確認其| 狀態 |=done - 任一依賴狀態非
done→ 輸出 block 訊息並停止:⛔ $0 無法開始:依賴 {T?} 狀態為 {狀態},尚未完成 - 全部 done → 繼續
- 讀取任務檔的
-
事件紀錄(必要,不可跳過):在
## 事件紀錄區塊底部 append:### $NOW — 狀態變更 → in_progress 開始執行任務 -
Git Branch 處理: 讀取任務檔的
| 並行組 |欄位:若
並行組 = —(循序任務):- 確認當前 branch 為
sprint-{N}(從任務檔 Sprint 欄位取 N) - 若不在正確 branch,切換:
git checkout sprint-{N} - 輸出:
📌 循序任務,在 sprint-{N} 直接開發
若
並行組 = A/B/C...(並行任務):- 從任務標題產生 slug(小寫 kebab-case,最長 30 字元)
- 從 sprint-{N} 建立 task branch:
git checkout sprint-{N} git checkout -b task/s{N}-$0-{slug} - 輸出:
🌿 並行任務,已建立 branch: task/s{N}-$0-{slug}
- 確認當前 branch 為
-
輸出確認:
▶️ $0 狀態已更新為 in_progress
Version History
- 5300820 Current 2026-07-24 12:11


