Cc Connect Ai Bridge logo

Cc Connect Ai Bridge

Organization
reason-machines
cc-connect-ai-bridge

Bridge local AI coding agents (Claude Code, Cursor, Gemini CLI, Codex) to messaging platforms (Feishu, Telegram, Slack, Discord, DingTalk, WeChat Work, LINE) without a public IP.

Overview

Publisherreason-machines
Repositorytrending-skills
Skill namecc-connect-ai-bridge
Stars
89
Forks
16
Bundled files
Instructions only
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by reason-machines on GitHub. Read the source before you install it.

Installation

Install the Cc Connect Ai Bridge AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/reason-machines/trending-skills/tree/main/skills/cc-connect-ai-bridge
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/reason-machines/trending-skills.git /tmp/trending-skills
mkdir -p .claude/skills
cp -r /tmp/trending-skills/skills/cc-connect-ai-bridge .claude/skills/cc-connect-ai-bridge
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Cc Connect Ai Bridge in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Cc Connect Ai Bridge on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Cc Connect Ai Bridge is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

CC-Connect AI Bridge

Skill by ara.so — Daily 2026 Skills collection.

CC-Connect bridges locally running AI coding agents (Claude Code, Codex, Cursor Agent, Gemini CLI, Qoder CLI, OpenCode, iFlow CLI) to messaging platforms you already use. You can chat with your local agent from Telegram, Feishu, Slack, Discord, DingTalk, WeChat Work, LINE, or QQ — no public IP required for most platforms.


Installation

Via npm (recommended)

bash
# Stable
npm install -g cc-connect

# Beta (includes personal WeChat / Weixin ilink and other beta features)
npm install -g cc-connect@beta

Via binary

bash
# Linux amd64
curl -L -o cc-connect https://github.com/chenhg5/cc-connect/releases/latest/download/cc-connect-linux-amd64
chmod +x cc-connect
sudo mv cc-connect /usr/local/bin/

# macOS arm64
curl -L -o cc-connect https://github.com/chenhg5/cc-connect/releases/latest/download/cc-connect-darwin-arm64
chmod +x cc-connect
sudo mv cc-connect /usr/local/bin/

Build from source (Go 1.22+)

bash
git clone https://github.com/chenhg5/cc-connect.git
cd cc-connect
make build
# binary appears at ./bin/cc-connect

Self-update

bash
cc-connect update          # stable
cc-connect update --pre    # beta / pre-release

Quick AI-assisted Setup

Send this prompt to Claude Code or any AI coding agent — it will install and configure cc-connect automatically:

Follow https://raw.githubusercontent.com/chenhg5/cc-connect/refs/heads/main/INSTALL.md to install and configure cc-connect.

Configuration

bash
mkdir -p ~/.cc-connect
cp config.example.toml ~/.cc-connect/config.toml

Minimal config.toml — Claude Code + Telegram

toml
[project.my-project]
name        = "my-project"
work_dir    = "/home/user/myproject"
data_dir    = "/home/user/.cc-connect/data"
admin_from  = "123456789"          # Your Telegram user ID

[project.my-project.agent]
type = "claude-code"               # claude-code | codex | cursor | gemini | qoder | opencode | iflow

[project.my-project.platform]
type  = "telegram"
token = "$TELEGRAM_BOT_TOKEN"      # set via env or paste value

Multi-project config

toml
# Project 1: Claude on Telegram
[project.dev]
name     = "dev"
work_dir = "/home/user/project-a"
data_dir = "/home/user/.cc-connect/data/dev"

[project.dev.agent]
type = "claude-code"

[project.dev.platform]
type  = "telegram"
token = "$TELEGRAM_BOT_TOKEN"

# Project 2: Gemini on Feishu
[project.research]
name     = "research"
work_dir = "/home/user/project-b"
data_dir = "/home/user/.cc-connect/data/research"

[project.research.agent]
type = "gemini"

[project.research.platform]
type           = "feishu"
app_id         = "$FEISHU_APP_ID"
app_secret     = "$FEISHU_APP_SECRET"
verification_token = "$FEISHU_VERIFICATION_TOKEN"

All supported platform types

type valuePlatformPublic IP needed?
telegramTelegramNo (long polling)
feishuFeishu / LarkNo (WebSocket)
dingtalkDingTalkNo (Stream)
slackSlackNo (Socket Mode)
discordDiscordNo (Gateway)
wecomWeChat WorkNo (WS) / Yes (Webhook)
lineLINEYes (Webhook)
qqQQ via NapCat/OneBotNo
qqbotQQ Bot OfficialNo
weixinPersonal WeChat (beta)No (ilink long polling)

All supported agent types

type valueAgent
claude-codeClaude Code (Anthropic)
codexCodex (OpenAI)
cursorCursor Agent
geminiGemini CLI (Google)
qoderQoder CLI
opencodeOpenCode / Crush
iflowiFlow CLI

