General-purpose canister lifecycle orchestrator for the Internet Computer — built for managed multi-tenant IC deployments with shared upgrade governance.
pip install ic-casals
casals up tests/e2e/orchestras/minimal/casals.json --yes --local
General-purpose canister lifecycle orchestrator for the Internet Computer — built for managed multi-tenant IC deployments with shared upgrade governance
Many instances of the same application, for many owners — and one team that has to keep every one of them upgraded, funded and safe.
One backend and frontend per customer. The customer owns the instance; the vendor ships the updates.
The same code under many brands. Each brand decides when it takes the next version.
Treasury, voting, forum — a set of canisters per DAO, operated by a shared team, governed by that DAO.
One team maintaining canisters for many clients under a single multisig, with scoped access per client.
Who can change what — and who must agree. Numbers refer to the step that introduced each layer.
Casals never embeds voting. It executes approved actions.
casals-backend. IC controller of the orchestra; runs day-to-day lifecycle on-chain. casals-frontend is its console (step 6)casals-wasms. Certified file store every install streams from; sha256 on-chain, authorized list, module_hash verified (step 8)Many governance operating systems on one shared machine — conducted by Casals.
The operating system of a society, rewritten as software: who belongs, who decides, what the treasury may spend, which rules execute without asking anyone. One realm is one such system, on its own canisters.
The control plane that hosts many of them side by side. A community deploys a GOS; gos.earth registers it as a realm, provisions the canisters, keeps them funded and current. The community remains sovereign over its own system.