The build-channels-bot skill teaches the pre-rename Channels API (createBot, defineBotTool, …), which no longer exists in any currently-published version of @copilotkit/channels. It also lists an adapter package that was never published.
This matters more than ordinary doc drift because the skill's own frontmatter tells the agent to trust it over its own memory:
The Channels API is new and easy to get wrong from memory — always ground code in this skill.
So an agent that correctly follows the skill emits code that fails at import.
1. The Bot → Channel rename
createBot was renamed to createChannel across the workspace in CopilotKit@229f3f1460 (refactor(channels): rename Bot/createBot public API to Channel/createChannel across the workspace (OSS-473), 2026-07-13), which shipped in channels/v0.2.0. Published versions of @copilotkit/channels are now 0.1.0, 0.1.1, 0.2.0, 0.2.1, 0.3.0 — so the old names are valid only on 0.1.x, two minors behind latest.
Verified against packages/channels-core/src/index.ts on main:
| Skill (stale) |
Current |
Occurrences in skill |
createBot |
createChannel |
12 |
defineBotTool |
defineChannelTool |
11 |
defineBotCommand |
defineChannelCommand |
3 |
Bot (type) |
Channel |
4 |
BotToolContext |
ChannelToolContext |
1 |
BotNode (lowered-JSX IR) |
ChannelNode |
2 |
Affected files, all under .claude/skills/build-channels-bot/:
SKILL.md — frontmatter trigger list (L11), the five-piece mental model (L32, L35), the packages list (L41), the ## createBot — the entry point heading and its code block (L50–L64), and the "do not" guidance at L228 (new Bot() / createBot(...))
references/ui-components.md — L5, BotNode[] as the IR type
references/adapter-authoring.md — L28, BotNode[] as the adapter input
evals/evals.json — expectations reference the old names
2. @copilotkit/channels-google-chat does not exist
SKILL.md L6 (frontmatter) and L43 both list Google Chat as a supported surface, and L43 names -google-chat as an adapter package. There is no packages/channels-google-chat in the CopilotKit monorepo, and npm view @copilotkit/channels-google-chat returns 404.
Shipped adapters today: channels-slack, channels-teams, channels-discord, channels-telegram, channels-whatsapp (plus channels-intelligence, channels-core, channels-ui).
Worth noting this repo's README.md makes the same Google Chat claim (hero image alt text, the surfaces table, and the roadmap line), so the fix probably wants to cover both.
3. What is still correct — please don't rewrite these
The Thread API in the skill matches packages/channels-core/src/thread.ts exactly. post, update, delete, postFile, awaitChoice<T>, and runAgent(input?) are all current, so this should be a targeted rename plus one package-list correction, not a rewrite.
Suggested scope
- Apply the rename mapping above across
SKILL.md, both references/*.md files, and evals/evals.json.
- Drop Google Chat from the skill's surface list (and the README, if you want them consistent).
- Consider pinning the minimum version in the skill's install line (
@copilotkit/channels@^0.2.0 or ^0.3.0) so the API shown and the version installed can't drift apart again.
Cross-reference: showcase/shell-docs/src/content/docs/frontends/teams.mdx in the CopilotKit repo has the same createBot staleness and needs the same rename.
The
build-channels-botskill teaches the pre-rename Channels API (createBot,defineBotTool, …), which no longer exists in any currently-published version of@copilotkit/channels. It also lists an adapter package that was never published.This matters more than ordinary doc drift because the skill's own frontmatter tells the agent to trust it over its own memory:
So an agent that correctly follows the skill emits code that fails at import.
1. The Bot → Channel rename
createBotwas renamed tocreateChannelacross the workspace in CopilotKit@229f3f1460 (refactor(channels): rename Bot/createBot public API to Channel/createChannel across the workspace (OSS-473), 2026-07-13), which shipped inchannels/v0.2.0. Published versions of@copilotkit/channelsare now0.1.0, 0.1.1, 0.2.0, 0.2.1, 0.3.0— so the old names are valid only on0.1.x, two minors behind latest.Verified against
packages/channels-core/src/index.tsonmain:createBotcreateChanneldefineBotTooldefineChannelTooldefineBotCommanddefineChannelCommandBot(type)ChannelBotToolContextChannelToolContextBotNode(lowered-JSX IR)ChannelNodeAffected files, all under
.claude/skills/build-channels-bot/:SKILL.md— frontmatter trigger list (L11), the five-piece mental model (L32, L35), the packages list (L41), the## createBot — the entry pointheading and its code block (L50–L64), and the "do not" guidance at L228 (new Bot()/createBot(...))references/ui-components.md— L5,BotNode[]as the IR typereferences/adapter-authoring.md— L28,BotNode[]as the adapter inputevals/evals.json— expectations reference the old names2.
@copilotkit/channels-google-chatdoes not existSKILL.mdL6 (frontmatter) and L43 both list Google Chat as a supported surface, and L43 names-google-chatas an adapter package. There is nopackages/channels-google-chatin the CopilotKit monorepo, andnpm view @copilotkit/channels-google-chatreturns 404.Shipped adapters today:
channels-slack,channels-teams,channels-discord,channels-telegram,channels-whatsapp(pluschannels-intelligence,channels-core,channels-ui).Worth noting this repo's
README.mdmakes the same Google Chat claim (hero image alt text, the surfaces table, and the roadmap line), so the fix probably wants to cover both.3. What is still correct — please don't rewrite these
The
ThreadAPI in the skill matchespackages/channels-core/src/thread.tsexactly.post,update,delete,postFile,awaitChoice<T>, andrunAgent(input?)are all current, so this should be a targeted rename plus one package-list correction, not a rewrite.Suggested scope
SKILL.md, bothreferences/*.mdfiles, andevals/evals.json.@copilotkit/channels@^0.2.0or^0.3.0) so the API shown and the version installed can't drift apart again.Cross-reference:
showcase/shell-docs/src/content/docs/frontends/teams.mdxin the CopilotKit repo has the samecreateBotstaleness and needs the same rename.