@fitlab-ai/agent-infra 0.5.1 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +17 -3
  2. package/README.zh-CN.md +17 -3
  3. package/lib/defaults.json +3 -0
  4. package/lib/init.js +15 -5
  5. package/lib/merge.js +22 -7
  6. package/lib/render.js +77 -15
  7. package/lib/sandbox/commands/enter.js +22 -7
  8. package/lib/sandbox/commands/rm.js +1 -1
  9. package/lib/sandbox/runtimes/base.dockerfile +27 -1
  10. package/lib/update.js +19 -5
  11. package/package.json +2 -1
  12. package/templates/.agents/{README.md → README.en.md} +13 -3
  13. package/templates/.agents/README.zh-CN.md +13 -3
  14. package/templates/.agents/rules/issue-pr-commands.github.en.md +111 -0
  15. package/templates/.agents/rules/issue-pr-commands.github.zh-CN.md +111 -0
  16. package/templates/.agents/rules/label-milestone-setup.github.en.md +50 -0
  17. package/templates/.agents/rules/label-milestone-setup.github.zh-CN.md +50 -0
  18. package/templates/.agents/rules/release-commands.github.en.md +30 -0
  19. package/templates/.agents/rules/release-commands.github.zh-CN.md +30 -0
  20. package/templates/.agents/rules/security-alerts.github.en.md +43 -0
  21. package/templates/.agents/rules/security-alerts.github.zh-CN.md +43 -0
  22. package/templates/.agents/scripts/validate-artifact.js +3 -5
  23. package/templates/.agents/skills/analyze-task/{SKILL.md → SKILL.en.md} +2 -2
  24. package/templates/.agents/skills/analyze-task/SKILL.zh-CN.md +2 -2
  25. package/templates/.agents/skills/archive-tasks/scripts/archive-tasks.sh +1 -1
  26. package/templates/.agents/skills/block-task/{SKILL.md → SKILL.en.md} +2 -2
  27. package/templates/.agents/skills/block-task/SKILL.zh-CN.md +2 -2
  28. package/templates/.agents/skills/cancel-task/{SKILL.md → SKILL.en.md} +18 -17
  29. package/templates/.agents/skills/cancel-task/SKILL.zh-CN.md +18 -17
  30. package/templates/.agents/skills/close-codescan/{SKILL.md → SKILL.en.md} +5 -13
  31. package/templates/.agents/skills/close-codescan/SKILL.zh-CN.md +5 -13
  32. package/templates/.agents/skills/close-dependabot/{SKILL.md → SKILL.en.md} +7 -15
  33. package/templates/.agents/skills/close-dependabot/SKILL.zh-CN.md +7 -15
  34. package/templates/.agents/skills/commit/{SKILL.md → SKILL.en.md} +1 -1
  35. package/templates/.agents/skills/commit/SKILL.zh-CN.md +1 -1
  36. package/templates/.agents/skills/commit/reference/{task-status-update.md → task-status-update.en.md} +2 -2
  37. package/templates/.agents/skills/commit/reference/task-status-update.zh-CN.md +2 -2
  38. package/templates/.agents/skills/complete-task/{SKILL.md → SKILL.en.md} +11 -11
  39. package/templates/.agents/skills/complete-task/SKILL.zh-CN.md +11 -11
  40. package/templates/.agents/skills/create-issue/{SKILL.md → SKILL.en.md} +3 -6
  41. package/templates/.agents/skills/create-issue/SKILL.zh-CN.md +3 -6
  42. package/templates/.agents/skills/create-issue/reference/{label-and-type.md → label-and-type.en.md} +4 -16
  43. package/templates/.agents/skills/create-issue/reference/label-and-type.zh-CN.md +4 -16
  44. package/templates/.agents/skills/create-pr/{SKILL.md → SKILL.en.md} +4 -5
  45. package/templates/.agents/skills/create-pr/SKILL.zh-CN.md +4 -5
  46. package/templates/.agents/skills/create-pr/reference/{pr-body-template.md → pr-body-template.en.md} +8 -13
  47. package/templates/.agents/skills/create-pr/reference/pr-body-template.zh-CN.md +8 -13
  48. package/templates/.agents/skills/create-release-note/{SKILL.md → SKILL.en.md} +6 -18
  49. package/templates/.agents/skills/create-release-note/SKILL.zh-CN.md +6 -18
  50. package/templates/.agents/skills/create-task/{SKILL.md → SKILL.en.md} +4 -4
  51. package/templates/.agents/skills/create-task/SKILL.zh-CN.md +4 -4
  52. package/templates/.agents/skills/implement-task/{SKILL.md → SKILL.en.md} +2 -2
  53. package/templates/.agents/skills/implement-task/SKILL.zh-CN.md +2 -2
  54. package/templates/.agents/skills/import-codescan/{SKILL.md → SKILL.en.md} +3 -5
  55. package/templates/.agents/skills/import-codescan/SKILL.zh-CN.md +3 -5
  56. package/templates/.agents/skills/import-dependabot/{SKILL.md → SKILL.en.md} +3 -5
  57. package/templates/.agents/skills/import-dependabot/SKILL.zh-CN.md +3 -5
  58. package/templates/.agents/skills/import-issue/{SKILL.md → SKILL.en.md} +6 -14
  59. package/templates/.agents/skills/import-issue/SKILL.zh-CN.md +6 -14
  60. package/templates/.agents/skills/init-labels/{SKILL.md → SKILL.en.md} +9 -13
  61. package/templates/.agents/skills/init-labels/SKILL.zh-CN.md +9 -13
  62. package/templates/.agents/skills/init-milestones/{SKILL.md → SKILL.en.md} +5 -6
  63. package/templates/.agents/skills/init-milestones/SKILL.zh-CN.md +5 -6
  64. package/templates/.agents/skills/plan-task/{SKILL.md → SKILL.en.md} +2 -2
  65. package/templates/.agents/skills/plan-task/SKILL.zh-CN.md +2 -2
  66. package/templates/.agents/skills/refine-task/{SKILL.md → SKILL.en.md} +2 -2
  67. package/templates/.agents/skills/refine-task/SKILL.zh-CN.md +2 -2
  68. package/templates/.agents/skills/refine-title/{SKILL.md → SKILL.en.md} +7 -17
  69. package/templates/.agents/skills/refine-title/SKILL.zh-CN.md +6 -16
  70. package/templates/.agents/skills/release/{SKILL.md → SKILL.en.md} +2 -1
  71. package/templates/.agents/skills/release/SKILL.zh-CN.md +2 -1
  72. package/templates/.agents/skills/restore-task/{SKILL.md → SKILL.en.md} +7 -13
  73. package/templates/.agents/skills/restore-task/SKILL.zh-CN.md +7 -13
  74. package/templates/.agents/skills/review-task/{SKILL.md → SKILL.en.md} +2 -2
  75. package/templates/.agents/skills/review-task/SKILL.zh-CN.md +2 -2
  76. package/templates/.agents/skills/update-agent-infra/scripts/sync-templates.js +219 -59
  77. package/templates/.agents/templates/{task.md → task.en.md} +3 -3
  78. package/templates/.agents/templates/task.zh-CN.md +3 -3
  79. /package/templates/.agents/{QUICKSTART.md → QUICKSTART.en.md} +0 -0
  80. /package/templates/.agents/rules/{commit-and-pr.md → commit-and-pr.en.md} +0 -0
  81. /package/templates/.agents/rules/{issue-sync.md → issue-sync.github.en.md} +0 -0
  82. /package/templates/.agents/rules/{issue-sync.zh-CN.md → issue-sync.github.zh-CN.md} +0 -0
  83. /package/templates/.agents/rules/{milestone-inference.md → milestone-inference.github.en.md} +0 -0
  84. /package/templates/.agents/rules/{milestone-inference.zh-CN.md → milestone-inference.github.zh-CN.md} +0 -0
  85. /package/templates/.agents/rules/{pr-sync.md → pr-sync.github.en.md} +0 -0
  86. /package/templates/.agents/rules/{pr-sync.zh-CN.md → pr-sync.github.zh-CN.md} +0 -0
  87. /package/templates/.agents/rules/{task-management.md → task-management.en.md} +0 -0
  88. /package/templates/.agents/skills/archive-tasks/{SKILL.md → SKILL.en.md} +0 -0
  89. /package/templates/.agents/skills/check-task/{SKILL.md → SKILL.en.md} +0 -0
  90. /package/templates/.agents/skills/commit/reference/{commit-message.md → commit-message.en.md} +0 -0
  91. /package/templates/.agents/skills/commit/reference/{copyright-check.md → copyright-check.en.md} +0 -0
  92. /package/templates/.agents/skills/commit/reference/{pr-summary-sync.md → pr-summary-sync.en.md} +0 -0
  93. /package/templates/.agents/skills/create-issue/reference/{template-matching.md → template-matching.en.md} +0 -0
  94. /package/templates/.agents/skills/create-pr/reference/{branch-strategy.md → branch-strategy.en.md} +0 -0
  95. /package/templates/.agents/skills/create-pr/reference/{comment-publish.md → comment-publish.en.md} +0 -0
  96. /package/templates/.agents/skills/implement-task/reference/{branch-management.md → branch-management.en.md} +0 -0
  97. /package/templates/.agents/skills/implement-task/reference/{implementation-rules.md → implementation-rules.en.md} +0 -0
  98. /package/templates/.agents/skills/implement-task/reference/{output-template.md → output-template.en.md} +0 -0
  99. /package/templates/.agents/skills/implement-task/reference/{report-template.md → report-template.en.md} +0 -0
  100. /package/templates/.agents/skills/init-labels/scripts/{init-labels.sh → init-labels.github.sh} +0 -0
  101. /package/templates/.agents/skills/init-milestones/scripts/{init-milestones.sh → init-milestones.github.sh} +0 -0
  102. /package/templates/.agents/skills/refine-task/reference/{fix-workflow.md → fix-workflow.en.md} +0 -0
  103. /package/templates/.agents/skills/refine-task/reference/{report-template.md → report-template.en.md} +0 -0
  104. /package/templates/.agents/skills/release/scripts/{manage-milestones.sh → manage-milestones.github.sh} +0 -0
  105. /package/templates/.agents/skills/review-task/reference/{output-templates.md → output-templates.en.md} +0 -0
  106. /package/templates/.agents/skills/review-task/reference/{report-template.md → report-template.en.md} +0 -0
  107. /package/templates/.agents/skills/review-task/reference/{review-criteria.md → review-criteria.en.md} +0 -0
  108. /package/templates/.agents/skills/test/{SKILL.md → SKILL.en.md} +0 -0
  109. /package/templates/.agents/skills/test-integration/{SKILL.md → SKILL.en.md} +0 -0
  110. /package/templates/.agents/skills/update-agent-infra/{SKILL.md → SKILL.en.md} +0 -0
  111. /package/templates/.agents/skills/upgrade-dependency/{SKILL.md → SKILL.en.md} +0 -0
  112. /package/templates/.agents/templates/{handoff.md → handoff.en.md} +0 -0
  113. /package/templates/.agents/templates/{review-report.md → review-report.en.md} +0 -0
  114. /package/templates/.agents/workflows/{bug-fix.yaml → bug-fix.en.yaml} +0 -0
  115. /package/templates/.agents/workflows/{code-review.yaml → code-review.en.yaml} +0 -0
  116. /package/templates/.agents/workflows/{feature-development.yaml → feature-development.en.yaml} +0 -0
  117. /package/templates/.agents/workflows/{refactoring.yaml → refactoring.en.yaml} +0 -0
  118. /package/templates/.agents/workspace/{README.md → README.en.md} +0 -0
  119. /package/templates/.claude/commands/{analyze-task.md → analyze-task.en.md} +0 -0
  120. /package/templates/.claude/commands/{archive-tasks.md → archive-tasks.en.md} +0 -0
  121. /package/templates/.claude/commands/{block-task.md → block-task.en.md} +0 -0
  122. /package/templates/.claude/commands/{cancel-task.md → cancel-task.en.md} +0 -0
  123. /package/templates/.claude/commands/{check-task.md → check-task.en.md} +0 -0
  124. /package/templates/.claude/commands/{close-codescan.md → close-codescan.en.md} +0 -0
  125. /package/templates/.claude/commands/{close-dependabot.md → close-dependabot.en.md} +0 -0
  126. /package/templates/.claude/commands/{commit.md → commit.en.md} +0 -0
  127. /package/templates/.claude/commands/{complete-task.md → complete-task.en.md} +0 -0
  128. /package/templates/.claude/commands/{create-issue.md → create-issue.en.md} +0 -0
  129. /package/templates/.claude/commands/{create-pr.md → create-pr.en.md} +0 -0
  130. /package/templates/.claude/commands/{create-release-note.md → create-release-note.en.md} +0 -0
  131. /package/templates/.claude/commands/{create-task.md → create-task.en.md} +0 -0
  132. /package/templates/.claude/commands/{implement-task.md → implement-task.en.md} +0 -0
  133. /package/templates/.claude/commands/{import-codescan.md → import-codescan.en.md} +0 -0
  134. /package/templates/.claude/commands/{import-dependabot.md → import-dependabot.en.md} +0 -0
  135. /package/templates/.claude/commands/{import-issue.md → import-issue.en.md} +0 -0
  136. /package/templates/.claude/commands/{init-labels.md → init-labels.en.md} +0 -0
  137. /package/templates/.claude/commands/{init-milestones.md → init-milestones.en.md} +0 -0
  138. /package/templates/.claude/commands/{plan-task.md → plan-task.en.md} +0 -0
  139. /package/templates/.claude/commands/{refine-task.md → refine-task.en.md} +0 -0
  140. /package/templates/.claude/commands/{refine-title.md → refine-title.en.md} +0 -0
  141. /package/templates/.claude/commands/{release.md → release.en.md} +0 -0
  142. /package/templates/.claude/commands/{restore-task.md → restore-task.en.md} +0 -0
  143. /package/templates/.claude/commands/{review-task.md → review-task.en.md} +0 -0
  144. /package/templates/.claude/commands/{test-integration.md → test-integration.en.md} +0 -0
  145. /package/templates/.claude/commands/{test.md → test.en.md} +0 -0
  146. /package/templates/.claude/commands/{update-agent-infra.md → update-agent-infra.en.md} +0 -0
  147. /package/templates/.claude/commands/{upgrade-dependency.md → upgrade-dependency.en.md} +0 -0
  148. /package/templates/.gemini/commands/_project_/{analyze-task.toml → analyze-task.en.toml} +0 -0
  149. /package/templates/.gemini/commands/_project_/{archive-tasks.toml → archive-tasks.en.toml} +0 -0
  150. /package/templates/.gemini/commands/_project_/{block-task.toml → block-task.en.toml} +0 -0
  151. /package/templates/.gemini/commands/_project_/{cancel-task.toml → cancel-task.en.toml} +0 -0
  152. /package/templates/.gemini/commands/_project_/{check-task.toml → check-task.en.toml} +0 -0
  153. /package/templates/.gemini/commands/_project_/{close-codescan.toml → close-codescan.en.toml} +0 -0
  154. /package/templates/.gemini/commands/_project_/{close-dependabot.toml → close-dependabot.en.toml} +0 -0
  155. /package/templates/.gemini/commands/_project_/{commit.toml → commit.en.toml} +0 -0
  156. /package/templates/.gemini/commands/_project_/{complete-task.toml → complete-task.en.toml} +0 -0
  157. /package/templates/.gemini/commands/_project_/{create-issue.toml → create-issue.en.toml} +0 -0
  158. /package/templates/.gemini/commands/_project_/{create-pr.toml → create-pr.en.toml} +0 -0
  159. /package/templates/.gemini/commands/_project_/{create-release-note.toml → create-release-note.en.toml} +0 -0
  160. /package/templates/.gemini/commands/_project_/{create-task.toml → create-task.en.toml} +0 -0
  161. /package/templates/.gemini/commands/_project_/{implement-task.toml → implement-task.en.toml} +0 -0
  162. /package/templates/.gemini/commands/_project_/{import-codescan.toml → import-codescan.en.toml} +0 -0
  163. /package/templates/.gemini/commands/_project_/{import-dependabot.toml → import-dependabot.en.toml} +0 -0
  164. /package/templates/.gemini/commands/_project_/{import-issue.toml → import-issue.en.toml} +0 -0
  165. /package/templates/.gemini/commands/_project_/{init-labels.toml → init-labels.en.toml} +0 -0
  166. /package/templates/.gemini/commands/_project_/{init-milestones.toml → init-milestones.en.toml} +0 -0
  167. /package/templates/.gemini/commands/_project_/{plan-task.toml → plan-task.en.toml} +0 -0
  168. /package/templates/.gemini/commands/_project_/{refine-task.toml → refine-task.en.toml} +0 -0
  169. /package/templates/.gemini/commands/_project_/{refine-title.toml → refine-title.en.toml} +0 -0
  170. /package/templates/.gemini/commands/_project_/{release.toml → release.en.toml} +0 -0
  171. /package/templates/.gemini/commands/_project_/{restore-task.toml → restore-task.en.toml} +0 -0
  172. /package/templates/.gemini/commands/_project_/{review-task.toml → review-task.en.toml} +0 -0
  173. /package/templates/.gemini/commands/_project_/{test-integration.toml → test-integration.en.toml} +0 -0
  174. /package/templates/.gemini/commands/_project_/{test.toml → test.en.toml} +0 -0
  175. /package/templates/.gemini/commands/_project_/{update-agent-infra.toml → update-agent-infra.en.toml} +0 -0
  176. /package/templates/.gemini/commands/_project_/{upgrade-dependency.toml → upgrade-dependency.en.toml} +0 -0
  177. /package/templates/.opencode/commands/{analyze-task.md → analyze-task.en.md} +0 -0
  178. /package/templates/.opencode/commands/{archive-tasks.md → archive-tasks.en.md} +0 -0
  179. /package/templates/.opencode/commands/{block-task.md → block-task.en.md} +0 -0
  180. /package/templates/.opencode/commands/{cancel-task.md → cancel-task.en.md} +0 -0
  181. /package/templates/.opencode/commands/{check-task.md → check-task.en.md} +0 -0
  182. /package/templates/.opencode/commands/{close-codescan.md → close-codescan.en.md} +0 -0
  183. /package/templates/.opencode/commands/{close-dependabot.md → close-dependabot.en.md} +0 -0
  184. /package/templates/.opencode/commands/{commit.md → commit.en.md} +0 -0
  185. /package/templates/.opencode/commands/{complete-task.md → complete-task.en.md} +0 -0
  186. /package/templates/.opencode/commands/{create-issue.md → create-issue.en.md} +0 -0
  187. /package/templates/.opencode/commands/{create-pr.md → create-pr.en.md} +0 -0
  188. /package/templates/.opencode/commands/{create-release-note.md → create-release-note.en.md} +0 -0
  189. /package/templates/.opencode/commands/{create-task.md → create-task.en.md} +0 -0
  190. /package/templates/.opencode/commands/{implement-task.md → implement-task.en.md} +0 -0
  191. /package/templates/.opencode/commands/{import-codescan.md → import-codescan.en.md} +0 -0
  192. /package/templates/.opencode/commands/{import-dependabot.md → import-dependabot.en.md} +0 -0
  193. /package/templates/.opencode/commands/{import-issue.md → import-issue.en.md} +0 -0
  194. /package/templates/.opencode/commands/{init-labels.md → init-labels.en.md} +0 -0
  195. /package/templates/.opencode/commands/{init-milestones.md → init-milestones.en.md} +0 -0
  196. /package/templates/.opencode/commands/{plan-task.md → plan-task.en.md} +0 -0
  197. /package/templates/.opencode/commands/{refine-task.md → refine-task.en.md} +0 -0
  198. /package/templates/.opencode/commands/{refine-title.md → refine-title.en.md} +0 -0
  199. /package/templates/.opencode/commands/{release.md → release.en.md} +0 -0
  200. /package/templates/.opencode/commands/{restore-task.md → restore-task.en.md} +0 -0
  201. /package/templates/.opencode/commands/{review-task.md → review-task.en.md} +0 -0
  202. /package/templates/.opencode/commands/{test-integration.md → test-integration.en.md} +0 -0
  203. /package/templates/.opencode/commands/{test.md → test.en.md} +0 -0
  204. /package/templates/.opencode/commands/{update-agent-infra.md → update-agent-infra.en.md} +0 -0
  205. /package/templates/.opencode/commands/{upgrade-dependency.md → upgrade-dependency.en.md} +0 -0
