Skip to content
cccskills
FreePublished on GitHub

document-carla-feature

Fill documentation gaps identified by a CARLA documentation audit, following the project's writing style. Work through one category at a time, assess which findings deserve entries, update source files, and report changes and skipped findings.

OriginalShow the original description

Writes the missing CARLA documentation that the audit found — Python API entries in PythonAPI/docs/*.yml, sensors in ref_sensors.md, catalogue actors, broken links and nav entries, and the images, animations and diagrams the pages need — one category at a time, in CARLA's house style. Use when the user asks to "document this feature", "write the docs for X", "fix the audit findings", "update the doc images / screenshots / catalogue pictures", or names a category such as "the Python API part".

See how to install

Good for

  • Add missing Python API documentation
  • Expand sensor reference documentation
  • Review outdated API entries for renaming or removal
  • Address audit findings and explain skipped items

Files included (55)

  • SKILL.md5.0 KB
  • references/changelog.md7.3 KB
  • references/images.md16.5 KB
  • references/python_api.md5.6 KB
  • references/sensors.md2.5 KB
  • references/style.md2.1 KB
  • scripts/check_env.sh1.3 KB
  • scripts/env.sh1.2 KB
  • scripts/images/add_captions.py1.1 KB
  • scripts/images/anim.py1.6 KB
  • scripts/images/blocked.py1.1 KB
  • scripts/images/channels.py1.3 KB
  • scripts/images/chase.py1.5 KB
  • scripts/images/check_images.py2.4 KB
  • scripts/images/crash.py2.9 KB
  • scripts/images/diag_arch.py3.3 KB
  • scripts/images/diag_build.py1.4 KB
  • scripts/images/diag_coords.py3.4 KB
  • scripts/images/diag_recorder_frames.py3.2 KB
  • scripts/images/diag_recorder.py4.6 KB
  • scripts/images/diag_sensor_pipeline.py1.7 KB
  • scripts/images/diag_sync.py3.2 KB
  • scripts/images/diag_tm_arch.py5.3 KB
  • scripts/images/drive.py6.7 KB
  • scripts/images/gallery.py5.0 KB
  • scripts/images/grid.py899 B
  • scripts/images/grids_matrix.py1.0 KB
  • scripts/images/lights.py2.3 KB
  • scripts/images/looks.py4.9 KB
  • scripts/images/make_gallery.py3.6 KB
  • scripts/images/map_plot.py2.1 KB
  • scripts/images/mapshots.py1.9 KB
  • scripts/images/montage.py1.0 KB
  • scripts/images/odr.py2.2 KB
  • scripts/images/physconv.py1.6 KB
  • scripts/images/plot_physconv.py1.8 KB
  • scripts/images/plot_telemetry.py1.7 KB
  • scripts/images/relayout_images.py2.8 KB
  • scripts/images/render_pc.py4.4 KB
  • scripts/images/routes_plot.py2.4 KB
  • scripts/images/scene.py4.7 KB
  • scripts/images/skeleton.py3.6 KB
  • scripts/images/snippets.py5.0 KB
  • scripts/images/still.py1.1 KB
  • scripts/images/strip.py1004 B
  • scripts/images/svgkit.py3.9 KB
  • scripts/images/telemetry_run.py1.5 KB
  • scripts/images/tl_boxes.py2.0 KB
  • scripts/images/tm_paths.py3.9 KB
  • scripts/images/townshots.py1.5 KB
  • scripts/images/traffic.py5.0 KB
  • scripts/images/ue.py2.2 KB
  • scripts/images/wp_shots.py2.2 KB
  • scripts/images/xwdgrab.py646 B
  • scripts/yml_target.py8.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Document a CARLA feature

The writing half of the documentation programme. audit-carla-docs decides what is missing and writes Docs/audit_carla_docs.md; this skill writes it.

Paths. scripts/… and references/… are relative to the directory holding this SKILL.md, not to the user's working directory.

One category at a time

The audit's signals are independent, and so is the work. Each category below touches its own files, so one person can take one category, or several agents can run all of them at once without colliding. Never work two categories in one pass — the rules differ and the review gets muddled.

categoryaudit signalfiles it editsstatus
python-apibinding, stalePythonAPI/docs/*.yml, then regeneratereferences/python_api.md
changelogchangelogCHANGELOG.mdreferences/changelog.md
sensorssensorDocs/ref_sensors.mdreferences/sensors.md
cataloguecatalogueDocs/catalogue_*.mdnot written yet
linkslinkthe page holding the linknot written yet
navorphanmkdocs.ymlnot written yet
imagesUE4-era or missing imagesDocs/img/<page>/, Docs/img/catalogue/references/images.md

Instructions

Progress:
- [ ] Step 1: Check prerequisites (bash scripts/check_env.sh)
- [ ] Step 2: Pick ONE category and read its reference in full
- [ ] Step 3: Read the matching section of Docs/audit_carla_docs.md
- [ ] Step 4: Triage — not every finding should be documented
- [ ] Step 5: Write the entries, following references/style.md
- [ ] Step 6: Remove what no longer exists, checking first that it was not renamed
- [ ] Step 7: Verify, and report what you skipped and why

Step 4 is not optional. The audit reports what it sees, not what deserves an entry; it has no way to tell a public API from binding plumbing. Each reference lists the exemptions for its category. Say in the report which findings you skipped and why — a silent skip reads as an oversight later.

Step 5 always obeys references/style.md, which is shared by every category: what a CARLA doc sentence says, and what it never says.

Step 6 removes, it does not deprecate. The reference describes what exists now, so a name the code no longer has is deleted outright — no tombstone and no "removed in" marker. Check it was not simply renamed first; most of the time it was, and then the entry moves instead of going.

Gotchas

  • Docs/python_api.md is generated. Editing it directly is lost on the next regeneration, and the audit will not notice.
  • A finding is a candidate, not an instruction. Documenting an internal name makes the reference worse, not better.
  • Re-run the audit after a pass. The counts moving is the only evidence the work landed.
  • Pages written for UE4 / 0.9.x (restored or merged from older branches) repeat the same stale facts. Grep for them and check each against the tree: make launch|import|PythonAPI|package|rebuild (now cmake --build Build/Release --target ... and Util/Tools/Import.py), UE4_ROOT (now CARLA_UNREAL_ENGINE_PATH), Unreal 4.26/4.27 and Visual Studio 2019 (5.8 and 2022), .egg files (wheels), PythonAPI/carla/source (PythonAPI/carla/src), boost::shared_ptr in bindings (std::shared_ptr), sensors overriding Tick (ASensor::Tick is final: override PostPhysTick) and Stream.Send (SerializeAndSend), CarlaUE4 paths and ../img/ links. Content paths move too: list the folder before writing one.
  • Generators that need a server (bp_doc_gen.py, catalogue_doc_gen.py) can be broken for months without anyone noticing; run them after editing them. ActorAttribute.as_str() only works on String attributes.

Output

Edited source files, and a report naming what was written, what was skipped and why. Nothing is committed.

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 20, 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 20, 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 20, 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 20, 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 20, 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 20, 2026

See all skills by carla-simulator

Report a problem with this skill