# Dojo Contributing

> Contributor workflow for dojoengine/dojo. Use when implementing or reviewing changes in this repository, especially Rust workspace edits, Cairo fixture refreshes, and CI-parity formatting/lint/test checks. Use when this capability is needed.

- Skill: `tomevault-io/dojo-contributing-2` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/dojo-contributing-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/dojo-contributing-2/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/dojo-contributing-2

---


# Dojo Contributing

Use this skill to make scoped changes in `dojoengine/dojo` and validate them with repository-standard commands.

## Core Workflow

1. Identify affected crates and binaries from `git status` and touched files.
2. Prepare local test databases:
   - `bash scripts/extract_test_db.sh`
3. If Cairo examples, policies, or core behavior changed, refresh artifacts:
   - `POLICIES_FIX=1 cargo nextest run --all-features --build-jobs 20 --workspace --nocapture policies`
   - `bash scripts/rebuild_test_artifacts.sh`
4. Run baseline validation:
   - `cargo build --workspace`
   - `cargo nextest run --all-features --build-jobs 20 --workspace`
5. If Katana behavior is involved, test with a local Katana binary:
   - `cargo build -r --bin katana`
   - `KATANA_RUNNER_BIN=./target/release/katana cargo nextest run --all-features --build-jobs 20 --workspace`
6. Run style and lint checks:
   - `bash scripts/rust_fmt.sh --fix`
   - `bash scripts/clippy.sh`

## PR Checklist

- Keep the diff focused to the requested behavior.
- Include fixture/artifact updates when Cairo-driven behavior changes.
- Record exact validation commands and outcomes in the PR body.

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/dojoengine) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-11 -->

