1. 什么时候需要高级配置

如果 ghc-api 只监听 127.0.0.1 并仅供当前用户使用,保持默认本地配置通常最简单。只有准备共享 Copilot 访问、从其他设备连接、长期保存请求或跨机器同步时,才需要下面的功能。

2. 共享实例的用户 Token

启动时使用 ghc-api --enable-auth,或在当前版本生成的配置文件中开启 enable_auth。开启后,LLM API、模型列表等端点需要已批准的用户 Token。

  1. 用户访问 /signup,填写用户 ID 并获取一次性展示的 gha_... Token。
  2. 管理员在 Dashboard 的用户管理区域批准该用户。
  3. 客户端通过 Authorization: Bearer TOKEN 或兼容的 API Key Header 调用。
  4. 管理员可随时撤销或删除用户。
用户 Token 管理的是 ghc-api 访问权。

所有请求仍使用部署者登录的 GitHub Copilot 账户和该账户的上游权限。启用 Token 不会为每个用户创建独立 Copilot 额度。

3. 用反向代理保护管理页面

ghc-api 自身的用户 Token 主要保护 LLM API。Dashboard、请求详情、用户管理和配置管理包含敏感信息,远程部署时应由 nginx、Caddy 或其他反向代理增加独立管理员认证。

  • LLM API 路径允许 Bearer Token 直接到达 ghc-api,不要被 Basic Auth 抢先拦截。
  • Dashboard 和管理 API 使用独立的管理员认证。
  • 流式路径关闭 proxy buffering,并设置足够长的 read timeout。
  • 只开放必要端口,优先使用 HTTPS。
请求详情可能包含代码、Prompt、Header 和工具结果。

不要把 Dashboard 当作公开状态页,也不要向不受信任的用户开放请求浏览权限。

4. 请求日志、OneDrive 与持久化

功能开启前考虑
请求文件日志用于历史统计,但可能保存代码和会话内容;需要文件权限、清理周期和备份策略。
OneDrive可同步配置、Session 和 Token Usage;默认关闭,只有明确接受云同步边界时再开启。
用户注册表包含用户状态和 Token,应限制文件访问并避免写入普通日志或备份导出。
内存请求缓存Dashboard 使用;共享实例应根据并发量和敏感度调整容量。

5. 上线前检查清单

  1. 确认 GitHub 账户和组织允许所需模型。
  2. 开启 ghc-api 用户鉴权并批准测试用户。
  3. 确认 LLM API 与管理路径使用不同的认证策略。
  4. 验证 Responses、Messages 和 Chat Completions 的 SSE 流不会被代理缓存。
  5. 检查请求日志、OneDrive 和备份目录的访问权限。
  6. 使用非管理员客户端 Token 完成一次端到端测试。
下一步

先查看当前账户真实可用的模型和端点,再把模型 ID 填入客户端配置。

查看模型与参数 →