cc-connect-ai-bridge

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

CC-Connect AI Bridge

CC-Connect AI 桥接工具

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.

ara.so 开发的Skill — 属于2026每日技能合集。
CC-Connect 可将本地运行的AI编码Agent(Claude Code、Codex、Cursor Agent、Gemini CLI、Qoder CLI、OpenCode、iFlow CLI)连接到你日常使用的消息平台。你可以通过Telegram、飞书、Slack、Discord、钉钉、企业微信、LINE或QQ与本地Agent聊天 — 大多数平台无需公网IP。

Installation

安装

Via npm (recommended)

通过npm安装(推荐方式)

bash
undefined
bash
undefined

Stable

稳定版

npm install -g cc-connect
npm install -g cc-connect

Beta (includes personal WeChat / Weixin ilink and other beta features)

测试版(包含个人微信/微信iLink及其他测试功能)

npm install -g cc-connect@beta
undefined
npm install -g cc-connect@beta
undefined

Via binary

通过二进制文件安装

bash
undefined
bash
undefined

Linux amd64

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/
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

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/
undefined
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/
undefined

Build from source (Go 1.22+)

从源码构建(需要Go 1.22+)

bash
git clone https://github.com/chenhg5/cc-connect.git
cd cc-connect
make build
bash
git clone https://github.com/chenhg5/cc-connect.git
cd cc-connect
make build

binary appears at ./bin/cc-connect

二进制文件将生成在 ./bin/cc-connect 路径下

undefined
undefined

Self-update

自动更新

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

bash
cc-connect update          # 更新至稳定版
cc-connect update --pre    # 更新至测试版/预发布版

Quick AI-assisted Setup

快速AI辅助配置

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.

将以下提示语发送给Claude Code或任意AI编码Agent,它会自动完成cc-connect的安装和配置:
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
bash
mkdir -p ~/.cc-connect
cp config.example.toml ~/.cc-connect/config.toml

Minimal
config.toml
— Claude Code + Telegram

最简版
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
toml
[project.my-project]
name        = "my-project"
work_dir    = "/home/user/myproject"
data_dir    = "/home/user/.cc-connect/data"
admin_from  = "123456789"          # 你的Telegram用户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"      # 通过环境变量设置或直接粘贴值

Multi-project config

多项目配置

toml
undefined
toml
undefined

Project 1: Claude on Telegram

项目1:Telegram上的Claude

