Back to skills
SKILL.md
Multi Agent System
ASecurityDesign and orchestrate multi-agent AI systems with knowledge harvesting, agent collaboration, and learning loops. Use when working on PSI Engine or similar autonomous agent projects.
- 33 stars
- 0 votes
- 0 copies
- 1 view
- Added February 10, 2026
Works with
Security analysis
100/100npx -y skills add lovedragonball/power-ranger-toolkit --skill multi-agent-system --agent claude-codeAre you the author of Multi Agent System?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/lovedragonball-multi-agent-system)---
name: multi-agent-system
description: Design and orchestrate multi-agent AI systems with knowledge harvesting, agent collaboration, and learning loops. Use when working on PSI Engine or similar autonomous agent projects.
---
# π€ Multi-Agent System Skill
## Use Cases
- Agent spawning & lifecycle management
- Knowledge harvesting from completed tasks
- Agent-to-agent communication
- Learning loop implementation
---
## Agent Architecture
```
βββββββββββββββββββββββββββββββββββββββββββ
β Orchestrator β
β (Assign tasks, monitor, coordinate) β
ββββββββββββββββββ¬βββββββββββββββββββββββββ
β
ββββββββββββββΌβββββββββββββ
βΌ βΌ βΌ
ββββββββββ ββββββββββ ββββββββββ
β Agent 1β β Agent 2β β Agent 3β
β (Task) β β (Task) β β (Task) β
ββββββ¬ββββ ββββββ¬ββββ ββββββ¬ββββ
β β β
βββββββββββββ΄ββββββββββββ
β
βΌ
ββββββββββββββββββ
β Knowledge Base β
β (ChromaDB) β
ββββββββββββββββββ
```
---
## Agent Lifecycle
### 1. Spawn Agent
```python
def spawn_agent(agent_id: str, task: str):
# Create PTY for agent terminal
master, slave = pty.openpty()
# Spawn process
process = subprocess.Popen(
['claude', '--task', task],
stdin=slave,
stdout=slave,
stderr=slave,
start_new_session=True
)
return {
'id': agent_id,
'process': process,
'master_fd': master,
'status': 'running'
}
```
### 2. Monitor Agent
```python
def monitor_agent(agent):
# Read output non-blocking
ready, _, _ = select.select([agent['master_fd']], [], [], 0.1)
if ready:
output = os.read(agent['master_fd'], 4096).decode()
return output
return None
```
### 3. Harvest Knowledge
```python
def harvest_knowledge(completed_task):
# Extract learnings
learnings = {
'task': completed_task['description'],
'solution': completed_task['output'],
'patterns': extract_patterns(completed_task['output']),
'timestamp': datetime.now().isoformat()
}
# Store in vector DB
collection.add(
documents=[learnings['solution']],
metadatas=[learnings],
ids=[f"learning_{uuid.uuid4()}"]
)
```
---
## ChromaDB Integration
### Setup
```python
import chromadb
client = chromadb.Client()
collection = client.get_or_create_collection("knowledge_base")
```
### Store
```python
collection.add(
documents=["Solution text here"],
metadatas=[{"source": "agent_1", "task": "debug"}],
ids=["unique_id"]
)
```
### Query (RAG)
```python
results = collection.query(
query_texts=["How to fix null pointer?"],
n_results=5
)
```
---
## Learning Loop
```
ββββββββββββββββ
β Agent runs β
β task β
ββββββββ¬ββββββββ
βΌ
ββββββββββββββββ
β Task result β
β extracted β
ββββββββ¬ββββββββ
βΌ
ββββββββββββββββ
β Knowledge β β Store patterns, solutions
β harvested β
ββββββββ¬ββββββββ
βΌ
ββββββββββββββββ
β Next agent β β Query relevant context
β uses context β
ββββββββββββββββ
```
---
## Decision Tree
```
Multi-agent task?
βββ Need new agent? β spawn_agent()
βββ Agent stuck? β Check PTY buffer, restart if needed
βββ Task complete? β Harvest knowledge β ChromaDB
βββ Similar task? β Query ChromaDB for context
βββ Coordination? β Use message queue/shared state
```
---
## Common Issues
| ΰΈΰΈ±ΰΈΰΈ«ΰΈ² | ΰΈͺΰΈ²ΰΉΰΈ«ΰΈΰΈΈ | ΰΉΰΈΰΉΰΉΰΈ |
|-------|--------|-------|
| Agent 3 malfunction | PTY buffer full | Increase buffer / flush regularly |
| Terminal blank | Non-blocking read timing | Use select() with timeout |
| Busy false positive | Status not reset | Reset status after task complete |
| Knowledge not found | Wrong embedding | Tune ChromaDB collection settings |
---
## PSI Engine Specific
1. **PTY Manager**: Always close unused file descriptors
2. **Agent Status**: Use enum (IDLE, RUNNING, COMPLETE, ERROR)
3. **Harvest timing**: Only harvest after verified completion
4. **Context injection**: Limit to 5 most relevant results
Attribution
Comments
Loading commentsβ¦