Copilot 应用只有 Read-only 权限,为什么仍会产生费用?
夜间运行的分析代理有时依赖某位员工的登录状态。GitHub 于 10 月 27 日为安装在组织中的 GitHub App 开放 Copilot SDK 服务器间认证公开预览。服务可以使用应用安装的身份发起请求。值得注意的是,所需的 Read-only 权限也能授权付费请求。
只读不等于免费
应用获得组织级 Copilot Requests: Read-only 权限,并使用短期安装令牌。用量和账单归属于拥有该安装的组织。这里的读取权限允许发起消耗 AI 额度的请求。

假设一家公司同时运行分析应用和文档摘要应用。两者即使都标为只读,也能产生费用。不修改文件与消耗模型能力可以同时发生。工作负载身份改变了责任主体,并未取消推理成本。
Actions 与外部服务器走不同入口
外部服务或其他 CI 系统需要生成安装令牌,并通过 gitHubToken 等 SDK 显式选项传入。只支持组织安装,不包括个人账户或企业级安装。之前介绍的企业安装正式发布与本次认证预览范围不同。
组织仓库的 GitHub Actions 可以改用 GITHUB_TOKEN。该路径需要 YAML 中的 copilot-requests: write,以及 Allow use of Copilot CLI billed to the organization 策略。组织应用认证无需该策略。Read-only 与 write 属于不同认证路径,不能直接互换。
一小时后如何继续使用同一身份
安装令牌一小时后过期。除了生成新令牌,还需把它交给运行进程。官方文档要求用新令牌重启子进程客户端;进程内或已有运行时则重启宿主。修改文件本身不能证明进程已经采用新值。
useLoggedInUser: false 会关闭自动凭据发现,包括环境变量中的令牌。因此需要通过 SDK 选项显式传入。若个人电脑成功而服务器失败,应区分意外回退到个人登录与真正传入运行时的令牌。

按应用归因,按组织设预算
组织所有者可在 AI 用量 CSV 中通过 organization 和 app_client_id 找到应用用量,再与安装列表 API 的 client_id 匹配以识别 app_slug。网页 AI 用量视图目前不提供这一区分。应用级可见性也不意味着存在应用级预算;仅通知的预算不会停止消耗。
暂停或卸载安装也会阻止它访问其他组织资源。此次变化的价值是在模型与支出策略内,让自动任务的责任主体更清晰。将服务从个人账户中分离时,令牌更新路径与费用归属也应一起迁移。