VIA: Visual Interface Agent for Robot Control

Your coding/computer-use agent is secretly a robot control agent.

  1. Hengyuan Hu
  2. Priya Sundaresan
  3. Jensen Gao
  4. Dorsa Sadigh
  1. Stanford University

Abstract

Core Idea

Result Highlights

Note

VIA

VIA system overview: an agent (Claude Code) operates a browser-based 3D robot-control UI through MCP tools; the UI commands the robot environment and reconstructs the scene from RGB-D cameras.
The agent observes the interface by taking a screenshot of the whole UI, and acts through MCP tools rendered as clicks, drags, and keystrokes on it. The tools move a blue target gripper, the "digital twin" of the real gripper: the agent steers the target gripper to a desired pose (setting a waypoint), then calls execute_waypoint to invoke a simple PI (Proportional-Integral) controller that moves the real gripper to that pose. This observe-act loop repeats until the agent calls end_episode. The UI reconstructs the 3D scene from RGB-D cameras. The MCP Tools section below covers the documentation and illustrations of all available tools.

Videos showing episodes of VIA with Claude Code Fable completing different tasks zero-shot. The agent completes a task via a loop of observation, thinking, and finally a tool call that returns a new observation, until it reaches a terminal condition.

Evaluation

We use a suite of six tasks drawn from different benchmarks, together covering diverse manipulations.

The six evaluation tasks: for each task, the top panel shows an example initial state and the bottom panel the final state of a successful VIA rollout.
The six evaluation tasks. Object placements are randomized across seeds.
Task descriptions
  • Stack: Pick up a red cube and place it on a larger green cube, from robosuite.
  • Turn on stove: Turn on a stove by rotating its knob, from LIBERO-Goal.
  • Open drawer: Open the middle drawer of a three-drawer cabinet, from LIBERO-Goal.
  • Put bowl on plate: Pick up a bowl and place it on a plate, from LIBERO-Goal. This demands physical reasoning and precision, as the bowl must be grasped by pinching its side wall and placed at the exact center of the plate to succeed.
  • Rainbow: Arrange seven randomly placed colored blocks into a rainbow, a task we created. This tests long-horizon planning and execution.
  • T-block: Build a T-shape with three blocks of the same size: one blue block on the bottom and two green blocks resting directly on top of it, side by side; from BuilderBench, re-implemented. This requires both solving a physics puzzle and precise manipulation.

We evaluate VIA using two families of agents:

The reasoning effort is set to xhigh for all agents.

On top of a shared system prompt on how to use the interface, we consider two variants of task-specific prompts for each task:

We disable memory read/write for the agents so that they cannot gain cross-episode experience.

Success rate
Task CC-Opusminimal CC-Fableminimal Codex-5.5minimal Codex-5.6-Solminimal CC-Opusdetailed Codex-5.5detailed
Stack100%100%100%100%
Turn on stove100%100%90%90%100%90%
Open drawer70%90%30%30%100%30%
Put bowl on plate60%100%40%80%100%30%
Rainbow80%100%60%50%
T-block10%40%40%20%
Overall70%88%60%62%100%50%

"—" marks combinations we do not evaluate; bold marks the best result per task within each prompt variant; the Overall row averages each column over its evaluated tasks.

Tool Call Efficiency and Cost
Mean tool calls per successful episode
Task CC-Opusminimal CC-Fableminimal Codex-5.5minimal Codex-5.6-Solminimal CC-Opusdetailed Codex-5.5detailed
Stack28402632
Turn on stove363933314332
Open drawer473821334630
Put bowl on plate595378664857
Rainbow159143176217
T-block818952122
Overall686764844640
Estimated API cost per successful episode (USD)
Task CC-Opusminimal CC-Fableminimal Codex-5.5minimal Codex-5.6-Solminimal CC-Opusdetailed Codex-5.5detailed
Stack$2.4$7.3$1.5$1.6
Turn on stove$4.1$8.9$2.5$2.2$5.7$3.3
Open drawer$7.4$7.5$1.4$1.1$6.5$1.7
Put bowl on plate$7.5$11.8$8.1$2.9$5.0$4.9
Rainbow$26.0$36.1$23.4$6.1
T-block$9.7$19.2$6.1$10.5
Overall$9.5$15.1$7.2$4.1$5.7$3.3

CC costs are read directly from each episode's session cost, while Codex costs are estimated from token usage and listed API pricing.

Task Rollouts