Skip to content
FunCoding

Search

Search docs, Skills and MCP

Agents Secrets 与变量

区分组织和仓库值、普通环境变量与 MCP 专用凭据,并处理旧配置迁移。

This page has not been translated into English yet. The original Chinese version is shown below.

cloud agent 使用独立的 Agents secrets 和 variables 类型,为私有包仓库、初始化脚本及 MCP 服务器提供配置。它不会获得 Actions、Codespaces 或 Dependabot 类型的 secrets/variables。

配置位置和权限

级别配置入口所需角色
仓库Settings → Secrets and variables → AgentsRepository administrator
组织Settings → Secrets and variables → AgentsOrganization owner

在对应的 Secrets 或 Variables 标签页创建项目,填写名称和值并保存。组织级项目可以选择 All repositories、Private repositories 或 Selected repositories;其中 Private repositories 选项也包括 internal repositories。

同名值在多个级别存在时,更低层级优先,例如仓库级 secret 覆盖同名组织级 secret。不要据此自行推断同一层级的 secret 与 variable 冲突规则。

普通变量与 MCP 专用变量

普通 Agents 值自动作为开发环境的环境变量提供给代理、脚本和工具,也可供 copilot-setup-steps.yml 使用。Secret 值会在会话日志中掩码显示。

以 COPILOT_MCP_ 开头的值是例外:它们只提供给 MCP 服务器。仓库 MCP 配置也只能引用带这一前缀的 Agents secrets/variables,见MCP 配置格式。

因此,为 setup 脚本准备普通包仓库凭据,与为 MCP 提供同一服务的 API key,可能需要不同的配置名称和传递方式。按实际使用者选择,不要仅为命名统一给所有值加 MCP 前缀。

名称要求

  • 名称使用英文字母、数字与下划线,不能有空格。
  • 不能以数字开头,也不能以 GITHUB_ 开头。
  • 名称不区分大小写,小写会转换成大写。
  • 在创建所在层级中必须唯一。

MCP 配置可以把 $COPILOT_MCP_API_KEY 映射到服务器需要的其他环境变量名;名称转换不要求外部服务器也使用 GitHub 的前缀。

从旧 copilot environment 迁移

官方当前说明:以前配置在仓库 Actions 的 copilot environment 中的 secrets/variables,已经自动迁移到仓库级 Agents 类型,不需要再做迁移操作。以后在新的 Agents 设置页管理。

某些旧示例仍含 environment: copilot,不能把它当作当前保存新凭据的首选入口。以专门的 Secrets 文档和实际设置界面为准。

定位值未生效

依次检查项目是否保存在 Agents 类型、组织访问范围是否包含仓库、是否被同名仓库值覆盖,以及 MCP 前缀是否用在正确位置。配置被保存与外部 token 有足够权限仍是两个条件;外部服务拒绝请求时,还应检查其授权范围。