BOSS is an innovative task orchestration system that harnesses the power of Large Language Models to manage and execute workflows efficiently. It intelligently breaks down tasks, selects the right agents for each step, and adapts in real-time to ensure optimal performance. Perfect for network security tasks and easily extensible to other domains, BOSS keeps you organized and informed.
BOSS is a Multi-Agent Operating System for Offensive Security that intelligently orchestrates tasks using Large Language Models (LLMs) to manage and execute workflows involving multiple agents. Imagine a smart task manager that can significantly enhance your network security efforts by providing:
- Decomposed Task Management: Facilitate complex security tasks by breaking them down into manageable steps, making execution simpler and more effective.
- Intelligent Agent Assignment: Automatically assign the best-suited agents for each task, enhancing efficiency and accuracy based on specific capabilities.
- Real-Time Monitoring & Adaptation: Keep an eye on execution progress, detect failures, and optimize workflows dynamically, ensuring that tasks are completed promptly and effectively.
- Advanced Error Handling: Employ intelligent strategies for retrying tasks along with thorough failure analysis to maintain operational integrity.
- Human-in-the-Loop Capability: Seamlessly recognize points where human intervention is required, fostering better decision-making in critical situations.
- Performance Tracking: Continuously monitor both system health and agent performance for optimal operational capacity.
Note: This project is currently under development; not all features are implemented yet. Use caution and do not deploy in a production environment.
Focus Areas
BOSS primarily targets network security-related reasoning tasks, but its architecture allows for easy extension into other domains.
Architecture Overview
The BOSS system is constructed as follows:
+-----------------------+
| BOSS OPERATING SYS |
+-----------------------+
|
v
+-----------------------+
| Task Scheduler |
| (10s interval) |
+-----------------------+
|
v
+-----------------------+
| Task Processor |
| - LLM Planning |
| - Step Generation |
| - Evaluation |
| - Agent Selection |
+-----------------------+
|
v
+-----------------------+
| Message Bus (Kafka) |
+-----------------------+
|
v
+-----------------------+
| Agent Network |
| - Ping |
| - WHOIS |
| - SSL |
| - REST Test |
| - WebSocket Test |
| - Scan Ports |
| - Get SSL Cert |
| - API Explorer |
| - Conversation |
| - DIG Agent |
+-----------------------+
|
v
+-----------------------+
| Result Consumer |
+-----------------------+
|
v
+-----------------------+
| MongoDB |
| - Tasks |
| - Agent Status |
+-----------------------+
|
v
+-----------------------+
| System Monitor |
| - Health Checks |
+-----------------------+
Data Flow
- The Scheduler checks for tasks every 10 seconds.
- The Processor utilizes LLMs to:
- Generate actionable steps
- Evaluate results
- Select suitable agents
- Tasks are dispatched through Kafka.
- Agents carry out the assigned tasks.
- Results are collected by the Consumer.
- System states are stored/updated in MongoDB.
- The Monitor continuously ensures system health.
- The cycle repeats back to step 1.
BOSS aims to streamline your security operations by automating task orchestration and enhancing operational workflows. Embrace the future of offensive security with BOSS!
Visit BOSS on GitHub for more information.