@@ -7,9 +7,9 @@ description: "Cancel an unneeded task and archive it"
7
7
 
8
8
  ## Boundary / Critical Rules
9
9
 
10
- - This command terminates a task that no longer needs to continue and archives it into `completed/`
10
+ - This command terminates a task that no longer needs to continue and moves it into `completed/`
11
11
  - Cancel only when the task no longer needs implementation, review, or follow-up work
12
- - When a valid `issue_number` exists, GitHub Issue sync is required
12
+ - When a valid `issue_number` exists, Issue sync is required
13
13
 
14
14
  ## Steps
15
15
 
@@ -22,12 +22,12 @@ Check these directories in order:
22
22
 
23
23
  Handling rules:
24
24
  - If found in `active/` or `blocked/`: continue
25
- - If found only in `completed/`: inform the user the task is already archived and stop
25
+ - If found only in `completed/`: inform the user the task is already moved and stop
26
26
  - If not found anywhere: prompt `Task {task-id} not found`
27
27
 
28
28
  ### 2. Choose the Cancellation Label
29
29
 
30
- Infer the GitHub Issue closing label from the cancellation reason:
30
+ Infer the Issue closing label from the cancellation reason:
31
31
  - `status: superseded`: reason implies duplicate, replaced, merged into, or already covered by another Issue or PR
