Skip to content
cccskills
FreePublished on GitHub

navigate-to

Drives a CARLA vehicle to a specific destination using navigation agents that plan routes, avoid obstacles, and obey traffic lights. Can also plan and draw a route between two points without moving the vehicle.

OriginalShow the original description

Drives a vehicle to a destination autonomously using CARLA's navigation agents (BasicAgent/BehaviorAgent/ConstantVelocityAgent), or plans a route between two points with GlobalRoutePlanner. The agent handles routing, obstacle avoidance and traffic-light obedience. Use when the user asks to "drive the ego to (x,y,z)", "navigate to the junction", "go to that location", "plan a route from A to B", or "make the car drive itself somewhere specific". Manual control is control-vehicle; autopilot roaming is control-traffic.

See how to install

Good for

  • Driving a vehicle to specified coordinates
  • Navigating to a chosen junction
  • Planning and drawing a route without driving
  • Trying cautious or aggressive driving behavior

Files included (5)

  • SKILL.md4.6 KB
  • references/navigation.md2.7 KB
  • scripts/check_env.sh2.2 KB
  • scripts/env.sh1.9 KB
  • scripts/navigate.py6.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Navigate a vehicle to a destination

Paths. scripts/… and references/… below are relative to the directory holding this SKILL.md. Your working directory is the user's project, not that directory, so prefix them with its absolute path or the command is not found.

Point-to-point autonomous driving. go drives the ego to a destination with a navigation agent that plans a route and follows it while avoiding obstacles and obeying (or ignoring, on request) traffic lights. route just plans the path.

This is distinct from the sibling driving skills: control-vehicle is manual actuator input; control-traffic is the Traffic Manager making cars roam; this drives one car to a specific place.

Instructions

Progress:
- [ ] Step 1: Check prerequisites (bash scripts/check_env.sh), clear FAILs (incl. agents import)
- [ ] Step 2: Have an ego (spawn-vehicles ego) and a destination (world-data/map-waypoints)
- [ ] Step 3: go (drive) — or route (plan only). Runs a tick loop until arrival/timeout

Commands need CARLA_HOST/CARLA_PORT + CARLA_ROOT from scripts/env.sh. Negative coordinates: use the = form (--to=-24,-57,0.6).

Step 1: Check prerequisites

bash scripts/check_env.sh

FAILs if the agents package isn't importable — set CARLA_ROOT to a carla checkout so PythonAPI/carla/agents is on PYTHONPATH.

Step 3: Navigate

source scripts/env.sh

# plan a route and draw it (no driving)
python3 scripts/navigate.py route --from=0,0,1 --to=-24,-57,1 --draw

# drive the ego there (BasicAgent, obeys lights)
python3 scripts/navigate.py go --to=-24,-57,1 --speed 25

# a cautious/aggressive style
python3 scripts/navigate.py go --to=-24,-57,1 --agent behavior --behavior aggressive

# ignore lights (e.g. an emergency run) and give it more time
python3 scripts/navigate.py go --to=100,20,1 --ignore-lights --seconds 120

go targets the ego (role hero) by default; --id/--filter for another vehicle. It blocks until the car arrives (agent.done()) or --seconds elapses.

Examples

Example 1: drive to a spot

User says: "drive the ego to (−24, −57)"

go --to=-24,-57,1. It plans, drives, and prints "arrived" on success.

Example 2: go to a resolved element

User says: "drive to the 4-way junction in the middle"

map-waypoints junctions --arms 4 → pick its centre → go --to=<centre>.

Example 3: just the route

User says: "what's the route from here to the depot?"

route --from=<here> --to=<depot> --draw → maneuver list + drawn path.

Troubleshooting

Problem: cannot import agents Cause: the agents package (checkout-only) isn't on PYTHONPATH. Solution: set CARLA_ROOT to a carla checkout; env.sh adds PythonAPI/carla.

Problem: it never arrives / stops at timeout Cause: unreachable destination, too little time, or stuck in traffic. Solution: verify the destination is on a road (map-waypoints waypoint), raise --seconds, or --ignore-vehicles to push through.

Problem: the car doesn't move in sync mode Cause: go ticks the world itself in sync mode; if another process also ticks, they fight. Solution: run one ticker. In async it just drives.

Problem: it stops at every red light forever Cause: dense traffic / lights. Solution: --ignore-lights (and/or the control-traffic-lights skill to free them).

Outputs

Server state — the vehicle drives to the destination (or a planned route + drawn overlay for route). No file. go reports arrival or timeout.

Detail (agent types, route planner, run-step loop, sync interaction) in references/navigation.md.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Add a message type to CARLA's native ROS 2 interface. Create its C++ data structure, serialization code for transmission, type identity hash, registration, and tests, with Docker-based hash calculation and build checks.

  • Adding a standard ROS 2 message type missing from CARLA
  • Defining a custom carla_msgs message
  • Investigating type-hash warnings
carla-simulator/carla14.5KUpdated Oct 18, 2026

Extend CARLA’s native ROS 2 interface to publish sensor data or receive vehicle commands. Covers topic implementation, registration, data connections, and verification, plus adding middleware, the communication layer used to exchange messages.

  • Publish obstacle sensor data to ROS 2
  • Add a topic for vehicle speed commands
  • Integrate another communication middleware
carla-simulator/carla14.5KUpdated Oct 18, 2026

Summarize ScenarioRunner results to see which scenarios passed and which checks failed. Compare runs before and after changes, or analyze recorded driving to produce measurements and plots of vehicle distance and deviation from the lane center.

  • Checking scenario pass and fail results
  • Comparing results before and after controller changes
  • Plotting vehicle distances from a recorded run
carla-simulator/carla14.5KUpdated Oct 18, 2026

audit-carla-docs

FreeSummary

Checks a local CARLA checkout for missing API documentation, outdated references, broken links, and pages absent from navigation. Produces a grouped Markdown report without building the project or running the simulator.

  • Reviewing documentation before a release
  • Finding missing or outdated API references
  • Checking broken links and navigation gaps
carla-simulator/carla14.5KUpdated Oct 18, 2026

bounding-boxes

FreeSummary

Read and display CARLA object bounding boxes, then project them onto a camera image as 2D rectangles. Export an annotated PNG and box coordinates in JSON for object detection annotation work.

  • Adding vehicle boxes to a camera image
  • Exporting box coordinates for detection annotations
  • Checking vehicle dimensions
carla-simulator/carla14.5KUpdated Oct 18, 2026

build-carla-ue4

FreeSummary

Builds CARLA's ue4-dev branch on Linux, producing the Unreal Engine 4.26 editor, server modules, and an installed Python client package. Fetches required content, optionally compiles native ROS 2 support, and verifies the build against a source-built server.

  • Building CARLA ue4-dev from source
  • Compiling CARLA with native ROS 2 support
  • Building the Python client for an existing environment
carla-simulator/carla14.5KUpdated Oct 18, 2026

See all skills by carla-simulator

Report a problem with this skill