HexaShell on four simulated benchmarks and real robots. Left: success rates (%) of
HexaShell with task skills (blue) and of the three strongest other methods on each benchmark (grey), taken from the
leaderboards or, for LIBERO-PRO (โ ), from published papers; PrismWAM (*) uses depth. Each axis gives HexaShell's rate
(bold) and, after the slash, the best of the three others. Our results are self-evaluated, under protocols that differ
from the official ones. Right: the three components of HexaShell and their results: 14 basic tools; the same tools
with one general prompt for each benchmark or robot (success without task skills); and a skill of about a page for
each task (success with skills).
---
## ๐ฐ News
- ๐ฅ **2026-11-03** โ HexaShell is released: one task-agnostic harness with general tools for seeing and moving, on four
simulated benchmarks and on real robots. With one short skill per task it reaches 85.0% success (score 88.8) on
RoboDojo, 85.6 on RoboCasa365, 96.7% on LIBERO-PRO and 96.8% on RoboTwin 2.0, above the best published result we
know of on each of the four benchmarks (our own evaluations, see [Results](#-results)). On real dual-arm robots it
succeeds in 76 of 90 episodes across nine tasks. The earlier version HexaShell-Preview on the RoboDojo leaderboard
stays available on the branch [`v1.0`](https://github.com/HexaFuture/HexaShell/tree/v1.0).
- ๐ฅ **2026-11-01** โ HexaShell is **#1 on the [RoboCasa365 leaderboard](https://robocasa.ai/leaderboard.html)**, 85.6
overall (atomic 91.1%, composite seen 85.0%, composite unseen 80.0%), ahead of Awomo-0.5I (64.4), minionx (62.6)
and Awomo-0.5V (62.5). It is the leaderboard's agentic entry; the result is our own evaluation of the 50 tasks on
30 test seeds each of the pretrain50 split, not RoboCasa's official protocol ([details](#other-split-pretrain50)).
- **2026-10-19** โ HexaShell-Preview (1.0) is released; it reaches the top of the RoboDojo
leaderboard: success rate 46.9%, progress score 53.2 in RoboDojo's official evaluation.
## ๐งฉ Overview
Agents built on vision language models (VLMs) now control robots by writing code, but the strongest of them refine
task-specific code over many rounds of trial and revision. Such code tends to overfit the benchmark on which it was
tuned, can exploit the benchmark's shortcuts, and is costly to carry over to a new benchmark or robot. HexaShell is a
thin, task-agnostic harness built to test how far general tools can go instead. It provides a simple and complete set
of 14 basic tools, four for motion, five for perception and five for state, which the agent calls in one Python cell
per turn. Its perception pairs SAM 3, which segments an object from a few words or a click, with NumPy and OpenCV
geometry that turns the outlines in several cameras, or a depth image, into the object's position, size and grasp
angle. The robot API, agent loop and sandbox are shared across all tasks; a new simulator or robot needs only an
adapter of 350 to 1,450 lines and a prompt that describes its world, and the only task-specific input is an optional
skill of about a page of guidance. There is no trained policy and no demonstration data.
- **Simple and complete general tools.** The model acts through 14 basic tools shared by all tasks: motion (`goto`,
`gripper`, `home`, `wait`), perception (`look`, `find`, `measure`, `to_world`, `to_pixel`) and state (`task`,
`state`, `things`, `image`, `camera`). `robot.goto` moves an arm, `robot.find(camera, "bottle")` segments objects
with SAM 3, `robot.measure(mask)` locates them in 3-D and `robot.state()` reports the arms and the remaining steps.
Perception separates segmentation by SAM 3 from geometric localization, so the model receives metric 3-D positions
with error estimates instead of judging distances itself. The API is written with a language model as its user:
every motion can be checked with a dry run before it consumes steps, results report problems first, and errors state
what to change. Thinking and looking cost no steps. With nothing written for any task, GPT-6-Astra in HexaShell
reaches a success rate of 69.9% on RoboDojo, above every entry of its leaderboard, whereas the same model in the
RoboDojo team's agent reaches 22.5%; in nine episodes out of ten it writes no vision code of its own.
- **Cross-embodiment harness.** The same tools, loop and sandbox run unchanged on four simulated benchmarks, built on
three simulators with two kinds of arm, fixed and wheeled bases, and cameras with and without depth: RoboDojo (Isaac
Sim, two ARX X5 arms), RoboCasa365 (MuJoCo, a PandaOmron mobile manipulator), LIBERO-PRO (MuJoCo, a Panda arm) and
RoboTwin 2.0 (SAPIEN, two ARX X5 arms). They also run on real robots: on dual-arm PiPER-X robots HexaShell succeeds
in 76 of 90 episodes across nine tasks ([below](#real-robot-urai)). Each setting needs only a thin adapter (350 to
1,450 lines) and one general prompt. Without task skills, the agent reaches a success rate of 69.9% on RoboDojo,
59.3 on RoboCasa365, 78.3% on LIBERO-PRO and 82.2% on RoboTwin 2.0.
- **Lightweight task skills.** What general tools cannot supply (a success condition that the instruction leaves
implicit, a parameter that only contact reveals, the order of steps) fits in about a page of guidance per task,
which an analysis agent drafts from the records of earlier runs on a few seeds and a person reviews (`skills/`).
With the skills, HexaShell reaches 85.0% on RoboDojo, 85.6 on RoboCasa365, 96.7% on LIBERO-PRO and 96.8% on RoboTwin
2.0, above the best published result we know of on each benchmark. On RoboDojo, the same 1,020 episodes outside the
Open dimension go from 667 to 864 successes: 234 succeed only with skills, 37 only without.
- **Against HexaShell-TaskTools** (1.0, branch `v1.0`, listed as HexaShell-Preview on the RoboDojo leaderboard), an
earlier version of our agent that supplied task knowledge as tools written for each task. After each failed episode,
an optimizer agent wrote or repaired the task's tools; its 769 rounds left 327 task commands in about 78,000 lines of
Python, which were then frozen. Re-run after freezing, these tools pass only 152 of the 420 development episodes on
which they were built (36%). Success rate / score on RoboDojo; TaskTools' row is RoboDojo's official evaluation (a
hidden seed, 50 episodes per task), HexaShell's rows are our own test runs ([Results](#-results)):
| System | Written per task | Overall | Generalization | Precision | Long-Horizon | Memory | Open |
|---|---|---|---|---|---|---|---|
| HexaShell-TaskTools (1.0) | 327 tool commands, ~78,000 lines of Python | 46.85 / 53.18 | 34.50 / 39.22 | 32.00 / 41.25 | 31.50 / 42.91 | 81.00 / 84.53 | 55.25 / 57.97 |
| HexaShell, no skills | nothing | 69.92 / 75.73 | 64.44 / 69.86 | 52.50 / 60.38 | 54.58 / 67.02 | 98.89 / 98.89 | 79.17 / 82.50 |
| HexaShell, skills | 34 skills, ~2,700 lines of text | **85.00 / 88.81** | **77.78 / 82.22** | **86.25 / 88.25** | **82.92 / 92.21** | **98.89 / 98.89** | **79.17 / 82.50** |
The ranking also holds on public episodes: on 420 episodes of seed 0, the frozen tools pass 157, HexaShell 284
without skills and 351 with them. The two versions also differ in the loop, perception, motion and prompt, so this
shows that general tools with short skills beat tools written for each task, not which change matters most.
This repository holds the code, prompts and skills behind the results below, and the adapter of the real robot with
two PiPER-X arms. Development records (episode records, analyses, earlier versions of the skills and prompts) are not
included.
## ๐ How it works