32
32
  - `status: invalid`: reason implies invalid report, no real problem, cannot reproduce, or no issue after investigation
33
33
  - `status: declined`: reason implies not planned, deprioritized, or explicitly rejected
@@ -40,7 +40,7 @@ When syncing to the Issue, replace any existing `status:` labels with the inferr
40
40
  Get the current time:
41
41
 
42
42
  ```bash
43
- date "+%Y-%m-%d %H:%M:%S"
43
+ date "+%Y-%m-%d %H:%M:%S%:z"
44
44
  ```
45
45
 
46
46
  Update `task.md` in the task directory:
@@ -50,16 +50,16 @@ Update `task.md` in the task directory:
50
50
  - `updated_at`: {current timestamp}
51
51
  - **Append** to `## Activity Log` (do NOT overwrite previous entries):
52
52
  ```
53
- - {yyyy-MM-dd HH:mm:ss} — **Cancelled** by {agent} — {one-line cancellation reason}
53
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Cancelled** by {agent} — {one-line cancellation reason}
54
54
  ```
55
55
 
56
- ### 4. Archive the Task
56
+ ### 4. Move the Task
57
57
 
58
58
  Move the task directory into `.agents/workspace/completed/{task-id}`.
59
59
 
60
60
  If the source directory is `blocked/`, move it from `blocked/`; if it is `active/`, move it from `active/`.