Platform-specific configuration

Telegram

toml
[project.mybot.platform]
type  = "telegram"
token = "$TELEGRAM_BOT_TOKEN"
# Get token from @BotFather on Telegram
# No public IP required — uses long polling

Feishu / Lark

toml
[project.mybot.platform]
type               = "feishu"
app_id             = "$FEISHU_APP_ID"
app_secret         = "$FEISHU_APP_SECRET"
verification_token = "$FEISHU_VERIFICATION_TOKEN"
# Uses WebSocket — no public IP needed
# Set up at https://open.feishu.cn/

Slack

toml
[project.mybot.platform]
type              = "slack"
bot_token         = "$SLACK_BOT_TOKEN"
app_token         = "$SLACK_APP_TOKEN"
# app_token must start with xapp- (Socket Mode)
# Enable Socket Mode in your Slack app settings

Discord

toml
[project.mybot.platform]
type  = "discord"
token = "$DISCORD_BOT_TOKEN"
# Uses Discord Gateway — no public IP needed

DingTalk

toml
[project.mybot.platform]
type       = "dingtalk"
client_id  = "$DINGTALK_CLIENT_ID"
client_secret = "$DINGTALK_CLIENT_SECRET"
# Uses DingTalk Stream — no public IP needed

WeChat Work (WeCom)

toml
[project.mybot.platform]
type           = "wecom"
corp_id        = "$WECOM_CORP_ID"
agent_id       = "$WECOM_AGENT_ID"
secret         = "$WECOM_SECRET"
connection_type = "websocket"   # websocket (no public IP) or webhook

Personal WeChat (beta only)

bash
# Install beta build first
npm install -g cc-connect@beta

# Scan QR code to log in
cc-connect weixin setup
toml
[project.mybot.platform]
type = "weixin"
# Auth state is stored after QR scan — no public IP needed

Running cc-connect

bash
# Default config location: ~/.cc-connect/config.toml
cc-connect

# Custom config path
cc-connect --config /path/to/config.toml

# Run specific project only
cc-connect --project my-project

Chat Commands (sent in the messaging platform)

CommandDescription
/helpShow all available commands
/model <name>Switch AI model (e.g. /model claude-opus-4-5)
/mode <mode>Change permission mode (e.g. /mode auto)
/reasoning <level>Tune reasoning intensity
/dir <path>Switch working directory for next session
/dir <number>Jump to a directory from history
/dir -Toggle to previous directory
/dir resetRestore configured work_dir
/cd <path>Alias for /dir
/memoryRead or write the agent's memory/instruction file
/shell <cmd>Run a shell command (admin only)
/sessionManage sessions (list, continue, new)
/continueContinue from last session (forks to avoid inheriting broken state)
/cron <spec> <task>Schedule a recurring task
/stopStop the currently running agent

Slash command examples (in chat)

# Ask the agent to review a PR
Review the changes in branch feature/auth and summarize the risks.

# Switch to a different model
/model gemini-2.0-flash

# Change working directory
/dir /home/user/other-project

# Schedule a daily summary
/cron 0 6 * * * Summarize GitHub trending Go repos and post here

# Read agent memory
/memory

# Update agent memory
/memory Always prefer table-driven tests in Go. Use context.Context for cancellation.

Multi-Agent Relay (group chat orchestration)

Bind multiple bots in one group chat so they communicate with each other:

toml
# Bot 1: Claude
[project.claude-bot]
name     = "claude-bot"
work_dir = "/home/user/project"
data_dir = "/home/user/.cc-connect/data/claude"

[project.claude-bot.agent]
type = "claude-code"

[project.claude-bot.platform]
type  = "telegram"
token = "$TELEGRAM_CLAUDE_BOT_TOKEN"

# Bot 2: Gemini (same group)
[project.gemini-bot]
name     = "gemini-bot"
work_dir = "/home/user/project"
data_dir = "/home/user/.cc-connect/data/gemini"

[project.gemini-bot.agent]
type = "gemini"

[project.gemini-bot.platform]
type  = "telegram"
token = "$TELEGRAM_GEMINI_BOT_TOKEN"

Add both bots to the same Telegram group. Mention them by name and they will pick up and respond to each other's output.


Voice and Multimodal

For platforms that support voice (Telegram, Feishu, DingTalk), enable speech in config:

toml
[speech]
provider = "openai"           # openai | azure | google
api_key  = "$OPENAI_API_KEY"

[speech.stt]
model = "whisper-1"

[speech.tts]
model = "tts-1"
voice = "alloy"

Send a voice message in Telegram → cc-connect transcribes it → forwards text to the agent → optionally speaks the response back.

