技能标识:matrix-server-management
Manage the Tuwunel Matrix Homeserver (register users, create rooms, manage room membership, upload files to media server). Use only for explicit standalone admin requests — Worker and project creation handle Matrix operations internally via their own scripts. Also use this skill whenever you need to send a file to the admin (upload via media API, then send as m.file message).
本技能允许您管理 Tuwunel Matrix 家庭服务器。Tuwunel 是一个 conduwuit 分支,运行在 http://127.0.0.1:6167。直接访问服务器(不通过 Higress 网关)。
以下环境变量已预配置在 Manager 容器中:
bash
无需设置默认值——这些变量始终在容器环境中可用。
Tuwunel 使用单步注册,需要注册令牌(无 UIAA 流程)。
bash
curl -X POST http://127.0.0.1:6167/_matrix/client/v3/register \
-H Content-Type: application/json \
-d {
username: <用户名>,
password: <密码>,
auth: {
type: m.login.registration_token,
token: ${HICLAWREGISTRATIONTOKEN}
}
}
响应包含 userid 和 accesstoken。
bash
curl -X POST http://127.0.0.1:6167/_matrix/client/v3/login \
-H Content-Type: application/json \
-d {
type: m.login.password,
identifier: {type: m.id.user, user: <用户名>},
password: <密码>
}
响应:{accesstoken: ..., userid: @<用户名>:<域名>, ...}
创建 Worker 时,始终创建一个包含人类管理员、Manager 和 Worker 的房间。使用 trustedprivatechat 预设,使所有被邀请的成员自动加入(无需接受邀请),并覆盖权限级别,使 Admin 和 Manager 获得 100(管理员权限),而 Worker 获得 0(普通用户):
bash
MANAGERTOKEN=
curl -X POST http://127.0.0.1:6167/_matrix/client/v3/createRoom \
-H Authorization: Bearer ${MANAGER_TOKEN} \
-H Content-Type: application/json \
-d {
name: Worker:
topic:
invite: [
@${HICLAWADMINUSER}:${HICLAWMATRIXDOMAIN},
@
],
preset: trustedprivatechat,
powerlevelcontent_override: {
users: {
@manager:${HICLAWMATRIXDOMAIN}: 100,
@${HICLAWADMINUSER}:${HICLAWMATRIXDOMAIN}: 100,
@
}
}
}
响应:{room_id: !
权限级别: trustedprivatechat 预设使所有被邀请的成员自动加入(无需接受邀请)。powerlevelcontent_override 确保 Admin(100)和 Manager(100)拥有管理员权限,而 Worker 明确设置为 0(普通用户)。
简单消息(无提及):
bash
curl -X PUT http://127.0.0.1:6167/_matrix/client/v3/rooms/<房间ID>/send/m.room.message/$(date +%s) \
-H Authorization: Bearer ${MANAGER_TOKEN} \
-H Content-Type: application/json \
-d {
msgtype: m.text,
body: 您好,这是一条通用公告...
}
重要提示:在群组房间中向 Worker 发送消息时,必须包含 m.mentions 字段,否则 Worker 无法收到消息。Worker 已启用 requireMention: true,这意味着它们只处理正确 @提及 它们的消息。
bash
bash
@提及 规则:
用于向管理员发送文件——任务输出工件、生成的报告、配置导出、日志文件等。
bash
curl -X POST http://127.0.0.1:6167/_matrix/media/v3/upload?filename=<文件名> \
-H Authorization: Bearer ${MANAGER_TOKEN} \
-H Content-Type: application/octet-stream \
--data-binary @/path/to/file
响应:{content_uri: mxc://<服务器>/<媒体ID>}
上传后,使用 m.file(或 m.image / m.text)消息类型将 mxc:// URI 作为 Matrix 消息发送给管理员:
bash
curl -X PUT http://127.0.0.1:6167/_matrix/client/v3/rooms/<房间ID>/send/m.room.message/$(date +%s) \
-H Authorization: Bearer ${MANAGER_TOKEN} \
-H Content-Type: application/json \
-d {
msgtype: m.file,
body: <文件名>,
url: mxc://<服务器>/<媒体ID>
}
然后在对话中回复:
MEDIA: mxc://<服务器>/<媒体ID>
注意:
bash
curl -s http://127.0.0.1:6167/matrix/client/v3/joinedrooms \
-H Authorization: Bearer ${MANAGER_TOKEN} | jq
bash
curl -s http://127.0.0.1:6167/_matrix/client
以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:
帮我安装 SkillHub 和 matrix-server-management-1776123910 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 matrix-server-management-1776123910 技能
skillhub install matrix-server-management-1776123910
文件大小: 3.24 KB | 发布时间: 2026-4-14 13:12