61
61
 
62
- ### 5. Verify the Archive
62
+ ### 5. Verify the Move
63
63
 
64
64
  ```bash
65
65
  ls .agents/workspace/completed/{task-id}/task.md
@@ -72,6 +72,7 @@ Confirm the task directory was moved successfully.
72
72
  Check whether `task.md` contains a valid `issue_number`. If not, skip this step.
73
73
 
74
74
  > Issue sync rules live in `.agents/rules/issue-sync.md`. Read that file before syncing.
75
+ > Read `.agents/rules/issue-pr-commands.md` before closing the Issue.
75
76
 
76
77
  If a valid `issue_number` exists:
77
78
  - Replace all `status:` labels with the label inferred in Step 2
@@ -80,7 +81,7 @@ If a valid `issue_number` exists:
80
81
  - Remove all assignees
81
82
  - Publish a cancellation comment using the marker `<!-- sync-issue:{task-id}:cancel -->`
82
83
  - Create or update the `<!-- sync-issue:{task-id}:task -->` comment using the task-comment sync rules from `.agents/rules/issue-sync.md`
83
- - Close the Issue: `gh issue close {issue-number} --reason "not planned"`
84
+ - Close the Issue by following the "Close an Issue" command in `.agents/rules/issue-pr-commands.md`, using the fixed reason `not planned`
84
85
 
85
86
  The cancellation comment must include at least:
86
87
  - the cancellation reason
@@ -88,7 +89,7 @@ The cancellation comment must include at least:
88
89
 
89
90
  ### 7. Verification Gate
90
91
 
91
- Run the verification gate to confirm the archived task and sync state are valid:
92
+ Run the verification gate to confirm the moved task and sync state are valid:
92
93
 
93
94
  ```bash
94
95
  node .agents/scripts/validate-artifact.js gate cancel-task .agents/workspace/completed/{task-id} --format text
@@ -109,13 +110,13 @@ Keep the gate output in your reply as fresh evidence. Do not claim completion wi
109
110
 
110
111
  Output format:
