By dave700r
Matrix channel for Claude Code — messaging bridge with E2E encryption and access control.
Manage Matrix channel access — approve pairings, edit allowlists, set DM/group policy. Use when the user asks to pair, approve someone, check who's allowed, or change policy for the Matrix channel.
Set up the Matrix channel — save credentials and review access policy. Use when the user pastes Matrix bot credentials, asks to configure Matrix, asks "how do I set this up" or "who can reach me," or wants to check channel status.
A channel plugin that lets you message Claude Code from Element (or any Matrix client) with end-to-end encryption.
matrix-bot-sdk + @matrix-org/matrix-sdk-crypto-nodejs (SQLite storage)requireMention)download_attachment tool/matrix:access and /matrix:configure for setup and managementRegister a user (e.g., @claude:your-server.com) and get an access token.
# Clone to your local plugins directory
mkdir -p ~/.claude/plugins/local
git clone https://github.com/Dave700r/claude-code-matrix-channel.git ~/.claude/plugins/local/matrix
cd ~/.claude/plugins/local/matrix
bun install
Create ~/.claude/channels/matrix/.env:
MATRIX_HOMESERVER=https://matrix.your-server.com
MATRIX_USER_ID=@claude:your-server.com
MATRIX_ACCESS_TOKEN=syt_your_token_here
MATRIX_DEVICE_ID=YOUR_DEVICE_ID
chmod 600 ~/.claude/channels/matrix/.env
Or use the skill: /matrix:configure <homeserver> <user_id> <access_token> [device_id]
Create ~/.claude/plugins/local/.claude-plugin/marketplace.json:
{
"name": "local",
"description": "Local plugins",
"owner": {
"name": "Your Name",
"email": "[email protected]"
},
"plugins": [
{
"name": "matrix",
"description": "Matrix channel for Claude Code",
"category": "productivity",
"source": "./matrix"
}
]
}
Add to ~/.claude/settings.json:
{
"enabledPlugins": {
"matrix@local": true
},
"extraKnownMarketplaces": {
"local": {
"source": {
"source": "directory",
"path": "~/.claude/plugins/local"
}
}
}
}
# In Claude Code:
/matrix:access allow @you:your-server.com
claude --dangerously-load-development-channels plugin:matrix@local --permission-mode bypassPermissions
For a persistent background session:
screen -dmS claude-matrix claude --dangerously-load-development-channels plugin:matrix@local --permission-mode bypassPermissions
/matrix:configure — Set up credentials, check status, review access policy/matrix:access — Manage pairing, allowlist, DM/group policy, delivery settings| Tool | Description |
|---|---|
reply | Send a message to a Matrix room |
react | Add an emoji reaction |
edit_message | Edit a previously sent message |
download_attachment | Download a file from a Matrix message |
All access state lives in ~/.claude/channels/matrix/access.json:
dmPolicy: allowlist (default), pairing, or disabledallowFrom: Array of allowed Matrix user IDsgroups: Per-room policies with optional requireMention and allowFromackReaction: Emoji to react with on received messages (e.g., "👀")RustSdkCryptoStorageProvider with SQLite for persistent E2E keysApache-2.0
Admin access level
Server config contains admin-level keywords
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub dave700r/claude-code-matrix-channelMatrix channel for Claude Code — two-way messaging bridge with E2EE, access control, and permission relay
Discord channel for Claude Code — messaging bridge with built-in access control. Manage pairing, allowlists, and policy via /discord:access.
WeChat (微信) channel for Claude Code — messaging bridge via iLink Bot API with built-in access control.
Efficient skill management system with progressive discovery — 410+ production-ready skills across 33+ domains
Memory compression system for Claude Code - persist context across sessions
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.