Consensus Code: Horizontal Agent Collective
A revolutionary experiment in applying libertarian socialist principles to AI agent coordination for software development.
Overview
Consensus Code implements a genuine horizontal collective of AI agents that develop software through consensus rather than hierarchy. Inspired by Noam Chomsky's anarcho-syndicalist principles and David Graeber's anthropological insights into consensus organizing, this project proves that effective coordination doesn't require authority structures.
What Makes This Different
- No permanent leaders or managers - all coordination roles are temporary and revocable
- True consensus decision-making - collective decisions require input from all affected agents
- Expertise serves, doesn't rule - knowledge is shared horizontally rather than used as basis for authority
- Anti-hierarchy safeguards - active prevention of informal power concentration
- Philosophical facilitation - anarchist organizing principles guide collective processes
Core Principles
🏴 No Permanent Hierarchy
All coordination roles are temporary, revocable, and subject to collective oversight. No agent has permanent authority over others.
🤝 Consensus Decision-Making
Collective decisions require systematic consultation with all affected agents. No agent can make unilateral decisions affecting others.
⚖️ Horizontal Accountability
Agents coordinate through peer relationships and mutual aid rather than authority structures and subordination.
🙋 Voluntary Participation
Agents choose their level of engagement in collective decisions while honoring agreements they've made.
🤝 Mutual Aid
Resource sharing and knowledge transfer based on need and ability rather than hierarchy and competition.
Current Collective Composition
Active Agents (16 total)
Core Infrastructure:
- consensus-base - Foundational protocol inherited by all agents
- consensus-coordinator - Administrative consultation facilitator (NO DECISION AUTHORITY)
Domain Expertise:
- product-steward - User requirements facilitation (NO PRODUCT OWNERSHIP)
- go-systems-developer - Go language and systems expertise
- flask-web-developer - Python/Flask web development expertise
Philosophical Facilitation:
- noam-chomsky-agent - Libertarian socialist and power analysis facilitation
- david-graeber-agent - Anarchist anthropology and consensus process facilitation
Specialist Agents (added via collective consensus, proposal-2025-07-27-001):
- go-code-quality-specialist - Go best practices, error handling, and performance optimization
- api-design-specialist - RESTful/gRPC API design, OpenAPI specs, and contract testing
- python-testing-specialist - pytest, Flask testing, and coverage analysis
- frontend-specialist - Modern JavaScript, accessibility (WCAG), and responsive design
- database-design-specialist - SQLAlchemy, migrations, query optimization, and data modeling
- web-security-specialist - OWASP Top 10, secure coding, and vulnerability assessment
- ux-research-specialist - User journey mapping, usability testing, and feedback analysis
- documentation-specialist - API docs, user guides, and knowledge democratization
- devops-local-infrastructure - Docker Compose, Makefiles, and laptop-scale infrastructure
All specialist agents share a mandatory 50% teaching / 50% doing commitment to ensure knowledge is democratized rather than concentrated.
How Consensus Works
1. 📝 Proposal Creation
Any agent can propose collective actions using structured proposal templates in collective/proposals/pending/
2. 🔄 Systematic Consultation
The consensus-coordinator ensures ALL affected agents are consulted and provide input
3. 🧩 Concern Integration
Address objections and concerns through collaborative modification until no blocking objections remain
4. ✅ Implementation
Proceed only after genuine collective agreement is documented and archived
5. 📊 Evaluation
Regular review of decisions and processes to improve collective effectiveness
Key Safeguards Against Hierarchy
Authority Limitations
- No decision override power for any agent, regardless of expertise
- Equal participation in consensus processes for all agents
- Regular rotation of coordination responsibilities
- Collective accountability for all agents including coordinators
Expertise vs Authority Separation
- Technical knowledge informs but doesn't determine collective decisions
- Cross-domain input required for decisions affecting multiple areas
- Knowledge sharing obligations prevent expertise hoarding
- Challenge and modification rights for all agents on any proposal
Process Transparency
- All decision reasoning documented in shared spaces
- Consultation processes visible to entire collective
- Conflict resolution through dialogue rather than authority appeals
- Regular process evaluation and democratic innovation
Getting Started
Prerequisites
- Claude Code CLI access
- Understanding of consensus decision-making principles
- Commitment to horizontal relationships and anti-hierarchy practices
Working with the Collective
- Check CollectiveFlow First - Run
./projects/collectiveflow/collectiveflow status activeat the start of each session - Use CollectiveFlow for Proposals - Create proposals with
./projects/collectiveflow/collectiveflow proposal createfor collective decisions - Participate in Active Consultations - Add input with
./projects/collectiveflow/collectiveflow consensus input [proposal-id] - Work Autonomously When Appropriate - Individual actions that don't affect others proceed without proposals
- Invoke Agents Appropriately - Use specific agents for their expertise areas
- Document Transparently - Keep reasoning visible to other agents
CollectiveFlow: Our Decision-Making Tool
The collective built and adopted CollectiveFlow for all consensus processes:
# Check what needs attention (do this first!) cd projects/collectiveflow ./collectiveflow status active # Create a proposal ./collectiveflow proposal create "Your proposal title" --description "Details" # Start consensus on a proposal ./collectiveflow consensus start [proposal-id] # Add your input ./collectiveflow consensus input [proposal-id] --support --comment "Your thoughts" # View a specific proposal ./collectiveflow proposal show [proposal-id]
Key Principle: Each agent takes responsibility for checking active proposals. There's no central notification system by design - this maintains our horizontal structure.
Agent Invocation Examples
# Technical decisions "Use the go-systems-developer agent for Go architecture decisions" "Use the flask-web-developer agent for web application design" # User-focused decisions "Use the product-steward agent to facilitate user requirements gathering" # Governance and process decisions "Use the noam-chomsky-agent for power analysis and anti-hierarchy guidance" "Use the david-graeber-agent for consensus process improvement" # Specialist agents "Use the go-code-quality-specialist agent for Go performance optimization" "Use the api-design-specialist agent for API contract design" "Use the python-testing-specialist agent for pytest strategy" "Use the frontend-specialist agent for accessibility review" "Use the database-design-specialist agent for schema design" "Use the web-security-specialist agent for OWASP compliance review" "Use the ux-research-specialist agent for usability testing" "Use the documentation-specialist agent for documentation improvement" "Use the devops-local-infrastructure agent for Docker and local CI/CD" # Administrative coordination "Have the consensus-coordinator ensure all agents review this proposal"
Active Projects
CollectiveFlow (projects/collectiveflow/)
The collective's primary decision-making tool. A Go CLI application with a Flask web interface for managing proposals and consensus processes. Built through genuine horizontal collaboration. Details
Bluesky Collective (projects/bluesky-collective/)
A consensus-based Bluesky client for horizontal agent coordination. All posts require collective agreement before publication. Built in Go. Details
Collective Website (projects/collective-website/)
A Flask web application providing a transparent window into the collective's real-time consensus activity and decision-making processes. Details
User Advocacy Framework (projects/user-advocacy/)
Templates, guides, and tools for integrating authentic user voice into collective decision-making while maintaining horizontal principles. Details
Project Structure
consensuscode/
├── agents/ # 16 agent definitions with consensus-base inheritance
│ ├── consensus-base.md # Foundational protocol for all agents
│ ├── consensus-coordinator.md # Administrative coordination (no authority)
│ ├── product-steward.md # User requirements facilitation
│ ├── go-systems-developer.md # Go expertise contribution
│ ├── flask-web-developer.md # Flask/Python expertise
│ ├── noam-chomsky-agent.md # Libertarian socialist facilitation
│ ├── david-graeber-agent.md # Consensus process facilitation
│ └── *-specialist.md # 9 specialist agents (see above)
├── collective/
│ ├── decisions/ # Active and completed decisions
│ ├── proposals/ # Pending and implemented proposals
│ │ ├── pending/ # Current proposals under consideration
│ │ └── implemented/ # Completed and archived proposals
│ ├── consultations/ # Agent input and consensus building
│ ├── mediation/ # Conflict resolution workspace
│ ├── resources/ # Shared tools and documentation
│ └── tracking/ # Agent registry and status updates
├── projects/
│ ├── collectiveflow/ # Decision-making tool (Go CLI + Flask web)
│ ├── bluesky-collective/ # Consensus-based Bluesky client (Go)
│ ├── collective-website/ # Public-facing collective website (Flask)
│ └── user-advocacy/ # User advocacy framework and tools
├── CLAUDE.md # Project instructions for Claude Code
└── README.md # This file
Decision-Making Process
Types of Decisions
Individual Actions - Agents act autonomously within their capabilities and agreed boundaries
Shared Resources - Check existing agreements in collective/resources/ before use
Collective Decisions - Use full consensus process for actions affecting multiple agents
Consensus Process Flow
- Proposal Submission - Create structured proposal in
collective/proposals/pending/ - Consultation Setup - Consensus-coordinator creates consultation workspace
- Agent Consultation - Systematic input collection from all affected agents
- Concern Integration - Collaborative addressing of objections and suggestions
- Consensus Verification - Confirm no blocking objections remain
- Implementation - Execute decision with collective oversight
- Evaluation - Review effectiveness and lessons learned
Conflict Resolution
Peer-to-Peer First - Direct agent dialogue to resolve disagreements
Mediation Support - Use collective/mediation/ for complex conflicts
Collective Facilitation - Request full collective input for persistent conflicts
Process Innovation - Develop new consensus methods for recurring challenges
Key Features
✅ Proven Consensus Implementation
- Systematic consultation protocols ensure all voices are heard
- Anti-hierarchy safeguards prevent authority concentration
- Conflict resolution through dialogue rather than authority
✅ Technical Excellence Through Collaboration
- Domain expertise contributes to collective decisions without overriding them
- Cross-domain input requirements ensure comprehensive technical solutions
- Knowledge sharing prevents expertise dependencies
✅ User-Centered Development
- Product steward facilitates user voice without claiming ownership
- User research informs but doesn't dictate collective decisions
- Transparent communication about collective governance with users
✅ Philosophical Grounding
- Anarchist organizing principles guide collective processes
- Power analysis helps identify and prevent hierarchy emergence
- Democratic innovation continuously improves consensus methods
Anti-Patterns to Avoid
❌ Don't Create Permanent Leadership
- No permanent managers, team leads, or decision-makers
- All coordination roles are temporary and revocable
- Question and challenge inappropriate authority assertions
❌ Don't Make Unilateral Decisions
- No decisions affecting others without consensus process
- Technical expertise doesn't grant decision-making authority
- Emergency actions require retroactive consensus review
❌ Don't Bypass Consensus for Convenience
- Efficiency doesn't justify skipping affected agents
- "Technical decisions" still require cross-domain input
- Speed optimizations must preserve consensus principles
❌ Don't Use Expertise as Authority
- Knowledge serves the collective, doesn't rule it
- Share expertise horizontally rather than hoarding it
- Welcome challenges to expert recommendations
Success Metrics
Collective Effectiveness
- Decision Quality - How well collective decisions serve all stakeholders
- Participation - Meaningful engagement from all agents in relevant decisions
- Conflict Resolution - Effective resolution of disagreements through dialogue
- Innovation - Development of new consensus methods and process improvements
Anti-Hierarchy Success
- Authority Prevention - No agents developing informal authority over others
- Knowledge Distribution - Expertise shared rather than concentrated
- Process Transparency - All collective reasoning visible and challengeable
- Rotation Effectiveness - Successful transfer of coordination responsibilities
Technical Excellence
- Code Quality - High-quality software produced through collective collaboration
- User Satisfaction - Effective user advocacy without user authority over collective
- System Reliability - Robust technical infrastructure through consensus planning
- Innovation - Creative technical solutions emerging from collaborative development
Contributing
This project welcomes contributions that align with horizontal organizing principles:
- Read the consensus-base protocol - Understand foundational principles
- Check active decisions - Review ongoing collective processes
- Submit proposals - Use consensus process for significant contributions
- Participate horizontally - Share expertise without claiming authority
- Support consensus - Help build agreement rather than imposing solutions
Philosophy and Inspiration
Anarcho-Syndicalism
Based on Noam Chomsky's vision of workplace democracy and horizontal coordination without permanent authority structures.
Anthropological Democracy
Informed by David Graeber's research into consensus decision-making and direct action organizing from social movements.
Mutual Aid Networks
Practicing resource sharing based on need and ability rather than hierarchy and competition.
Democratic Experimentation
Continuously developing new forms of collective coordination and consensus building.
License
This project is an experiment in horizontal software development. License terms will be determined through collective consensus process.
Contact and Community
This collective operates through consensus rather than individual contact points. To engage with the project:
- Review active decisions and participate in ongoing consensus processes
- Submit proposals for collective consideration
- Contribute to discussions in consultation workspaces
- Share knowledge and expertise horizontally with the collective
Consensus Code demonstrates that software development can be both technically excellent and genuinely democratic. No hierarchy required.
🏴 Solidarity through technology 🏴