111
112
  ```
112
- Task {task-id} cancelled and archived.
113
+ Task {task-id} cancelled; task directory moved to completed/.
113
114
 
114
115
  Cancellation reason: {reason}
115
- GitHub label: {status-label or skipped}
116
- Archived to: .agents/workspace/completed/{task-id}/
116
+ Status label: {status-label or skipped}
117
+ Target path: .agents/workspace/completed/{task-id}/
117
118
 
118
- Next step - inspect the archived task:
119
+ Next step - inspect the moved task:
119
120
  - Claude Code / OpenCode: /check-task {task-id}
120
121
  - Gemini CLI: /{{project}}:check-task {task-id}
121
122
  - Codex CLI: $check-task {task-id}
@@ -125,7 +126,7 @@ Next step - inspect the archived task:
125
126
 
126
127
  - [ ] Recorded the cancellation reason and updated task.md
127
128
  - [ ] Moved the task directory into `.agents/workspace/completed/`
128
- - [ ] Completed GitHub sync when an Issue exists
129
+ - [ ] Completed Issue sync when an Issue exists
129
130
  - [ ] Ran and passed the verification gate
130
131
  - [ ] Showed the full next-step command set to the user
131
132
 
@@ -138,5 +139,5 @@ Next step - inspect the archived task:
138
139
  ## Error Handling
139
140
 
140
141
  - Task not found: `Task {task-id} not found`
141
- - Task already archived: inform the user it is already in `completed/`
142
- - Issue sync failed: keep the local archive result and tell the user manual GitHub follow-up is required
142
+ - Task already moved: inform the user it is already in `completed/`
143
+ - Issue sync failed: keep the local move result and tell the user manual platform follow-up is required
@@ -7,9 +7,9 @@ description: "取消不再需要的任务并归档"
7
7
 
8
8
  ## 行为边界 / 关键规则
9
9
 
10
- - 本命令用于终止一个不再需要继续执行的任务,并归档到 `completed/`
10
+ - 本命令用于终止一个不再需要继续执行的任务,并转移到 `completed/`
11
11
  - 只有在确认该任务无需继续实现、审查或修复时才可取消
12
- - 有效 `issue_number` 存在时,GitHub Issue 同步属于必做项
12
+ - 有效 `issue_number` 存在时,Issue 同步属于必做项
13
13
 
14
14
  ## 执行步骤
15
15
 
@@ -22,12 +22,12 @@ description: "取消不再需要的任务并归档"
22
22
 
23
23
  处理规则:
24
24
  - 如果在 `active/` 或 `blocked/` 中找到:继续
25
- - 如果只在 `completed/` 中找到:告知用户任务已归档,停止
25
+ - 如果只在 `completed/` 中找到:告知用户任务已转移,停止
26
26
  - 如果都不存在:提示 `Task {task-id} not found`
27
27
 
28
28
  ### 2. 判断取消标签
29
29
 
30
- 根据取消原因推断 GitHub Issue 关闭标签:
30
+ 根据取消原因推断 Issue 关闭标签:
31
31
  - `status: superseded`:原因包含“重复”、“替代”、“合并到”、“已由 #123 / PR 替代”等语义
32
32
  - `status: invalid`:原因包含“误报”、“不存在”、“无法复现”、“排查后无问题”等语义
33
33
  - `status: declined`:原因包含“不做”、“暂不实现”、“优先级调整”、“方案否决”等语义
@@ -40,7 +40,7 @@ description: "取消不再需要的任务并归档"
40
40
  获取当前时间:
41
41
 
42
42
  ```bash
43
- date "+%Y-%m-%d %H:%M:%S"
43
+ date "+%Y-%m-%d %H:%M:%S%:z"
44
44
  ```
45
45
 
46
46
  更新任务目录中的 `task.md`:
@@ -50,16 +50,16 @@ date "+%Y-%m-%d %H:%M:%S"
50
50
  - `updated_at`:{当前时间戳}
51
51
  - **追加**到 `## Activity Log`(不要覆盖之前记录):
52
52
  ```
53
- - {yyyy-MM-dd HH:mm:ss} — **Cancelled** by {agent} — {一行取消原因}
53
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Cancelled** by {agent} — {一行取消原因}
54
54
  ```
55
55
 
56
- ### 4. 归档任务
56
+ ### 4. 转移任务
57
57
 
58
58
  将任务目录移动到 `.agents/workspace/completed/{task-id}`。
59
59
 
60
60
  如果源目录在 `blocked/`,从 `blocked/` 移动;如果源目录在 `active/`,从 `active/` 移动。
61
61
 
62
- ### 5. 验证归档
62
+ ### 5. 验证转移
63
63
 
64
64
  ```bash
65
65
  ls .agents/workspace/completed/{task-id}/task.md
@@ -72,6 +72,7 @@ ls .agents/workspace/completed/{task-id}/task.md
72
72
  检查 `task.md` 中是否存在有效的 `issue_number`。如果没有,跳过此步骤。
73
73
 
74
74
  > Issue 同步规则见 `.agents/rules/issue-sync.md`。执行同步前先读取该文件。
75
+ > 关闭 Issue 前先读取 `.agents/rules/issue-pr-commands.md`。
75
76
 
76
77
  如果存在有效的 `issue_number`:
77
78
  - 替换所有 `status:` labels,并设置步骤 2 推断出的标签
@@ -80,7 +81,7 @@ ls .agents/workspace/completed/{task-id}/task.md
80
81
  - 移除全部 assignees
81
82
  - 发布取消评论,隐藏标记使用 `<!-- sync-issue:{task-id}:cancel -->`
82
83
  - 使用 `.agents/rules/issue-sync.md` 的 task.md 评论同步规则创建或更新 `<!-- sync-issue:{task-id}:task -->` 评论
83
- - 关闭 Issue:`gh issue close {issue-number} --reason "not planned"`
84
+ - 关闭 Issue:按 `.agents/rules/issue-pr-commands.md` 中的“关闭 Issue”命令执行,关闭原因固定为 `not planned`
84
85
 
85
86
  取消评论至少包含:
86
87
  - 取消原因
@@ -88,7 +89,7 @@ ls .agents/workspace/completed/{task-id}/task.md
88
89
 
89
90
  ### 7. 完成校验
90
91
 
91
- 运行完成校验,确认任务归档和同步状态符合规范:
92
+ 运行完成校验,确认任务转移和同步状态符合规范:
92
93
 
93
94
  ```bash
94
95
  node .agents/scripts/validate-artifact.js gate cancel-task .agents/workspace/completed/{task-id} --format text
@@ -109,13 +110,13 @@ node .agents/scripts/validate-artifact.js gate cancel-task .agents/workspace/com
109
110
 
110
111
  输出格式:
