/copilotkit-contribute
Use when contributing to the CopilotKit open-source project — forking, cloning, setting up the monorepo, creating branches, running tests, and submitting pull requests against CopilotKit/CopilotKit.
$ npx -y skills add CopilotKit/CopilotKit --skill copilotkit-contribute --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/copilotkit-contribute
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use when contributing to the CopilotKit open-source project — forking, cloning, setting up the monorepo, creating branches, running tests, and submitting pull requests against CopilotKit/CopilotKit.
SKILL.md
copilotkit-contribute.SKILL.mdname: copilotkit-contribute
description: >
Use when contributing to the CopilotKit open-source project — forking,
cloning, setting up the monorepo, creating branches, running tests, and
submitting pull requests against CopilotKit/CopilotKit.
version: 1.0.0
Contributing to CopilotKit
> **Important:** CopilotKit's internal v2 packages use the `@copilotkit/*` namespace. The public API that users install is `@copilotkit/*`. When contributing, you work with `@copilotkit/*` source but users never see that namespace.
Live Documentation (MCP)
This plugin includes an MCP server (`copilotkit-docs`) that provides `search-docs` and `search-code` tools for querying live CopilotKit documentation and source code.
- **Claude Code:** Auto-configured by the plugin's `.mcp.json` -- no setup needed.
- **Codex:** Requires manual configuration. See the [copilotkit-debug skill](../copilotkit-debug/SKILL.md#mcp-setup) for setup instructions.
Workflow
1. **Fork and clone** the CopilotKit/CopilotKit repository. 2. **Install dependencies** with `pnpm install` (requires pnpm v9.x and Node 20+). 3. **Build once** with `pnpm build` to bootstrap all packages. 4. **Create a branch** using the naming convention: `feat/<ISSUE>-<name>`, `fix/<ISSUE>-<name>`, or `docs/<ISSUE>-<name>`. 5. **Develop** with `pnpm dev` (watches all packages) or target a specific package with `nx run @copilotkit/<pkg>:dev`. 6. **Write and run tests** with `nx run @copilotkit/<pkg>:test`. All v2 packages use Vitest. 7. **Lint and format** with `pnpm run lint --fix && pnpm run format`. 8. **Commit** using conventional commit format: `<type>(<scope>): <subject>` (enforced by commitlint). 9. **Push and open a PR** against the `main` branch. CI builds all packages and publishes preview packages via pkg-pr-new.
Before Opening a PR
- Reach out to the maintainers first for any significant work (file an issue or ask on Discord).
- Run `pnpm run test` to verify all tests pass.
- Run `pnpm run build` to verify the full build succeeds.
- Run `pnpm run check-prettier` to verify formatting.
- Ensure commit messages follow the `<type>(<scope>): <subject>` format.
Quick Reference
| Task | Command | | ------------------------ | ------------------------------ | | Install dependencies | `pnpm install` | | Build all packages | `pnpm build` | | Dev mode (all) | `pnpm dev` | | Dev mode (v2 only) | `pnpm dev:next` | | Run all tests | `pnpm run test` | | Run v2 tests only | `pnpm test:next` | | Run single package tests | `nx run @copilotkit/core:test` | | Test with coverage | `pnpm run test:coverage` | | Lint | `pnpm run lint` | | Format | `pnpm run format` | | Check formatting | `pnpm run check-prettier` | | Type check | `pnpm run check-types` | | Package quality checks | `pnpm run check:packages` | | Dependency graph | `pnpm run graph` |
Key Architecture Points
- V2 (`@copilotkit/*`) is the real implementation. V1 (`@copilotkit/*`) wraps V2.
- New features always go in V2 packages under `packages/v2/`.
- Communication between frontend and runtime uses the AG-UI protocol (SSE-based events).
- The monorepo uses Nx for task orchestration and pnpm workspaces.
Reference Documents
- [Contribution Guide](references/contribution-guide.md) — full onboarding walkthrough
- [Repo Structure](references/repo-structure.md) — package layout and architecture
- [Testing Guide](references/testing-guide.md) — Vitest setup, running tests, coverage
- [PR Guidelines](references/pr-guidelines.md) — CI checks, review process, expectations
Read more
name: copilotkit-contribute description: > Use when contributing to the CopilotKit open-source project — forking, cloning, setting up the monorepo, creating branches, running tests, and submitting pull requests against CopilotKit/CopilotKit. version: 1.0.0
Contributing to CopilotKit
> **Important:** CopilotKit's internal v2 packages use the `@copilotkit/*` namespace. The public API that users install is `@copilotkit/*`. When contributing, you work with `@copilotkit/*` source but users never see that namespace.
Live Documentation (MCP)
This plugin includes an MCP server (`copilotkit-docs`) that provides `search-docs` and `search-code` tools for querying live CopilotKit documentation and source code.
- **Claude Code:** Auto-configured by the plugin's `.mcp.json` -- no setup needed.
- **Codex:** Requires manual configuration. See the [copilotkit-debug skill](../copilotkit-debug/SKILL.md#mcp-setup) for setup instructions.
Workflow
1. **Fork and clone** the CopilotKit/CopilotKit repository. 2. **Install dependencies** with `pnpm install` (requires pnpm v9.x and Node 20+). 3. **Build once** with `pnpm build` to bootstrap all packages. 4. **Create a branch** using the naming convention: `feat/<ISSUE>-<name>`, `fix/<ISSUE>-<name>`, or `docs/<ISSUE>-<name>`. 5. **Develop** with `pnpm dev` (watches all packages) or target a specific package with `nx run @copilotkit/<pkg>:dev`. 6. **Write and run tests** with `nx run @copilotkit/<pkg>:test`. All v2 packages use Vitest. 7. **Lint and format** with `pnpm run lint --fix && pnpm run format`. 8. **Commit** using conventional commit format: `<type>(<scope>): <subject>` (enforced by commitlint). 9. **Push and open a PR** against the `main` branch. CI builds all packages and publishes preview packages via pkg-pr-new.
Before Opening a PR
- Reach out to the maintainers first for any significant work (file an issue or ask on Discord).
- Run `pnpm run test` to verify all tests pass.
- Run `pnpm run build` to verify the full build succeeds.
- Run `pnpm run check-prettier` to verify formatting.
- Ensure commit messages follow the `<type>(<scope>): <subject>` format.
Quick Reference
| Task | Command | | ------------------------ | ------------------------------ | | Install dependencies | `pnpm install` | | Build all packages | `pnpm build` | | Dev mode (all) | `pnpm dev` | | Dev mode (v2 only) | `pnpm dev:next` | | Run all tests | `pnpm run test` | | Run v2 tests only | `pnpm test:next` | | Run single package tests | `nx run @copilotkit/core:test` | | Test with coverage | `pnpm run test:coverage` | | Lint | `pnpm run lint` | | Format | `pnpm run format` | | Check formatting | `pnpm run check-prettier` | | Type check | `pnpm run check-types` | | Package quality checks | `pnpm run check:packages` | | Dependency graph | `pnpm run graph` |
Key Architecture Points
- V2 (`@copilotkit/*`) is the real implementation. V1 (`@copilotkit/*`) wraps V2.
- New features always go in V2 packages under `packages/v2/`.
- Communication between frontend and runtime uses the AG-UI protocol (SSE-based events).
- The monorepo uses Nx for task orchestration and pnpm workspaces.
Reference Documents
- [Contribution Guide](references/contribution-guide.md) — full onboarding walkthrough
- [Repo Structure](references/repo-structure.md) — package layout and architecture
- [Testing Guide](references/testing-guide.md) — Vitest setup, running tests, coverage
- [PR Guidelines](references/pr-guidelines.md) — CI checks, review process, expectations
Docs · Examples · Enterprise Intelligence Platform · Build agent-native applications — on any framework, on any surface. Generative UI, shared state, and human-in-the-loop workflows for React, Angular, Vue, React Native — and beyond the browser.
Repo: CopilotKit/CopilotKit
Other skills on copilotkit.
- /a2ui-renderer
Render A2UI (Agent-to-UI declarative surfaces) in CopilotKit v2. Enable the runtime via CopilotRuntime({ a2ui: {...} }), then enable the provider via <CopilotKit a2ui={{ theme }}>. Auto-activates via /info — do NOT manually pass renderActivityMessages. createA2UIMessageRenderer
Open skill - /react-core
@copilotkit/react-core — mount the CopilotKit provider (from @copilotkit/react-core/v2) in a Next.js App Router / React Router v7 / TanStack Start / SPA app, drop in CopilotChat/CopilotPopup/CopilotSidebar (v2 chat components ship from react-core/v2 — NOT react-ui, which is
Open skill - /runtime
@copilotkit/runtime — mount a fetch-native CopilotRuntime on any JS server, wire middleware, pick an AgentRunner, instantiate BuiltInAgent (Factory Mode with TanStack AI is the preferred default) or plug in any of 12 external agent frameworks (Mastra, LangGraph, CrewAI
Open skill - /a2ui-renderer
Render A2UI (Agent-to-UI declarative surfaces) in CopilotKit v2. Enable the runtime via CopilotRuntime({ a2ui: {...} }), then enable the provider via <CopilotKit a2ui={{ theme }}>. Auto-activates via /info — do NOT manually pass renderActivityMessages. createA2UIMessageRenderer
Open skill - /channels-setup
Use when a developer wants to build their first CopilotKit Channels agent and get it answering in Slack or Microsoft Teams — "set up a channel", "connect my agent to Slack", "get my agent into Teams", or starting from nothing and wanting a working channel end to end. Covers the
Open skill - /copilotkit-agui
Use when building custom agent backends, implementing the AG-UI protocol, debugging streaming issues, or understanding how agents communicate with frontends. Covers event types, SSE transport, AbstractAgent/HttpAgent patterns, state synchronization, tool calls, and
Open skill

