1. 痛点突围:它究竟击穿了什么工程死穴?

当前的 AI 交易脚本普遍存在两个结构性缺陷。其一是交互割裂,开发者必须在 IDE、专属终端与网页面板之间频繁切换,导致策略参数微调与突发风险熔断的响应延迟长达数分钟。其二是通道单一,绝大多数智能体仅支持 Telegram 机器人,无法将指令下发至团队日常协同的 Slack 或 Matrix 内部。

CloddsBot 的破局思路在于将大语言模型彻底降维成一个常驻本地的系统守护进程(Daemon)。它直接监听 21 种主流即时通讯协议,将自然语言实时翻译为 Polymarket 预测合约、Hyperliquid 期货网关或 Solana 链上 DEX 的原子交易指令。开发者无需编写繁琐的 REST 粘合代码,直接在日常聊天窗口中输入交易意图即可完成高杠杆仓位对冲。

💡 架构核心洞见:通过将网关层、自然语言解析器与底层交易所 SDK 强绑定在一个本地运行的 Node.js 进程中,绕过了传统云端代理延迟高、API 密钥托管风险大的痛点。

2. 核心架构与底层数据流向解析

CloddsBot 采用事件驱动的微内核架构。核心运行时由 CLI 引导程序激活,通过 SQLite 持久化层管理多端会话。当用户在 WebChat 或外部通讯软件中发送交易指令时,数据流向首先经过多协议网关解析,随后注入上下文压缩与记忆蒸馏引擎。

[ Client / CLI / 21 Channels ] ---> [ Gateway / Parser ] ---> [ Memory Layer ]
                                                                      │
                                                                      ▼
[ Execution Engine ] <--- [ MCP Server ] <--- [ Dynamic Context Compacting ]
        │
        ├─► Polymarket & Kalshi (Prediction Markets)
        ├─► Binance & Hyperliquid (Perpetuals)
        └─► Solana / EVM DEXs (On-chain Swaps)

为了解决大语言模型处理长对话时的上下文膨胀问题,CloddsBot 舍弃了无限制的历史拼接方案。系统采用增量摘要机制,实时将早期历史记录压制为结构化文本,仅保留最近 20 条原始消息与压缩后的记忆摘要共同送入 Claude。这种设计在保证对话连贯性的同时,将单次调用的 Token 消耗量锁死在可预测的安全区间内。

3. 技术选型与性能横热对比

选型维度 本方案 (CloddsBot) 传统 Python 交易脚本 SaaS 型 AI 代理面板 生产环境收益
通道覆盖 21 种即时通讯 + 本地 WebChat 仅 Telegram / 网页端 仅自有封闭 Web 界面 运维人员无需改变沟通习惯即可直接监控
交易所支持 10 个预测市场 + 7 个永续合约 + 双链 DEX 单一交易所或特定 DEX 平台指定券商或聚合商 单一终端完成跨市场套利与多头对冲
策略储备 内置 118+ 策略与 121 项技能 需开发者手写策略逻辑 仅提供固定几种模板参数 免去从零实现均值回归与鲸鱼追踪的沉没成本
数据持久化 SQLite 纯本地附加写数据库 内存存储或依赖外部 Redis 云端托管,数据不透明 绝对掌控资产凭证与敏感交易日志

从架构横向对比来看,传统 Python 交易脚本虽然轻量,但缺乏直观的多端交互与复杂的策略组合能力;SaaS 型代理平台则牺牲了数据隐私。CloddsBot 通过本地化部署兼顾了安全性与全平台流动性接入。

4. 手把手极客实操:从零构建最小闭环

CloddsBot 严格依赖 Node.js 22 运行时环境。低版本 Node.js 在编译原生依赖时会出现依赖树崩溃。以下步骤在干净的 Linux/macOS 生产服务器上验证通过。

# 全局安装最新发布的稳定版本
npm install -g https://github.com/alsk1992/CloddsBot/releases/latest/download/clodds.tgz --loglevel=error

# 启动交互式引导向导,配置 Anthropic API Key 与通讯通道
clodds onboard

若需直接拉取源码进行二次开发,可执行以下 TypeScript 初始化逻辑:

import { Gateway } from './src/core/gateway';
import { StrategyEngine } from './src/strategies/engine';
import { RiskManager } from './src/risk/engine';

async function bootstrap() {
  // 初始化核心网关,监听本地端口 18789
  const gateway = new Gateway({ port: 18789 });

  // 挂载风控引擎,设置最大每日回撤阈值
  const riskManager = new RiskManager({ maxDailyLossUSD: 5000 });

  // 加载 118 种交易策略与技能组
  const strategyEngine = new StrategyEngine({ riskEngine: riskManager });

  await gateway.start();
  console.log('CloddsBot 交易守护进程已启动,WebChat 运行于 http://localhost:18789/webchat');
}

bootstrap().catch(err => {
  console.error('守护进程引导失败:', err);
  process.exit(1);
});

运行启动命令:

clodds start

预期终端将输出本地 Web 服务的运行状态,浏览器访问 http://localhost:18789/webchat 即可加载带有 Claude 风格侧边栏的操作控制台。

5. 生产落地踩坑指南与避坑建议 (Gotchas)

在真实高频交易与多链对冲场景中,直接运行开源代理需要防范特定的底层陷阱。

⚠️ 避坑预警 1:Node.js 版本不匹配陷阱:项目严禁在 Node.js 20 及以下版本运行。由于依赖了较新的底层异步迭代器与原生 SQLite 绑定,低版本会直接在 npm install 阶段报出模块编译错误。生产环境务必通过 nvm 将环境锁定在 Node.js 22 LTS。

⚠️ 避坑预警 2:私钥与 API 凭证持久化风险:clodds onboard 会将明文或加密的 API 密钥及链上钱包私钥写入本地 SQLite 与 .env 文件。若服务器遭遇越权访问,全部资产将面临瞬间清空风险。生产部署时必须确保文件权限严格设置为 600,并配合 clodds secure 命令进行系统加固。