传统的 Agent skill,本质上仍然只是 API 的另一种封装形式。Agent 的数据获取方式依然依赖轮询:不断请求接口、等待返回、再发起下一次请求。这种模式在低频场景下问题不大,但一旦进入真实市场环境,尤其是在高波动行情中,它的局限就会非常明显。仔细想想,如果你的agent连数据的获取都会有好几分钟的延迟,怎么可能赚到钱?
与此同时,频繁的轮询也带来了不必要的资源消耗,使得整个系统既低效又不稳定。
如果我们希望真正发挥 Agent 的能力,就必须改变这种交互方式。
这个项目的核心思路是,将“轮询”转变为“事件驱动”。我基于 Binance 提供的 Rust connector 和 WebSocket 数据流,构建了一个本地运行的实时数据客户端(CLI + daemon),专门作为 Agent 的市场数据层使用。

在这个架构中,Agent 不再直接连接 Binance,也不再处理原始的 WebSocket 数据。所有底层逻辑都由本地服务统一完成,包括连接管理、订阅控制、数据解析、状态缓存以及事件检测。Agent 只需要通过简单的 CLI 命令与这个系统交互。
这个本地客户端会持续接收 Binance 的实时行情数据,在本地进行结构化处理和过滤。当检测到关键市场变化(例如价格快速波动、大额成交、爆仓或盘口异常)时,会通过 OpenClaw 的 event 机制主动将信息推送给 Agent,而不是等待 Agent 主动请求。
这样带来的改变是本质性的。首先是实时性,基于 WebSocket 的数据是持续推送的,系统可以实现接近毫秒级的监控能力。其次是职责划分的清晰,Agent 不再需要关心任何数据获取和处理的细节,只需要关注策略本身。例如,它可以简单地表达一个意图:“如果 BTC 出现大幅下跌,立即通知我”,剩下的工作都由底层系统完成。
在这种模式下,Agent 从“不断查询市场”转变为“持续感知市场”。它不再被动获取信息,而是在关键时刻被触发。
项目本身实现为一个可长期运行的本地数据代理。它基于 Binance 公共 WebSocket 持续接收市场数据,使用 Rust 编写以保证性能和稳定性,在本地维护高频数据的缓存与状态,并通过统一的 CLI 提供查询、配置和控制接口。同时,它支持将命中的事件推送到多个目标,包括终端、OpenClaw、webhook 以及自定义命令。
编译完成后,系统以单一可执行文件运行,不依赖目标机器上的 Rust 环境,适合直接部署在各种自动化系统中。


不仅节省上下文,而且效率要高很多很多.
目前属于早期阶段,还存在很多bug,如果你感兴趣,可以看看项目地址🔥🔥🔥:
https://github.com/awaqawaqawaq/binance-stream-agent-skills/settings