For images/screenshots: just attach the image in chat. cc-connect forwards it to multimodal-capable agents.


Cron Scheduling

toml
# In config.toml, per-project cron settings
[project.mybot.cron]
timeout = "30m"          # max runtime per job
fresh_session = true     # start a new session for each run

From chat:

# Every weekday at 9am, run a standup summary
/cron 0 9 * * 1-5 Summarize open PRs and blockers in this repo

# Every hour, check for new issues labeled "urgent"
/cron 0 * * * * Check for new GitHub issues labeled urgent and notify me

Admin configuration

toml
[project.mybot]
admin_from = "alice,123456789"   # comma-separated usernames or IDs

Admins can use /shell, /dir, and other privileged commands. Non-admins cannot.


Directory structure

~/.cc-connect/
├── config.toml                          # main config
└── data/
    └── projects/
        └── my-project.state.json        # persisted dir override, session state

Common patterns

Pattern 1: Mobile-first AI development

Install cc-connect on your dev machine, connect it to Telegram. From your phone:

  1. Send a task description as a message
  2. Agent runs on your machine
  3. Streamed response appears in chat
  4. Reply to continue the conversation

Pattern 2: Team shared AI bot (Slack/Feishu)

One cc-connect instance per project, shared in a team channel. Team members can ask questions, trigger code reviews, or run analyses — all without terminal access.

Pattern 3: Scheduled reports

/cron 0 8 * * 1 Generate a weekly summary of commits and open issues, format as markdown

Pattern 4: Multi-project routing

Run multiple projects in one cc-connect process, each bot handles a different repo or concern.


Troubleshooting

Bot not responding

  1. Check that cc-connect is running: ps aux | grep cc-connect
  2. Verify the platform token/credentials in config
  3. For Telegram: ensure the bot token is valid (/start in BotFather chat)
  4. For Feishu: check WebSocket connection in Feishu Open Platform console

Agent not found

bash
# Verify agent is installed and in PATH
which claude     # for claude-code
which gemini     # for gemini
which codex      # for codex

Set explicit path in config if needed:

toml
[project.mybot.agent]
type = "claude-code"
bin  = "/usr/local/bin/claude"

Session inherits broken state

Use /continue which forks the session, or start fresh:

/session new

Personal WeChat not available

You need the beta build:

bash
npm install -g cc-connect@beta
cc-connect weixin setup   # scan QR in terminal

Context too long / auto-compress

Enable in config:

toml
[project.mybot.agent]
auto_compress        = true
compress_threshold   = 80000   # tokens before compression kicks in

Config not found

Default path is ~/.cc-connect/config.toml. Pass explicitly:

bash
cc-connect --config /custom/path/config.toml

Check version

bash
cc-connect --version

Environment variables reference

VariableUsed for
TELEGRAM_BOT_TOKENTelegram bot token
FEISHU_APP_IDFeishu app ID
FEISHU_APP_SECRETFeishu app secret
FEISHU_VERIFICATION_TOKENFeishu verification token
SLACK_BOT_TOKENSlack bot OAuth token (xoxb-...)
SLACK_APP_TOKENSlack app-level token (xapp-...)
DISCORD_BOT_TOKENDiscord bot token
DINGTALK_CLIENT_IDDingTalk app client ID
DINGTALK_CLIENT_SECRETDingTalk app client secret
WECOM_CORP_IDWeChat Work corp ID
WECOM_AGENT_IDWeChat Work agent ID
WECOM_SECRETWeChat Work app secret
OPENAI_API_KEYOpenAI API key (for Codex agent or STT/TTS)

Values in config.toml can reference env vars using $VAR_NAME syntax.


Platform setup guides

  • Feishu/Lark: docs/feishu.md
  • DingTalk: docs/dingtalk.md
  • Telegram: docs/telegram.md
  • Slack: docs/slack.md
  • Discord: docs/discord.md
  • WeChat Work: docs/wecom.md
  • Personal WeChat (beta): docs/weixin.md
  • QQ / QQ Bot: docs/qq.md

Frequently asked questions

What does the Cc Connect Ai Bridge AI skill do?

Bridge local AI coding agents (Claude Code, Cursor, Gemini CLI, Codex) to messaging platforms (Feishu, Telegram, Slack, Discord, DingTalk, WeChat Work, LINE) without a public IP.

Why use Cc Connect Ai Bridge on TypingMind?

Because you install it once and use it with any model. Cc Connect Ai Bridge is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Cc Connect Ai Bridge in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/reason-machines/trending-skills/tree/main/skills/cc-connect-ai-bridge. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Cc Connect Ai Bridge?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Cc Connect Ai Bridge?

As many as you like. As long as a model supports skills, you can use Cc Connect Ai Bridge with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Cc Connect Ai Bridge AI skill free?

It is published on GitHub by reason-machines. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