- Home
- Skills
- Dojoengine
- Book
- Dojo World
dojo-world_skill
- TypeScript
51
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill dojoengine/book --skill dojo-world- SKILL.md7.7 KB
Overview
This skill manages Dojo world permissions, namespaces, resource registration, and access control. It provides CLI, runtime (Cairo), and configuration-based tools to grant, revoke, list, and check owner and writer permissions across namespaces and resources. Use it to enforce least-privilege policies and delegate authority safely.
How this skill works
The skill lets you define permissions in a deployment profile or modify them at runtime via CLI or Cairo calls. Permissions are scoped to world, namespace, or resource selectors and come in two flavors: owner (full control) and writer (data write only). It emits events on changes and exposes checks to validate authorization during execution.
When to use it
- Configure initial world and namespace ownership during deployment
- Grant or revoke writer access for system contracts at runtime
- Set or transfer namespace or resource owners
- Audit or list current permissions for troubleshooting
- Enforce authorization checks inside system functions
Best practices
- Apply the principle of least privilege: grant narrow, function-level access instead of broad namespace ownership
- Set namespace-level writers only when a system legitimately needs access to all resources in that namespace
- Use owner permissions sparingly and protect owner accounts with multisig in production
- Document permission mappings and test all permission checks after changes
- Monitor OwnerUpdated and WriterUpdated events to detect unexpected changes
Example use cases
- During deployment, grant an admin system owner rights over a namespace in dojo_profile.toml
- Add a new gameplay system at runtime by granting writer permission to specific resource selectors
- Transfer a namespace owner to a new admin contract and revoke the old owner
- Debug "not authorized" errors by listing permissions and checking resource vs namespace scope
- Implement an admin-only function that asserts namespace ownership before executing
FAQ
Owner can write, manage permissions, upgrade resources, and set metadata. Writer can only write data to the resource and cannot manage permissions or upgrades.
Can reading data be restricted?
Reading is permissionless by design; permissions control write and management operations only.