Files
Benjamin Taylor 3f0bbe4a7b feat(runtime): default the Intelligence platform URLs to the managed service
`CopilotKitIntelligence` required `apiUrl` and `wsUrl` on every construction,
so the two correct hosts had to be found and copied by hand — which is how an
agent came to invent them. Both now default to CopilotKit's managed platform,
making `new CopilotKitIntelligence({ apiKey })` the whole managed-service setup.

Overrides are unchanged for self-hosted and non-production deployments, with two
guards that the previous required-field signature made unnecessary:

- A blank value counts as unset. These URLs are usually wired from env vars, and
  a declared-but-empty variable arrives as `""`, which would otherwise produce
  host-relative requests instead of falling back to the managed platform.
- Setting only one of the pair warns. The API and realtime planes are separate
  hosts, so a lone override silently splits the client across two deployments —
  and that failure surfaces as a hang, not an error.

Sweeps the doc, skill, README, and example surfaces to the short form so the
copy-paste path no longer hands anyone URLs to get wrong, and reattaches the
`CopilotKitIntelligence` class JSDoc, which was orphaned above an interface and
so never appeared on hover.

Linear: OSS-638
2026-07-28 13:12:15 -05:00

34 lines
1.7 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=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=