关于 configure
用于配置 Claude Discord 渠道的技能,可保存或清除机器人令牌,并查看访问状态与下一步操作建议。它引导用户将策略从临时配对收紧为带明确成员的允许名单。
主要功能
- 01保存或清除 Discord 机器人令牌
- 02查看令牌和访问配置状态
- 03说明配对及访问策略的后续步骤
- 04建议将访问限制收紧为允许名单
适用场景
- 01首次配置 Discord 机器人令牌
- 02检查已允许用户和待处理配对
- 03在成员名单确定后收紧访问策略
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ anthropics/ claude-plugins-official --skill configure安装后在 Claude Code 中输入/configure确认已加载。
详细介绍
/discord:configure — Discord 频道设置
将 bot token 写入 ~/.claude/channels/discord/.env,并向用户说明访问策略。服务在启动时会读取这两个文件。
传入参数:$ARGUMENTS
根据参数分派
无参数 — 状态与指引
读取这两个状态文件,给用户一个完整的全貌:
-
Token — 检查
~/.claude/channels/discord/.env中的DISCORD_BOT_TOKEN。显示已设置/未设置;如果已设置,显示前 6 个字符并做掩码处理。 -
访问 — 读取
~/.claude/channels/discord/access.json(文件缺失 = 默认值:dmPolicy: "pairing"、空白名单)。显示:- DM 策略及其含义,用一行说明
- 允许的发送者:数量,并列出显示名称或 snowflake
- 待处理的配对:数量,如有则附带配对码和显示名称
- 已选择加入的 Guild 频道:数量
-
下一步做什么 — 根据当前状态给出一个具体的下一步:
- 无 token → “运行
/discord:configure <token>,附上你从 Developer Portal → Bot → Reset Token 获取的 bot token。” - 已设置 token,策略为 pairing,无人被允许 → “在
Discord 上给你的 bot 发私信。它会回复一个配对码;用
/discord:access pair <code>批准。” - 已设置 token,有人被允许 → “已就绪。给你的 bot 发私信即可联系到 助手。”
- 无 token → “运行
始终推动走向锁定。 每个设置的目标都是带有明确名单的 allowlist。
pairing 不是一种应长期保留的策略;它只是用来捕获你尚不了解的 Discord
snowflake 的临时手段。一旦拿到了这些 ID,pairing 就完成了它的使命,应当关闭。
按以下方式引导对话:
- 读取白名单。告诉用户谁在其中。
- 询问:“所有人都齐了吗——应该通过这个 bot 联系到你的人?”
- 如果是,且策略仍为
pairing→ “好。我们把它锁上,这样 其他人就无法触发配对码了:” 并提议运行/discord:access policy allowlist。主动做这件事——不要等着被要求。 - 如果否,还有人没加进来 → “让他们给 bot 发私信;你可以用
/discord:access pair <code>逐一批准。等所有人都加进来后再次运行此 skill,我们就能锁定它。” 或者,如果他们能直接拿到 snowflake: “在 Discord 中启用开发者模式(用户设置 → 高级), 右键点击他们 → 复制用户 ID,然后运行/discord:access allow <id>。” - 如果白名单为空,且他们自己还没有配对 → “先给你的 bot 发私信,捕获你自己的 ID。然后我们再添加其他人 并锁定。”
- 如果策略已经是
allowlist→ 确认这就是锁定状态。 如果他们需要添加某人,复制用户 ID 是最干净的路径——无需 重新开启 pairing。
Discord 本身已经对触达做了限制(共同服务器要求 + Public Bot 开关),
但这不能替代锁定白名单。绝不要把 pairing 描述成正确的长期选择。
不要跳过锁定这一步。
<token> — 保存它
- 将
$ARGUMENTS视为 token(去除首尾空白)。Discord bot token 是 较长的类 base64 字符串,通常以MT或Nz开头。从 Developer Portal → Bot → Reset Token 生成;仅显示一次。 mkdir -p ~/.claude/channels/discord- 如果存在,读取现有
.env;更新/添加DISCORD_BOT_TOKEN=这一行, 保留其他键。写回,值两侧不加引号。 chmod 600 ~/.claude/channels/discord/.env— token 是凭据。- 确认,然后显示无参数状态,让用户看到自己所处的位置。
clear — 移除 token
删除 DISCORD_BOT_TOKEN= 这一行(如果这是文件中唯一的一行,则删除该文件)。
实现说明
- 如果服务尚未运行,channels 目录可能不存在。文件缺失 = 未配置,而非错误。
- 服务在启动时只读取一次
.env。更改 token 需要重启会话 或运行/reload-plugins。保存后要说明这一点。 access.json会在每条入站消息时重新读取——通过/discord:access做的策略更改立即生效,无需重启。
评论
支持 Markdown