Vòng đời một task

Vòng đời một task A workflow diagram generated by Archify. 01 / Plane (board) 02 / Worktree (dựng & dọn) 03 / Agent trong worktree 04 / Người 05 / GitHub 06 / Đồng bộ EX / Nhánh dừng Dựng & làm Bàn giao & push Merge, đồng bộ, dọn Plane → In Review · comment kèm link commit · Plane (board) › Bàn giao & push Plane → In Review comment kèm link commit agents create · worktree + branch mới · Worktree (dựng & dọn) › Dựng & làm · gỡ upstream agents create worktree + branch mới gỡ upstream Agent làm task · agents open · send · Agent trong worktree › Dựng & làm Agent làm task agents open · send lint + commit local · npm run lint phải xanh · Agent trong worktree › Bàn giao & push lint + commit local npm run lint phải xanh git push -u origin · lần đầu bắt buộc có -u · Người › Bàn giao & push git push -u origin lần đầu bắt buộc có -u Create a merge commit · tương đương --no-ff · Người › Merge, đồng bộ, dọn · đừng Squash Create a merge commit tương đương --no-ff đừng Squash gh pr create · --base main --head <branch> · GitHub › Bàn giao & push gh pr create --base main --head <branch> agents sync · rebase mọi worktree · Đồng bộ › Merge, đồng bộ, dọn agents sync rebase mọi worktree agents rm · branch xoá tay · Worktree (dựng & dọn) › Merge, đồng bộ, dọn agents rm branch xoá tay Bỏ qua worktree · branch đã push · Nhánh dừng › Merge, đồng bộ, dọn Bỏ qua worktree branch đã push Conflict → DỪNG · resolve tay rồi sync lại · Nhánh dừng › Merge, đồng bộ, dọn Conflict → DỪNG resolve tay rồi sync lại state + comment agent dừng, người push đã merge vào main không rebase conflict Legend Agent logic Policy Cloud service External system

Bốn lằn ranh không được vượt

  • • Agent commit local rồi dừng — push là việc của người
  • • agents sync không tự resolve conflict, nó dừng và báo
  • • Merge trên GitHub chọn merge commit, không Squash
  • • agents rm giữ lại branch, phải tự branch -d

Vì sao script làm vậy

  • • Gỡ upstream lúc tạo worktree: git push trần từng bắn vào main
  • • npm install lúc tạo: worktree mới không có node_modules, lint chết
  • • Trả .mcp.json về bản git trước rebase: cờ skip-worktree chặn rebase
  • • Branch đã push thì bỏ qua: rebase branch đã push là viết lại lịch sử

Khi sync bỏ dở một worktree

  • • đã merge vào origin/main → dọn được, sang bước cuối
  • • đã push lên origin/<branch> → merge PR trước rồi sync lại
  • • conflict → vào worktree chạy rebase --continue hoặc --abort
  • • Trong lúc chờ, .mcp.json cố ý ở bản git và chưa có cờ