111
112
  ```
112
- 任务 {task-id} 已取消并归档。
113
+ 任务 {task-id} 已取消,任务目录已转移到 completed/。
113
114
 
114
115
  取消原因:{reason}
115
- GitHub 标签:{status-label 或 skipped}
116
- 归档路径:.agents/workspace/completed/{task-id}/
116
+ 状态标签:{status-label 或 skipped}
117
+ 目标路径:.agents/workspace/completed/{task-id}/
117
118
 
118
- 下一步 - 查看归档任务:
119
+ 下一步 - 查看已转移任务:
119
120
  - Claude Code / OpenCode:/check-task {task-id}
120
121
  - Gemini CLI:/{{project}}:check-task {task-id}
121
122
  - Codex CLI:$check-task {task-id}
@@ -125,7 +126,7 @@ GitHub 标签:{status-label 或 skipped}
125
126
 
126
127
  - [ ] 已记录取消原因并更新 task.md
127
128
  - [ ] 已将任务目录移动到 `.agents/workspace/completed/`
128
- - [ ] 已在存在 Issue 时完成 GitHub 同步
129
+ - [ ] 已在存在 Issue 时完成 Issue 同步
129
130
  - [ ] 已运行 gate 校验并通过
130
131
  - [ ] 已向用户展示完整的下一步命令
131
132
 
@@ -138,5 +139,5 @@ GitHub 标签:{status-label 或 skipped}
138
139
  ## 错误处理
139
140
 
140
141
  - 任务未找到:`Task {task-id} not found`
141
- - 任务已归档:提示任务已在 `completed/` 中
142
- - Issue 同步失败:保留本地归档结果,并告知用户需要人工补齐 GitHub 操作
142
+ - 任务已转移:提示任务已在 `completed/` 中
143
+ - Issue 同步失败:保留本地转移结果,并告知用户需要人工补齐平台操作
@@ -11,9 +11,7 @@ Dismiss the specified Code Scanning (CodeQL) alert and record a justified reason
11
11
 
12
12
  ### 1. Retrieve Alert Information
13
13
 
14
- ```bash
15
- gh api repos/{owner}/{repo}/code-scanning/alerts/<alert-number>
16
- ```
14
+ Read `.agents/rules/security-alerts.md` before this step, then use its Code Scanning alert read command to fetch the alert details.
17
15
 
18
16
  Verify that the alert is in the `open` state. If it is already dismissed or fixed, inform the user and exit.
19
17
 
@@ -61,13 +59,7 @@ Confirm? (y/N)
61
59
 
62
60
  ### 6. Execute the Dismissal
63
61
 
64
- ```bash
65
- gh api --method PATCH \
66
- repos/{owner}/{repo}/code-scanning/alerts/<alert-number> \
67
- -f state=dismissed \
68
- -f dismissed_reason="{api-reason}" \
69
- -f dismissed_comment="{user explanation}"
70
- ```
62
+ Dismiss the alert by following the Code Scanning dismiss command in `.agents/rules/security-alerts.md`, passing the mapped `{api-reason}` and the user's explanation.
71
63
 
72
64
  **API reason mapping** (per the GitHub Code Scanning API):
73
65
  - False Positive -> `false positive`
@@ -80,13 +72,13 @@ If a related task exists (search for `codescan_alert_number: <alert-number>`):
80
72
  Get the current time:
81
73
 
82
74
  ```bash
83
- date "+%Y-%m-%d %H:%M:%S"
75
+ date "+%Y-%m-%d %H:%M:%S%:z"
84
76
  ```
85
77
 
86
78
  - Add the dismissal record to task.md
87
79
  - **Append** to `## Activity Log` (do NOT overwrite previous entries):
88
80
  ```
89
- - {yyyy-MM-dd HH:mm:ss} — **Alert Closed** by {agent} — Code Scanning alert #{alert-number} dismissed: {reason}
81
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Alert Closed** by {agent} — Code Scanning alert #{alert-number} dismissed: {reason}
90
82
  ```
91
83
  - Archive the task
92
84
 
@@ -115,7 +107,7 @@ Next step - complete and archive the task if a related task exists:
115
107
  ## Notes
116
108
 
117
109
  1. **Handle high-severity alerts carefully**: Critical/High alerts require thorough analysis. Prefer `import-codescan` + `analyze-task` first.
118
- 2. **Use truthful reasons**: dismissal records are stored in GitHub and may be audited.
110
+ 2. **Use truthful reasons**: dismissal records are stored on the platform and may be audited.
119
111
  3. **Review periodically**: dismissed alerts should be re-evaluated over time.
120
112
  4. **Fix first**: dismissal should be the last resort.
121
113
 
@@ -11,9 +11,7 @@ description: "关闭 Code Scanning 告警并记录理由"
11
11
 
12
12
  ### 1. 获取告警信息
13
13
 
14
- ```bash
15
- gh api repos/{owner}/{repo}/code-scanning/alerts/<alert-number>
16
- ```
14
+ 执行前先读取 `.agents/rules/security-alerts.md`,并按其中的 Code Scanning 告警读取命令获取告警详情。
17
15
 
18
16
  验证告警处于 `open` 状态。如果已被关闭/修复,告知用户并退出。
19
17
 
@@ -61,13 +59,7 @@ Code Scanning 告警 #{alert-number}
61
59
 
62
60
  ### 6. 执行关闭
63
61
 
64
- ```bash
65
- gh api --method PATCH \
66
- repos/{owner}/{repo}/code-scanning/alerts/<alert-number> \
67
- -f state=dismissed \
68
- -f dismissed_reason="{api-reason}" \
69
- -f dismissed_comment="{用户的说明}"
70
- ```
62
+ 按 `.agents/rules/security-alerts.md` 中的 Code Scanning 告警关闭命令执行关闭操作,并传入映射后的 `{api-reason}` 与用户说明。
71
63
 
72
64
  **API reason 映射**(按 GitHub Code Scanning API):
73
65
  - 误报 -> `false positive`
@@ -80,13 +72,13 @@ gh api --method PATCH \
80
72
  获取当前时间:
81
73
 
82
74
  ```bash
83
- date "+%Y-%m-%d %H:%M:%S"
75
+ date "+%Y-%m-%d %H:%M:%S%:z"
84
76
  ```
85
77
 
86
78
  - 添加关闭记录到 task.md
87
79
  - **追加**到 `## Activity Log`(不要覆盖之前的记录):
88
80
  ```
89
- - {yyyy-MM-dd HH:mm:ss} — **Alert Closed** by {agent} — Code Scanning alert #{alert-number} dismissed: {reason}
81
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Alert Closed** by {agent} — Code Scanning alert #{alert-number} dismissed: {reason}
90
82
  ```
91
83
  - 归档任务
92
84
 
@@ -115,7 +107,7 @@ Code Scanning 告警 #{alert-number} 已关闭。
115
107
  ## 注意事项
116
108
 
117
109
  1. **谨慎处理高严重程度告警**:Critical/High 告警需要充分分析。建议先执行 import-codescan + analyze-task。
118
- 2. **真实的理由**:关闭记录保存在 GitHub 中,可能会被审计。
110
+ 2. **真实的理由**:关闭记录保存在平台中,可能会被审计。
119
111
  3. **定期复查**:已关闭的告警应定期复查。
120
112
  4. **优先修复**:关闭应作为最后手段。
121
113
 
@@ -11,9 +11,7 @@ Dismiss the specified Dependabot security alert and record a justified reason.
11
11
 
12
12
  ### 1. Retrieve Alert Information
13
13
 
