Institutional governance for on-chain organisations.
Powers lets you build DAOs where every action flows through a single hub contract (Powers.sol) and all governance logic lives in swappable external mandate contracts. One account, one vote — no token-weighted voting in the core.
| Package | Tech | Purpose |
|---|---|---|
solidity/ |
Foundry | Core protocol + mandate contracts |
frontend/ |
Next.js 14, Wagmi/Viem, Privy | dApp interface |
governance-rag/ |
Claude Code skill, RAG (MCP) | /design-org — AI-assisted org design |
ai-agent/ |
TypeScript, Claude API | Autonomous governance agent |
xmtp-agent/ |
TypeScript, XMTP Agent SDK | Governance group chat management |
documentation/ |
Astro + Starlight | Documentation site |
Two new tools ship alongside the core protocol.
A Claude Code slash command that guides any developer (or non-technical governance designer) through specifying an on-chain organisation. One conversation produces a full deployment package:
- A human-readable governance spec (
Spec.md) - A Foundry deploy script
- Propose/execute action helpers
- An end-to-end fork test
Quick start:
# 1. Build the RAG index (one-time, ~2–5 min on first run)
cd governance-rag && pnpm install && pnpm ingest
# 2. Restart Claude Code — the MCP server registers automatically
# 3. In any Claude Code session inside this repo, type:
/design-orgSee governance-rag/README.md for the full setup guide and how to port the skill to another project.
An autonomous Claude-powered agent that lives inside your governance group chats. It watches on-chain events, reads proposals, votes, and executes passed actions. You define its behaviour by giving it skills — lightweight tools that let it fetch external data (prices, proposals, off-chain documents) before making decisions.
The agent exposes a REST API so you can start sessions, add skills, and configure organisations programmatically.
See ai-agent/README.md for setup and deployment, and ai-agent/src/ai/tools/README.md for the full skills reference.
- Foundry —
curl -L https://foundry.paradigm.xyz | bash && foundryup - Node.js 18+ and pnpm —
npm install -g pnpm
git clone https://github.com/publius-projects/powers-monorepo.git
cd powers-monorepo# Terminal 1 — local chain
anvil
# Terminal 2 — deploy contracts
cd solidity && make initialise-anvil
# Terminal 3 — frontend
cd frontend && pnpm install && pnpm devOpen http://localhost:3000, scroll to Deploy a Demo, select a demo organisation and the Anvil chain.
Separation of powers — governance logic is split across roles. One role proposes, another vetos, a third executes. All flows are auditable on-chain.
Mandates — the governance modules. Each mandate encodes a single rule (who can propose, vote thresholds, time locks, external conditions). Compose them to build any governance structure.
One account, one vote — token-weighted influence can only appear in how role holders are selected (e.g. token delegation), never in the vote itself.
See the documentation for the full protocol guide and mandate catalogue.
| Network | Chain ID |
|---|---|
| Ethereum Sepolia | 11155111 |
| Arbitrum Sepolia | 421614 |
| Optimism Sepolia | 11155420 |
| Local Anvil | 31337 |
- Solidity 0.8.30 · Foundry · OpenZeppelin 5
- Next.js 14 · Wagmi / Viem · Privy
- Claude API (Anthropic) · XMTP Agent SDK
Invcbull Audit Group · Arnold Almeida · James M · Paulo Fonseca · Andrei V · Arbitrum DAO · RnDAO
MIT — see LICENSE.txt.
Seven Cedars — GitHub — cedars7@proton.me