Agent Skills › DexForce/EmbodiChain › add-embodiment-component

add-embodiment-component

GitHub

用于创建或更新可复用的EmbodiChain机器人配置YAML组件,定义仿真映射、传感器套件及可选的技能配置文件,支持多任务部署与资源语义声明。

.agents/skills/add-embodiment-component/SKILL.md DexForce/EmbodiChain

Trigger Scenarios

需要为机器人添加新的仿真配置 更新现有机器人的传感器或技能配置文件 部署多具化身任务

Install

npx skills add DexForce/EmbodiChain --skill add-embodiment-component -g -y
More Options

Non-standard path

npx skills add https://github.com/DexForce/EmbodiChain/tree/main/.agents/skills/add-embodiment-component -g -y

Use without installing

npx skills use DexForce/EmbodiChain@add-embodiment-component

指定 Agent (Claude Code)

npx skills add DexForce/EmbodiChain --skill add-embodiment-component -a claude-code -g -y

安装 repo 全部 skill

npx skills add DexForce/EmbodiChain --all -g -y

预览 repo 内 skill

npx skills add DexForce/EmbodiChain --list

SKILL.md

Frontmatter
{
    "name": "add-embodiment-component",
    "description": "Add or update a reusable EmbodiChain embodiment YAML component that owns one simulation robot, its sensor suite, and an optional Task Program skill_profile. Use for configs\/components\/embodiments, new Task Program-compatible robots, or multi-embodiment task deployment."
}

Add Embodiment Component

Create the reusable physical and semantic declaration that lets one robot configuration serve many tasks.

Establish scope

An embodiment component belongs at:

extensions/embodichain_tasks/configs/components/embodiments/<embodiment_id>.yaml

It owns exactly:

  • embodiment_id;
  • one simulation robot mapping;
  • the independent sensor list (mounted defaults belong to RobotCfg.sensors);
  • optional skill_profile.

It does not own a task, physical scene, Task Program, execution policy, task-local object IDs, or runnable Gym ID. Component files do not use a compatibility version field.

Load current context

Read agent_context/MAP.yaml, then resolve:

  • robot-system;
  • sensor-system; and
  • task-programs when a skill_profile is requested.

Inspect the closest current component under extensions/embodichain_tasks/configs/components/embodiments/ and the intended runnable task deployment.

Reuse or add the robot

If an existing registered robot config can express the request, select it in simulation and add only necessary config overrides. If a new RobotCfg/URDF/control-part implementation is required, invoke $add-robot first. This skill does not duplicate robot registration logic in YAML.

Keep robot-mounted camera calibration in the robot configuration. The component selects that robot and declares additional independent sensors; do not repeat mounted defaults in sensor. Sensor UIDs must be unique across both sources. Gym initializes both sources by default and uses enable_sensor: false to disable both, overriding the robot's standalone initialization switch.

Add skill_profile only when needed

Handwritten and RL deployments may use an embodiment without semantic metadata. A configured Task Program requires skill_profile with:

  • contract_id: the compatibility contract tasks/policies require;
  • profile_id: stable unversioned profile identity;
  • resources: logical task-facing resources;
  • command_presets: named control commands;
  • optional runtime_services.

Each resource declares logical endpoints. Endpoint declarations map to actual control_part names and list only capabilities the selected robot/runtime can provide. Grasp endpoints that require open/grasp commands select a matching command preset.

Use logical resource IDs such as primary_manipulator, left, or right; Task Program integrations bind Semantic Call slots to these IDs. Do not expose task-local names as reusable resources.

Runtime service ownership

Put embodiment-calibrated services in skill_profile.runtime_services, such as gripper-specific antipodal grasp generation or control-part evidence. Put task-specific targets, poses, and overrides in the task integration.

For reusable joint-position constraint evidence, omit object_ids unless the embodiment truly supports only an explicit global set. Omission lets runtime assembly scope evidence to graspable objects in the selected task scene.

Only use service kinds accepted by the current configured decoder. Never serialize a dotted import or callable.

Attach without copying

A runnable deployment selects:

embodiment:
  component: ../../../components/embodiments/<embodiment_id>.yaml

Optional deployment overrides are limited to uid, init_pos, init_rot, and init_qpos. Do not repeat inline robot or sensor fields.

One task can provide multiple thin deployments selecting compatible embodiments. Keep the program embodiment-independent and validate the integration and policy contracts against every variant.

Validation

At minimum:

  1. decode the YAML as a closed embodiment component;
  2. build the selected robot config and verify control parts;
  3. verify the combined independent/mounted sensor UIDs, parent links and shapes;
  4. verify every profile endpoint/control part/capability and command preset;
  5. compose at least one intended task deployment;
  6. for Task Program use, run $add-task-program's deployment inspector;
  7. run a minimal live robot/sensor smoke test when available.

Checklist

  • Component selects exactly one robot and declares only additional sensors
  • Existing robot config was reused, or $add-robot was completed first
  • Profile is omitted when no semantic consumer needs it
  • Contract/profile/resource/preset IDs are stable and unversioned
  • Endpoint control parts exist on the robot
  • Declared capabilities and commands are actually supported
  • Reusable services contain no task-local object IDs or poses
  • At least one intended deployment composes successfully

Version History

  • 6611467 Current 2026-10-19 21:36

    将组件路径移至extensions下;将挂载摄像头定义移入机器人配置,传感器列表改为独立声明。

  • 6f20b06 2026-09-23 01:28

Same Skill Collection

.agents/skills/add-atomic-action/SKILL.md
.agents/skills/add-functor/SKILL.md
.agents/skills/add-robot/SKILL.md
.agents/skills/add-semantic-call/SKILL.md
.agents/skills/add-solver/SKILL.md
.agents/skills/add-task-env/SKILL.md
.agents/skills/add-task-program/SKILL.md
.agents/skills/add-test/SKILL.md
.agents/skills/benchmark/SKILL.md
.agents/skills/implement-performance/SKILL.md
.agents/skills/pr/SKILL.md
.agents/skills/pre-commit-check/SKILL.md
.agents/skills/project-dev-context/SKILL.md
.agents/skills/release/SKILL.md
.agents/skills/review-pr/SKILL.md
.agents/skills/update-api-docs/SKILL.md
.claude/skills/add-atomic-action/SKILL.md
.claude/skills/add-embodiment-component/SKILL.md
.claude/skills/add-functor/SKILL.md
.claude/skills/add-robot/SKILL.md
.claude/skills/add-semantic-call/SKILL.md
.claude/skills/add-solver/SKILL.md
.claude/skills/add-task-env/SKILL.md
.claude/skills/add-task-program/SKILL.md
.claude/skills/add-test/SKILL.md
.claude/skills/benchmark/SKILL.md
.claude/skills/pr/SKILL.md
.claude/skills/pre-commit-check/SKILL.md
.claude/skills/project-dev-context/SKILL.md
.claude/skills/release/SKILL.md
.claude/skills/review-pr/SKILL.md
.claude/skills/update-api-docs/SKILL.md
.claude/skills/implement-performance/SKILL.md

Metadata

Files
0
Version
6611467
Hash
a95fce67
Indexed
2026-09-23 01:28

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-10-26 07:53
浙ICP备14020137号-1