把Slack Bug变成Agent修复 PR:6 步搭建独立 Worktree 自动修复
在研发团队日常协作中,Slack 频道里的 Bug 反馈常面临两难:不用 AI 处理,报错极易被消息冲走,或两三名工程师在消息串(thread)里重复追问;直接把聊天机器人拉进频道,它又会在群里刷屏输出日志,甚至没复现问题就盲改代码。本文拆解一套 6 步工作流:通过 HiFox 将 Slack 消息串转为结构化任务,调度电脑上的 Claude Code 或 Codex 在独立 Git worktree 中先复现后修复,最终以草稿 PR 交付并向原消息串回传 100 词以内的结论。
一、为什么不能直接用聊天机器人修 Bug?
消息串是即时对话,不是工作项。在聊天窗口直接让 Agent 修代码有 4 个硬伤:无唯一负责人、无状态流转、无完整证据链,以及高频播报刷屏(通常不到 1 周就会被全员静音)。在 HiFox 的 Slack 集成中,3 种连接方式职责截然不同:
连接方式核心职责能否建任务适用场景组织工作区连接斜杠命令或快捷方式填表建单能(填表)人工筛选后提单任务助手@ 它读取消息串与附件自动建单能(自动)Bug 反馈首选Agent 机器人绑定某个 Agent 直接对话不能仅限问答,无状态
标准解法是用任务助手收单建任务,把执行关进隔离环境,让原消息串只做接收结论的窗口。
图 1:群聊机器人直接修代码四大硬伤与三种 Slack 连接职责分工对比图 1:群聊直修四大硬伤与任务助手专职收单对比
二、6 步把 Slack 报错变成草稿 PR
第 1 步:绑定任务助手并配置建单 Prompt
管理员通过 OAuth 绑定 Slack 工作区(1 个工作区同时绑定 1 个 HiFox 组织,每空间内置 1 个任务助手)。追加 Bug 提单提示词,限制标题在 70 字符内,并规定缺失复现步骤时的追问逻辑:
When asked to file a task from a thread:
- Title: "Bug: " (under 70 characters).
- Body: reporter's words quoted, steps to reproduce,
expected vs actual, environment, links or screenshots.
- If no repro steps, add "Repro steps missing" and ask in thread.
- Set type Bug and status Todo. Do not assign anyone.
第 2 步:在消息串里一键建单
频道收到报错时,在消息串回复 @HiFox Task Assistant file this as a bug,助手会自动读取对话并将截图或视频附件一并带入任务正文。
第 3 步:状态变化触发 Agent 自动接单
建单后可在 Slack 卡片或看板上指派给编程 Agent。若想省去人工分发,可在空间自动化中配置任务状态变化触发器(空间自动化支持时间表、任务状态变化、评论关键词和 Webhook 四种触发器,不能由普通 Slack 消息直接触发)。任务进入 Ready for agent 状态即自动唤醒 Agent,对话记录与 Token 消耗自动归属到该任务。HiFox 公网 SaaS 版免费开放使用、不限人数且不售卖模型 Token,直接调用所连电脑上的 Claude Code 或 Codex 执行。
图 2:HiFox 已连接电脑管理 Claude Code 与 Codex Runtime 及并发运行任务上限图 2:在 HiFox 已连接电脑管理 Runtime 与并发上限
第 4 步:在独立 Git Worktree 中强制“先复现”
Agent 运行在已连接的电脑(Computer)上。开启独立 worktree 后,每次运行都会拿到全新的 Git worktree 目录——哪怕相隔 1 分钟进来 2 条报错,也不会互相覆盖。每台电脑设有并发上限,worktree 默认并发数为上限的一半(50%),满载自动排队。在 Agent 指令中把“最多 3 次复现尝试、不复现绝不改代码”放在第一条:
You are fixing a bug filed from Slack.
1. Check out default branch in a fresh worktree.
2. Write a failing test or script that shows the bug.
3. If not reproduced in 3 attempts, comment what you tried
and ask the reporter. Change no code. Stop.
4. Make the smallest fix. Rerun repro and nearest tests.
5. Push fix/, open draft PR with task ID in title.
6. Post one task comment, <=100 words: cause, fix, PR link.
第 5 步:以草稿 PR 形式提交修复
Agent 使用电脑上的 Git 凭据推送分支,通过 gh pr create --draft 创建草稿 PR。连接 GitHub 集成后,分支名或 PR 标题带任务编号即可自动关联回任务,合并权限留在人手里。
第 6 步:百词以内结论回传消息串
任务与 Slack 消息串绑定后,任务评论可同步发回消息串。遵循 DeepSeek Harness 团队的多渠道规则,聊天回复控制在 100 词以内,详细分析留在 PR 描述中:
Reproduced: checkout fails on 0-price item (division by zero).
Fixed and covered by a test. Draft PR: . Ships after review.
图 3:独立 Git worktree 先复现后修复闭环与多渠道长短信息分流铁律
图 3:独立工作树先复现后提草稿 PR 与百词结论回传
三、4 条铁律与起步建议
未复现不改码:3 次复现失败立刻停手追问,0 行代码盲改。
回复限 100 词:群聊只给结论与链接,长文写进 PR。
默认保持静默:只在拿到结果或需追问时发言。
只提草稿 PR:绝不让 Agent 自行合并代码。
建议先挑 1 个报错最集中的 Slack 频道把任务助手绑到 HiFox 空间,前 3 条反馈手动 @ 建单跑通流程,稳定后再开启自动指派。原文链接:https://hifox.com/blog/slack-bug-report-to-ai-agent-task/
