Configure Scarb.toml, dojo profiles, world settings, and dependencies. Use when setting up project configuration, managing dependencies, or configuring deployment environments.
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
Instruções da origem · Visualização somente leitura
name
dojo-config
description
Configure Scarb.toml, dojo profiles, world settings, and dependencies. Use when setting up project configuration, managing dependencies, or configuring deployment environments.
allowed-tools
Read, Write, Edit, Glob
Dojo Configuration Management
Manage Dojo project configuration including Scarb.toml, deployment profiles, and world settings.
When to Use This Skill
"Configure Dojo for my project"
"Update Scarb.toml dependencies"
"Set up deployment profiles"
"Configure world settings"
What This Skill Does
Manages configuration files:
Scarb.toml - Package manifest and dependencies
dojo_dev.toml - Local development profile
dojo_<profile>.toml - Other environment profiles
World configuration, namespaces, and permissions
Quick Start
Interactive mode:
"Update my Dojo configuration"
I'll ask about:
What to configure (dependencies, profiles, world)
Environment (dev, testnet, mainnet)
Specific settings
Direct mode:
"Add the Origami library to my dependencies"
"Configure production deployment for Sepolia"
Configuration Files
Dojo projects use two types of configuration files:
Dojo uses profiles to manage different environments:
# Use default 'dev' profile (dojo_dev.toml)
sozo build
sozo migrate
# Use specific profile (dojo_mainnet.toml)
sozo build --profile mainnet
sozo migrate --profile mainnet
Profile file naming:dojo_<profile>.toml
dojo_dev.toml - Development (default)
dojo_staging.toml - Staging
dojo_mainnet.toml - Production
World Configuration
[world]name = "My Game"# Human-readable namedescription = "A provable game"# Descriptionseed = "my-unique-seed"# Unique seed for address generationcover_uri = "ipfs://Qm..."# Cover image (ipfs:// or file://)icon_uri = "ipfs://Qm..."# Icon image[world.socials]x = "https://x.com/mygame"discord = "https://discord.gg/mygame"
Environment Settings
[env]rpc_url = "http://localhost:5050/"account_address = "0x127fd..."private_key = "0xc5b2f..."# Or use keystore for production:# keystore_path = "/path/to/keystore"world_address = "0x077c0..."# Set after first deployment
Namespace Configuration
Namespaces organize your resources:
[namespace]default = "my_game"# Default namespace for all resources# Optional: Map specific resources to namespacesmappings = { "weapons" = ["Sword", "Bow"], "characters" = ["Player", "Enemy"] }
Resources get tagged as <namespace>-<resource_name>.
Permission Configuration
Set up initial permissions at deployment time:
[writers]# Namespace-level: actions can write to all resources in my_game"my_game" = ["my_game-actions"]
# Resource-specific: movement can only write to Position"my_game-Position" = ["my_game-movement"]
[owners]# Namespace ownership"my_game" = ["my_game-admin"]