DART is an open-source C++23 physics engine that simulates the movement and interactions of articulated rigid-body systems for robotics, animation, and machine learning. Researchers and developers use it for kinematics, dynamics, collision handling, constraints, and loading robot models, with C++ and Python interfaces. The catalogue add-ons support workflows built around this engine.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add dartsim/dart --skill dart-pythongit clone --depth 1 https://github.com/dartsim/dartWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/dartsim/dart/dart-python)<a href="https://agentmods.dev/skills/dartsim/dart/dart-python"><img src="https://agentmods.dev/badge/skills/dartsim/dart/dart-python/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/dartsim/dart/dart-python"><img src="https://agentmods.dev/badge/skills/dartsim/dart/dart-python.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Agent Snooping · line 7 Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.Fix: Remove all code or instructions that list or read other skills' files or directories. Skills should operate independently; cross-skill access is a privilege escalation.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00020 | $0.00711 |
| Opus 5.5 | $0.00008 | $0.00284 |
| Sonnet 5.5 | $0.00004 | $0.00142 |
| Haiku 4.5 | $0.00002 | $0.00071 |
Grade A, and why
dart-python scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 77 lines — stays where its author put it; the contents beside it link to each section on GitHub.
DART Python Bindings (dartpy)
Load this skill when working with Python bindings or dartpy.
When a binding exposes or changes model/scene loading, dynamics,
collision/contact/constraints, simulation stepping, GUI/Filament output, or a visual example, also
load dart-verify-sim. Pair a focused Python text/behavior oracle with an
assessed, claim-tied Filament capture; document a visual exception when capture is
unavailable or not applicable.
Quick Start
import dartpy as dart
world = dart.simulation.World()
loader = dart.utils.DartLoader()
skel = loader.parseSkeleton("dart://sample/urdf/KR5/KR5 sixx R650.urdf")
world.addSkeleton(skel)
for _ in range(100):
world.step()
Full Documentation
For complete Python bindings guide: docs/onboarding/python-bindings.md
For current examples and test patterns: python/examples/ and python/tests/
Quick Commands
pixi run build-py-dev # Build for development
pixi run test-py # Run Python tests that need no graphics device
pixi run test-gui # Run dartpy.gui rendering and integration tests
Wheel Building
This development branch ships Pixi-managed wheel tasks. The core tasks are
wheel-build-core, wheel-repair-linux-core, wheel-repair-macos-core,
wheel-repair-windows-core, wheel-verify-core, and wheel-test-core;
the per-Python environments py310-wheel through py313-wheel expose
wheel-build, wheel-repair, wheel-verify, and wheel-test on top of
them. CI runs them in .github/workflows/publish_dartpy.yml (for example
pixi run -e py313-wheel wheel-build). See
docs/onboarding/python-bindings.md for the wheel workflow overview.
Key Patterns
- nanobind is dartpy's only binder on
main, underpython/dartpy/. Use the DART 6.20 compatibility notes in the owner guide. - Until the PLAN-624 rename lands, follow the current binding names in
python/examplesandpython/tests; bind new DART 7 APIs directly in the DART 7 Python style (snake_case, properties, keyword-only options) from the PLAN-624 design doc. - NumPy arrays auto-convert to Eigen types
dartpy.guialways exists: dartpy requiresDART_BUILD_IOandDART_BUILD_GUI. GUI callers use the Filament-backeddart.gui.Viewerand related neutral classes; import and viewer construction need no display.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago Changed · +5 lines 9036265c574b
- 6d ago Changed · +1 lines 6693c1a13ad4
- 10d ago Changed 0d4c56d21859
- 17d ago Changed · +19 lines 88e63f036104
- 1mo ago Changed · -13 lines 220775754727
- 1mo ago Changed · -2 lines d59da4bdcea9
- 1mo ago First seen · 67 lines · 20 tokens per session scan A 99cd959d24cc
dart-python is a skill published in the GitHub repository dartsim/dart (1,217 stars, last pushed today), licensed BSD-2-Clause. It adds 20 tokens to every session and 711 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-01.
Other skills, from other repositories
simpy-discrete-event
Use this Skill for discrete-event simulation with SimPy: M/M/c queues, manufacturing lines, resource contention, and confidence intervals via replications.
robotics-ros2
ROS2 robotics development with rclpy: nodes, topics, services, actions, tf2 transforms, and Nav2 navigation.
pennylane
Builds and differentiates PennyLane quantum circuits, hybrid PyTorch or JAX models, molecular VQE and QAOA workflows. Use for variational quantum algorithms, quantum machine learning, simulator validation, and moving validated circuits to provider plugins. For hardware-specific compilation use qiskit or cirq; for…
rocm-kernels
Provides guidance for writing and benchmarking optimized Triton kernels for AMD GPUs (MI355X, R9700) on ROCm, targeting HuggingFace diffusers (LTX-Video, SD3, FLUX) and transformers. Core kernels: RMSNorm, RoPE 3D, GEGLU, AdaLN. Includes XCD swizzle, autotune, diffusers integration patterns, and LTX-Video pipeline…
python
Python development with ruff, mypy, pytest - TDD and type safety.
data-analysis-jupyter
Expert guidance for data analysis, visualization, and Jupyter Notebook development with pandas, matplotlib, seaborn, and numpy.