Core
The core of Aragon OSx consists of the DAO contract and its authorization model. Source: osx src/core.
This is the smallest, most fundamental layer: what a DAO is and how it decides who may do what. Read it first; everything else builds on it.
Exact signatures: the generated osx ABI reference has every public function, event, error and constant of these contracts, with its NatSpec.
- The DAO contract — one contract that is the organization: treasury, executor, permission database, signer.
- The permission system — the
(where, who, permissionId)model that gates every privileged action. Start here to understand authorization. - Actions and execution — how a DAO acts on the world: the
Actionbatch,execute, and partial-failure handling. - DAO signature validation (EIP-1271) — how a DAO "signs", by delegating to its permissions.
- DAO metadata — the name/description/avatar/links JSON and the EIP-4824
daoURI, and why the app-facing blob isn't stored onchain.
The other two layers
The rest of the osx repo sits in two sibling areas:
- Common — the shared cross-cutting primitives (now within osx at
src/common, formerly the standalone osx-commons library) that the core, framework, and plugins reuse: conditions, proposals, membership, ratio, auth, and low-level utilities. - Framework — what a plugin is and how it's built and installed: the plugin model, base types, and setup, plus the PluginRepo, the PluginSetupProcessor, the factories, and the registries.
From there, plugins are the concrete governance modules built on all three.