SuperAPI AI 工具集

socrates

智能体与模型

查看项目

更新于 10-16 08:14

技能介绍

用途

Socrates 用于把一条模糊的请求逐步澄清为一个封闭的 Seed。它编排四个子技能:wonder、reflect、refine、restate,按顺序调用它们,并检查 Seed 是否已经闭合。它本身不重写这些子技能的内部实现,只负责调用与判定。

主要能力

  • 按顺序编排 wonder、reflect、refine、restate 四个子技能。
  • 通过循环(Ralph 式循环)累积澄清过程,直到 Seed 闭合。
  • 维护一个规范的 Seed,包含 goal、constraints、acceptance_criteria 三个槽位。
  • 通过 Seed Gate 检查每个循环后三个槽位是否已填写。
  • 当槽位为空时,把下一轮 Wonder 的问题收窄到缺失的槽位。
  • 在可能的情况下,把收窄后的问题以多选题形式提出,提供 3 个合理选项和一个“Other / edit in your own words”选项。
  • 设有安全阀:最多 5 个循环,超过后仍缺失的槽位写为 empty 并停止。

使用方式

使用 .symposium/scratch/socrates.md 作为 Scratch Contract。循环会累积记录,格式包括:## User Input 下的原始请求,以及各 Cycle 中的 Wonder、Reflect、Refine(shared meaning)、Restate(goal)。

规范的 Seed 始终是一个顶层 section,格式为:

## Seed
> Source: /socrates Cycle N

```yaml
goal: ...
constraints:
  - ...
acceptance_criteria:
  - ...

每次 Seed 闭合时替换顶层的 ## Seed section,不要追加多个规范 Seed。

Seed Gate 在每个循环后检查:

  • goal:当前循环的 ### Restate 中有一个 goal。
  • constraints:至少存在一条用户陈述的约束或边界。
  • acceptance_criteria:至少存在一条可验证的标准。

如果三个槽位都已填写,且用户表示当前 goal 与上一循环的 goal 没有实质差异,则停止。

如果某个槽位为空,把下一轮 Wonder 的问题收窄到该槽位:

  • 缺少 goal:“What result do you actually want from this request?”
  • 缺少 constraints:“What must not happen, or what boundary must not be crossed?”
  • 缺少 acceptance criteria:“How will you know this result is good enough?”

收窄后的问题尽可能以多选题形式提出,提供 3 个合理选项和一个“Other / edit in your own words”选项。这些选项只是脚手架;除非用户选择、确认或自行写出内容,否则不要填充 Seed 槽位。不要通过猜测来填充空槽位。

安全阀:最多 5 个循环。如果 5 个循环后某个槽位仍然缺失,为该槽位写 empty 并停止。

最终输出是顶层的 ## Seed YAML 块。

适用场景

适用于需要把一条含糊、不完整的请求澄清为明确目标、约束与验收标准的场景,尤其是希望在澄清过程中保留可追溯的循环记录、并最终得到一个规范 Seed 的情况。

限制

  • 不重写 wonder、reflect、refine、restate 的内部逻辑,只做编排与检查。
  • 不通过猜测填充空槽位。
  • 最多 5 个循环,超过后缺失槽位写 empty 并停止。
  • 其他功能、收费、价格、平台、效果或使用步骤暂未提供。