# Slack and Teams Channels

Customizes a CopilotKit Intelligence Channel for Slack or Microsoft Teams.

- Repository: https://github.com/CopilotKit/CopilotKit (38452 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add CopilotKit/CopilotKit --skill copilotkit-channels -g -a claude-code -y`
Codex: `npx skills add CopilotKit/CopilotKit --skill copilotkit-channels -g -a codex -y`
Cursor: `npx skills add CopilotKit/CopilotKit --skill copilotkit-channels -g -a cursor -y`
Gemini CLI: `npx skills add CopilotKit/CopilotKit --skill copilotkit-channels -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add CopilotKit/CopilotKit`

## Description

Use for the CODE half of a managed Intelligence Channel with Slack or Microsoft Teams: customising the Channel a CLI-scaffolded project already ships, or, for a project the CLI did not generate, writing the Channel declaration, the long-running host, and the awaited activation call. Teams provider setup is in scope, because the CLI or dashboard wizard performs it. Creating a Slack app for the first time is not: if no Slack app exists yet, use setup-slack-channel for the provider half and return here for the code.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# CopilotKit Channels

Managed Channels let an agent answer in Slack or Microsoft Teams. Intelligence owns the provider edge, signed ingress, egress, credential storage, and delivers turns to your runtime over its realtime transport.

## Scope

This skill covers **managed Intelligence Channels**: `CopilotIntelligenceRuntime`, app-api Channel resources, and the realtime gateway.

It does **not** cover the self-hosted `@copilotkit/channels` provider adapters (`@copilotkit/channels-slack`, `-teams`, `-discord`, `-whatsapp`). Those hold provider credentials in your process and talk to the provider directly. Both products use the words "channels" and "Slack", so confirm which one the user means before wiring anything. If they want to hold their own Slack tokens and run their own ingress, they want the adapter packages, not this skill.

## Decide which path you are on first

Everything below depends on this, and getting it wrong produces a project with two Channel declarations that fight over one Channel.

**Look for `channel-host.mts` at the project root.**

The rest: https://github.com/CopilotKit/CopilotKit/blob/HEAD/skills/copilotkit-channels/SKILL.md
