用途:在实现评审完成后收尾 Linear 议题。仅当存在已合并 PR 证据、含议题 ID 的直接提交证据、跨团队迁移后的旧实现议题 ID 证据,或 squash/import 发布文件证据(证明预期文件与内容存在于当前 main 且 release/main CI 通过)时才执行关闭;不实现代码、不合并 PR、不修改评审策略。
主要能力:读取 agents/closer.md、docs/workflow.md、docs/agent-required-passes.md、docs/comment-validation.md、docs/tools.md、templates/linear-status-comment.md;使用 Linear MCP 工具 get_issue、list_comments、save_comment、save_issue;用 Git/GitHub 证据核验,如 gh pr view <PR> --json url,state,isDraft,baseRefName,mergeCommit,statusCheckRollup,commits > pr.json、git pull、git merge-base --is-ancestor <merge-commit> origin/main;用 scripts/verify_closeout.ts 校验 PR、提交、跨团队旧 ID、发布证据;用 scripts/validate_marked_comments.ts 校验标记评论与看板。
使用方式:先按 Claim Lock 规则重新读取议题,若已被 in-use 且非本次认领则停止;否则添加 in-use 并写入 linear-ai:claim 块(claimed_by: linear-close、ISO 8601 claimed_at)。收尾时更新描述中的看板块、发布一条最终不可变标记评论、将状态移至 Done、移除 llm-refine/llm-ready/llm-active/llm-blocked/llm-review 与 in-use,保留 sp-* 累积标签。若议题已因 Fixes HCL-123 等魔法词自动进入 Done,仍须核验证据并完成收尾,不得重开或跳过。子议题关闭时按 Parent and Sub-Issue Rule 处理父议题汇总或父评审门。
限制:证据缺失时不得关闭,应发布阻塞证据或输出 REQUIRED_LINEAR_MUTATIONS;Linear MCP 写入工具不可用时不得声称已更新标签、状态、看板或评论。跨团队迁移场景需用 --implemented-issue-id,并在评论中说明当前 ID 由旧 ID 迁移或实现、证据已按旧 ID 人工核验。脚本可用 Bun 直接运行 .ts,Node/npm/pnpm/yarn 环境需经 tsx 等 TypeScript 运行器。完成后按固定响应结构汇报并询问是否继续推荐技能,不自动运行。