/feishu-channel-configure — 飞书频道配置
将应用凭证写入 ~/.claude/channels/feishu/.env,并引导用户了解访问策略。服务器在启动时读取这两个文件。
注意:.env 文件优先级高于 shell 环境变量。如果 .env 中配置了凭证,会覆盖 .zshenv 等设置的同名变量。
传入参数:$ARGUMENTS
根据参数分派
无参数 — 凭证状态
显示当前凭证配置:
凭证 — 先检查
~/.claude/channels/feishu/.env中的MY_LARK_APP_ID(优先)。如未设置,检查 shell 环境变量MY_LARK_APP_ID/MY_LARK_APP_SECRET。显示已设置/未设置及来源(.env / 环境变量);如已设置,显示前 8 位掩码(cli_a8e1...)。下一步 — 根据凭证状态给出提示:
- 无凭证 → "在 .zshenv 中设置 MY_LARK_APP_ID 和 MY_LARK_APP_SECRET,或运行
/feishu-channel-configure <appId> <appSecret>。" - 凭证已设置 → "凭证已就绪。运行
/feishu-channel-access查看访问控制状态。"
- 无凭证 → "在 .zshenv 中设置 MY_LARK_APP_ID 和 MY_LARK_APP_SECRET,或运行
<appId> <appSecret> — 保存凭证
- 将
$ARGUMENTS解析为两个空格分隔的值。 mkdir -p ~/.claude/channels/feishu- 读取已有的
.env(如存在);更新/添加MY_LARK_APP_ID=和MY_LARK_APP_SECRET=行,保留其他配置。写回,不加引号。 - 可选设置
MY_LARK_BRAND=feishu(国际版用lark)。 - 确认,然后显示无参数状态,让用户了解当前情况。
- 提示用户:"凭证已保存。运行
/mcp重新连接 MCP 使配置生效(仅/reload-plugins不够,需要重连 MCP 以重启服务器进程)。"
clear — 清除凭证
从 .env 中删除 MY_LARK_APP_ID= 和 MY_LARK_APP_SECRET= 行。
飞书设置指南
当用户询问如何设置时,提供以下步骤:
- 前往飞书开放平台(国际版前往 Lark Developer)
- 创建自建应用
- 从凭证页面获取 App ID 和 App Secret
- 在事件与回调中:
- 启用长连接模式(WebSocket)
- 订阅事件:
im.message.receive_v1(接收消息)
- 在权限管理中,启用:
im:message— 接收消息im:message:send_as_bot— 以机器人身份发送消息im:resource— 下载消息资源(图片/文件)im:chat— 访问会话信息im:message.reactions:operate— 添加/移除表情回应(可选)
- 发布应用(或添加到测试群进行开发)
- 在 shell 环境变量中设置凭证,或通过
/feishu-channel-configure <appId> <appSecret>设置
实现注意事项
- channels 目录可能不存在(服务器尚未运行过)。文件不存在 = 未配置,不是错误。
- 服务器启动时读取一次
.env(先检查 shell 环境变量)。凭证变更需要/mcp重连 MCP(重启 bun 进程),仅/reload-plugins不会重启 MCP server。 access.json在每条入站消息时重新读取 — 通过/feishu-channel-access的策略变更立即生效,无需重启。