[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.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

项目2:飞书上的Gemini

[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"
undefined
[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"
undefined

All supported platform types

所有支持的平台类型

type
value
PlatformPublic IP needed?
telegram
TelegramNo (long polling)
feishu
Feishu / LarkNo (WebSocket)
dingtalk
DingTalkNo (Stream)
slack
SlackNo (Socket Mode)
discord
DiscordNo (Gateway)
wecom
WeChat WorkNo (WS) / Yes (Webhook)
line
LINEYes (Webhook)
qq
QQ via NapCat/OneBotNo
qqbot
QQ Bot OfficialNo
weixin
Personal WeChat (beta)No (ilink long polling)
type
参数值
平台名称是否需要公网IP?
telegram
Telegram否(长轮询)
feishu
飞书 / Lark否(WebSocket)
dingtalk
钉钉否(Stream)
slack
Slack否(Socket Mode)
discord
Discord否(Gateway)
wecom
企业微信否(WebSocket)/ 是(Webhook)
line
LINE是(Webhook)
qq
QQ(通过NapCat/OneBot)
qqbot
官方QQ Bot
weixin
个人微信(测试版)否(iLink长轮询)

All supported agent types

所有支持的Agent类型

type
value
Agent
claude-code
Claude Code (Anthropic)
codex
Codex (OpenAI)
cursor
Cursor Agent
gemini
Gemini CLI (Google)
qoder
Qoder CLI
opencode
OpenCode / Crush
iflow
iFlow CLI

type
参数值
Agent名称
claude-code
Claude Code(Anthropic)
codex
Codex(OpenAI)
cursor
Cursor Agent
gemini
Gemini CLI(Google)
qoder
Qoder CLI
opencode
OpenCode / Crush
iflow
iFlow CLI

Platform-specific configuration

平台专属配置

Telegram

Telegram

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

Get token from @BotFather on Telegram

从Telegram的@BotFather获取token

No public IP required — uses long polling

无需公网IP — 使用长轮询机制

undefined
undefined

Feishu / Lark

飞书 / Lark

toml
[project.mybot.platform]
type               = "feishu"
app_id             = "$FEISHU_APP_ID"
app_secret         = "$FEISHU_APP_SECRET"
verification_token = "$FEISHU_VERIFICATION_TOKEN"
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

使用WebSocket — 无需公网IP

undefined
undefined

Slack

Slack

toml
[project.mybot.platform]
type              = "slack"
bot_token         = "$SLACK_BOT_TOKEN"
app_token         = "$SLACK_APP_TOKEN"
toml
[project.mybot.platform]
type              = "slack"
bot_token         = "$SLACK_BOT_TOKEN"
app_token         = "$SLACK_APP_TOKEN"

app_token must start with xapp- (Socket Mode)

app_token必须以xapp-开头(Socket Mode)

Enable Socket Mode in your Slack app settings

在Slack应用设置中启用Socket Mode

undefined
undefined

Discord

Discord

toml
[project.mybot.platform]
type  = "discord"
token = "$DISCORD_BOT_TOKEN"
toml
[project.mybot.platform]
type  = "discord"
token = "$DISCORD_BOT_TOKEN"

Uses Discord Gateway — no public IP needed

使用Discord Gateway — 无需公网IP

undefined
undefined

DingTalk

钉钉

toml
[project.mybot.platform]
type       = "dingtalk"
client_id  = "$DINGTALK_CLIENT_ID"
client_secret = "$DINGTALK_CLIENT_SECRET"
toml
[project.mybot.platform]
type       = "dingtalk"
client_id  = "$DINGTALK_CLIENT_ID"
client_secret = "$DINGTALK_CLIENT_SECRET"

Uses DingTalk Stream — no public IP needed

使用钉钉Stream — 无需公网IP

undefined
undefined

WeChat Work (WeCom)

企业微信(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
toml
[project.mybot.platform]
type           = "wecom"
corp_id        = "$WECOM_CORP_ID"
agent_id       = "$WECOM_AGENT_ID"
secret         = "$WECOM_SECRET"
connection_type = "websocket"   # 可选值:websocket(无需公网IP)或webhook

Personal WeChat (beta only)

个人微信(仅测试版支持)

bash
undefined
bash
undefined

Install beta build first

先安装测试版

npm install -g cc-connect@beta
npm install -g cc-connect@beta

Scan QR code to log in

扫码登录

cc-connect weixin setup

```toml
[project.mybot.platform]
type = "weixin"
cc-connect weixin setup

```toml
[project.mybot.platform]
type = "weixin"

Auth state is stored after QR scan — no public IP needed

扫码后会存储认证状态 — 无需公网IP


---

---

Running cc-connect

运行cc-connect

bash
undefined
bash
undefined

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

默认配置文件路径:~/.cc-connect/config.toml

cc-connect
cc-connect

Custom config path

指定自定义配置文件路径

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

Run specific project only

仅运行指定项目

cc-connect --project my-project

---
cc-connect --project my-project

---

Chat Commands (sent in the messaging platform)

聊天命令(在消息平台发送)

CommandDescription
/help
Show 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 reset
Restore configured
work_dir
/cd <path>
Alias for
/dir
/memory
Read or write the agent's memory/instruction file
/shell <cmd>
Run a shell command (admin only)
/session
Manage sessions (list, continue, new)
/continue
Continue from last session (forks to avoid inheriting broken state)
/cron <spec> <task>
Schedule a recurring task
/stop
Stop the currently running agent
命令说明
/help
显示所有可用命令
/model <name>
切换AI模型(例如
/model claude-opus-4-5
/mode <mode>
更改权限模式(例如
/mode auto
/reasoning <level>
调整推理强度
/dir <path>
切换下一次会话的工作目录
/dir <number>
跳转到历史记录中的某个目录
/dir -
切换到上一个目录
/dir reset
恢复为配置文件中设置的
work_dir
/cd <path>
/dir
命令的别名
/memory
读取或修改Agent的记忆/指令文件
/shell <cmd>
执行Shell命令(仅管理员可用)
/session
管理会话(列出、继续、新建)
/continue
从上次会话继续(创建分支以避免继承错误状态)
/stop
停止当前运行的Agent

Slash command examples (in chat)

聊天中的斜杠命令示例

undefined
undefined

Ask the agent to review a PR

让Agent审核PR

Review the changes in branch feature/auth and summarize the risks.
Review the changes in branch feature/auth and summarize the risks.

Switch to a different model

切换到其他模型

/model gemini-2.0-flash
/model gemini-2.0-flash

Change working directory

切换工作目录

/dir /home/user/other-project
/dir /home/user/other-project

Schedule a daily summary

调度每日摘要

/cron 0 6 * * * Summarize GitHub trending Go repos and post here
/cron 0 6 * * * Summarize GitHub trending Go repos and post here

Read agent memory

读取Agent记忆

/memory
/memory

Update agent memory

更新Agent记忆

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

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

---

Multi-Agent Relay (group chat orchestration)

多Agent中转(群聊编排)

Bind multiple bots in one group chat so they communicate with each other:
toml
undefined
在同一个群聊中绑定多个Bot,让它们互相通信:
toml
undefined

Bot 1: Claude

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"
[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)

Bot 2: Gemini(同一个群聊)

[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.

---
[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"

将两个Bot都添加到同一个Telegram群聊中,@它们的名称,它们就会接收并响应彼此的输出。

---

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.

对于支持语音的平台(Telegram、飞书、钉钉),可在配置中启用语音功能:
toml
[speech]
provider = "openai"           # 可选值:openai | azure | google
api_key  = "$OPENAI_API_KEY"

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

[speech.tts]
model = "tts-1"
voice = "alloy"
在Telegram中发送语音消息 → cc-connect会将其转录为文本 → 转发给Agent → 可选将响应转换为语音返回。
对于图片/截图:只需在聊天中附上图片,cc-connect会将其转发给支持多模态的Agent。

Cron Scheduling

Cron任务调度

toml
undefined
toml
undefined

In config.toml, per-project cron settings

在config.toml的项目配置中,设置cron相关参数

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

From chat:
[project.mybot.cron] timeout = "30m" # 每个任务的最大运行时长 fresh_session = true # 每次运行都启动新会话

在聊天中设置:

Every weekday at 9am, run a standup summary

每个工作日上午9点,运行站会总结

/cron 0 9 * * 1-5 Summarize open PRs and blockers in this repo
/cron 0 9 * * 1-5 Summarize open PRs and blockers in this repo

Every hour, check for new issues labeled "urgent"

每小时检查一次标记为"urgent"的新问题

/cron 0 * * * * Check for new GitHub issues labeled urgent and notify me

---
/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.

toml
[project.mybot]
admin_from = "alice,123456789"   # 逗号分隔的用户名或ID
管理员可使用
/shell
/dir
等特权命令,普通用户无法使用。

Directory structure

目录结构

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

~/.cc-connect/
├── config.toml                          # 主配置文件
└── data/
    └── projects/
        └── my-project.state.json        # 持久化的目录覆盖、会话状态

Common patterns

常见使用场景

Pattern 1: Mobile-first AI development

场景1:移动优先的AI开发

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
在你的开发机器上安装cc-connect,连接到Telegram。然后在手机上:
  1. 发送任务描述作为消息
  2. Agent在你的机器上运行
  3. 流式响应会出现在聊天中
  4. 回复消息即可继续对话

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

场景2:团队共享AI Bot(Slack/飞书)

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.
每个项目部署一个cc-connect实例,共享在团队频道中。团队成员可以提问、触发代码审查或运行分析 — 无需终端访问权限。

Pattern 3: Scheduled reports

场景3:定时报告

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

Pattern 4: Multi-project routing

场景4:多项目路由

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

在单个
cc-connect
进程中运行多个项目,每个Bot处理不同的仓库或业务需求。

Troubleshooting

故障排查

Bot not responding

Bot无响应

  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
  1. 检查
    cc-connect
    是否在运行:
    ps aux | grep cc-connect
  2. 验证配置文件中的平台令牌/凭证是否正确
  3. 对于Telegram:确保Bot令牌有效(在BotFather聊天中发送
    /start
  4. 对于飞书:在飞书开放平台控制台检查WebSocket连接状态

Agent not found

Agent未找到

bash
undefined
bash
undefined

Verify agent is installed and in PATH

验证Agent是否已安装且在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"
which claude # 针对claude-code which gemini # 针对gemini which codex # 针对codex

如果需要,可在配置中指定Agent的绝对路径:

```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
使用
/continue
命令创建会话分支,或直接新建会话:
/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
你需要安装测试版:
bash
npm install -g cc-connect@beta
cc-connect weixin setup   # 在终端中扫码登录

Context too long / auto-compress

上下文过长 / 自动压缩

Enable in config:
toml
[project.mybot.agent]
auto_compress        = true
compress_threshold   = 80000   # tokens before compression kicks in
在配置中启用自动压缩:
toml
[project.mybot.agent]
auto_compress        = true
compress_threshold   = 80000   # 达到该令牌数时触发压缩

Config not found

配置文件未找到

Default path is
~/.cc-connect/config.toml
. Pass explicitly:
bash
cc-connect --config /custom/path/config.toml
默认路径为
~/.cc-connect/config.toml
,可手动指定路径:
bash
cc-connect --config /custom/path/config.toml

Check version

查看版本

bash
cc-connect --version

bash
cc-connect --version

Environment variables reference

环境变量参考

VariableUsed for
TELEGRAM_BOT_TOKEN
Telegram bot token
FEISHU_APP_ID
Feishu app ID
FEISHU_APP_SECRET
Feishu app secret
FEISHU_VERIFICATION_TOKEN
Feishu verification token
SLACK_BOT_TOKEN
Slack bot OAuth token (
xoxb-...
)
SLACK_APP_TOKEN
Slack app-level token (
xapp-...
)
DISCORD_BOT_TOKEN
Discord bot token
DINGTALK_CLIENT_ID
DingTalk app client ID
DINGTALK_CLIENT_SECRET
DingTalk app client secret
WECOM_CORP_ID
WeChat Work corp ID
WECOM_AGENT_ID
WeChat Work agent ID
WECOM_SECRET
WeChat Work app secret
OPENAI_API_KEY
OpenAI API key (for Codex agent or STT/TTS)
Values in
config.toml
can reference env vars using
$VAR_NAME
syntax.

变量名称用途
TELEGRAM_BOT_TOKEN
Telegram Bot令牌
FEISHU_APP_ID
飞书应用ID
FEISHU_APP_SECRET
飞书应用密钥
FEISHU_VERIFICATION_TOKEN
飞书验证令牌
SLACK_BOT_TOKEN
Slack Bot OAuth令牌(格式:
xoxb-...
SLACK_APP_TOKEN
Slack应用级令牌(格式:
xapp-...
DISCORD_BOT_TOKEN
Discord Bot令牌
DINGTALK_CLIENT_ID
钉钉应用客户端ID
DINGTALK_CLIENT_SECRET
钉钉应用客户端密钥
WECOM_CORP_ID
企业微信 corp ID
WECOM_AGENT_ID
企业微信 agent ID
WECOM_SECRET
企业微信应用密钥
OPENAI_API_KEY
OpenAI API密钥(用于Codex Agent或语音转文字/文字转语音功能)
config.toml
中的值可使用
$VAR_NAME
语法引用环境变量。

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
  • 飞书/Lark:
    docs/feishu.md
  • 钉钉:
    docs/dingtalk.md
  • Telegram:
    docs/telegram.md
  • Slack:
    docs/slack.md
  • Discord:
    docs/discord.md
  • 企业微信:
    docs/wecom.md
  • 个人微信(测试版):
    docs/weixin.md
  • QQ / QQ Bot:
    docs/qq.md