# Dart Io

> DART model loading - URDF, SDF, MJCF, SKEL parsers and dart::io unified API

- Skill: `majiayu000/dart-io` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/dart-io`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/dart-io/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/dart-io

---


# DART Model Loading (`dart::io`)

Load this skill when working with robot model files or parsers.

## Quick Start

```cpp
#include <dart/io/Read.hpp>

// Format auto-detection
auto world = dart::io::readWorld("dart://sample/skel/chain.skel");
auto skel = dart::io::readSkeleton("dart://sample/urdf/KR5/KR5 sixx R650.urdf");
```

## Full Documentation

For complete I/O guide: `docs/onboarding/io-parsing.md`

For module-specific details: `dart/io/AGENTS.md`

## Supported Formats

| Format | Extension        | Use Case      |
| ------ | ---------------- | ------------- |
| URDF   | `.urdf`          | ROS robots    |
| SDF    | `.sdf`, `.world` | Gazebo models |
| MJCF   | `.xml`           | MuJoCo models |
| SKEL   | `.skel`          | Legacy DART   |

## Common Patterns

```cpp
// URDF with package resolution
dart::io::ReadOptions options;
options.addPackageDirectory("my_robot", "/path/to/my_robot");
auto skel = dart::io::readSkeleton("package://my_robot/urdf/robot.urdf", options);

// Force specific format
options.format = dart::io::ModelFormat::Sdf;
```

## Key Files

- API: `dart/io/Read.hpp`
- Tests: `tests/unit/io/test_Read.cpp`

