Files
copilotkit__copilotkit/scripts/release/lib/config.ts
Benjamin Taylor b394f06fdc refactor(channels): rename @copilotkit/bot* packages to @copilotkit/channels* (OSS-438)
Renames the Bots SDK to the Channels SDK. Names only — no behavior change.

- 8 packages @copilotkit/bot* -> @copilotkit/channels* (git mv dirs, names,
  workspace: cross-deps). Now includes @copilotkit/bot-intelligence ->
  @copilotkit/channels-intelligence (landed on main via #5761; unpublished, so
  renamed fresh with the family).
- release.config.json scope keys + versionSource; ReleaseScope union;
  canary/stable-release/publish-release scope dropdowns; verify script
- examples/slack (Kite) + examples/teams: deps, jsxImportSource, imports
- showcase/shell-docs: content dirs docs/bots->docs/channels and
  reference/bot->reference/channels, nav registry, redirects

createBot and other API names unchanged. Old @copilotkit/bot* to be deprecated
after the new packages publish (bot-intelligence was never published).

Re-derived onto latest main (was conflicting after #5761 landed).

Refs OSS-438
2026-07-08 13:27:35 -05:00

47 lines
1.1 KiB
TypeScript

import fs from "fs";
import path from "path";
import { fileURLToPath } from "url";
export const ROOT = path.resolve(
path.dirname(fileURLToPath(import.meta.url)),
"../../..",
);
export type ReleaseScope =
| "monorepo"
| "angular"
| "channels"
| "channels-discord"
| "channels-intelligence"
| "channels-slack"
| "channels-teams"
| "channels-telegram"
| "channels-whatsapp";
export interface ScopeConfig {
packages: string[];
versionSource: string;
sharedVersion: boolean;
}
export interface ReleaseConfig {
prereleaseTag: string;
scopes: Record<ReleaseScope, ScopeConfig>;
}
export function loadConfig(): ReleaseConfig {
const configPath = path.join(ROOT, "release.config.json");
return JSON.parse(fs.readFileSync(configPath, "utf8"));
}
export function getScopeConfig(scope: ReleaseScope): ScopeConfig {
const config = loadConfig();
const scopeConfig = config.scopes[scope];
if (!scopeConfig) {
throw new Error(
`Unknown scope: ${scope}. Valid scopes: ${Object.keys(config.scopes).join(", ")}`,
);
}
return scopeConfig;
}