Skip to main content
Skip to content

使用GitHub Copilot CLI进行研究

使用 /research 斜杠命令调查复杂主题,并从您的代码库、GitHub 上的存储库和 Web 来源生成带引用的报告。

谁可以使用此功能?

GitHub Copilot CLI 适用于所有 Copilot 计划。 如果从组织收到 Copilot,必须在组织的设置中启用 Copilot CLI 策略。

关于 Copilot CLI 中的研究

/research斜杠命令调用专门的研究代理。 它调查一个主题并生成引用的 Markdown 报告。 代理可以从您的本地代码库、组织内公开且可访问的私有存储库以及 Web 收集信息。

研究针对需要深入调查的复杂问题进行了优化。 有关跨 Copilot 表面的研究的概述,请参阅 使用智能体进行研究。

进行研究调查

  1. 在交互式 Copilot CLI 会话中,输入:

    Copilot prompt
    /research TOPIC
    

    将 TOPIC 替换为对您要调查内容的自然语言描述。

  2. 如果出现提示,请查看并批准代理所需的权限。 例如,智能体可以请求创建目录以在编译研究时存储数据的权限。

  3. 等待检索完成。 Copilot 显示关键结果的摘要。 它还提供指向完整 Markdown 报表的链接。

  4. 查看报告,包括其来源和记录的假设。

编写有效的研究提示

说明你的问题、其范围和所需的响应类型。 如果相关,请包括要调查的存储库、组件、技术、约束或时间段。

研究代理会根据该问题调整其报告:

  • 流程类问题通常会生成分步指导。
  • 概念性问题通常产生叙述性解释和权衡。
  • 技术深入探讨可能包括体系结构关系图和代码示例。

下面是一些示例研究提示以及解释它们为何效果很好的说明。

基本代码体系结构

Copilot prompt
/research What is the architecture of this codebase?

为什么工作出色:研究代理能够访问当前工作目录范围内的 grep、glob 和 view 工具。 它可以浏览完整的项目树、读取关键文件并合成体系结构概述,这是正常聊天响应可能仅以表面方式执行的事情。 代理通常会生成体系结构关系图、组件细分和数据流说明。

特定技术的工作原理

Copilot prompt
/research How does React implement concurrent rendering?

为什么它效果良好:该代理使用专用工具从互联网提取信息,并查看实际的 React 源代码GitHub。 它指示将代码优先于文档,并提供行号的文件路径。

了解内部实现模式

Copilot prompt
/research How are feature flags implemented at our organization?

为什么工作出色:智能体被明确指示“始终将内部/专用实现优先于公共/开源替代方案”,并首先使用 org:ORGNAME 查询搜索组织的存储库。 它知道查找内部命名模式,例如-hub, -service。 -client

比较技术或方法

Copilot prompt
/research What's the difference between JWT and session-based authentication?

为什么它效果很好:代理通过叙述性解释、权衡取舍和设计决策来调整其对“概念性/解释性问题”的回答。 它通常使用表来比较三个或多个项。

流程问题/操作手册问题

Copilot prompt
/research How do I add an endpoint to the API?

它为何有效:代理经过训练以检测查询类型,并为流程/操作类型的问题提供分步指导,以及指向相关文档、联系人和系统的链接。

深入了解特定代码库组件

Copilot prompt
/research How is the session management system implemented in this repo?

为什么它效果良好:将本地工具(grep、、glob``view)与代理的“跟踪导入、调用和类型引用”和“关注依赖项”的说明相结合,这意味着它将演练实际实现,而不仅仅是提供高级答案。

查看和共享研究报告

研究完成后,使用显示的链接在默认 Markdown 编辑器中打开完整报表。 或者,按 Ctrl+Y 打开当前会话的最新研究报告。

注意

Ctrl+Y 使用的编辑器由 COPILOT_EDITOR、VISUAL 或 EDITOR 环境变量按该顺序决定。 在 Linux 和 macOS 上,如果未设置这些变量,Copilot CLI 将使用 vi。

若要创建包含研究报告的 GitHub gist,请输入:

Copilot prompt
/share gist research

若要将报表保存到文件,请输入:

Copilot prompt
/share file research [PATH]

如果省略 [PATH],则报告将保存到当前工作目录中,并以基于研究主题的文件名保存。

使用箭头键和 Enter 选择在当前会话期间创建的报表。 Copilot CLI 然后,显示 gist 的 URL 或已保存文件的路径。

Considerations

  • 研究报告属于会话:报表选取器和 Ctrl+Y 快捷方式仅显示当前会话中的报表。 你仍然可以在~/.copilot/session-state/SESSION-ID/research/中访问以前会话的报告。
  • 研究使用专用模型:研究代理使用其配置的模型,而不考虑为主会话选择的模型。 您无法使用 /model 更改研究模型。
  • 研究花费的时间比正常聊天要长:代理搜索多个来源并生成详细的报告。 使用常规提示来快速提出范围较窄的问题。
  • 研究不会进行代码更改:研究工作流生成结果,而不是修改项目。 准备好实施更改时,启动或恢复正常的代理任务。