Skip to content
Back to skills

Development And Testing

ASecurity

"Guides safe openpilot checkout setup, uv/SCons builds,

  • 247 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 8, 2026
testingpythonbashtestinggit

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill development-and-testing --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Development And Testing?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Development And Testing
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-development-and-testing-be5ffc5c/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-development-and-testing-be5ffc5c)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: development-and-testing
description: "Guides safe openpilot checkout setup, uv/SCons builds,
  native-extension prep, linting, tests, docs, and development validation."
disable-model-invocation: true
metadata:
  disco-role: operating
license: MIT
---

# development-and-testing

Use this sub-skill for openpilot setup, dependency sync, submodules, SCons/native build products, targeted tests, linting, docs builds, and CI-style validation. Use it before running broad test suites or when imports fail because the checkout is not fully prepared.

## Read first

- [references/setup-build-test.md](references/setup-build-test.md) for the safe setup/build sequence and environment checks.
- [references/testing-reference.md](references/testing-reference.md) for `tools/test_runner.py`, lint choices, docs builds, and native test selection.
- [references/troubleshooting.md](references/troubleshooting.md) when uv, submodules, git-lfs, SCons, native extensions, lint, or hardware-test selection fails.
- Run [scripts/openpilot_dev_check.py](scripts/openpilot_dev_check.py) against a target checkout for read-only diagnostics.

## Common routes

| User asks | Do |
| --- | --- |
| "Set up openpilot" or "imports fail after install" | Inspect Python version, submodules, uv sync state, and SCons outputs with the checker, then follow setup/build guidance. |
| "Run tests for a change" | Choose focused targets from [testing-reference.md](references/testing-reference.md); avoid hardware/network/GUI tests unless prerequisites are available. |
| "Run lint/CI locally" | Use the lint and test runner sections; explain `--fast`, target narrowing, and tool dependency failures. |
| "Build docs" | Use docs build notes in setup-build-test; do not start a long-running docs server unless requested. |
| "Switch branch/update/start device" | Treat as state-mutating; require explicit user intent and read troubleshooting warnings first. |

## Minimal safe workflow

1. Confirm the task really needs repo setup or tests, not just static source reading.
2. Run the bundled read-only checker:

```bash
python skills/disco/openpilot/sub-skills/development-and-testing/scripts/openpilot_dev_check.py --repo-root /path/to/openpilot
```

3. If submodules are empty, initialize them in the target checkout before retrying package sync.
4. If `msgq.ipc_pyx` or `libparams_c.so` imports fail, build only the needed SCons targets before launching broad tests.
5. Select one or a few test targets; prefer CPU-safe unit tests before route/network/hardware cases.
6. Record skipped optional hardware/network/GUI cases with reasons rather than treating them as failed CPU validation.

## Boundaries

- For `LogReader`, route IDs, qlogs/rlogs, or cache errors, switch to [route-log-analysis](../route-log-analysis/SKILL.md).
- For car interfaces, fingerprints, controls, or process replay, switch to [car-ports-and-controls](../car-ports-and-controls/SKILL.md).
- For msgq/Params/manager/loggerd internals after setup is complete, switch to [core-services-and-runtime](../core-services-and-runtime/SKILL.md).
- For replay/Cabana/PlotJuggler/simulator/joystick/UI, switch to [simulator-and-visual-tools](../simulator-and-visual-tools/SKILL.md).

Files in this skill

  • SKILL.md3.1 KB
  • references/setup-build-test.md3.2 KB
  • references/testing-reference.md3.3 KB
  • references/troubleshooting.md2.7 KB
  • scripts/openpilot_dev_check.py2.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.