# `Sycophant.Auth.GithubCopilot`

Authentication strategy for GitHub Copilot.

Supports two credential modes:

  * **Managed** — caller supplies `:github_token` (OAuth token or PAT). The
    strategy exchanges it for a short-lived Copilot token via
    `Sycophant.Auth.GithubCopilot.TokenCache` and surfaces `:base_url` and
    `:copilot_token` back into the credential map.

  * **Escape hatch** — caller supplies an already-exchanged `:copilot_token`.
    No exchange happens; the base URL falls back to `:base_url` from
    credentials, then to a hardcoded constant.

Editor identity headers (`copilot-integration-id`, `editor-version`,
`editor-plugin-version`, `user-agent`) gate which models Copilot exposes.
Defaults match the VS Code Copilot Chat extension. Override via the
credential map.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