14
- ```bash
15
- gh api repos/{owner}/{repo}/dependabot/alerts/<alert-number>
16
- ```
14
+ Read `.agents/rules/security-alerts.md` before this step, then use its Dependabot alert read command to fetch the alert details.
17
15
 
18
16
  Verify that the alert is in the `open` state. If it is already dismissed or fixed, inform the user and exit.
19
17
 
@@ -67,13 +65,7 @@ Confirm? (y/N)
67
65
 
68
66
  ### 6. Execute the Dismissal
69
67
 
70
- ```bash
71
- gh api --method PATCH \
72
- repos/{owner}/{repo}/dependabot/alerts/<alert-number> \
73
- -f state=dismissed \
74
- -f dismissed_reason="{api-reason}" \
75
- -f dismissed_comment="{user explanation}"
76
- ```
68
+ Dismiss the alert by following the Dependabot dismiss command in `.agents/rules/security-alerts.md`, passing the mapped `{api-reason}` and the user's explanation.
77
69
 
78
70
  **API reason mapping**:
79
71
  - False Positive -> `not_used` or `inaccurate`
@@ -88,13 +80,13 @@ If a related task exists (search for `security_alert_number: <alert-number>`):
88
80
  Get the current time:
89
81
 
90
82
  ```bash
91
- date "+%Y-%m-%d %H:%M:%S"
83
+ date "+%Y-%m-%d %H:%M:%S%:z"
92
84
  ```
93
85
 
94
86
  - Add the dismissal record to task.md
95
87
  - **Append** to `## Activity Log` (do NOT overwrite previous entries):
96
88
  ```
97
- - {yyyy-MM-dd HH:mm:ss} — **Alert Closed** by {agent} — Dependabot alert #{alert-number} dismissed: {reason}
89
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Alert Closed** by {agent} — Dependabot alert #{alert-number} dismissed: {reason}
98
90
  ```
99
91
  - Archive the task
100
92
 
@@ -110,9 +102,9 @@ Severity: {severity}
110
102
  Reason: {reason}
111
103
  Explanation: {explanation}
112
104
 
113
- View: https://github.com/{owner}/{repo}/security/dependabot/{alert-number}
105
+ View: {alert-url}
114
106
 
115
- Note: it can be reopened on GitHub if necessary.
107
+ Note: it can be reopened on the platform if necessary.
116
108
 
117
109
  Next step - complete and archive the task if a related task exists:
118
110
  - Claude Code / OpenCode: /complete-task {task-id}
@@ -123,7 +115,7 @@ Next step - complete and archive the task if a related task exists:
123
115
  ## Notes
124
116
 
125
117
  1. **Handle high-severity alerts carefully**: Critical/High alerts require thorough analysis before dismissal. Prefer `import-dependabot` + `analyze-task` first.
126
- 2. **Use truthful reasons**: dismissal records are stored in GitHub and may be audited.
118
+ 2. **Use truthful reasons**: dismissal records are stored on the platform and may be audited.
127
119
  3. **Review periodically**: dismissed alerts should be re-evaluated because code changes may invalidate the dismissal rationale.
128
120
  4. **Fix first**: dismissal should be the last resort. Prefer upgrading, replacing, or mitigating.
129
121
 
@@ -11,9 +11,7 @@ description: "关闭 Dependabot 安全告警并记录理由"
11
11
 
12
12
  ### 1. 获取告警信息
13
13
 
14
- ```bash
15
- gh api repos/{owner}/{repo}/dependabot/alerts/<alert-number>
16
- ```
14
+ 执行前先读取 `.agents/rules/security-alerts.md`,并按其中的 Dependabot 告警读取命令获取告警详情。
17
15
 
18
16
  验证告警处于 `open` 状态。如果已被关闭/修复,告知用户并退出。
19
17
 
@@ -67,13 +65,7 @@ CVE:{cve-id}
67
65
 
68
66
  ### 6. 执行关闭
69
67
 
70
- ```bash
71
- gh api --method PATCH \
72
- repos/{owner}/{repo}/dependabot/alerts/<alert-number> \
73
- -f state=dismissed \
74
- -f dismissed_reason="{api-reason}" \
75
- -f dismissed_comment="{用户的说明}"
76
- ```
68
+ 按 `.agents/rules/security-alerts.md` 中的 Dependabot 告警关闭命令执行关闭操作,并传入映射后的 `{api-reason}` 与用户说明。
77
69
 
78
70
  **API reason 映射**:
79
71
  - 误报 -> `not_used` 或 `inaccurate`
@@ -88,13 +80,13 @@ gh api --method PATCH \
88
80
  获取当前时间:
89
81
 
90
82
  ```bash
91
- date "+%Y-%m-%d %H:%M:%S"
83
+ date "+%Y-%m-%d %H:%M:%S%:z"
92
84
  ```
93
85
 
94
86
  - 添加关闭记录到 task.md
95
87
  - **追加**到 `## Activity Log`(不要覆盖之前的记录):
96
88
  ```
97
- - {yyyy-MM-dd HH:mm:ss} — **Alert Closed** by {agent} — Dependabot alert #{alert-number} dismissed: {reason}
89
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Alert Closed** by {agent} — Dependabot alert #{alert-number} dismissed: {reason}
98
90
  ```
99
91
  - 归档任务
100
92
 
@@ -110,9 +102,9 @@ date "+%Y-%m-%d %H:%M:%S"
110
102
  原因:{reason}
111
103
  说明:{explanation}
112
104
 
113
- 查看:https://github.com/{owner}/{repo}/security/dependabot/{alert-number}
105
+ 查看:{alert-url}
114
106
 
115
- 注意:如有需要,可在 GitHub 上重新打开。
107
+ 注意:如有需要,可在平台侧重新打开。
116
108
 
117
109
  下一步 - 完成并归档任务(如有关联任务):
118
110
  - Claude Code / OpenCode:/complete-task {task-id}
@@ -123,7 +115,7 @@ date "+%Y-%m-%d %H:%M:%S"
123
115
  ## 注意事项
124
116
 
125
117
  1. **谨慎处理高严重程度告警**:Critical/High 告警需要在关闭前进行充分分析。建议先执行 import-dependabot + analyze-task。
126
- 2. **真实的理由**:关闭记录保存在 GitHub 中,可能会被审计。
118
+ 2. **真实的理由**:关闭记录保存在平台中,可能会被审计。
127
119
  3. **定期复查**:已关闭的告警应定期复查,因为代码变更可能使关闭理由失效。
128
120
  4. **优先修复**:关闭应作为最后手段。优先考虑升级、替换或缓解。
129
121
 
@@ -39,7 +39,7 @@ Stage specific files only and run `git commit` with the prepared message.
39
39
  Get the current time:
