mirror of
https://github.com/CopilotKit/CopilotKit.git
synced 2026-09-14 16:26:20 +08:00
6f58b2c6a4
Three names for one value were live in CopilotKit's own documentation, and following the wrong one with a CLI-provisioned project yields an undefined key: - `INTELLIGENCE_API_KEY` — what `copilotkit project select` writes, used by all 34 integration examples and the docs site. - `COPILOTKIT_INTELLIGENCE_API_KEY` — the seven Channels package READMEs and the packaged skills. Nothing ever read it. - `COPILOTKIT_API_KEY` — the Slack and Teams examples, and the TSDoc on `CopilotKitIntelligence` itself, which is what an IDE shows on hover. `INTELLIGENCE_API_KEY` wins, because it is the name the CLI provisions and changing it would break every scaffolded project in the wild. `COPILOTKIT_INTELLIGENCE_API_KEY` is retired outright — no code read it. `COPILOTKIT_API_KEY` stays readable as a deprecated alias in the two examples that consume it, so an existing `.env` keeps working, and is documented as deprecated everywhere it appears. The skills reference also documented `organizationId`, sourced from a fourth and fifth env name, as a `CopilotKitIntelligence` option. It is not one: `CopilotKitIntelligenceConfig` has no such field, so the copy-pasteable sample it appeared in would not compile. Removed from the samples, and the prose that told readers to fetch a value for it corrected. The Intelligence wiring itself was published only inside `node_modules/@copilotkit/runtime/skills/`, and the only docs pages showing `CopilotKitIntelligence` were the two Channels frontends — so a developer on the plain web path had no page to reach it from. Adds `/premium/connect-your-runtime`, which covers the wiring, how to confirm the credential is actually consumed, and the self-hosted two-URL rule. `scripts/validate-intelligence-env-names.ts` keeps this from drifting back. It runs unfiltered in CI on purpose: the two workflows that would otherwise cover it filter paths, and static/quality ignores `examples/**` — exactly where the deprecated alias lives.
35 lines
1.8 KiB
Bash
35 lines
1.8 KiB
Bash
# Required: the bot runs a CopilotKit BuiltInAgent and exits without this.
|
|
OPENAI_API_KEY=
|
|
# Optional: defaults to openai/gpt-5.5.
|
|
# OPENAI_MODEL=
|
|
|
|
# ── Intelligence (owns the Channel lifecycle) ───────────────────────────
|
|
# A Channel runs ONLY through the Intelligence runtime. The Teams adapter stays
|
|
# DIRECT (no Microsoft creds needed in the Playground), but the runtime that
|
|
# starts/stops it is configured with an Intelligence key. Free tier is enough.
|
|
# Project runtime API key (cpk-…). The only Intelligence value you need: the SDK
|
|
# defaults both URLs to the managed platform.
|
|
# `COPILOTKIT_API_KEY` is a deprecated alias for this variable, still read as a fallback.
|
|
INTELLIGENCE_API_KEY=cpk-...
|
|
# Optional, for a self-hosted or dev Intelligence deployment only. Set BOTH or
|
|
# neither: the realtime plane is a DIFFERENT host from the API (api.… vs
|
|
# realtime.…), so it cannot be derived from the API URL, and setting one alone
|
|
# leaves the other plane on the managed platform.
|
|
# COPILOTKIT_INTELLIGENCE_URL=https://api.intelligence.copilotkit.ai
|
|
# COPILOTKIT_INTELLIGENCE_WS_URL=wss://realtime.intelligence.copilotkit.ai
|
|
|
|
# The Microsoft 365 Agents Playground connects to the bot anonymously, so NO
|
|
# Microsoft credentials are needed for local development. Just run `pnpm start`.
|
|
|
|
# Port for the bot's POST /api/messages endpoint (the Playground default).
|
|
PORT=3978
|
|
# Optional: port for the Intelligence runtime that owns the Channel lifecycle
|
|
# (loopback-only; keeps the process alive). Defaults to 8300.
|
|
# CHANNELS_PORT=8300
|
|
|
|
# --- Only needed to talk to REAL Microsoft Teams via Azure Bot Service ---
|
|
# (lowercase names: the M365 Agents SDK reads these via loadAuthConfigFromEnv)
|
|
# clientId=
|
|
# clientSecret=
|
|
# tenantId=
|