CCL Charter Templates
Starter charters for common institutional types on ICN. Each template defines governance parameters, committee delegation, trust thresholds, and budget authority. Customize to fit your institution.
These are written in CCL (Cooperative Contract Language) YAML format. When ratified via a Charter governance proposal, they're deployed to the CharterPolicyOracle and enforced by the kernel.
Template 1: Federation of Cooperatives
Use when: A network of independent cooperatives coordinating through a shared governance layer. Each member co-op retains sovereignty. The federation governs shared concerns.
Reference implementation: NYCN
# federation-charter.yaml
charter:
name: "Regional Cooperative Federation"
version: 1
entity_type: federation
# ─── Federation Governance ───────────────────────────
governance:
# Who can vote on federation-level decisions
eligible_voters: federated_members
decisions:
# Admitting new member organizations
membership_admission:
threshold: simple_majority
quorum: 0.5
deliberation_period_hours: 72
voting_period_hours: 168 # 7 days
# Changing the charter itself
charter_amendment:
threshold: supermajority_two_thirds
quorum: 0.5
deliberation_period_hours: 168 # 7 days
voting_period_hours: 336 # 14 days
# Removing a member organization
member_removal:
threshold: supermajority_two_thirds
quorum: 0.6
deliberation_period_hours: 168
voting_period_hours: 336
# Federation-wide initiatives and resolutions
initiative:
threshold: simple_majority
quorum: 0.4
deliberation_period_hours: 72
voting_period_hours: 168
# ─── Operational Body ────────────────────────────────
# The entity that executes federation mandates
operations:
entity_type: cooperative
governance:
eligible_voters: steering_members
decisions:
budget_approval:
threshold: supermajority_two_thirds
quorum: 0.5
deliberation_period_hours: 72
voting_period_hours: 168
venue_selection:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 120 # 5 days
program_approval:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 120
spending_above_threshold:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 72 # 3 days
new_committee:
threshold: simple_majority
quorum: 0.5
deliberation_period_hours: 48
voting_period_hours: 120
emergency_freeze:
threshold: supermajority_two_thirds
quorum: 0.3 # Lower quorum for emergencies
voting_period_hours: 24 # Fast action
# ─── Committee Delegation ────────────────────────────
committees:
defaults:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 72
delegation_rules:
# What committees can decide without escalating
- committee: content
autonomous_scope:
- "Approve individual sessions"
- "Assign speakers to sessions"
- "Set session schedule within approved structure"
escalation_required:
- "Overall program structure (tracks, keynote, session count)"
- "Speaker fees above $200"
- committee: finance
autonomous_scope:
- "Accept sponsorships up to $500"
- "Process routine expenses within allocation"
- "Generate financial reports"
escalation_required:
- "Sponsorships above $500"
- "Budget amendments"
- "New expense categories"
- committee: logistics
autonomous_scope:
- "Vendor selection within budget"
- "Day-of operational decisions"
escalation_required:
- "Venue selection"
- "Contracts above $1,000"
- committee: marketing
autonomous_scope:
- "Campaign execution within budget"
- "Social media and email content"
- "Design and branding decisions"
escalation_required:
- "Spending above allocation"
- "Partnership agreements"
# ─── Trust Thresholds ────────────────────────────────
trust:
thresholds:
propose_discussion: 0.0 # Anyone can start a discussion
vote_committee: 0.1 # Minimal participation required
propose_budget_change: 0.5 # Established contributor
committee_coordinator: 0.5 # Proven track record
steering_membership: 0.7 # Core leadership
charter_amendment: 0.7 # High trust for constitutional changes
# ─── Budget Authority ────────────────────────────────
budget:
spending_threshold: 500 # USD — above this requires steering approval
currency: USD
# Committees receive allocations; spending within allocation is autonomous
committee_allocations:
approval_required: steering
approval_threshold: supermajority_two_thirds
# Individual expenses within allocation
expense_approval:
within_allocation: autonomous # Committee coordinator approves
above_allocation: steering # Requires budget amendment proposal
# ─── Membership Tiers ───────────────────────────────
membership:
tiers:
- name: full_member
entity_types: [cooperative]
role: federated_member
rights: [vote, propose, treasury_access, invite]
obligations:
- "Maintain active participation"
- "Adhere to charter"
- "Send delegate to annual meeting"
- name: affiliate
entity_types: [cooperative, community]
role: associate_member
rights: [vote_limited, propose_limited]
obligations:
- "Aligned mission"
- name: emerging
entity_types: [community]
role: provisional_member
rights: [propose_community]
obligations:
- "Working toward cooperative formation"
- name: individual
entity_types: [individual]
role: member
rights: [vote_in_committees, propose]
- name: observer
entity_types: [individual, cooperative]
role: observer_member
rights: [read_only]
Template 2: Worker Cooperative
Use when: A single worker-owned cooperative where members share ownership and governance equally. All workers are member-owners with equal voting rights.
# worker-coop-charter.yaml
charter:
name: "Worker Cooperative"
version: 1
entity_type: cooperative
governance:
eligible_voters: all_members
decisions:
# Day-to-day operational decisions
operational:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 48
# Financial decisions above threshold
financial:
threshold: simple_majority
quorum: 0.6
voting_period_hours: 72
# New member admission
membership:
threshold: supermajority_two_thirds
quorum: 0.6
deliberation_period_hours: 168 # 7 days
voting_period_hours: 168
# Charter changes
constitutional:
threshold: supermajority_two_thirds
quorum: 0.75
deliberation_period_hours: 336 # 14 days
voting_period_hours: 336
# Emergency actions
emergency:
threshold: supermajority_two_thirds
quorum: 0.3
voting_period_hours: 24
# Worker co-ops are typically flat — no committees by default
# Add committees section if needed as the co-op grows
trust:
thresholds:
propose_operational: 0.0 # Any worker-member
propose_financial: 0.2 # Some track record
propose_membership: 0.3 # Established member
propose_constitutional: 0.5 # Senior member
officer_eligibility: 0.5 # Board/officer candidates
budget:
spending_threshold: 200 # Above this needs a vote
currency: USD
expense_approval:
below_threshold: any_member # Anyone can approve small expenses
above_threshold: membership_vote # Requires collective decision
membership:
probationary_period_days: 90 # New workers serve probation
buy_in_required: true # Member equity contribution
roles:
- name: worker_owner
role: worker
rights: [vote, propose, treasury_access]
- name: probationary
role: provisional_member
rights: [propose]
# Cannot vote until probation ends
- name: board_member
role: board_member
rights: [vote, propose, treasury_access, configure]
# Elected by worker-owners
- name: officer
role: officer
rights: [vote, propose, treasury_access, sign, configure]
# Elected for specific titles (president, treasurer, secretary)
# ─── Surplus Distribution ────────────────────────────
surplus:
# How profits are distributed
allocation:
reserves: 0.20 # 20% to reserves
member_dividends: 0.60 # 60% to workers based on patronage
community_fund: 0.10 # 10% to community
education: 0.10 # 10% to education/training
patronage_basis: hours_worked # Dividends proportional to labor
Template 3: Community Organization
Use when: A community group, mutual aid network, or civic organization focused on collective action and shared governance. May or may not handle money.
# community-charter.yaml
charter:
name: "Community Organization"
version: 1
entity_type: community
governance:
eligible_voters: all_active_members
decisions:
# General community decisions
general:
threshold: simple_majority
quorum: 0.3 # Lower quorum — community orgs have variable attendance
voting_period_hours: 120 # 5 days
# Spending community funds (if any)
financial:
threshold: simple_majority
quorum: 0.4
voting_period_hours: 72
# New member admission
membership:
threshold: simple_majority
quorum: 0.3
voting_period_hours: 72
# Many community orgs have open membership — set threshold low
# Leadership elections
elections:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 168
# Charter changes
constitutional:
threshold: supermajority_two_thirds
quorum: 0.4
deliberation_period_hours: 168
voting_period_hours: 336
# ─── Working Groups ─────────────────────────────────
working_groups:
# Community orgs often use working groups instead of formal committees
formation: proposal # New groups require a governance proposal
defaults:
threshold: simple_majority
quorum: 0.5
voting_period_hours: 48
# Working groups are autonomous within their scope
# but cannot commit the community to financial obligations
delegation:
autonomous:
- "Planning within scope"
- "Recruiting volunteers"
- "Scheduling activities"
requires_community_approval:
- "Any financial commitment"
- "Public statements on behalf of community"
- "Partnerships or agreements"
trust:
thresholds:
join_community: 0.0 # Open membership
propose_activity: 0.0 # Anyone can propose
vote: 0.05 # Minimal participation
lead_working_group: 0.3 # Some track record
propose_financial: 0.3 # Trusted with money decisions
leadership_eligible: 0.4 # Can serve as coordinator
membership:
# Open membership is common for community orgs
admission: open # or "proposal" for gated membership
roles:
- name: community_member
role: member
rights: [vote, propose]
- name: coordinator
role: officer
title: "Coordinator"
rights: [vote, propose, invite, configure]
- name: working_group_lead
role: custom
name: "Working Group Lead"
rights: [vote, propose, invite]
Template 4: Multi-Stakeholder Cooperative
Use when: A cooperative with multiple member classes (workers, consumers, community members, investors) who have different governance weights and rights.
# multistakeholder-charter.yaml
charter:
name: "Multi-Stakeholder Cooperative"
version: 1
entity_type: cooperative
governance:
# Multi-stakeholder co-ops often use weighted voting by class
voting_model: stakeholder_weighted
stakeholder_classes:
- name: workers
weight: 0.40 # 40% of voting power
eligible_role: worker
- name: consumers
weight: 0.30 # 30% of voting power
eligible_role: consumer
- name: community
weight: 0.20 # 20% of voting power
eligible_role: member
- name: investors
weight: 0.10 # 10% of voting power
eligible_role: associate_member
decisions:
operational:
threshold: simple_majority # Within each class
quorum: 0.5
voting_period_hours: 72
financial:
threshold: simple_majority
quorum: 0.6
voting_period_hours: 120
membership:
threshold: supermajority_two_thirds
quorum: 0.5
voting_period_hours: 168
constitutional:
threshold: supermajority_two_thirds
quorum: 0.6
# Constitutional changes require majority in EACH class
per_class_approval: true
deliberation_period_hours: 336
voting_period_hours: 336
trust:
thresholds:
propose: 0.1
vote: 0.05
board_eligible: 0.5
officer_eligible: 0.6
membership:
classes:
- name: worker_member
role: worker
buy_in: true
probation_days: 90
rights: [vote, propose, treasury_access]
- name: consumer_member
role: consumer
buy_in: true # Usually smaller share
rights: [vote, propose]
- name: community_member
role: member
buy_in: false
rights: [vote, propose]
- name: investor_member
role: associate_member
buy_in: true # Preferred shares
rights: [vote_limited, propose_limited]
# Investor class has limited governance to prevent capital capture
surplus:
allocation:
reserves: 0.20
worker_dividends: 0.35 # Based on patronage (hours)
consumer_dividends: 0.15 # Based on patronage (purchases)
community_fund: 0.15
investor_return: 0.10 # Capped return on investment
education: 0.05
# ─── Anti-Capture Provisions ─────────────────────────
safeguards:
# Prevent any single class from dominating
max_class_weight: 0.50 # No class can exceed 50% voting power
investor_return_cap: 0.08 # 8% maximum annual return
worker_class_floor: 0.30 # Workers always have at least 30%
Using a Template
- Choose the template closest to your institutional type
- Customize governance thresholds, trust levels, committee structure, and budget rules
- Save as a YAML file
- Submit as a
Charterproposal via the gateway API - Vote to ratify with your founding members
- Deploy — on ratification, the charter engine begins enforcing the rules
Customization Checklist
Before ratifying, review:
- Quorum thresholds — too high means decisions stall; too low means minority rule
- Voting periods — long enough for participation, short enough for action
- Deliberation periods — skip for routine decisions, require for constitutional changes
- Spending thresholds — what dollar amount triggers escalation
- Trust thresholds — balance accessibility with accountability
- Committee delegation — what can committees do without full-body approval
- Membership admission — open, proposal-based, or invitation-only
- Surplus distribution — only if the institution handles revenue
See Also
- Institution Setup Guide — Full bootstrap walkthrough
- Governance Playbook — Common decision patterns
- Entity Topology Patterns — Organizational structures