SuperAPI AI 工具集

pod-sales

智能体与模型

查看项目

更新于 10-16 02:12

技能介绍

pod-sales 是 ruflo 仓库中暴露 pod-tick.mjs 的单次执行技能,面向销售业务 pod。它的用途是在不启动真实 LLM worker 的前提下,演示、冒烟测试或调度销售自动驾驶的一次迭代。

主要能力与执行流程:

  1. 解析参数:--pod-template、--base-path、--dry-run / --live、--budget-cap-usd、--tick-id。在第二阶段,--live 会被拒绝并返回退出码 3。

  2. 加载 pod 模板 JSON,默认路径为 templates/sales.json。

  3. 通过 validatePodTemplate(json) 进行校验。schema 位于 v3/@claude-flow/cli/src/business-pods/pod-schema.ts,并内联在 pod-tick.mjs 中,使脚本无需构建 CLI 即可运行。首次违规时会抛出带 JSON-pointer 路径的错误。

  4. 将每个 agent.agentType 与 KNOWN_AGENT_TYPES 比对。未知类型会中止并返回退出码 2,同时给出可操作的错误信息。

  5. 在基于文件的账本 <base-path>/budget/<roomId>.json 上预留 min(budgetUsdPerRun, --budget-cap-usd) 美元。遵循 reservationExpiryMs(默认 60_000 毫秒,按 ADR-164.1 §3.2 限制在 [5000, 300000] 范围内)。TODO(adr-164.1):在第三阶段将文件账本替换为原子 SQLite 跟踪器。

  6. 构建每个 agent 的提示词(kickoff 限定在 bench 描述与 pod 的 PII 策略范围内)。在 --dry-run 模式下,提示词会记录到 stderr,且不会调用模型。

  7. 提交预留。dry-run 实际花费为 $0;live 实际花费为预留金额(第三阶段将接入真实的 claude -p --max-budget-usd 报告)。

  8. 向 Phase-1 后备存储 <base-path>/.agentbbs/room-<derivedRoomId>.jsonl 追加一条 pod 状态信封,以便后续 federation_bbs_watch 调用能看到该 tick。

  9. 在 stdout 输出单行 JSON:{podName, tickId, agentsRan, totalUsd, envelopeId, status}。

退出码:

  • 0:tick 成功(status === 'success')
  • 2:模板无效 / 未知 agent 类型 / 预算耗尽 / 参数错误
  • 3:请求了 --live(第二阶段拒绝)

第三阶段将提供但当前构建中不包含的功能:--live 模式(通过 claude -p headless 或 Managed Agent 分发每个提示词,并捕获实际的 --max-budget-usd 报告花费)、原子 SQLite 预算跟踪器(ADR-164.1 §3.2)、多 pod 变体(pod-marketing、pod-finance 等,每个在第三阶段发布后获得自己的技能)。

适用场景:在 Claude Code 中演示或冒烟测试销售 pod 的单次迭代、按计划调度销售自动驾驶的一次 tick、验证 pod 模板与 agent 类型配置是否正确。

限制:当前为第二阶段构建,不支持 --live 真实执行;预算使用文件账本而非原子 SQLite;仅提供销售 pod,其他 pod 变体尚未提供。