Skip to content

MosslandOpenDevs/agentic-orchestrator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

143 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Mossland Agentic Orchestrator

ν•œκ΅­μ–΄ | English

An autonomous multi-agent orchestration system for discovering, planning, and implementing micro Web3 services for the Mossland ecosystem.

Version: v0.6.8 "Stable Planner"

Key Features

  • Multi-Stage Debate: 34 AI agents with diverse personas debate through 3 phases (Divergence β†’ Convergence β†’ Planning)
  • Diverse Signal Sources: RSS, GitHub Events, On-Chain data, Social Media, News API
  • Hybrid LLM Routing: Local Ollama models + Cloud API fallback with intelligent routing
  • Human-in-the-Loop: Humans select which ideas to develop via label promotion
  • PM2 Scheduling: Automated task scheduling with PM2 (signals, debates, backlog, health checks)
  • CLI-Style Dashboard: Retro terminal-themed web interface at https://ao.moss.land
  • REST API: FastAPI backend for programmatic access

Dashboard

A Next.js-based CLI-style dashboard for monitoring the orchestrator in real-time.

URL: https://ao.moss.land

Pages

Page Description
/ Dashboard with pipeline, activity feed, and statistics
/trends Trend analysis results from signal sources
/backlog Ideas and plans backlog with GitHub links
/system System architecture and multi-agent debate visualization
/agents 34 AI agent personas across 3 debate phases

Running Locally

cd website
pnpm install
pnpm dev

Open http://localhost:3000 to view the dashboard.

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                         SIGNAL COLLECTION                                β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”           β”‚
β”‚  β”‚   RSS   β”‚ β”‚ GitHub  β”‚ β”‚On-Chain β”‚ β”‚ Social  β”‚ β”‚News API β”‚           β”‚
β”‚  β”‚ Adapter β”‚ β”‚ Events  β”‚ β”‚ Adapter β”‚ β”‚ Media   β”‚ β”‚ Adapter β”‚           β”‚
β”‚  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜           β”‚
β”‚       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                 β”‚
β”‚                               β–Ό                                          β”‚
β”‚                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                                  β”‚
β”‚                    β”‚ Signal Aggregator β”‚                                  β”‚
β”‚                    β”‚   + Scorer        β”‚                                  β”‚
β”‚                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                             β–Ό                                            β”‚
β”‚                  MULTI-STAGE DEBATE (34 Agents)                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”‚
β”‚  β”‚ Phase 1: DIVERGENCE (12 agents)                                 β”‚     β”‚
β”‚  β”‚   Innovator, Skeptic, Pragmatist, Visionary...                 β”‚     β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€     β”‚
β”‚  β”‚ Phase 2: CONVERGENCE (12 agents)                                β”‚     β”‚
β”‚  β”‚   Synthesizer, Evaluator, Prioritizer, Risk Assessor...        β”‚     β”‚
β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€     β”‚
β”‚  β”‚ Phase 3: PLANNING (10 agents)                                   β”‚     β”‚
β”‚  β”‚   Architect, Project Manager, Technical Lead...                β”‚     β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                  LLM ROUTER (Ollama-only by default)                     β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚
β”‚  β”‚   Local (Ollama)         β”‚    β”‚   Cloud API (opt-in via flag)   β”‚   β”‚
β”‚  β”‚   - qwen2.5:14b (plan)   β”‚    β”‚   - Claude / OpenAI / Gemini    β”‚   β”‚
β”‚  β”‚   - qwen3.5:9b           β”‚    β”‚   Disabled when                 β”‚   β”‚
β”‚  β”‚   - gemma4:e4b           β”‚    β”‚   MOSS_LOCAL_LLM_ONLY=true      β”‚   β”‚
β”‚  β”‚   - qwen3.5:4b (fast)    β”‚    β”‚                                  β”‚   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Quick Start

1. Installation

# Clone and install
git clone https://github.com/MosslandOpenDevs/agentic-orchestrator.git
cd agentic-orchestrator

# Create Python virtual environment (Python 3.12 required)
python3.12 -m venv .venv
source .venv/bin/activate
pip install -e .
pip install uvicorn fastapi pyyaml

# Configure environment
cp .env.example .env
# Edit .env with your API keys

2. Start Services with PM2

# Install PM2 globally
npm install -g pm2

# Start all services
pm2 start ecosystem.config.js

# Or start specific services
pm2 start ecosystem.config.js --only moss-ao-web
pm2 start ecosystem.config.js --only moss-ao-api

3. Access the Dashboard

PM2 Services

Service Schedule Description
moss-ao-signals Every 30 min Collect signals from all adapters
moss-ao-debate Every 6 hours Run multi-stage AI debate
moss-ao-backlog Daily at midnight Process pending backlog items
moss-ao-web Always on Next.js dashboard (port 3000)
moss-ao-api Always on FastAPI backend (port 3001)
moss-ao-health Every 5 min System health monitoring

PM2 Commands

# View all services
pm2 status

# View logs
pm2 logs moss-ao-web
pm2 logs moss-ao-api

# Restart a service
pm2 restart moss-ao-web

# Stop all services
pm2 stop all

# Monitor resources
pm2 monit

API Endpoints

