AI代理工作流加速器

Sandy是一款AI代理工作流加速器,通过记录和重放工具调用序列来提升代理效率,适用于需要重复执行相同工作流的AI代理场景。

  • by Sangkwun
  • Python
  • 本地部署
  • 14 星标
  • 更新于
在 GitHub 查看 Sangkwun/sandy

使用说明

桑迪

为您的AI代理提供Sandevistan


Sandy通过让AI代理创建和重用MCP工具调用序列,使AI代理更快。一旦工作流被保存为场景,它就会在没有LLM推理的情况下重放,从而节省令牌和时间。

桑迪是什么?

桑迪是一个 工作流加速器 对于AI代理。当代理识别出可重复的工作流时,Sandy可以:

  1. 商店 工具调用序列作为场景
  2. 参数化 可变部分(URL、ID、搜索词)
  3. 回放 没有LLM推理的精确序列
没有桑迪 有桑迪
每次LLM推理 记录一次,无限回放
每次执行的令牌成本 零成本重播
可变定时 确定性执行

代理商如何使用Sandy

创建场景:当代理完成可重复的工作流时,它会将MCP工具序列写入场景JSON文件。

重用场景:对于类似的请求,代理会找到现有的场景并重放它们,而不是再次推理这些步骤。

判决:代理决定何时值得保存工作流以及何时重用现有场景。

示例流程

User: "Scrape HN top stories and save to database"

Agent (first time):
  1. Executes workflow: navigate → scrape → insert
  2. Recognizes pattern as reusable
  3. Writes scenario to .sandy/scenarios/hn-scrape-to-db.json

User: "Scrape HN again"

Agent (subsequent):
  1. Finds matching scenario
  2. Replays via Sandy
  3. Done—no LLM inference needed

演示

看看桑迪是怎么做的以及它是如何工作的:

安装

作为Claude代码插件

claude plugin marketplace add Sangkwun/sandy
claude plugin install sandy@sangkwun

就这样 安装后:

  • 使用 /sandy 调用技能的命令
  • 代理可以识别可重复的工作流
  • 将它们写入场景文件
  • 在没有LLM推理的情况下重播它们

更新现有安装:

claude plugin marketplace update sangkwun
claude plugin update sandy@sangkwun

作为独立CLI

pip install mcp jsonpath-ng python-dotenv
python sandy-skill/scripts/play.py scenario.json --json

场景格式

场景是定义MCP工具序列的JSON文件:

{
  "version": "2.1",
  "metadata": { "name": "Query Database" },
  "variables": { "LIMIT": "5" },
  "steps": [
    {
      "step": 1,
      "tool": "mcp__supabase__query",
      "params": { "sql": "SELECT * FROM users LIMIT {{LIMIT}}" }
    }
  ]
}

完整架构:参见 桑迪技能/参考文献/schema.md

支持的交通工具

配置 传输
command: ... stdio(生成进程)
endpoint: http://... 上海证券交易所
endpoint: ws://... websocket
claude-in-chrome Unix套接字

配置自动检测

Sandy从以下位置找到MCP配置:

  1. $SANDY_CONFIG 环境变量
  2. .sandy/config.json (项目本地)
  3. Claude桌面配置
  4. 光标配置(~/.cursor/mcp.json)
  5. ~/.sandy/config.json (全球)
CLI Options (Advanced)
python sandy-skill/scripts/play.py <scenario.json> [options]
选项 描述
--var KEY=VALUE 设置变量(可重复)
--env FILE 从.env加载变量
--config FILE 指定MCP配置路径
--start N 从步骤N开始
--end N 在步骤N结束
--include-results MODE 包括MCP结果: true, false, on_failure
--dry-run 验证而不执行
--debug 启用调试输出
--json 输出为JSON

文档

资源 描述
场景架构 JSON格式规范
示例场景 工作示例

跨平台兼容性

桑迪跟着 代理技能 开放标准:

工具 支持
克劳德代码 完整
OpenAI Codex CLI 完整版
Gemini CLI 完整版
光标 已满
GitHub副本 完整版

支持

如果你觉得Sandy有用,请考虑支持它的发展!

您的贡献有助于维护项目,并使我能够专注于构建新功能。


贡献

欢迎投稿!请随时打开问题并提取请求。


Apache许可证2.0

以Sandevistan的速度制造⚡