Skip to main content

功能

这些指南介绍了可添加到 Copilot SDK 应用程序的功能。 每个指南都包含受支持的语言(TypeScript、Python、Go、.NET、Java和 Rust)中的示例(如果可用)。

代理循环

Copilot CLI 如何端到端处理用户消息:从提示到 session.idle

云会话

云会话通过 Mission Control 在 GitHub 托管的计算资源上运行 Copilot 任务。 当应用应创建远程执行的会话,而不是在用户的计算机或服务器上启动本地 Copilot CLI 会话时,请使用它们。

自定义代理和子代理编排

使用限定范围的工具和提示来定义专用代理,然后让 Copilot 在单个会话中将它们编排为子代理。 有关并行调度多个子代理,请参阅 机队模式

机队模式

机群模式是 Copilot 的一种并行编排模式,适用于可拆分为由独立子代理分别处理的工作。 在运行时研究笔记中,集群模式被描述为“运行时的内置模式,用于通过 task 工具并行调度多个子代理,并以 SQL 待办事项作为共享协调状态。” 当需要由一个父会话协调多个工作单元、收集它们的结果,并在合并后的上下文中继续对话时,可使用它。

使用挂钩

挂钩使你能够将自定义逻辑插入到Copilot会话的每个阶段,从启动的那一刻起,到每次用户提示和工具调用,到它结束的那一刻。 本指南将演练实际用例,以便在不修改核心代理行为的情况下交付权限、审核、通知等。

图像输入

将图像作为附件发送到Copilot会话。 可通过两种方法附加图像:

将 MCP 服务器与 GitHub Copilot SDK 配合使用

Copilot SDK 可以与 MCP 服务器(模型上下文协议)集成,以使用外部工具扩展助手的功能。 MCP 服务器作为单独的进程运行,并公开Copilot可在会话期间调用的工具(函数)。

插件目录

插件是一个目录,通过单一清单统一封装 SDK 扩展——技能、钩子、MCP 服务器、自定义代理和 LSP 配置。 将 SDK 指向插件目录会加载插件提供的所有内容,因此你可以在每个主机应用程序中交付可重用的功能包,而无需在每个主机应用程序中编写每扩展连接。

远程会话

远程会话允许用户通过 Mission Control 从 GitHub Web 和移动设备访问其Copilot会话。 启用后,SDK 会将每个会话连接到任务控制,生成一个 URL,可以作为链接或 QR 码共享。

会话限制

会话限制允许应用程序为Copilot会话设置 AI 信用额度预算。 在创建或恢复会话时使用 sessionLimits ,为当前会计窗口设置软上限。

会话恢复和持久性

本指南将指导你完成 SDK 的会话持久性功能 -- 如何暂停工作、稍后恢复工作和管理生产环境中的会话。

自定义技能

技能是用于扩展 Copilot 功能的可复用提示模块。 从目录中加载技能,为特定域或工作流提供Copilot专用功能。

引导和排队

两种交互模式允许用户在代理已在工作时发送消息:引导会在当前轮次进行中重定向代理,而排队会先缓冲消息,待当前轮次完成后再按顺序处理。

流式处理会话事件

Copilot 代理执行的每个操作——思考、编写代码、运行工具——都会以 session 事件 的形式发出,供你订阅。 本指南是每个事件类型的字段级参考,因此你确切地知道在未读取 SDK 源的情况下预期的数据。