Community生产力与协作github.com

Foolafroos/open-physics

在Hermes中为需要确定性物理模拟的AI智能体提供支持。强制进行可用性检查,并遵循构建-步进-回放工作流程。

open-physics 是什么?

Open Physics 技能专为需要在 Hermes 平台内执行确定性物理模拟的 AI 智能体设计。它定义了一个严格的“构建-步进-回放”工作流程,确保模拟过程的可重复性和可验证性。该技能目前处于预开发阶段,尚未注册任何 `physics_*` 工具。因此,其核心作用是在工具可用之前作为一道“可用性护栏”,防止智能体错误地声称模拟已成功执行,或使用其他引擎生成虚假输出。一旦对应的工具(如 `physics_world_create`、`physics_body_add` 等)实现,该技能将指导智能体按照明确、可序列化的步骤创建物理世界、添加刚体、执行固定步长模拟、查询接触信息,并最终通过回放相同输入日志来验证结果的确定性和一致性。其核心原则包括:保持世界状态的可序列化性、以状态检查而非错误忽略来验证成功、将确定性作为可测试的契约,以及在输出中附带最大约束违反和破坏性脉冲等诊断信息。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Foolafroos/open-physics/tree/HEAD/skills/open-physics

Installed? Explore more 生产力与协作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Open Physics

使用时机

  • 当智能体需要创建、推进、查询或回放一个确定性的物理世界时。
  • 当游戏测试员需要获取接触点、射线投射或求解器诊断信息,而非视觉上的粗略猜测时。

可用性护栏——当前阶段

此仓库是一个预开发脚手架。尚未注册任何 physics_* 工具。 请勿声称某个世界已经过模拟、某个回放已匹配,或某个构建在物理上是正确的。如果计划中的工具不可用,请报告原生核心未实现,并停止操作,而不是替换为其他引擎或生成虚构的输出。

预期的 M0 工作流程

仅在对应工具实际存在后,才能使用此循环:

physics_world_create
  → physics_body_add (针对每个物体)
  → physics_step (固定步数)
  → physics_contacts_report / physics_raycast
  → physics_replay (使用相同的输入日志;要求结果完全一致)

未来实现的规则:

  1. 保持初始世界描述的显式化和可序列化。
  2. 绝不要仅凭没有错误就推断模拟成功;必须检查最终状态。
  3. 将确定性视为可测试的契约:相同的输入和步进日志必须产生相同的输出。
  4. 在模拟结果中报告最大约束违反和破坏性脉冲。
  5. 不要将引擎描述为 Havok 或包含 Havok 代码。它是一项原创的洁净室实现。

相关技能