transporting-objects

transporting-objects is a skill for Claude Code, Codex from graph-robots/open-robot-skills. It costs 170 tokens per session (4,359 once invoked), scanned A, original, Apache-2.0.

A robot-motion skill for moving an object already held by a gripper to a destination and releasing it. An oriented bounding box is a 3D box aligned to an object's shape and position.

In plain words
What is it for?
Use it after a successful grasp to place objects in baskets, bins, boxes, totes, or cups, or to place them onto a surface. For cluttered paths, use its waypoint variant with collision-aware planning.
Why use it?
It provides destination-specific movement flows and helps avoid placing an object above the rim of a walled container, where it could miss.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/graph-robots/open-robot-skills/transporting-objects
Any agent
npx skills add graph-robots/open-robot-skills --skill transporting-objects
Clone the repo
git clone --depth 1 https://github.com/graph-robots/open-robot-skills

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for transporting-objects

README.md
[![agentmods](https://agentmods.dev/badge/skills/graph-robots/open-robot-skills/transporting-objects.svg)](https://agentmods.dev/skills/graph-robots/open-robot-skills/transporting-objects)
Your own site
<a href="https://agentmods.dev/skills/graph-robots/open-robot-skills/transporting-objects"><img src="https://agentmods.dev/badge/skills/graph-robots/open-robot-skills/transporting-objects.svg" alt="Measured on agentmods" height="20"></a>
Per session 170 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,359 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00170 $0.04359
Opus 5 $0.00085 $0.02180
Sonnet 5 $0.00034 $0.00872
Haiku 4.5 $0.00017 $0.00436

Measured 4d ago against content hash 017d08cc3114, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

transporting-objects scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

The scan reads SKILL.md. This mod also ships 11 executable files (scripts/approach_above.py, scripts/compute_drop_pose.py, scripts/descend_release_linear.py, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/transporting-objects/SKILL.md · 375 lines

How it starts

The opening of the file, as written. The whole thing — 375 lines — stays where its author put it; the contents beside it link to each section on GitHub.

transporting-objects

The pick has happened; the gripper is holding the target. This subgraph moves the held object above the destination container and releases it.

When to use

  • After a successful grasp (grasped end state of any grasping-* skill).
  • When the destination is a container with a known OBB (cup, bin, basket).

When NOT to use

  • Cluttered transport paths where the lifted object risks colliding with other scene objects in transit — but see the waypoint_move_carve variant below, which routes the lift/translate through curobo.plan_with_grasped_object against a rebuilt collision world.

Choose the flow by WHERE the object must land.

Default — a walled container (basket / bin / box / tote): 2 states

HARD RULE — pick this path whenever the destination is a container with walls (a basket, bin, tote, box, or cup) — i.e. essentially every "put/place X in the " task. Use the 2-state transport_move → release flow below and do NOT use the compute_drop → move_above → release drop-pose path (that path releases at/above the rim for a walled container and the object misses). The drop-pose path in the next section is ONLY for placing onto a surface or into a named sub-region.

The object must end up INSIDE the walls, so descend straight down into it. This is the reference VAB packing recipe and needs only container_obb:

transport_move → release
  • transport_movetype: script, scripts/<sg>/transport_descend_linear.py. Use the canonical script as-is (materialized automatically; do not re-emit it). Inputs: container_obb = Ref("in.container_obb"), place_offset = -0.06 (the TCP descends to just above the rim so the held object clears the walls and drops in). It lifts, moves over the container, and does an axis-locked straight-Z descend (curobo.plan_directed_linear, fingertip-frame). Returns place_position.
  • releasetype: script, scripts/<sg>/place_release.py. Input place_position = Ref("transport_move.place_position"). Opens the gripper with a settle so the object lands, then a linear straight-up retract. On success → exit placed; on failure → blocked.

Read the full file on GitHub · 375 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago First seen · 375 lines · 170 tokens per session scan A 017d08cc3114

Subscribe to this mod's changes

transporting-objects is a skill published in the GitHub repository graph-robots/open-robot-skills (39 stars, last pushed 10d ago), licensed Apache-2.0. It adds 170 tokens to every session and 4,359 once invoked, about $0.0009 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

gap

Program robots with GaP (graph-as-policy) — compile natural-language tasks into typed, verified robot skill graphs and run them on simulators or real robots. Use when the user mentions GaP or graph-as-policy, robot manipulation, robot skills, robot tools or capabilities, skill registries, open-robot-skills, LIBERO or…

graph-robots/graph-as-policy · 195 tokens

fixture-skill

Produce a greeting for a named entity via a canonical script and a bundled prompt template. Use when a loader test needs a minimal skill bundle with scripts and prompts.

graph-robots/graph-as-policy · 36 tokens

fixture-tool

Echo strings back from an in-process fixture model. Use when a loader test needs a minimal tool bundle with a tools.py.

graph-robots/graph-as-policy · 28 tokens

cad

Create, modify, inspect, and validate STEP-first parametric CAD parts and assemblies. Use for natural-language CAD specs, reference images, 2D technical drawings, STEP/STP generation or direct inspection, Python CAD source, source-level joints, selector references, geometry facts, measurements, mating deltas…

earthtojake/text-to-cad · 79 tokens

dxf

Generate, regenerate, and validate 2D DXF drawings from Python ezdxf sources. Use for DXF files, .dxf.py generators, gendxf() sources, 2D profiles, outlines, templates, gaskets, panels, flat patterns, laser/plasma/waterjet cut layouts, and 2D drawing exports of CAD geometry.

earthtojake/text-to-cad · 77 tokens

implicit-cad

Create, edit, render, and snapshot browser-native implicit CAD .implicit.js and .implicit.mjs files using GLSL signed-distance fields, shader primitives, smooth booleans, TPMS fields, and direct CAD Viewer raymarch rendering. Experimental.

earthtojake/text-to-cad · 56 tokens