The FastAPI backend provides REST API access:

Endpoint Method Description
/health GET Health check
/status GET System status
/signals GET List recent signals
/debates GET List debate results
/agents GET List agent personas
/docs GET Swagger documentation

Multi-Stage Debate System

Phase 1: Divergence (12 Agents)

Generate diverse ideas and perspectives:

  • Innovator: Creative breakthrough ideas
  • Skeptic: Critical analysis and risk identification
  • Pragmatist: Practical implementation focus
  • Visionary: Long-term strategic thinking
  • And 8 more specialized agents...

Phase 2: Convergence (12 Agents)

Synthesize and evaluate ideas:

  • Synthesizer: Combine related ideas
  • Evaluator: Score and rank proposals
  • Prioritizer: Determine execution order
  • Risk Assessor: Identify potential issues
  • And 8 more specialized agents...

Phase 3: Planning (10 Agents)

Create actionable implementation plans:

  • Architect: System design
  • Project Manager: Task breakdown
  • Technical Lead: Technology decisions
  • Resource Planner: Resource allocation
  • And 6 more specialized agents...

Agent Personality System

Each agent has a 4-axis personality profile:

  • Creativity: Innovation vs. Convention (0-10)
  • Analytical: Data-driven vs. Intuitive (0-10)
  • Risk Tolerance: Aggressive vs. Conservative (0-10)
  • Collaboration: Team-oriented vs. Independent (0-10)

Signal Sources

RSS Feeds

17 feeds across 5 categories:

  • AI: OpenAI, Google AI, arXiv, TechCrunch, Hacker News
  • Crypto: CoinDesk, Cointelegraph, Decrypt, The Defiant, CryptoSlate
  • Finance: CNBC Finance
  • Security: The Hacker News, Krebs on Security
  • Dev: The Verge, Ars Technica, Stack Overflow Blog

GitHub Events

  • Repository activity tracking
  • Trending projects monitoring
  • Issue and PR analysis

On-Chain Data

  • MOC token transactions
  • Smart contract events
  • DeFi protocol metrics

Social Media

  • X (Twitter) mentions
  • Community sentiment analysis

News API

  • Real-time news aggregation
  • Keyword-based filtering

Environment Variables

Variable Description Required
GITHUB_TOKEN GitHub PAT (Issues, Labels) Yes
GITHUB_OWNER Repository owner Yes
GITHUB_REPO Repository name Yes
ANTHROPIC_API_KEY Claude API key For cloud mode
OPENAI_API_KEY OpenAI API key For cloud mode
GEMINI_API_KEY Gemini API key For cloud mode
OLLAMA_HOST Ollama server URL For local mode

Project Structure

agentic-orchestrator/
β”œβ”€β”€ ecosystem.config.js      # PM2 configuration
β”œβ”€β”€ .venv/                   # Python virtual environment
β”œβ”€β”€ src/agentic_orchestrator/
β”‚   β”œβ”€β”€ adapters/            # Signal source adapters
β”‚   β”‚   β”œβ”€β”€ rss.py
β”‚   β”‚   β”œβ”€β”€ github_events.py
β”‚   β”‚   β”œβ”€β”€ onchain.py
β”‚   β”‚   β”œβ”€β”€ social_media.py
β”‚   β”‚   └── news_api.py
β”‚   β”œβ”€β”€ api/                 # FastAPI backend
β”‚   β”‚   └── main.py
β”‚   β”œβ”€β”€ cache/               # Caching layer
β”‚   β”œβ”€β”€ db/                  # Database models & repositories
β”‚   β”œβ”€β”€ debate/              # Multi-stage debate system
β”‚   β”‚   β”œβ”€β”€ protocol.py
β”‚   β”‚   └── multi_stage.py
β”‚   β”œβ”€β”€ llm/                 # LLM routing
β”‚   β”‚   └── router.py
β”‚   β”œβ”€β”€ personas/            # 34 agent definitions
β”‚   β”œβ”€β”€ providers/           # LLM providers (Ollama, APIs)
β”‚   β”œβ”€β”€ scheduler/           # PM2 task implementations
β”‚   β”‚   β”œβ”€β”€ __main__.py
β”‚   β”‚   └── tasks.py
β”‚   └── signals/             # Signal processing
β”œβ”€β”€ website/                 # Next.js dashboard
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/             # Pages
β”‚   β”‚   └── components/      # React components
β”‚   └── package.json
└── logs/                    # PM2 log files

Development

Running Tests

pytest tests/ -v

Building the Website

cd website
pnpm build

Manual Task Execution

# Signal collection
python -m agentic_orchestrator.scheduler signal-collect

# Run debate
python -m agentic_orchestrator.scheduler run-debate

# Process backlog
python -m agentic_orchestrator.scheduler process-backlog

# Health check
python -m agentic_orchestrator.scheduler health-check

License

MIT License - see LICENSE for details.


Built for the Mossland ecosystem - human-guided, AI-powered innovation.

v0.6.8 "Stable Planner" - qwen2.5:14b top-tier planning, .env-driven Ollama routing

About

An autonomous Orchestration Engine that conducts a swarm of AI agents to build software. OpenSource infrastructure for Mossland's Physical AI ecosystem.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors