i4h-workflow-createSkill i4h-workflow-create

该技能用于在Isaac for Healthcare (i4h) 工作流中创建新的Agentic环境。它通过派生最接近的现有环境,快速搭建Env YAML、资产、任务、环境类和运行时五个核心文件,并提供验证与校验流程。适用于新环境/任务脚手架,不适用于场景编辑或烘焙。关键词:Isaac for Healthcare, i4h, 医疗工作流, Agentic环境, 环境创建, 任务脚手架, 环境验证, 医疗机器人。

医疗工作流 0 次安装 0 次浏览 更新于 9/6/2026
名称 i4h-workflow-create
版本 “0.7.0”
描述 通过派生现有env创建新的agentic环境。用于新环境/任务脚手架,而非场景编辑或烘焙。
开源协议 Apache-2.0 metadata:
作者 “Isaac for Healthcare Team isaac-for-healthcare-support@nvidia.com” tags: - isaac-for-healthcare - i4h - agentic-workflow - environment - scaffolding

i4h 工作流 - 创建环境

目的

通过派生最接近的现有env,创建新的workflows/agentic环境的第一个可运行版本。保持本技能聚焦于环境脚手架:YAML、资产、任务、环境类、运行时和验证。请勿使用本技能来美化现有场景、添加可选道具/相机或烘焙桥接编辑;请使用[[i4h-workflow-scene-edit]]处理此类需求。

基础代码

从i4h-workflows根目录解析并工作:

ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"
if [ ! -d "$ROOT/workflows/agentic" ]; then
  ROOT="${I4H_WORKFLOWS:-$HOME/i4h-workflows}"
  [ -d "$ROOT/workflows/agentic" ] || git clone https://github.com/isaac-for-healthcare/i4h-workflows "$ROOT"
fi
export I4H_WORKFLOWS="$ROOT"; cd "$ROOT"

需要加载的内容

在编辑前,仅加载与请求匹配的参考:

  • 始终加载 skills/i4h-workflow/references/repo-map.md
  • 始终加载 skills/i4h-workflow-create/references/create-contract.md
  • 加载 skills/i4h-workflow-create/references/env-authoring-patterns.md,以选择源环境、机器人拥有者、策略栈和YAML模式。
  • 仅当涉及混合场景+机器人环境、G1足迹/桌子高度工作、目录USD比例或支撑面布局时,加载 skills/i4h-workflow-create/references/hybrid-layout-rules.md
  • 仅当提示与配方文件完全匹配且足以避免重新决定组件时,才加载配方文件。

配方路由:

提示形态 参考
基于 scissor_pick_and_place 使用G1进行手术器械分类 skills/i4h-workflow-create/references/g1-surgical-tool-sort.md

创建契约

首先创建环境外壳。一个正常的创建任务应精确生成以下表面,除非所选现有模式需要明确例外:

表面 路径
环境YAML workflows/agentic/config/environments/<env>.yaml
资产 workflows/agentic/arena/arena/assets/<env>.py
任务 workflows/agentic/arena/arena/tasks/<env>.py
环境类 workflows/agentic/arena/arena/environments/<env>_environment.py
运行时 workflows/agentic/arena/arena/runtimes/<env>.py

保持所有路径相对于仓库根目录,并保留workflows/agentic/前缀。除非用户明确要求且策略栈确实需要,否则不要创建新的策略包、README、文档或共享模块编辑。

工作流

  1. 解析组件:环境id、源环境、场景/资产来源、机器人拥有者、策略栈、模型/检查点、相机、物体/目的地、成功规则。
  2. 在编写代码之前,检查所选源环境YAML、环境类、资产、任务、运行时和策略栈文件。
  3. 派生最接近的工作模式。保留内联场景与注册表资产风格;不要发明新架构。
  4. 保持第一个版本最小化且可运行。可选的可视化润色、额外道具、新相机和布局更改应在环境存在后通过场景编辑进行。
  5. 运行验证并修复源,直到环境构建并且渲染场景在视觉上合理。

对于精确的配方匹配,在加载配方后不要重新推导架构。只读取配方命名的源文件;当配方说运行时是重新导出时,跳过大型源运行时文件,然后立即编写五个契约文件。除非验证错误要求,否则不要检查第三方框架内部。

计划格式:

环境id:
源环境 / 配方:
场景/资产来源:
机器人拥有者:
策略栈 + 模型/检查点:
物体/目的地:
成功规则:
要创建的文件:
验证:

硬性规则

  • Env YAML 是机器人、策略、相机、任务文本、数据集映射和训练默认值的唯一真实来源。
  • 从最接近的现有实现派生。对于混合环境,机器人集成来自机器人拥有者,场景构建来自场景源。
  • 排序任务至少需要两种物体类型、至少两个目的地以及一个在错误放置时失败的成功规则。
  • 静态/动力学目的地道具可能不暴露 .data.root_pos_w;成功检查必须回退到 entity.get_world_poses()
  • 配置类内部由 func= 引用的函数必须定义在这些类之上。
  • G1 WBC 环境需要足迹净空和匹配的地面/基础高度值;在选择这些数字之前加载 hybrid-layout-rules.md
  • 额外的固定相机通常是场景编辑/烘焙工作。如果创建提示明确需要策略/数据集相机,请加载场景编辑相机和烘焙参考,并一次性连接所有表面。

验证

运行这些静态检查:

python -m py_compile <changed-python-files>
workflows/agentic/policy/run.sh --list-envs
workflows/agentic/arena/run.sh --env <env> --dry-run
workflows/agentic/policy/run.sh --env <env> --dry-run

然后,从 skills/i4h-workflow-create/references/create-validation.md 运行真正的构建/视觉门。--dry-run 是浅层的:它不能证明任务/资产实例化或场景在视觉上可用。在桥接达到就绪、关键对象有效、视口捕获已检查且桥接停止之前,不要报告新环境已就绪,使用:

workflows/agentic/arena/stop.sh --env <env>

如果无法在主机上启动Isaac Sim,请将其报告为阻塞项并包含静态检查结果;不要将仅有静态检查作为成功呈现。

移交给场景编辑

在环境外壳通过创建验证后,使用[[i4h-workflow-scene-edit]]进行:

  • 添加、移动、调整大小或替换对象/资产。
  • 添加固定的房间/头顶/手腕相机。
  • 实时桥接编辑。
  • 将实时更改烘焙到源中。
  • 运行 local-agent/validate-bake.sh

场景编辑工作流拥有对象片段、相机片段、桥接端点细节和烘焙清单,因此此创建工作流保持精简。

先决条件

  • 工作流设置已通过 [[i4h-workflow-setup]] 完成;.venv、第三方checkouts和Isaac Sim启动支持已存在。
  • 已知源环境和目标环境id,或者提示提供了足够的信息以从现有模式中选择它们。
  • 桥接验证在可以启动Isaac Sim的GPU主机上运行。

限制

  • 每次调用创建一个环境。
  • 派生现有模式;不要发明新的策略栈或共享框架。
  • 使用场景编辑进行创建后润色、可选道具、相机烘焙和实时编辑的源持久化。
  • --dry-run 不能替代桥接构建和视觉验证门。

故障排除

  • 缺少设置:如果 .venv、第三方checkouts或 run.sh 入口点缺失,请先运行 [[i4h-workflow-setup]]。
  • 环境未列出:检查 YAML 是否存在于 workflows/agentic/config/environments/<env>.yaml,并且所有文件都使用完整的 workflows/agentic/ 仓库根前缀。
  • 静态检查通过后构建失败:检查第一个 Isaac/arena 堆栈跟踪;常见原因是错误的 cfg kwargs、帮助函数定义在配置类下方,或观察指向缺失的传感器。
  • 场景看起来错误:修复源或使用场景编辑实时调整并烘焙;不要仅从静态检查报告成功。

最终响应

报告环境id、源选择、创建的文件、验证命令和结果、捕获路径以及任何阻塞项。除非用户明确要求,否则不要提交更改。