Skip to content

通过 GitHub App for Slack 将 Copilot 接入 Slack,在任意 Slack 线程中 @GitHub 发送编程请求,Copilot 会基于整个线程上下文创建 PR 或 Issue。只有有写权限的用户才能触发任务,整个线程内容会存储在 PR 描述中作为上下文。

Copilot Cloud Agent 集成 Slack:在 Slack 对话中直接创建 PR

适用场景

  • 团队在 Slack 讨论 Bug 修复方案后,直接让 Copilot 开始实现
  • 产品经理在 Slack 描述需求,技术负责人 @GitHub 让 Copilot 起草实现 PR
  • 快速将 Slack 讨论中的 Action Item 转换为 GitHub Issues

前提条件

  • 有 Copilot 访问权限的 GitHub 账号
  • Slack 工作区管理员权限(安装 GitHub App)
  • 已安装 GitHub App for Slack

配置步骤

  1. 在 Slack 中安装 GitHub App(Slack 应用目录搜索 "GitHub")
  2. 在 GitHub Copilot 设置中授权 Slack 集成
  3. 在 Slack 中设置默认仓库:向 GitHub App 发送 DM,输入 settings,选择默认仓库

使用方式

在线程中创建 PR

在任意 Slack 频道的线程中 @GitHub 发送请求:

@GitHub 修复用户注册页面的邮箱验证 Bug,
邮箱格式不正确时应该显示错误提示而不是直接提交

Copilot 会读取整个线程上下文,创建一个包含代码改动的 PR,并在 Slack 中回复 PR 链接。

指定仓库和分支:

@GitHub 为 README 添加 Docker 部署说明
repo=my-org/my-repo branch=docs/docker-setup

创建 Issue 草稿

@GitHub 根据这个讨论,帮我起草一个 Issue 描述这个性能问题

Copilot 会生成草稿,你可以点击 Review draft 查看,确认后点击 Create 正式创建。

迭代修改

PR 创建后,在同一 Slack 线程中继续提要求:

@GitHub 改进错误提示文案,要更友好

Copilot 会基于线程上下文继续修改 PR。

权限说明

  • 触发任务:需要对目标仓库有 write 权限
  • 提供上下文:没有写权限的成员也可以在线程中回复参与讨论,这些内容会成为 Copilot 的参考上下文
  • 私密讨论:如果不想让频道成员看到,直接向 GitHub App 发送私信(DM)

安全提示:Copilot 会代表你执行写操作(创建 PR、Issue),整个 Slack 线程内容会存储在 PR 描述中,包括所有成员的发言。分享敏感讨论时请注意。

常见问题

Q: 多个成员同时 @GitHub 会发生什么?

A: 每次 @GitHub 都会独立创建一个任务。如果想基于同一个 PR 迭代,确保在同一个线程中回复,而不是新开线程。

Q: Copilot 创建的 PR 算谁的?

A: PR 的作者是触发任务的 GitHub 账号(即发出 @GitHub 请求的用户的账号)。

Q: 能指定让哪个自定义 Agent 处理请求吗?

A: 目前 Slack 集成使用 Copilot 的默认 Agent,无法直接在 Slack 中选择自定义 Agent。