open-carla-pr
Skill15k starsChanged 20 months agoMITView on GitHub
Takes a contribution to CARLA on UE 5.8 from first contact to merged-ready pull request against ue58-dev — reporting a bug or requesting a feature as a GitHub issue from the repo's templates, opening a GitHub Discussion to agree a CI workflow change or a large feature with the maintainers before coding, then branch naming, syncing with the base, reviewing the diff against the contribution rules (CHANGELOG entry, no unagreed CI workflow changes, no hand-edited generated docs, whitespace, C++ exceptions, pylint, tests that are not weakened), the local build and tests CI does not run, and filling .github/pull_request_template.md before `gh pr create`. Use when the user asks to "open a PR", "open an issue", "report a bug in CARLA", "request a feature", "open a discussion", "propose a CI workflow", "ask the maintainers before coding", "contribute this to CARLA", "prepare my branch for review", "fill the PR template", "is my change ready to merge", or "what does CARLA require in a pull request".
- Commits and pushes
We split this skill into the rules it gives an agent
17 rules. About 0 are common, 9 are distinctive, and 8 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
8
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 30
Not every request ends in a PR.
- Very specific: line 66
Search with several phrasings: Use 2–4 short queries, not one long sentence: the API or sensor name (set_imu_sensor_gravity, …
- Distinctive: line 137
Look at what the PR will actually contain, not only at what you meant to change:
- Very specific: line 150
One topic, nothing stray: Every file in --name-status belongs to this change.
- Very specific: line 154
CHANGELOG: If the change is visible to a user (anything under LibCarla/, PythonAPI/carla/, PythonAPI/examples/, Unreal/, Ros2Native/, …
- Distinctive: line 173
If one of them was edited by hand, revert it, edit the source, and regenerate.
- Distinctive: line 185
Do not "fix" whitespace in lines you did not otherwise touch.
- Distinctive: line 210
Every hit needs a justification you can write in the PR's Tests section.
- Very specific: line 211
Docs: If behaviour or API changed, the docs page that describes it changes too.
- Very specific: line 241
If the tree is not configured yet, or a target fails, follow [[build-carla-ue58]].
- Distinctive: line 268
Commit messages: an imperative subject line that says what changed ("Fix wheel spin when Chaos is not simulating"), not "fixes" or "final …
- Very specific: line 279
Write the body to a scratch file.
- Distinctive: line 318
Only continue if it found nothing that covers the report.
- Very specific: line 346
Before filing, check it really is a bug: read the docs page and the FAQ (Docs/build_faq.md).
- Distinctive: line 355
Write the body to a scratch file.
- Very specific: line 376
Search first. This is mandatory: Run Check for duplicates. For a CI proposal, also search for the workflow's subject (workflow, CI, the job …
- Distinctive: line 381
Get the repository id and the categories: Do not hardcode the category names.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Contribute to CARLA: issues, discussions and pull requests (ue58-dev)
Paths.
references/…below is relative to the directory holding this SKILL.md. Every command runs from the root of the CARLA checkout.
A pull request to CARLA is reviewed against written rules —
Docs/cont_contribution_guidelines.md,
Docs/cont_coding_standard.md and
.github/pull_request_template.md
and the issue templates under .github/ISSUE_TEMPLATE/.
references/rules.md condenses them. This skill walks a
branch through them before it is opened, because the PR CI only builds and
runs the LibCarla tests: almost every rule below is checked by a human
reviewer, after a round trip, or not at all.
Everything that reaches GitHub is public and outward-facing: an issue, a
discussion, a git push, a PR. Draft locally, show the user the title and body
(or the diff summary), and send only after they confirm.
Not every request ends in a PR. Step 0 picks the venue. A bug report or a question stops at its issue or discussion. A PR whose change needs agreement first waits for it.
Instructions
Progress:
- [ ] Step 0: Pick the venue — issue, discussion, or straight to a PR
- [ ] Step 1: Confirm the target — ue58-dev tree, GitHub (not content) change
- [ ] Step 2: Branch from an up-to-date ue58-dev, named user/topic
- [ ] Step 3: Review the diff against the rules, fix every finding
- [ ] Step 4: Build and run the tests CI will not run
- [ ] Step 5: Commit and push (after the user confirms)
- [ ] Step 6: Fill the PR template, open the PR (after the user confirms)
- [ ] Step 7: Watch the checksStep 0: Pick the venue
| The user has… | Venue | Before coding? |
| A bug (crash, wrong result, regression) | Issue, bug report — Opening an issue | Yes. A fix PR then says Fixes #<n> |
| An idea for a new feature | Issue, feature request — Opening an issue | Yes |
| A question, or "is this a bug or am I using it wrong?" | Discussion — Opening a discussion | Yes. Issues are for bugs and features, not support |
A change to .github/workflows/ (new or modified CI) | Discussion, required — Opening a discussion | Yes, agreed before the PR. Unagreed workflow PRs are not merged |
| A large feature, an API change, work that may overlap someone else's, or no idea which module it belongs in | Discussion (or Discord) to agree the approach | Strongly recommended |
| A small, self-contained fix or improvement | Straight to Step 1 | — |
Check for duplicates (mandatory before any issue or discussion)
A duplicate is closed and points elsewhere. The user loses the context, the maintainers spend triage time, and the original thread loses the +1 that would have raised its priority. Never create an issue or a discussion without running this search and showing the user what it found.
- Search with several phrasings. Use 2–4 short queries, not one long
sentence: the API or sensor name (
set_imu_sensor_gravity,sensor.camera.depth), the exact error text (quoted, without paths or numbers), the map or component, and a synonym of the symptom. Search open and closed issues, pull requests and discussions:
Withoutgh issue list --repo carla-simulator/carla --state all --limit 20 --search "<terms>" gh pr list --repo carla-simulator/carla --state all --limit 10 --search "<terms>" gh api graphql -f query='query($q:String!){search(query:$q,type:DISCUSSION,first:15){nodes{... on Discussion{number title url closed answer{url}}}}}' \ -f q='repo:carla-simulator/carla <terms>'gh, use the same queries in the web search athttps://github.com/carla-simulator/carla/issues?q=<terms>andhttps://github.com/carla-simulator/carla/discussions?discussions_q=<terms>. - Read the candidates; do not judge by the title. Open the plausible hits
(
gh issue view <n> --repo carla-simulator/carla --comments, or the discussion URL). Check the version and branch they were reported on. A UE4-era issue may not apply toue58-dev, and vice versa. Decide, and tell the user which case it is, with the links:
Found Do instead of creating Open issue or discussion about the same thing Add to it: a comment with the new information (your Setup, a smaller repro, a log) or a 👍 reaction. Do not post "+1" comments. A fix PR then uses its Fixes #<n>Closed issue, fixed Check whether the fix is in the user's tree ( git log --oneline --grep '#<n>', orgit merge-base --is-ancestor <fix commit> HEAD). If it is not, the answer is to update. If it is and the bug is back, open a new issue that links the old one as a regressionClosed as "not a bug" / answered discussion That answer is the reply. Show it to the user Open PR already addressing it Point the user to it (review, test it) instead of a parallel issue or PR Related but different Create the new one, and link the related threads in its body ( Related to #<n>)Nothing relevant Create it, and say in the body what you searched for, so a triager does not repeat it
Report the queries you ran and the result to the user before drafting anything.
Step 1: Confirm the target
git rev-parse --abbrev-ref HEAD
ls CMakePresets.json Unreal/CarlaUnreal >/dev/null && echo "UE5 CMake tree"
git remote -v | grep -E 'carla-simulator/carla(\.git)? \(fetch\)'- The tree must be the UE 5.8 one:
CMakePresets.jsonandUnreal/CarlaUnrealexist, noMakefile. The base branch isue58-dev. A UE4 change targetsue4-devwith different rules — stop and tell the user this skill does not cover it. - Note which remote points at
carla-simulator/carla; it is calledUPbelow. A maintainer's clone often has it asoriginand pushes branches there directly. An external contributor has it asupstreamandoriginis their fork. Do not assume the name. - Assets are not GitHub PRs. Maps, vehicles, walkers and props live in the
Bitbucket content repository (
Unreal/CarlaUnreal/Content/Carla, branchue58-dev-carla) and are reviewed by the art team. Only the code, config and docs that go with them belong in this PR.
Step 2: Branch from an up-to-date ue58-dev
UP=origin # or upstream — the remote found in Step 1
git fetch "$UP"
git switch -c <github-user>/<short_topic> "$UP/ue58-dev" # new work
# existing work on a branch:
git rebase "$UP/ue58-dev"- The branch name is
username/name_of_the_contribution. Never commit onue58-devitself. If the work is already there, create the branch from the currentHEAD, then reset localue58-devto$UP/ue58-dev. - Rebase before the PR is opened. Once reviewers have commented, merge
$UP/ue58-devinto the branch instead, so the commits they reviewed are not rewritten under them by a force-push.
Step 3: Review the diff against the rules
Look at what the PR will actually contain, not only at what you meant to change:
BASE=$(git merge-base HEAD "$UP/ue58-dev")
git status --short # uncommitted / untracked files
git diff --stat "$BASE" # what the PR will carry
git diff --name-status "$BASE"Go through every check. Each one cites the rule it enforces in references/rules.md.
- One topic, nothing stray. Every file in
--name-statusbelongs to this change. Watch for untracked files in the root, such as screenshots,.logfiles,Build*folders or editor settings. They get committed bygit add -A. Stage paths explicitly. - CHANGELOG. If the change is visible to a user (anything under
LibCarla/,PythonAPI/carla/,PythonAPI/examples/,Unreal/,Ros2Native/,Util/,CMake/, or new skills/docs pages),CHANGELOG.mdmust change, with an entry under## LATEST Changesin the right### New features/### Extensions/### Bug fixes→####subsection. Match the house format:* **Bold lead** — what it does, and what the user does with it.git diff "$BASE" -- CHANGELOG.md - CI workflows. Any change under
.github/workflows/needs a maintainers' discussion agreed before the PR (GitHub Discussions or Discord), linked in the PR body. Without one, the change is not merged. If none exists, stop and open a discussion first.git diff --name-only "$BASE" -- .github/workflows/ - Generated files.
Docs/python_api.mdis generated fromPythonAPI/docs/*.ymlbyPythonAPI/docs/doc_gen.py.Docs/bp_library.mdcomes frombp_doc_gen.py, andDocs/catalogue_*.mdfromcatalogue_doc_gen.py. If one of them was edited by hand, revert it, edit the source, and regenerate.
A changedgit diff --name-only "$BASE" -- Docs/python_api.md Docs/bp_library.md 'Docs/catalogue_*.md' git diff --name-only "$BASE" -- 'PythonAPI/docs/*.yml'.ymlwith no regeneratedpython_api.mdis the opposite mistake: regenerate it and commit both. - Whitespace. Spaces, not tabs; no trailing whitespace.
Do not "fix" whitespace in lines you did not otherwise touch. It buries the real change in the diff.git diff --check "$BASE" git diff -U0 "$BASE" | grep -nP '^\+(?!\+\+).*\t' - C++.
throwis forbidden; usecarla::throw_exception. Atry/catchmust sit inside#ifndef LIBCARLA_NO_EXCEPTIONS. Builds must have no warnings (ENABLE_ALL_WARNINGSis on by default).git diff -U0 "$BASE" -- '*.cpp' '*.h' | grep -nE '^\+.*\b(throw|try|catch)\b' | grep -v throw_exception - Python. Pylint clean with the repo config. Code ≤ 120 columns,
comments ≤ 80.
Pre-existing warnings in a file you touched are not yours to fix in this PR, but anything you introduce is.git diff --name-only --diff-filter=AM "$BASE" -- '*.py' \ | xargs -r python3 -m pylint --rcfile=PythonAPI/.pylintrc - Tests. A new test must assert behaviour and fail on a regression. A test
that only checks that something imports or spawns is rejected, as is one
that duplicates existing coverage. A modified test must not be weakened:
no removed asserts, no wider tolerances, no new skips. If the expected
behaviour really changed, the PR body says why.
Every hit needs a justification you can write in the PR's Tests section.git diff "$BASE" -- PythonAPI/test LibCarla/source/test \ | grep -nE '^-.*(assert|EXPECT_|ASSERT_)|^\+.*(skip|DISABLED_|assertAlmostEqual.*(delta|places))' - Docs. If behaviour or API changed, the docs page that describes it
changes too. With docs changes, build them strictly. A missing anchor only
prints an
INFOline, so grep for it:
For writing docs, see [[document-carla-feature]].pip3 install -r Docs/requirements.txt python3 -m mkdocs build --strict 2>&1 | grep -E 'WARNING|ERROR|does not contain an anchor' - Docs-only PRs skip CI.
ue5_pr.ymlhaspaths-ignoreforDocs/**,**/*.md,mkdocs.yml,docs_hooks.pyandPythonAPI/docs/**. If every changed file matches, no build runs, and the mkdocs build above is the only check the PR gets.
Report the findings to the user as a short list (rule → file → fix) and fix them before going on.
Step 4: Build and run the tests CI will not run
CI on a PR to ue58-dev configures the Release preset with
-DENABLE_ROS2=ON -DBUILD_LIBCARLA_TESTS=ON. It builds the client, the Python
API, the server and the package, and it runs the two LibCarla test binaries.
It runs no Python tests. Skip this step only for docs-only PRs.
cmake --build Build/Release --target carla-client carla-python-api carla-server
cmake --build Build/Release --target libcarla_test_server libcarla_test_client
./Build/Release/LibCarla/libcarla_test_server
./Build/Release/LibCarla/libcarla_test_clientIf the tree is not configured yet, or a target fails, follow
[[build-carla-ue58]]. The OpenDRIVE tests need Build/test-content (see
Docs/dev_testing.md).
Packaging locally is not strictly required, but it is strongly
recommended. CI builds the package too, and failures that only appear
there cost a full CI round trip each: cook errors, assets missing from the
cook, and code that compiles in the editor but not in a shipping build.
Anything that touches Unreal/, content references, cook or config files is
at risk. Build the package with [[package-carla-ue58]] before opening the PR,
and smoke-test against the packaged server rather than the editor. If you
skip it, say so under Possible Drawbacks.
For anything touching the server or the Python API, run the smoke tests against a dedicated server on port 3654 (see [[run-carla-ue58-server]]):
cd PythonAPI/test
python3 test_connection.py -p 3654 --timeout=60.0
python3 -m nose2 -v $(cat smoke_test_list.txt)Record what you ran and on what: the PR body needs it, and "tests pass" without a platform and a list is not an answer.
Step 5: Commit and push
- Commit messages: an imperative subject line that says what changed ("Fix wheel spin when Chaos is not simulating"), not "fixes" or "final changes". Follow the repository's commit attribution rules.
- Show the user
git log --oneline "$BASE"..HEADandgit diff --stat "$BASE", and push only after they confirm:git push -u origin HEAD # origin = carla-simulator/carla (maintainer) or the fork
Step 6: Fill the PR template and open the PR
Write the body to a scratch file. Keep the template's #### headings in
order, and drop its leading <!-- … --> checklist comment, which renders as
nothing. Fill each section from evidence:
| Section | Where it comes from |
| Description | What changed and why, from git log "$BASE"..HEAD and the diff. Name the user-visible effect first, then the mechanism. Mention new API, options, and docs pages. |
| Fixes # | The issue number, if any (from Step 0's search or Opening an issue). Fixes #<n> closes it on merge. Check it with gh issue view <n> --repo carla-simulator/carla. Otherwise delete the line, never leave Fixes # empty. |
| Where has this been tested? | Platform: lsb_release -ds (or OS name). Python: python3 --version of the interpreter that ran the tests. Unreal Engine: 5.8 (from $CARLA_UNREAL_ENGINE_PATH/Engine/Build/Build.version). |
| Tests | Each new or modified test, what it asserts, and which regression it catches. List what you ran in Step 4. Write None only if no tests apply, and say why. |
| CI workflows | None, unless .github/workflows/ changed: then the URL of the agreed discussion from Opening a discussion. |
| Possible Drawbacks | Behaviour changes, performance cost, API breaks, assets or content that must land at the same time, things not tested (e.g. Windows). |
Show the title and body to the user. After they confirm:
gh pr create --repo carla-simulator/carla --base ue58-dev \
--head <owner>:<branch> --title "<imperative summary>" --body-file <scratch>/pr_body.md--head is <branch> when the branch is on carla-simulator/carla itself,
and <fork-owner>:<branch> from a fork. Add --draft if the user wants early
feedback before it is complete. Give the user the PR URL that gh prints.
Step 7: Watch the checks
gh pr checks <number> --repo carla-simulator/carla --watchThe UE5-PR build is long: it builds the client, the Python API, the server
and the package. On a red check, read the failing job's log
(gh run view <run-id> --log-failed) and fix the cause on the branch. Do not
re-run it hoping for a pass. A docs-only PR shows no UE5-PR check at all
(Step 3, item 10).
Opening an issue
First run Check for duplicates. Only continue if it found nothing that covers the report.
The repository has two templates, .github/ISSUE_TEMPLATE/bug_report.md and
feature_request.md. Reproduce their bold headings exactly and fill each one.
An issue with blank sections is usually answered with a request for them, which
costs a round trip.
Bug report. Gather the Setup block from the machine. Do not guess it.
| Field | Command |
| CARLA version | git rev-parse --abbrev-ref HEAD + git rev-parse --short HEAD (branch and commit), or the package's VERSION/release name |
| Platform | lsb_release -ds (or the OS name and version) |
| Python version | python3 --version of the interpreter that ran the client |
| GPU / GPU Drivers | nvidia-smi --query-gpu=name,driver_version --format=csv,noheader |
| Unreal Engine | 5.8 (from $CARLA_UNREAL_ENGINE_PATH/Engine/Build/Build.version) |
Then fill these:
- Describe the bug: what happens, in one or two sentences.
- Steps to reproduce: numbered, from a fresh server, including the map, the sync/async mode and the command line.
- Expected behavior.
- Logs: the relevant part of the server log from
Unreal/CarlaUnreal/Saved/Logs/and of the client output, not the whole file. - Scripts: a minimal client script that reproduces it. Strip it down until removing anything more makes the bug disappear.
- Screenshots and Additional context, if they help.
Before filing, check it really is a bug: read the docs page and the FAQ
(Docs/build_faq.md). Otherwise it is a question, which goes to a
discussion.
Feature request. Fill Is your feature request related to a problem?, Describe the solution you'd like, Describe alternatives you've considered and Additional context. Lead with the problem, not the solution.
Write the body to a scratch file. Show the user the title and body, then, after they confirm:
gh issue create --repo carla-simulator/carla --title "<short, specific title>" --body-file <scratch>/issue.mdTitles name the symptom and where it happens ("sensor.camera.depth returns
zeros on Town12 after load_world"), not "Bug" or "Help". Give the user the
URL that gh prints. Labels are set by the maintainers, so do not pass
--label.
Opening a discussion
GitHub Discussions are the venue for questions, for proposals that need the
maintainers' agreement, and for every CI workflow change before its PR.
The Discord server (https://discord.com/invite/8kqACuC) is the other accepted
venue; a discussion leaves a link the PR can cite.
gh has no discussion subcommand. Use GraphQL through gh api graphql.
- Search first. This is mandatory. Run Check for duplicates.
For a CI proposal, also search for the workflow's subject (
workflow,CI, the job or tool name). For a feature proposal, also check the open feature-request issues. If a thread already exists, add to it instead of opening a second one. - Get the repository id and the categories. Do not hardcode the category
names; read them:
Pick the category that fits (a question → the Q&A one; a proposal → the ideas/proposals one). Ask the user when none clearly fits.gh api graphql -f query='{repository(owner:"carla-simulator",name:"carla"){id discussionCategories(first:25){nodes{id name description}}}}' - Write the body to a scratch file.
- CI workflow proposal: the guidelines require exactly these three points:
- What is happening: the problem the workflow addresses.
- Why a workflow is needed to solve it, and why an existing workflow or a local check is not enough.
- What it runs, on which triggers, and what it costs in runners and
time. Target branch
ue58-dev. Include a draft of the YAML if one exists.
- Feature or design proposal: the problem, the proposed approach, the
modules it touches (see
Docs/core_foundations.md), the API impact, and open questions for the maintainers. - Question: what you are trying to do, what you tried, what happened, and the Setup block from Opening an issue.
- CI workflow proposal: the guidelines require exactly these three points:
- Show the title and body to the user. After they confirm, create it:
Withoutgh api graphql \ -f query='mutation($r:ID!,$c:ID!,$t:String!,$b:String!){createDiscussion(input:{repositoryId:$r,categoryId:$c,title:$t,body:$b}){discussion{number url}}}' \ -f r=<repository id> -f c=<category id> -f t='<title>' -F b=@<scratch>/discussion.mdgh, use the web form athttps://github.com/carla-simulator/carla/discussions/new/choose. - Give the user the URL and stop. A workflow PR waits until a maintainer agrees in that thread. Then the URL goes in the PR's CI workflows section (Step 6).
Gotchas
- Pass
--base ue58-devexplicitly. Without it,gh pr createtargets the default branch. That branch has changed before (it wasue4-dev), and an old fork can still point at the previous one. - A green CI tick does not mean the Python side works. CI runs no Python tests; a broken smoke test only shows up when a reviewer runs it.
- Workflow changes without a prior agreement are not merged, however good. Raise the discussion first and put its link in the body.
- Weakening a test to make it pass hides the regression it guards. Fix the code. If the expected behaviour really changed, say so in Tests.
- Hand-edited
Docs/python_api.mdis overwritten by the nextdoc_gen.pyrun. Edit the YAML. git add -Afrom the root commits strays. Stage explicit paths and readgit diff --cached --statbefore committing.- Rebasing a PR under review force-pushes over commits reviewers already read. Merge the base in instead once review has started.
gh discussiondoes not exist. Discussions are created only throughgh api graphql(or the web form).-F b=@filevs-f b=@file:-Freads the body from the file;-fsends the literal string@fileas the body.- Searching once with the user's whole sentence finds nothing. GitHub search matches words, not meaning. Split it into the API name, the error text and the symptom, and include closed threads. The fix, or the answer, is often in a closed one.
- Questions are not issues. Support questions filed as issues get redirected to Discussions. File a bug only once you can reproduce it.
- Never invent the Setup block. A wrong CARLA commit or GPU driver in a bug report sends the triager the wrong way. Read every value from the machine.
- Asset changes do not go in this PR. They go to the content repository
(Bitbucket,
ue58-dev-carla), through the art team.
Trending
More talk lately.about the whole repository
Who's talking about carla-simulator/carla
- CARLA Simulator“CARLA 0.9.15 release”YouTube · Nov 10, 2023 · 49k views
- CARLA Simulator“CARLA 0.10.0 release video”YouTube · Dec 19, 2024 · 49k views
- CARLA Simulator“CARLA 0.9.13”YouTube · Nov 16, 2021 · 47k views
- CARLA Simulator“CARLA Autonomous Driving Challenge”YouTube · Mar 11, 2019 · 41k views
- CARLA Simulator“CARLA 0.9.11”YouTube · Dec 23, 2020 · 41k views
The biggest 5 of 87 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 87
Talked about on GitHub, YouTube, Stack Overflow and Hacker News (87 times).
On GitHub · 50
- Apr 5, 2020Freeze when importing CARLA and Torchvision (jit.script related) — pytorch/pytorch11 reactions · 3 comments
- Jun 17, 2020Supporting ros noetic — carla-simulator/ros-bridge10 reactions · 7 comments
- Dec 19, 2018Reproducing Results — carla-simulator/reinforcement-learning10 reactions · 1 comment
- Aug 8, 2021Optical flow camera — microsoft/AirSim3 reactions · 7 comments
- Jun 12, 2026fix(LibCarla): port lane marking, waypoint loop, lane corners, and pugixml null fixes — headerslow/carla-pr9652-b52c1 reaction · 12 comments
45 more on GitHub
- Nov 29, 2024Error: can't find the file /CarlaUE4.sh — ucd-dare/CarDreamer1 reaction · 1 comment
- Oct 23, 2024Windows — javyduck/ChatScene1 reaction
- May 25, 2022Issue with the object location coordinate transformation from CARLA to kitti — enginBozkurt/carla-training-data1 reaction · 5 comments
- Oct 28, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-27 → 0.10.0-unstable-2026-10-28 — sudosubin/agents.nix0 reactions
- Oct 28, 2026agent-plugins.github.carla-simulator.carla: 0.10.0-unstable-2026-10-27 → 0.10.0-unstable-2026-10-28 — sudosubin/agents.nix0 reactions
- Oct 27, 2026agent-skills.github.carla-simulator.carla: ccbe5d9 → 7bb47bc — sudosubin/agents.nix0 reactions
- Oct 27, 2026agent-plugins.github.carla-simulator.carla: 0.10.0-unstable-2026-10-26 → 0.10.0-unstable-2026-10-27 — sudosubin/agents.nix0 reactions
- Oct 27, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-26 → 0.10.0-unstable-2026-10-27 — sudosubin/agents.nix0 reactions
- Oct 26, 2026agent-skills.github.carla-simulator.carla: 08edf58 → 5aff00d — sudosubin/agents.nix0 reactions
- Oct 26, 2026agent-plugins.github.carla-simulator.carla: 0.10.0-unstable-2026-10-22 → 0.10.0-unstable-2026-10-26 — sudosubin/agents.nix0 reactions
- Oct 26, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-22 → 0.10.0-unstable-2026-10-26 — sudosubin/agents.nix0 reactions
- Oct 22, 2026agent-plugins.github.carla-simulator.carla: 0.10.0-unstable-2026-10-08 → 0.10.0-unstable-2026-10-22 — sudosubin/agents.nix0 reactions
- Oct 22, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-19 → 0.10.0-unstable-2026-10-22 — sudosubin/agents.nix0 reactions
- Oct 19, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-16 → 0.10.0-unstable-2026-10-19 — sudosubin/agents.nix0 reactions
- Oct 16, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-15 → 0.10.0-unstable-2026-10-16 — sudosubin/agents.nix0 reactions
- Oct 15, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-14 → 0.10.0-unstable-2026-10-15 — sudosubin/agents.nix0 reactions
- Oct 14, 2026agent-skills.github.carla-simulator.carla: 0.10.0-unstable-2026-10-13 → 0.10.0-unstable-2026-10-14 — sudosubin/agents.nix0 reactions
- Oct 14, 2026agent-plugins.github.carla-simulator.carla: 0.10.0-unstable-2026-10-13 → 0.10.0-unstable-2026-10-08 — sudosubin/agents.nix0 reactions
- Oct 14, 2026agent-plugins.github.carla-simulator.carla: 0.10.0 → 0.10.0-unstable-2026-10-13 — sudosubin/agents.nix0 reactions
- Oct 13, 2026agent-skills.github.carla-simulator.carla: 0.10.0 → 0.10.0-unstable-2026-10-13 — sudosubin/agents.nix0 reactions
- Oct 13, 2026agent-plugins.github.carla-simulator.carla: init at 0.10.0 — sudosubin/agents.nix0 reactions
- Oct 13, 2026agent-skills.github.carla-simulator.carla: init at 0.10.0 — sudosubin/agents.nix0 reactions
- Oct 5, 2026fix(LibCarla): port lane marking, waypoint loop, lane corners, and pugixml null fixes — Apsinside/carla-pr9652-f8150 reactions
- Oct 5, 2026fix(LibCarla): port lane marking, waypoint loop, lane corners, and pugixml null fixes — Apsinside/carla-pr9652-939a0 reactions
- Jun 12, 2026fix(LibCarla): port lane marking, waypoint loop, lane corners, and pugixml null fixes — CloudAEye/cpp_benchmark__carla__cloudaeye__PR9652__202606130 reactions · 1 comment
- Jun 12, 2026fix(LibCarla): port lane marking, waypoint loop, lane corners, and pugixml null fixes — HardikCloudaeye/cpp_v2__carla__claude__PR9652__202606120 reactions · 1 comment
- Jun 9, 2026Projects to Revisit & Upcoming Releases — zhub9006/robotics-oss-radar0 reactions
- May 8, 2026WSL运行服务端 — OpenHUTB/hutb0 reactions
- May 5, 2026Introduce CARLA Studio Qt 5/6 desktop GUI w/ integrations — carla-simulator/carla-studio0 reactions
- Mar 31, 2026Feature/support road info speed inside speed planning — tier4/carla0 reactions
- Mar 20, 2026feat: add NVIDIA RTX 50 series (Blackwell) and CUDA support — youtalk/carla0 reactions
- Mar 7, 2026表面法线激光雷达传感器 — OpenHUTB/hutb0 reactions
- Feb 13, 2026[ue5-dev] 添加真值测试脚本 — OpenHUTB/hutb0 reactions
- Feb 2, 2026增加铁路模拟特性 — OpenHUTB/hutb0 reactions
- Jan 27, 2026加Carla0.9.16和0.10.0 — featurize/app-request0 reactions
- Jan 26, 2026同步更新Hybrid Solid State LiDAR文档 — OpenHUTB/doc0 reactions
- Dec 4, 2025Porting Maps Pipeline — CGVGroup/Carla_UE5-Polito0 reactions
- Dec 3, 2025轮椅在激光雷达/语义激光雷达中不可见 — OpenHUTB/hutb0 reactions · 1 comment
- Nov 27, 2025Add standalone CARLA client build infrastructure for ue4/0.9.16 — the78mole/carla-simple-client0 reactions · 8 comments
- Nov 7, 2025Extended ROS2 interfaces — carla-simulator/ros-carla-msgs0 reactions · 1 comment
- Sep 22, 2025支持在 k8s 上运行 — OpenHUTB/hutb0 reactions
- Jul 15, 2025Town05支持停车场 — OpenHUTB/hutb0 reactions
- Apr 24, 2025在没有 GPU 支持的情况下运行 docker — OpenHUTB/hutb0 reactions · 1 comment
- Jan 13, 2025Leaderboard doesn't give Semantic Lidar data format properly as mention in Carla docs — carla-simulator/leaderboard0 reactions
- May 21, 2024feat: add additional maps when running from docker — IftachNaftalyAB/carla_ros0 reactions · 1 comment
On YouTube · 25
- Nov 10, 2023CARLA 0.9.15 release — CARLA Simulator49k views · 8 comments
- Dec 19, 2024CARLA 0.10.0 release video — CARLA Simulator49k views · 16 comments
- Nov 16, 2021CARLA 0.9.13 — CARLA Simulator47k views · 8 comments
- Mar 11, 2019CARLA Autonomous Driving Challenge — CARLA Simulator41k views · 18 comments
- Dec 23, 2020CARLA 0.9.11 — CARLA Simulator41k views · 5 comments
20 more on YouTube
- Jul 12, 2019CARLA 0.9.6 — CARLA Simulator36k views · 9 comments
- Sep 26, 2020CARLA 0.9.10 — CARLA Simulator22k views · 7 comments
- Dec 7, 2024Install CARLA on Windows from Source - CARLA Simulator Tutorial — TeckBlick21k views · 117 comments
- Aug 3, 2021CARLA 0.9.12 — CARLA Simulator19k views · 4 comments
- Apr 23, 2020CARLA 0.9.9 — CARLA Simulator18k views · 6 comments
- Apr 4, 2019CARLA 0.9.5 — CARLA Simulator11k views · 4 comments
- Mar 26, 2024CARLA Unreal Engine 5 teaser — CARLA Simulator11k views · 12 comments
- Mar 9, 2020CARLA 0.9.8 — CARLA Simulator10k views · 1 comment
- Nov 19, 2018CARLA 0.9.1 — CARLA Simulator9.8k views · 4 comments
- Jan 31, 2019CARLA 0.9.3 — CARLA Simulator8.1k views · 4 comments
- Mar 1, 2019Carla Release 0.9.4 — CARLA Simulator5.7k views · 3 comments
- Oct 9, 2024AVL leverages CARLA for off-road use case with unpaved terrain — CARLA Simulator4.4k views · 1 comment
- Dec 11, 2019CARLA 0.9.7 — CARLA Simulator4.4k views
- Jun 8, 2018CARLA - Tesla Model 3 — CARLA Simulator4.3k views · 4 comments
- Jun 8, 2018CARLA - Bikes and Motorbikes — CARLA Simulator3.4k views · 2 comments
- Dec 11, 2020Carla Simulator 🚗 Open3D LIDAR Example — chriss code support2.9k views · 4 comments
- Jan 17, 2026Carla 0.9.16 running on MacBook Air M4 with 24GB & Tahoe 26.2! — Potato Codex882 views · 5 comments
- Jan 18, 2026Carla PythonAPI running on MacBook Air M4 with 24GB & Tahoe 26.2! — Potato Codex381 views · 2 comments
- Oct 10, 2020Carla - Easy steps to run — t ravi305 views · 1 comment
- Jul 30, 2021CARLA Town10HD 01 — thillRobot119 views
On Stack Overflow · 10
- Jul 17, 2020Getting the true z value from the depth buffer2 votes
- Aug 9, 2023How can I convert xodr map into jpg or png file?1 vote
- Jul 18, 2023std::bad_cast error while using Python SDK for couchbase1 vote
- Jul 15, 2019This scenario requires to use map Town011 vote · 1 answer
- May 26, 2019How to use specific GPU's in keras for multi-GPU training?1 vote
5 more on Stack Overflow
- Jun 16, 2018How to run many TensorFlow instances in parallel on different GPUs on the same machine?1 vote
- May 8, 2023CARLA Quick-start Crashing with Segmentation fault (core dumped)0 votes
- May 4, 2023How to install carla on macOS with python 3.10?0 votes
- Oct 23, 2022Carla 0.9.13 Installation Issues0 votes
- Mar 12, 2020Exception deallocating memory for std::string (trying to use YOLO/Darknet inside UE4)0 votes
On Hacker News · 2
- Feb 11, 2022Open-source simulator for autonomous driving research3 points
- Feb 7, 2021Carla: Open-source simulator for autonomous driving research2 points
In this repository63 other files it gives its agents.
- AGENTS.mdAGENTS.md
- audit-carla-docsSkill
- document-carla-featureSkill
- create-leaderboard-routeSkill
- package-leaderboard-agentSkill
- read-leaderboard-resultsSkill
- run-leaderboard-evaluationSkill
- write-leaderboard-agentSkill
- bounding-boxesSkill
- control-lightsSkill
- control-spectatorSkill
- control-traffic-lightsSkill
- control-trafficSkill
- control-vehicleSkill
- create-sensorSkill
- debug-drawSkill
- debug-navmeshSkill
- load-mapSkill
- map-waypointsSkill
- navigate-toSkill
- query-recordingSkill
- read-sensorSkill
- record-simulationSkill
- replay-recordingSkill
- set-weatherSkill
- set-world-settingsSkill
- spawn-vehiclesSkill
- spawn-walkersSkill
- telemetrySkill
- toggle-env-objectsSkill
- world-dataSkill
- add-ros-message-typeSkill
- add-ros-publisherSkill
- visualize-ros-rvizSkill
- analyze-scenario-resultsSkill
- create-scenarioSkill
- run-openscenarioSkill
- run-route-scenarioSkill
- run-scenarioSkill
- create-scenic-scenarioSkill
- run-scenic-scenarioSkill
- check-feature-supportSkill
- download-carlaSkill
- install-leaderboardSkill
- install-python-apiSkill
- install-scenario-runnerSkill
- install-scenicSkill
- build-carla-ue4Skill
- import-carla-mapSkill
- import-carla-propSkill
- import-carla-vehicleSkill
- import-carla-walkerSkill
- package-carla-ue4Skill
- run-carla-serverSkill
- build-carla-ue58Skill
- carla-vehicle-authoringSkill
- import-carla-ue58-mapSkill
- import-carla-ue58-propSkill
- import-carla-ue58-walkerSkill
- package-carla-ue58Skill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

