mcpField
D
discord-reader

discord-reader

github.com/himself65生产力3.5k1.5k 次安装3 天前更新
代码仓库

关于 discord-reader

discord-reader 是面向金融研究的只读技能,通过 opencli 从正在运行的 Discord 桌面应用读取服务器讨论、消息和成员信息。它适用于跟踪交易与市场社区,不执行发送或其他写入操作。

主要功能

  1. 01检查 Discord 连接状态
  2. 02列出服务器、频道和在线成员
  3. 03读取近期消息
  4. 04按关键词搜索消息
  5. 05支持 JSON、YAML 等输出格式

适用场景

  1. 01检索交易服务器中的讨论
  2. 02监测加密货币和市场群组
  3. 03追踪金融社区情绪

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/himself65/finance-skills --skill discord-reader

安装后在 Claude Code 中输入/discord-reader确认已加载。

附带文件README.mdreferences/commands.md

详细介绍

Discord 技能(只读)

如果你的宿主尚未执行下方的 shell 探测(例如在 Codex 中),请先使用其 shell 工具运行 ! 包裹的命令,再选择设置路径。请依据实际输出;如果无法使用 shell,请说明这一限制。

使用 opencli 读取 Discord,以开展金融研究。opencli 是一款通用命令行工具,可通过 Chrome DevTools Protocol(CDP)将桌面应用和 Web 服务接入终端。

此技能为只读。 它专为金融研究设计:搜索交易服务器讨论、监控加密货币/市场群组、追踪金融社群的情绪,以及阅读消息。它不支持发送消息、添加反应、编辑、删除或任何写入操作。

重要提示:opencli 通过 CDP 连接 Discord 桌面应用,无需机器人账户或提取令牌。只需确保 Discord Desktop 正在运行。


第 1 步:确保已安装 opencli 且 Discord 已就绪

当前环境状态:

!`(command -v opencli && opencli discord-app status 2>&1 | head -5 && echo "READY" || echo "SETUP_NEEDED") 2>/dev/null || echo "NOT_INSTALLED"`

如果上方状态显示 READY,请跳至第 2 步。如果显示 NOT_INSTALLED,请先安装:

# Install opencli globally
npm install -g @jackwener/opencli

如果显示 SETUP_NEEDED,请引导用户完成设置:

设置

opencli 需要 Node.js >= 20。它通过 CDP(Chrome DevTools Protocol)连接 Discord Desktop;Discord 适配器无需 Browser Bridge 扩展。需要完成以下两项:

  1. 启用远程调试并启动 Discord:
# macOS
/Applications/Discord.app/Contents/MacOS/Discord --remote-debugging-port=9232 &

# Linux
discord --remote-debugging-port=9232 &
  1. 设置 CDP 端点环境变量:
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9232"

将此项添加到 shell 配置文件(.zshrc / .bashrc),以便在不同会话中持续生效。

  1. 验证连接:
opencli discord-app status
常见设置问题
症状解决方法
CDP connection refused确保 Discord 已使用 --remote-debugging-port=9232 运行
OPENCLI_CDP_ENDPOINT not set运行 export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9232"
status 显示已断开连接使用 CDP 标志重启 Discord,然后重试
Discord 未使用预期端口检查是否有其他应用占用端口 9232,或改用其他端口
提示:创建 shell 别名
alias discord-cdp='/Applications/Discord.app/Contents/MacOS/Discord --remote-debugging-port=9232 &'

第 2 步:确认用户的需求

将用户的请求与下方某条读取命令对应起来,然后使用 references/commands.md 中相应的命令。

用户请求命令关键标志
检查连接opencli discord-app status—
列出服务器opencli discord-app servers-f json
列出频道opencli discord-app channels-f json
列出在线成员opencli discord-app members-f json
读取近期消息opencli discord-app readN(数量)、-f json
搜索消息opencli discord-app search "QUERY"-f json

注意: opencli 操作的是 Discord 中当前激活的服务器和频道。要读取其他频道的内容,用户必须先在 Discord 应用中切换到该频道,或者使用 channels 命令查看可用频道。


第 3 步:执行命令

通用模式
# Use -f json or -f yaml for structured output
opencli discord-app servers -f json
opencli discord-app channels -f json

# Read recent messages from the active channel
opencli discord-app read 50 -f json

# Search for financial topics in the active channel
opencli discord-app search "AAPL earnings" -f json
opencli discord-app search "BTC pump" -f json
关键规则
  1. 先检查连接——运行 opencli discord-app status,再执行其他命令
  2. 处理数据时,使用 -f json 或 -f yaml 获取结构化输出
  3. 先在 Discord 中切换频道——opencli 从 Discord 应用中当前激活的服务器/频道读取内容
  4. 从少量消息开始读取——除非用户要求更多,否则使用 opencli discord-app read 20
  5. 按关键词搜索——opencli discord-app search 使用 Discord 内置搜索功能(Cmd+F / Ctrl+F)
  6. 只读——opencli 也提供 discord-app send 和 discord-app delete;不要调用这些命令,也不要发送消息、添加反应、编辑、删除或管理服务器设置。
输出格式标志(-f)
格式标志适用场景
表格-f table(默认)易于阅读的终端输出
JSON-f json程序化处理、LLM 上下文
YAML-f yaml结构化且易读的输出
Markdown-f md文档、报告
CSV-f csv导出到电子表格
读取服务器的典型工作流
# 1. Verify connection
opencli discord-app status

# 2. List servers to confirm you're in the right one
opencli discord-app servers -f json

# 3. List channels in the current server
opencli discord-app channels -f json

# 4. Read recent messages (navigate to target channel in Discord first)
opencli discord-app read 50 -f json

# 5. Search for topics of interest
opencli discord-app search "price target" -f json

第 4 步:呈现结果

优先突出与用户研究问题相关的重要信息,而不是直接倾倒原始数据。注明每条消息的来源(用户名、时间戳、内容),按主题对搜索结果分组,并指出观点偏多头还是偏空头,以及哪些观点属于共识或逆向观点。将服务器和频道列表以名称和类型的表格形式呈现。请对 CDP 端点和会话详情保密。


第 5 步:诊断

如果出现问题,请检查:

  1. Discord 是否通过 CDP 运行?
# Check if the port is open
lsof -i :9232
  1. 是否已设置环境变量?
echo $OPENCLI_CDP_ENDPOINT
  1. opencli 能否连接?
opencli discord-app status

如果所有检查都失败,请使用 CDP 标志重启 Discord:

/Applications/Discord.app/Contents/MacOS/Discord --remote-debugging-port=9232 &
export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9232"
opencli discord-app status

错误参考

错误原因修复方法
CDP connection refusedDiscord 未通过 CDP 运行,或端口错误使用 --remote-debugging-port=9232 启动 Discord
OPENCLI_CDP_ENDPOINT not set缺少环境变量export OPENCLI_CDP_ENDPOINT="http://127.0.0.1:9232"
No active channelDiscord 中未查看任何频道在 Discord 应用中进入一个频道
速率受限请求过多等待几分钟后重试

参考文件

  • references/commands.md — 完整的读取命令参考,包含所有标志和用法示例

需要准确的命令语法或详细的标志说明时,请阅读参考文件。

评论

支持 Markdown