超越自动完成
GitHub Copilot Chat 和内联补全功能可帮助开发人员更快地编写代码,但它们是在微观层面上操作的——这里是一个函数,那里是一个注释。 GitHub Copilot Workspace 将范例转移到宏观层面:它采用 GitHub 问题(错误报告、功能请求或任务)并生成包含多文件更改、测试和文档的完整拉取请求。
这不是一个自动完成工具。它是一个人工智能驱动的开发代理,可以理解完整的存储库上下文并将自然语言规范转换为可执行代码。
副驾驶工作区的工作原理
工作流程遵循结构化管道:
1. 规格生成
当您在 Copilot Workspace 中打开 GitHub 问题时,它首先读取问题正文、评论和标签。然后它会生成一个规范计划——对需要更改的内容的高级描述。
Issue: "Add dark mode toggle to settings page"
Spec:
- Create a theme context provider (src/context/ThemeContext.tsx)
- Add a toggle switch component (src/components/ThemeToggle.tsx)
- Wire toggle into settings page (src/pages/Settings.tsx)
- Persist preference to localStorage
- Write unit tests for toggle behavior
规格是可编辑的。您可以在生成任何代码之前重新排序、删除或添加步骤。
2. 实施
根据批准的规范,Copilot Workspace 会为每个步骤生成代码。它读取相关的现有文件以获取上下文(导入、样式约定、现有挂钩),并一次生成一个文件的差异。
+ import { ThemeProvider } from "../context/ThemeContext";
+ import { ThemeToggle } from "../components/ThemeToggle";
export function Settings() {
return (
+ <ThemeProvider>
<div className="settings-page">
+ <ThemeToggle />
{/* existing settings content */}
</div>
+ </ThemeProvider>
);
}
3. 回顾和迭代
每个生成的文件在浏览器中显示为并排差异。你可以:
- 使用自然语言请求更改(“使用 CSS 变量而不是内联样式”)
- 在内置编辑器中手动编辑代码
- 拒绝并重新生成特定文件
- 在计划实施过程中添加新文件
4. 创建拉取请求
所有文件获得批准后,Copilot Workspace 将在 GitHub 上创建一个真正的 PR,其中包含:
- 来自问题的标题和描述
- 生成的代码发生变化
- 返回原始问题的链接
从那里开始,标准 CI/CD 运行、审阅者评论和 PR 合并,就像任何人工编写的更改一样。
与 GitHub Actions 集成
Copilot Workspace 不会绕过 CI,而是与 CI 一起工作。 PR 创建后:
- GitHub Actions 运行测试、linter 和类型检查
- 如果 CI 失败,您可以返回 Workspace 并显示错误输出
- 要求代理修复失败的测试或 lint 错误
- Workspace 使用新提交更新 PR
这在人工智能生成和自动验证之间创建了紧密的反馈循环。
副驾驶工作区与副驾驶聊天
| 方面 | 副驾驶聊天 | 副驾驶工作区 |
|---|---|---|
| 范围 | 单文件、单功能 | 多文件、全功能 |
| 输入 | 自然语言提示 | GitHub 问题 |
| 输出 | 代码片段 | 完成拉取请求 |
| 背景 | 当前打开的文件 | 完整存储库 |
| 迭代 | 手动复制粘贴 | 内置差异+编辑 |
| CI 集成 | 无 | 公关后管道 |
Chat 擅长探索和小编辑。工作区专为按照规范完成任务而设计。
真实世界的体验
早期访问用户报告了 Workspace 表现出色的几种模式:
重构 — 重命名 20 个文件中的组件、更新导入并修复类型引用。 Workspace 在一个会话中处理整个重构,消除了“查找和替换”风险。
样板生成 — 创建新的 API 端点:路由器、控制器、服务层、类型、测试。规范到代码的管道强制跨层的一致性。
错误修复 — 带有堆栈跟踪的错误报告。 Workspace 读取错误和相关代码,提出修复方案,并添加回归测试。
局限性
| 限制 | 当前状态 |
|---|---|
| 复杂逻辑 | 与涉及多个交叉问题的复杂业务规则作斗争 |
| 性能 | 具有 100k 以上文件的大型存储库可能会超出上下文窗口 |
| 新颖的 API | 流行框架(React、Express、Django)的最佳结果;利基图书馆较弱 |
| 安全审查 | AI生成的代码需要人工安全审核 |
| 决定论 | 相同的问题可能会在不同的运行中产生不同的 PR |
开发人员角色的转变
Copilot Workspace 不会取代开发人员,而是重新定义了角色。开发人员成为规范编写者和代码审查者,而不是实施者。瓶颈从写代码转移到:
- 撰写清晰、可操作的问题描述
- 批判性地审查人工智能生成的差异
- 维护人工智能可以导航的结构良好的代码库
概括
GitHub Copilot Workspace 代表了人工智能辅助开发的一步变革。通过将问题直接转化为拉取请求,它将规范到部署的周期从几小时(或几天)压缩到几分钟。它并不适合每项任务的生产准备,但对于样板、重构和范围广泛的功能,它已经带来了切实的生产力提升。未来的发展不再是打字,而是导演。

