Zodiac for developers
Zodiac gives an organization programmable control of its onchain assets: the tokens it holds, the protocols it uses, and the accounts that connect them. Teams, programs, and agents get exact onchain permissions. The owners keep full control and can revoke any permission at any time.
The assets live in a Safe smart account. If Safe is new to you, read what a Safe account is first. Zodiac adds the permission layer on top of the account. Other smart accounts work as well, when they implement the open Zodiac interface — see Concepts.
Set up your organization as code
Constellations are the primary path into Zodiac. You describe your organization in TypeScript: the Safes, the roles, the members, and the permissions. The Zodiac SDK compares your description with the chain and applies the difference through the Zodiac App . The SDK does the full contract setup for you — you do not deploy or wire contracts yourself.
Start here: Quickstart: permission a Safe with Roles. In about 20 minutes, you go from the project template to enforced onchain permissions. The model behind the project — nodes, the apply loop, the file layout — is on the Constellations page.
New to the account model? Read Concepts first — it connects the app vocabulary with the onchain objects.
Operate in the app
The Zodiac App is the interface for daily operations: import your Safes as vaults, build and apply policies without code, and execute transactions with Zodiac Pilot. The Guides tab covers this path. For the developer view of the app surfaces, see Execute as a role member.
The engine: Roles and Delay
Two audited contracts do the enforcement:
- The Roles Modifier checks every call of a role member onchain and reverts all other calls. Policies in the app and constellations in the SDK both configure this contract.
- The Delay Modifier holds transactions in a queue for a set time, so the Safe owners can cancel a bad transaction before it executes.
You do not have to touch these contracts directly. But every part of their behavior is documented here, so you can verify what you run.
Go deeper
| Your goal | Read |
|---|---|
| Understand the contract model | Concepts |
| Limit parameters and set spending limits | Conditions, Allowances |
| Use tested protocol presets | DeFi Kit presets |
| Execute from scripts and bots | Roles: Execution |
| Put an AI agent behind onchain limits | Permission an AI agent |
| Add a review period to transactions | Quickstart: Delay |
| Audit or integrate at the contract level | Contract reference, Deployments, Security |
| Extend Roles with Solidity | Custom conditions |
| Build your own module | Build a module |
| Look up a term | Glossary |
Get help
- Ask questions in the Gnosis Guild Discord .
- Report code problems in the GitHub repositories .
- Report security problems to security@zodiac.eco. Do not open a public issue.