The Operating System for Autonomous Software Teams
Project description
Squadron
Autonomous Agent Orchestration for your local machine.
Explore the docs »
Report Bug
·
Request Feature
Quick Start • Dashboard • Commands • Architecture • Skills • Testing • Roadmap
🔥 New in v0.5.0
| Feature | Description |
|---|---|
| 🎮 Control Plane Dashboard | Real-time web UI for managing agents via squadron server |
| 🐝 Swarm 2.0 | LLM-powered intelligent routing with agent-to-agent handoffs |
| 💬 Agent Communication | Agents can @mention each other and comment on tickets |
| 🧠 Persistent Memory | Semantic memory with ChromaDB - agents remember past work |
| 🧬 Evolution Layer | Self-improving skills with version control and rollback |
| ⏰ Wake Protocol | Autonomous execution: trigger → route → execute → report |
⚡ Install
pip install squadron-agents
That's it. You're ready.
🎮 Control Plane Dashboard
Squadron now includes a full Control Plane Dashboard for real-time agent management.
Screenshot needed: Main dashboard showing agent status cards, activity stream, and system stats
Features
- 📡 Live Activity Stream — Real-time SSE updates of agent actions
- 🤖 Agent Cards — View status, current objectives, and capabilities
- 💬 Console — Direct REPL-style chat with any agent
- 🚀 Missions — Track active/completed missions, trigger new ones
- 🔌 Integrations Panel — Send to Slack, Discord, Jira, GitHub from the UI
- ⚙️ Settings — System status and configuration reference
Running the Dashboard
# Start the API server
squadron server
# In another terminal, start the frontend
cd dashboard
npm run dev
Open http://localhost:3000 to access the dashboard.
Recording needed: Walkthrough of dashboard pages - Home → Agents → Console → Missions → Settings
🐝 Swarm 2.0 — Multi-Agent Orchestration
Squadron's Swarm system enables intelligent, autonomous agent coordination.
Screenshot needed: Dashboard showing a task being routed from user → Overseer → Agent
Key Features
- 🧠 LLM-Powered Routing — Gemini decides which agent handles each task
- 🤝 Agent Handoffs — Agents can delegate tasks to each other with context
- 📋 Task Queue — Priority-based task management
- 🔗 Delegation Chain — Full tracking of task ownership
# Example: Intelligent task routing
from squadron.swarm import route_task
result = route_task("Analyze the API performance and deploy the fix")
# Swarm routes to the best agent for each subtask
💬 Agent Communication
Agents can now communicate with each other through your ticket system.
Screenshot needed: Jira/Linear ticket with agent comments showing @mentions
Features
- @Mention Support — Tag agents in ticket comments to request help
reply_to_ticket()— Agents post updates directly on ticketstag_agent()— Request help from specific agents- Auto-Wake — Overseer wakes agents when tickets are assigned
# Overseer monitors and auto-wakes agents
squadron overseer --auto-wake
# Example ticket comment that triggers an agent:
# "@YourAgent please review the authentication changes"
🧠 Persistent Memory (Hippocampus)
Agents now have long-term memory powered by ChromaDB semantic search.
Screenshot needed: Console showing agent recalling relevant past conversations
Memory Types
| Type | Description |
|---|---|
| Conversation | Past chat history with context |
| Task | Completed tasks and their outcomes |
| Learning | Insights and knowledge gained |
| General | Miscellaneous memories |
API
from squadron.memory import remember, recall, get_context_for_task
# Store a memory
remember("User prefers TypeScript over JavaScript", agent="Atlas")
# Recall relevant memories
memories = recall("coding preferences", agent="Atlas")
# Get context for a new task
context = get_context_for_task("Set up the new frontend", agent="Atlas")
🧬 Evolution Layer
Squadron agents can evolve and improve their skills over time.
Screenshot needed: Dashboard showing skill registry with versions and quality scores
Features
- Skill Registry — Track all skills with version history
- Quality Scoring — Success/failure rate tracking
- Version Control — Rollback to previous skill versions
- Skill Creation — Agents can propose new skills
⏰ Wake Protocol
The Wake Protocol orchestrates autonomous agent execution.
Recording needed: Full flow of Overseer detecting ticket → waking agent → executing → reporting back
# Manually trigger the Wake Protocol
squadron wake --summary "Deploy the hotfix to production"
# Auto-wake runs automatically with overseer
squadron overseer --auto-wake --interval 30
Flow
- Trigger — New ticket detected or manual wake command
- Route — Swarm selects the best agent for the task
- Execute — Agent completes the work
- Report — Results posted back to the ticket
🎬 See It In Action
$ squadron report --msg "Refactored the auth module." --ticket "KAN-1"
🚀 Squadron Bridge Activated...
✅ Slack: Message sent to #general
✅ Jira: Comment added to KAN-1
One command. Multiple integrations. Zero context switching.
Recording needed: Terminal showing
squadron report,squadron broadcast, andsquadron prcommands
😤 The Problem
You're building with AI agents. They're powerful. They can write code, refactor systems, and solve complex problems.
But here's the frustrating reality:
| What You Want | What Actually Happens |
|---|---|
| Agent finishes a task | You don't know unless you check the terminal |
| Jira ticket should update | It stays in "To Do" forever |
| Team needs visibility | They have no idea what the AI is building |
| Agent A needs Agent B's help | They can't communicate |
| Agent worked on this before | It doesn't remember |
Your agents are trapped in a chat window. They can think, but they can't act in your team's workflow.
✨ The Solution
Squadron is a bridge that connects your local AI agents to your team's real tools.
┌─────────────────┐ ┌─────────────────┐
│ AI AGENTS │ │ YOUR TEAM │
│ (Your Agents) │ │ │
│ │ │ 📋 Jira/Linear │
│ "Task done!" │────────▶│ 💬 Slack │
│ │Squadron │ 🔔 Discord │
│ 🧠 Memory │ Bridge │ 🐙 GitHub │
│ 🔄 Handoffs │ │ 🎮 Dashboard │
└─────────────────┘ └─────────────────┘
Squadron gives your agents:
- 🗣️ A Voice — Post updates to Slack/Discord
- ✋ Hands — Update Jira tickets, create GitHub PRs
- 👀 Awareness — Overseer watches for new assignments
- 🧠 Memory — Remember past work and context
- 🤝 Collaboration — Hand off tasks to each other
- 🎮 Control — Real-time dashboard for management
🚀 Quick Start
1. Install
pip install squadron-agents
2. Configure
Create a .env file in your project root:
# Required: LLM Provider
GEMINI_API_KEY=your-gemini-key
# Jira
JIRA_SERVER=https://your-domain.atlassian.net
JIRA_EMAIL=your-email@example.com
JIRA_TOKEN=your-api-token
# Slack
SLACK_BOT_TOKEN=xoxb-your-bot-token
# Discord (optional)
DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/...
DISCORD_BOT_TOKEN=your-bot-token
# GitHub (optional)
GITHUB_TOKEN=ghp_your-token
# Linear (optional)
LINEAR_API_KEY=lin_api_...
3. Initialize
squadron init
This creates a squadron/knowledge/ folder in your project. Customize TEAM.md and ROLES.md here.
4. Learn
squadron learn
This scans your code and builds a map for the agent to use.
5. Test
squadron report --msg "Hello from Squadron!" --channel "#general"
If you see ✅ Slack: Message sent — you're live! 🎉
📖 Commands
Core Commands
| Command | Description |
|---|---|
squadron init |
Initialize Squadron in your project |
squadron learn |
Scan codebase and update knowledge |
squadron server |
Start the Control Plane API |
squadron listen |
Listen for @mentions in Slack |
squadron listen --discord |
Listen for @mentions in Discord |
squadron overseer |
Watch for new ticket assignments |
squadron wake |
Manually trigger the Wake Protocol |
Communication Commands
| Command | Description |
|---|---|
squadron report |
Send updates to Slack + update tickets |
squadron broadcast |
Announce to Discord |
squadron pr |
Create GitHub Pull Request |
squadron issue |
Create GitHub Issue |
See COMMANDS.md for full documentation.
🏗️ Architecture
Squadron uses a Skill-Based Architecture inspired by the Model Context Protocol (MCP).
squadron/
├── cli.py # 🎯 The Router (entry point)
├── server.py # 🎮 Control Plane API
├── overseer.py # 👀 Background ticket watcher
├── brain.py # 🧠 Intelligence router (LLM decisions)
│
├── swarm/ # 🐝 ORCHESTRATION LAYER
│ ├── agent.py # Base agent class
│ ├── delegator.py # Task handoff logic
│ └── overseer.py # LLM-powered routing
│
├── memory/ # 🧠 MEMORY LAYER
│ └── hippocampus.py # Semantic memory (ChromaDB)
│
├── evolution/ # 🧬 EVOLUTION LAYER
│ ├── skill_registry.py # Skill tracking & versioning
│ ├── improver.py # Self-improvement engine
│ └── watcher.py # Performance monitoring
│
├── skills/ # 🛠️ ACTION LAYER (The Hands)
│ ├── jira_bridge/ # Jira API integration
│ ├── slack_bridge/ # Slack API integration
│ ├── discord_bridge/ # Discord webhooks + bot
│ ├── github_bridge/ # GitHub API integration
│ ├── linear_bridge/ # Linear API integration
│ ├── ssh_skill/ # Remote command execution
│ └── browser_skill/ # Web navigation & screenshots
│
├── services/ # 🔧 SERVICE LAYER
│ └── llm/ # LLM providers (Gemini)
│
└── knowledge/ # 📚 CONTEXT LAYER (The Brain)
├── TEAM.md # Who is on the team?
├── WORKFLOW.md # How does work flow?
└── ROLES.md # What does each agent do?
Why This Structure?
| Layer | Purpose | Example |
|---|---|---|
| Swarm | Task routing & handoffs | Route task to best agent |
| Memory | Long-term context | Remember past conversations |
| Evolution | Self-improvement | Track skill performance |
| Skills | Executable actions | JiraTool.update_ticket() |
| Knowledge | Context for decisions | "Move to Done only after tests pass" |
🔌 Skills
| Skill | Status | What It Does |
|---|---|---|
| Jira Bridge | ✅ Live | Update tickets, add comments, transition status |
| Slack Bridge | ✅ Live | Send formatted messages to channels |
| Discord Bridge | ✅ Live | Broadcast via webhooks & Reply via Bot |
| GitHub Bridge | ✅ Live | Create PRs and Issues |
| Linear Bridge | ✅ Live | Update Linear issues |
| Overseer | ✅ Live | Watch Jira/Linear for new assignments |
| SSH Skill | ✅ Live | Execute remote commands |
| Browser Skill | ✅ Live | Navigate & Screenshot Web |
📝 Customizing for Your Team
After running squadron init, you'll have example templates to customize:
| File | What to Customize |
|---|---|
squadron/agents.yaml |
Define your agent personas (names, roles, avatars) |
squadron/knowledge/TEAM.md |
Your team members (human and AI) |
squadron/knowledge/ROLES.md |
Agent specializations for task routing |
squadron/knowledge/WORKFLOW.md |
Your team's development process |
The templates include example agents (Atlas and Sage) — replace them with your own!
# Customize your agents
code squadron/agents.yaml
code squadron/knowledge/ROLES.md
🤖 Teaching Your Agents
Add this to your agent's system prompt:
## Tool: Squadron
You have access to the `squadron` CLI for team communication.
### When to use:
- After completing a coding task
- When you hit a blocker and need help
- To update ticket status
- To hand off work to another agent
### Commands:
- Start task: `squadron report --msg "Starting auth work" --ticket "KAN-1" --status "In Progress"`
- Complete task: `squadron report --msg "Auth complete" --ticket "KAN-1" --status "Done"`
- Announce: `squadron broadcast --msg "Shipped new feature!"`
- Hand off: Tag another agent in the ticket comment with @AgentName
🗺️ Roadmap
Completed ✅
- Core CLI —
squadron reportcommand - Jira Integration — Comments + status transitions
- Slack Integration — Rich block messages
- Discord Integration — Webhook broadcasts + Bot
- GitHub Integration — PRs and Issues
- Linear Integration — Issue management
- Overseer Mode — Background ticket watcher
- PyPI Release —
pip install squadron-agents - Control Plane Dashboard — Real-time web UI
- Swarm 2.0 — LLM-powered intelligent routing
- Agent Communication — @mentions and ticket comments
- Persistent Memory — Hippocampus with ChromaDB
- Evolution Layer — Skill versioning and quality tracking
- Wake Protocol — Autonomous agent execution
Coming Soon 🚧
- Active Inference — Predictive agent behavior
- Hive Mind — Collective intelligence layer
- Multi-LLM Support — OpenAI, Anthropic, local models
- Email Notifications — SMTP integration
- Calendar Integration — Scheduling and reminders
🌟 The Origin Story
Squadron was born out of necessity.
We're building BlackCircleTerminal, a quantitative trading platform managed by AI agents. Our virtual developers — Marcus (Strategy) and Caleb (Data) — needed a way to communicate with us when we weren't at the keyboard.
We realized that for agents to be truly useful, they need to be part of the workflow, not just the code editor.
Squadron is the nervous system that connects our AI workforce to our human tools.
🧪 Testing
Squadron has a comprehensive test suite with mocked dependencies for fast, reliable tests.
# Install dependencies
pip install -r requirements.txt
pip install -e .
# Run all tests
python -m pytest tests/ -v
# Run with coverage
python -m pytest tests/ --cov=squadron --cov-report=html
# Run only unit tests (fast)
python -m pytest tests/unit/ -v
# Run integration tests
python -m pytest tests/integration/ -v
Tests run automatically on push/PR via GitHub Actions. See tests/README.md for details on fixtures and writing new tests.
🤝 Contributing
We're building the future of Agent-First Development. Want to add a new skill?
- Fork the repo
- Create a skill in
squadron/skills/your_skill/ - Add
tool.py(logic) andSKILL.md(instructions) - Open a PR!
Ideas for new skills:
- Trello / Asana integrations
- Email notifications
- CI/CD triggers
- Calendar scheduling
📜 License
AGPL-3.0 © MikeeBuilds
Don't just build agents. Give them a job.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file squadron_agents-0.5.1.tar.gz.
File metadata
- Download URL: squadron_agents-0.5.1.tar.gz
- Upload date:
- Size: 100.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85a327b3dbc3251cf05a1096fb1b106cd7fe34119efb676c20b8ea95d0580f6b
|
|
| MD5 |
2f4307a35dc62d7dfe47416ce79c1b00
|
|
| BLAKE2b-256 |
9dcf76753ec1bf5623a007b5cac0590a0c27359fb5a85587d36ec31d95ea7289
|
File details
Details for the file squadron_agents-0.5.1-py3-none-any.whl.
File metadata
- Download URL: squadron_agents-0.5.1-py3-none-any.whl
- Upload date:
- Size: 106.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdcafeb122f1326e08d8bdb96699f03edd61db41f634b1696ffa19df73e902c4
|
|
| MD5 |
cb17b6f87154d74c6d8dda93772a594e
|
|
| BLAKE2b-256 |
9cc5bad6019bfafe375a86a28ff1de75061276ea1d60d0f36d6dbf3fdfdfa697
|