Why Use This
This skill provides specialized capabilities for dartsim's codebase.
Use Cases
- Developing new features in the dartsim repository
- Refactoring existing code to follow dartsim standards
- Understanding and working with dartsim's codebase structure
Install Guide
2 steps - 1
- 2
Install inside Ananke
Click Install Skill, paste the link below, then press Install.
https://github.com/dartsim/dart/tree/main/.claude/skills/dart-contribute
Skill Snapshot
Auto scan of skill assets. Informational only.
Valid SKILL.md
Checks against SKILL.md specification
Source & Community
Updated At Jan 18, 2026, 04:33 AM
Skill Stats
SKILL.md 108 Lines
Total Files 1
Total Size 2.9 KB
License BSD-2-Clause
---
name: dart-contribute
description: DART contribution workflow - branching, PRs, code review, dual-PR for bugfixes
---
# DART Contribution Workflow
Load this skill when contributing code to DART.
## Full Documentation
For complete guide: `docs/onboarding/contributing.md`
For code style: `docs/onboarding/code-style.md`
## Branch Naming
- `feature/<topic>` - New features
- `fix/<topic>` - Bug fixes
- `refactor/<topic>` - Refactoring
- `docs/<topic>` - Documentation
## PR Workflow
```bash
# Create branch
git checkout -b <type>/<topic> origin/main
# Make changes, then
pixi run lint
pixi run test-all
# Push and create PR
git push -u origin HEAD
gh pr create --draft --milestone "DART 7.0"
```
Rule of thumb: run `pixi run lint` before committing so auto-fixes are included.
Use `.github/PULL_REQUEST_TEMPLATE.md` and ensure the PR description covers Summary, Motivation, Changes, Testing, Breaking Changes, and Related Issues.
## Milestones (Required)
Always set a milestone when creating PRs:
| Target Branch | Milestone |
| -------------- | ----------------------------- |
| `main` | `DART 7.0` (or next major) |
| `release-6.16` | `DART 6.16.x` (current patch) |
```bash
# Set milestone on existing PR
gh pr edit <PR#> --milestone "DART 7.0"
# List available milestones
gh api repos/dartsim/dart/milestones --jq '.[] | .title'
```
## CRITICAL: Bug Fix Dual-PR
Bug fixes require PRs to **BOTH** branches:
1. **`release-6.16`** - Current release
2. **`main`** - Next release
Steps:
1. Fix on `release-6.16` first
2. Cherry-pick to `main`
3. Create separate PRs for each
## CHANGELOG (After PR Created)
After creating a PR, check if CHANGELOG.md needs updating:
| Change Type | Update CHANGELOG? |
| -------------------------------- | ------------------------------------ |
| Bug fixes | ✅ Yes |
| New features | ✅ Yes |
| Breaking changes | ✅ Yes (in Breaking Changes section) |
| Documentation improvements | ✅ Yes (in Tooling and Docs) |
| CI/tooling changes | ✅ Yes (in Tooling and Docs) |
| Refactoring (no behavior change) | ⚠️ Maybe (if significant) |
| Dependency bumps | ⚠️ Maybe (if user-facing) |
| Typo fixes | ❌ No |
Format: `- Description. ([#PR](https://github.com/dartsim/dart/pull/PR))`
```bash
# Example entry in CHANGELOG.md under appropriate section:
- Added AI-native documentation with AGENTS.md and module-specific guides. ([#2446](https://github.com/dartsim/dart/pull/2446))
```
## Code Review
- Address all feedback
- Keep changes minimal
- Update tests if behavior changed
- Run full validation before pushing fixes
## CI Loop
```bash
gh run watch <RUN_ID> --interval 30
```
Fix failures until green.