Code Editing & Exploration
11 tools for navigating and modifying your workspace.glob
glob
| Parameter | Type | Required | Description |
|---|---|---|---|
pattern | string | Yes | Glob pattern (e.g. **/*.rs, src/**/mod.rs) |
path | string | No | Directory to search from (defaults to workspace root) |
grep
grep
| Parameter | Type | Required | Description |
|---|---|---|---|
pattern | string | Yes | Regular expression to match |
path | string | No | Directory or file to search |
glob_filter | string | No | Limit to files matching this glob |
case_insensitive | bool | No | Ignore case when matching |
spawn_entity in the Rust source.”read_file
read_file
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | Absolute path to the file |
offset | int | No | Starting line number |
limit | int | No | Number of lines to read (default 256) |
read_file_ast
read_file_ast
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | Absolute path to the file |
token_budget | int | No | Maximum tokens to return (default 1,000) |
edit_file
edit_file
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | File to edit |
old_content | string | Yes | Content to find and replace |
new_content | string | Yes | Replacement content |
write_file
write_file
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | Path to create or overwrite |
content | string | Yes | Full file content |
create_plan
create_plan
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | Where to save the plan |
content | string | Yes | Plan content |
title | string | Yes | Plan title |
bash
bash
| Parameter | Type | Required | Description |
|---|---|---|---|
command | string | Yes | Shell command to run |
timeout_ms | int | No | Timeout in milliseconds (default 120,000; max 300,000) |
repo_map
repo_map
| Parameter | Type | Required | Description |
|---|---|---|---|
path | string | No | Root directory (defaults to workspace) |
token_budget | int | No | Max tokens (default 1,000) |
file_patterns | list | No | Glob patterns to include |
open_file
open_file
| Parameter | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | Absolute path to the file |
line | int | No | Line number to scroll to |
task
task
| Parameter | Type | Required | Description |
|---|---|---|---|
description | string | Yes | What the sub-agent should accomplish |
prompt | string | Yes | Detailed instructions |
mode | string | Yes | "explore", "search", or "edit" |
model | string | No | Model override |
explore and search modes use Haiku for speed. edit mode uses Sonnet for accuracy.Returns: Sub-agent result.Example prompt: “Search the codebase for how MAVLink heartbeats are parsed.”Simulation Lifecycle
5 tools for launching, monitoring, and querying simulation status.start_simulation
start_simulation
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | x500, iris, rc_cessna, standard_vtol, or r1_rover |
world | string | No | default, baylands, warehouse, or a Gazebo Fuel name |
vehicle_count | int | No | Number of vehicles (1—10) |
workspace_path | string | No | Host path to mount into the container |
list_simulations
list_simulations
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | No | Filter by vehicle model |
world | string | No | Filter by world name |
container_name, readiness_state, and metadata.Example prompt: “Are there any simulations running right now?”wait_for_simulation_ready
wait_for_simulation_ready
| Parameter | Type | Required | Description |
|---|---|---|---|
container_name | string | Yes | Container to wait on |
target_state | string | No | Default ReadyToArm |
timeout_secs | int | No | Default 60, max 120 |
Launching > BridgeConnected > WorldLoaded > Rendering > AutopilotConnected > ReadyToArm > FullyOperational.Returns: Final readiness state when target is reached, or timeout error.Example prompt: “Wait until the simulation is ready to arm.”get_readiness_details
get_readiness_details
| Parameter | Type | Required | Description |
|---|---|---|---|
container_name | string | No | Container to query (defaults to active) |
get_simulation_state
get_simulation_state
| Parameter | Type | Required | Description |
|---|---|---|---|
container_name | string | No | Container to query (defaults to active) |
Flight Control
6 tools for MAVLink-based vehicle command. All send MAVLinkCOMMAND_LONG messages to PX4.
flight_arm
flight_arm
MAV_CMD_COMPONENT_ARM_DISARM (400).| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
arm | bool | Yes | true to arm, false to disarm |
flight_takeoff
flight_takeoff
MAV_CMD_NAV_TAKEOFF (22).| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
altitude_meters | float | No | Altitude in meters, 1—120 (default 5) |
flight_land
flight_land
MAV_CMD_NAV_LAND (21).| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
flight_goto
flight_goto
MAV_CMD_DO_REPOSITION (192).| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
x | float | Yes | East position (meters) |
y | float | Yes | North position (meters) |
z | float | Yes | Up position (meters) |
flight_set_mode
flight_set_mode
MAV_CMD_DO_SET_MODE (176).| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
mode | string | Yes | Flight mode name |
MANUAL, ALTCTL/ALTITUDE, POSCTL/POSITION, OFFBOARD, STABILIZED/STABILIZE, HOLD/LOITER, MISSION, RTL/RETURN, LAND, TAKEOFF, GUIDED (maps to POSCTL).Example prompt: “Switch to position hold mode.”flight_return_to_launch
flight_return_to_launch
MAV_CMD_NAV_RETURN_TO_LAUNCH (20).| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
Simulation Control
3 tools for playback, camera, and in-container command execution.sim_control
sim_control
| Parameter | Type | Required | Description |
|---|---|---|---|
action | string | Yes | pause, resume, step, reset, or set_speed |
frames | int | No | Number of frames to advance (for step) |
multiplier | float | No | Speed multiplier (for set_speed) |
camera_control
camera_control
| Parameter | Type | Required | Description |
|---|---|---|---|
action_type | string | Yes | set_preset, orbit, set_distance, look_at, or follow_entity |
preset | string | No | front, back, left, right, top, bottom, isometric |
azimuth_delta | float | No | Horizontal orbit delta (for orbit) |
elevation_delta | float | No | Vertical orbit delta (for orbit) |
distance | float | No | Camera distance (for set_distance) |
x, y, z | float | No | Target point (for look_at) |
entity_name | string | No | Entity to track (for follow_entity) |
sim_exec
sim_exec
| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target container |
command | string | Yes | Shell command to execute |
timeout_ms | int | No | Timeout (default 120,000; max 300,000) |
workdir | string | No | Working directory inside the container |
ros2 topic list inside the simulation container.”Background Tasks
6 tools for running long operations without blocking the conversation.sim_exec_background
sim_exec_background
| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target container |
command | string | Yes | Shell command to execute |
timeout_ms | int | No | Timeout (max 600,000) |
workdir | string | No | Working directory inside the container |
task_id immediately. Use check_background_task or wait_for_any to get results.Example prompt: “Run the MAVSDK waypoint mission script in the background.”start_background_task
start_background_task
| Parameter | Type | Required | Description |
|---|---|---|---|
kind | string | Yes | WaitSimulationReady, AnalyzeVideo, or BashExecution |
notify_on_complete | bool | No | Whether to notify when done |
task_id.Example prompt: “Start waiting for the simulation to be ready in the background.”wait_for_any
wait_for_any
| Parameter | Type | Required | Description |
|---|---|---|---|
task_ids | list | Yes | Task IDs to wait on |
timeout_ms | int | No | Timeout (default 60,000; max 300,000) |
check_background_task
check_background_task
| Parameter | Type | Required | Description |
|---|---|---|---|
task_id | string | Yes | Task to check |
block | bool | No | Block until complete |
timeout_ms | int | No | Timeout when blocking |
Pending, Running, Complete, Failed, Cancelled.Returns: Current state and output if complete.Example prompt: “Is the waypoint mission script still running?”cancel_background_task
cancel_background_task
| Parameter | Type | Required | Description |
|---|---|---|---|
task_id | string | Yes | Task to cancel |
list_background_tasks
list_background_tasks
Data Exploration
5 tools for inspecting live simulation data.browse_topics
browse_topics
| Parameter | Type | Required | Description |
|---|---|---|---|
category | string | No | Filter: Image, PointCloud, JointState, Telemetry, Transform, Marker, Annotation, Log, LaserScan, Other |
get_telemetry
get_telemetry
get_telemetry_samples
get_telemetry_samples
| Parameter | Type | Required | Description |
|---|---|---|---|
channel_path | string | Yes | Channel name (supports suffix matching, e.g. position.z) |
max_samples | int | No | Max data points (default 200, max 1,000) |
query_scene_graph
query_scene_graph
| Parameter | Type | Required | Description |
|---|---|---|---|
path_prefix | string | No | Filter to a subtree (e.g. /world/default/x500_0) |
entity_id, path, and parent_path.Example prompt: “Show me all entities under the x500 model.”query_tf_tree
query_tf_tree
| Parameter | Type | Required | Description |
|---|---|---|---|
source_frame | string | No | Source coordinate frame |
target_frame | string | No | Target coordinate frame |
time | float | No | Timestamp for the lookup |
Vision & Recording
5 tools for visual capture and AI-powered analysis.capture_screenshot
capture_screenshot
BinaryContent.Example prompt: “Take a screenshot of the viewer.”analyze_screenshot
analyze_screenshot
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | What to look for in the image |
start_recording
start_recording
| Parameter | Type | Required | Description |
|---|---|---|---|
max_duration_secs | int | No | Maximum duration (default 30, max 30) |
stop_recording
stop_recording
analyze_video
analyze_video
| Parameter | Type | Required | Description |
|---|---|---|---|
video_path | string | Yes | Path to the video file |
prompt | string | Yes | What to analyze |
background | bool | No | Run analysis as a background task |
Scene Authoring
3 tools for modifying the simulation scene at runtime.spawn_entity
spawn_entity
| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
model_id | string | Yes | Gazebo model identifier |
entity_name | string | Yes | Name for the spawned entity |
x, y, z | float | Yes | Spawn position (meters) |
remove_entity
remove_entity
| Parameter | Type | Required | Description |
|---|---|---|---|
simulation_id | string | Yes | Target simulation |
entity_id | string | Yes | Entity to remove |
get_followable_entities
get_followable_entities
Task Management
4 tools for structured task tracking with dependency support.task_create
task_create
| Parameter | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Short task description |
description | string | No | Detailed requirements |
blocked_by | list | No | IDs of tasks that must complete first |
task_update
task_update
| Parameter | Type | Required | Description |
|---|---|---|---|
task_id | int | Yes | Task to update |
status | string | No | pending, in_progress, completed, or cancelled |
title | string | No | New title |
description | string | No | New description |
result | string | No | Completion result or notes |
task_list
task_list
task_get
task_get
| Parameter | Type | Required | Description |
|---|---|---|---|
task_id | int | Yes | Task to retrieve |
Web
1 tool for fetching external content.fetch
fetch
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | Yes | URL to fetch |
max_length | int | No | Max content length (default 5,000) |
start_index | int | No | Pagination offset (default 0) |
raw | bool | No | Return raw response (for JSON APIs); otherwise HTML is converted to Markdown |
Safety & Security
- User Approval
- Execution Boundaries
- Model Tiers
| Tool | Approval Type |
|---|---|
edit_file | Diff shown for review |
write_file | Full content shown for review |