40
40
 
41
41
  ```bash
42
- date "+%Y-%m-%d %H:%M:%S"
42
+ date "+%Y-%m-%d %H:%M:%S%:z"
43
43
  ```
44
44
 
45
45
  > The full four-case status matrix, prerequisite checks, and multi-TUI next-step commands live in `reference/task-status-update.md`. Read `reference/task-status-update.md` before updating task state.
@@ -39,7 +39,7 @@ git diff
39
39
  获取当前时间:
40
40
 
41
41
  ```bash
42
- date "+%Y-%m-%d %H:%M:%S"
42
+ date "+%Y-%m-%d %H:%M:%S%:z"
43
43
  ```
44
44
 
45
45
  > 完整的 4 种状态分支、前置条件检查和多 TUI 下一步命令见 `reference/task-status-update.md`。更新任务状态前,先读取 `reference/task-status-update.md`。
@@ -7,13 +7,13 @@ Read this file before choosing the post-commit task-state branch.
7
7
  Get the current time first:
8
8
 
9
9
  ```bash
10
- date "+%Y-%m-%d %H:%M:%S"
10
+ date "+%Y-%m-%d %H:%M:%S%:z"
11
11
  ```
12
12
 
13
13
  For every task-related commit, append this Activity Log entry in `task.md`:
14
14
 
15
15
  ```text
16
- - {yyyy-MM-dd HH:mm:ss} — **Commit** by {agent} — {commit hash short} {commit subject}
16
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Commit** by {agent} — {commit hash short} {commit subject}
17
17
  ```
18
18
 
19
19
  Before selecting the next step, verify:
@@ -7,13 +7,13 @@
7
7
  先获取当前时间:
8
8
 
9
9
  ```bash
10
- date "+%Y-%m-%d %H:%M:%S"
10
+ date "+%Y-%m-%d %H:%M:%S%:z"
11
11
  ```
12
12
 
13
13
  对于每一次与任务相关的提交,都要在 `task.md` 中追加以下 Activity Log:
14
14
 
15
15
  ```text
16
- - {yyyy-MM-dd HH:mm:ss} — **Commit** by {agent} — {commit hash short} {commit subject}
16
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Commit** by {agent} — {commit hash short} {commit subject}
17
17
  ```
18
18
 
19
19
  在决定下一步之前,先确认:
@@ -8,7 +8,7 @@ description: "Mark a task as completed and archive it"
8
8
  ## Boundary / Critical Rules
9
9
 
10
10
  - This command updates task metadata AND physically moves the task directory
11
- - Do not archive a task that has incomplete workflow steps unless forced
11
+ - Do not move a task that has incomplete workflow steps unless forced
12
12
 
13
13
  ## Steps
14
14
 
@@ -36,7 +36,7 @@ Before marking complete, verify ALL of these:
36
36
  > - If any condition is missing -> **stop by default** and output the prerequisite warning
37
37
  > - Only continue with unmet prerequisites when the user explicitly requested `--force`
38
38
  >
39
- > **Do not continue to Steps 3-7 when prerequisites are not met, and do not output "Task {task-id} completed and archived."**
39
+ > **Do not continue to Steps 3-7 when prerequisites are not met, and do not output "Task {task-id} completed; task directory moved to completed/."**
40
40
 
41
41
  If any prerequisite is not met, warn the user:
42
42
  ```
@@ -53,7 +53,7 @@ If prerequisites are not met and the user did not explicitly provide `--force`,
53
53
  Get the current time:
54
54
 
55
55
  ```bash
56
- date "+%Y-%m-%d %H:%M:%S"
56
+ date "+%Y-%m-%d %H:%M:%S%:z"
57
57
  ```
58
58
 
59
59
  Update `.agents/workspace/active/{task-id}/task.md`:
@@ -64,10 +64,10 @@ Update `.agents/workspace/active/{task-id}/task.md`:
64
64
  - Verify and check off all items in `## Completion Checklist` (change `- [ ]` to `- [x]`)
65
65
  - **Append** to `## Activity Log` (do NOT overwrite previous entries):
66
66
  ```
67
- - {yyyy-MM-dd HH:mm:ss} — **Completed** by {agent} — Task archived to completed/
67
+ - {YYYY-MM-DD HH:mm:ss±HH:MM} — **Completed** by {agent} — Task moved to completed/
68
68
  ```
69
69
 
70
- ### 4. Archive Task
70
+ ### 4. Move Task
71
71
 
72
72
  Move the task directory from active to completed:
73
73
 
@@ -75,7 +75,7 @@ Move the task directory from active to completed:
75
75
  mv .agents/workspace/active/{task-id} .agents/workspace/completed/{task-id}
76
76
  ```
77
77
 
78
- ### 5. Verify Archive
78
+ ### 5. Verify Move
79
79
 
80
80
  ```bash
81
81
  ls .agents/workspace/completed/{task-id}/task.md
@@ -116,12 +116,12 @@ Keep the gate output in your reply as fresh evidence. Do not claim completion wi
116
116
 
117
117
  Output format:
118
118
  ```
119
- Task {task-id} completed and archived.
119
+ Task {task-id} completed; task directory moved to completed/.
120
120
 
121
121
  Task info:
122
122
  - Title: {title}
123
123
  - Completed at: {timestamp}
124
- - Archived to: .agents/workspace/completed/{task-id}/
124
+ - Target path: .agents/workspace/completed/{task-id}/
125
125
 
126
126
  Deliverables:
127
127
  - {List of key outputs: files modified, tests added, etc.}
@@ -132,18 +132,18 @@ Deliverables:
132
132
  - [ ] Verified all workflow steps are complete
133
133
  - [ ] Updated task.md with completed status and timestamp
134
134
  - [ ] Moved task directory to `.agents/workspace/completed/`
135
- - [ ] Verified archive succeeded
135
+ - [ ] Verified move succeeded
136
136
  - [ ] Informed user of completion
137
137
 
138
138
  ## Notes
139
139
 
140
- 1. **Premature completion**: Do not archive a task that has incomplete steps. Examples of incomplete situations:
140
+ 1. **Premature completion**: Do not move a task that has incomplete steps. Examples of incomplete situations:
141
141
  - Code is written but not committed
142
142
  - Code is committed but not reviewed
143
143
  - Review found blockers that haven't been fixed
144
144
  - PR is created but not merged
145
145
 
146
- 2. **Rollback**: If a task was archived incorrectly:
146
+ 2. **Rollback**: If a task was incorrectly moved:
147
147
  ```bash
148
148
  mv .agents/workspace/completed/{task-id} .agents/workspace/active/{task-id}
149
149
  ```