Matrix通道插件

Matrix Channel for Claude Code是一个允许用户通过任何Matrix客户端与运行的Claude Code会话进行通信的插件,支持双向消息、文件附件、权限中继和运行时配置。

  • by IA-PieroCV
  • Rust
  • 本地部署
  • 16 星标
  • 更新于
在 GitHub 查看 IA-PieroCV/cc_matrix_channel

使用说明

克劳德码的矩阵通道

从任何Matrix客户端与正在运行的Claude Code会话聊天。

适用于任何Matrix主服务器(Continuuity、Synapse、Conduit、Dendrite)。完整的E2EE支持。

特性

  • 带有回复线程的双向消息传递
  • 文件附件(发送、接收、自动解密E2EE媒体)
  • 权限中继——远程批准/拒绝工具调用
  • 运行时配置--更改设置而不重新启动
  • 基于配对的访问控制

设置(一次性)

需要 包子.

/plugin marketplace add IA-PieroCV/cc_matrix_channel
/plugin install matrix@cc-matrix-channel
/reload-plugins
# You must need to restart your session to get the slash commands working and connect to the channel MCP
# claude --dangerously-load-development-channels plugin:matrix@cc-matrix-channel
/configure https://matrix.example.com @bot:example.com YOUR_PASSWORD
OR
/matrix:configure https://matrix.example.com @bot:example.com YOUR_PASSWORD

然后配对您的帐户——从您的Matrix客户端DM机器人:

/access pair <code>
OR
/matrix:access pair <code>

/access policy allowlist
OR
/matrix:access policy allowlist

使用情况(每次会话)

claude --dangerously-load-development-channels plugin:matrix@cc-matrix-channel

技能

技能 描述
/matrix:access 配对、同种异体、分组、交付设置
/matrix:configure 凭据、状态、设置指南

工具

工具 说明
reply 发送文本+可选文件,带线程
react 表情符号反应
edit_message 编辑已发送的消息
download_attachment 下载文件(自动解密E2EE)
send_attachment 发送本地文件
fetch_messages 房间历史
approve_pairing 批准用户访问(仅限终端)

配置

连接(~/.claude/channels/matrix/.env)

变量 必填 描述
MATRIX_HOMESERVER_URL 是 家庭服务器URL
MATRIX_USER_ID 是 机器人用户ID(@bot:server)
MATRIX_PASSWORD 是* 机器人密码(仅限首次运行)
MATRIX_STORE_PATH 无 E2EE密钥存储(默认: ./data/matrix_store)
MATRIX_ACCESS_TOKEN 否 回退认证(受限E2EE)
MATRIX_DEVICE_ID 否 设备ID提示(自动生成)
MATRIX_STORE_PASSPHRASE 否 加密静态存储

访问和交付(~/.claude/channels/matrix/access.json)

通过管理 /matrix:access。更改立即生效。

设置 默认值 说明
dmPolicy pairing pairing, allowlist,或 disabled
allowFrom [] 允许的用户ID
groups {} 每间客房仅提及+图案
ackReaction 👀 确认表情符号(空可禁用)
textChunkLimit 4096 每个块的最大字符数
chunkMode newline newline 或 length
replyToMode first first, all,或 off

手动安装

如果没有插件系统:

  1. 从下载二进制文件 发布
  2. 将凭据保存到 ~/.claude/channels/matrix/.env
  3. 添加 .mcp.json:
    { "mcpServers": { "matrix": { "command": "/path/to/cc_matrix_channel" } } }
    
  4. claude --dangerously-load-development-channels server:matrix

从源代码构建

git clone https://github.com/IA-PieroCV/cc_matrix_channel
cd cc_matrix_channel
cargo build --release   # Requires Rust 1.85+

测试/开发

使用以下工具测试RC构建 --plugin-dir

这 dev branch生成预发布二进制文件。Bun启动器下载中列出的确切版本 plugin.json 直接来自GitHub Release,因此RC构建与稳定版本的工作原理相同:

git clone https://github.com/IA-PieroCV/cc_matrix_channel
cd cc_matrix_channel
git checkout dev
# In your terminal:
claude --dangerously-load-development-channels --plugin-dir /path/to/cc_matrix_channel plugin:matrix@cc-matrix-channel

启动器在第一次运行时获取RC二进制文件并将其缓存。

测试本地代码更改(无需GitHub发布)

构建二进制文件并将其放入启动器的缓存路径中——当文件已存在时,启动器会跳过下载:

cargo build --release
VERSION=$(grep '^version' .claude-plugin/plugin.json | sed 's/.*"\(.*\)".*/\1/')
cp target/release/cc_matrix_channel \
   ~/.claude/channels/matrix/plugin-data/bin/cc_matrix_channel-v${VERSION}
chmod +x ~/.claude/channels/matrix/plugin-data/bin/cc_matrix_channel-v${VERSION}

然后跑步 --plugin-dir 如上所述。重复 cp 之后每 cargo build.

故障排除

问题 修复
E2EE失败 删除存储目录,用密码重新启动
“无法发送到此房间” 请先向机器人发送消息
Bot忽略消息 检查 /matrix:access 或完成配对
会话无法还原 验证 MATRIX_STORE_PATH

根据以下许可 麻省理工学院.