initial commit
This commit is contained in:
68
04-Zarządzanie-Agentami/Sub-agenty i hierarchia.md
Normal file
68
04-Zarządzanie-Agentami/Sub-agenty i hierarchia.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# Sub-agenty i hierarchia
|
||||
|
||||
#sympozium #agenty #sub-agents
|
||||
|
||||
## Koncepcja
|
||||
|
||||
Sympozium wspiera **hierarchiczne spawning sub-agentów** - agent może tworzyć kolejne AgentRun CRs, które stają się jego "dziećmi".
|
||||
|
||||
## Konfiguracja
|
||||
|
||||
```yaml
|
||||
# W SympoziumInstance
|
||||
spec:
|
||||
agents:
|
||||
default:
|
||||
subagents:
|
||||
maxDepth: 2 # Max zagnieżdżenie (parent → child → grandchild)
|
||||
maxConcurrent: 5 # Max równoległych agent runów w drzewie
|
||||
maxChildrenPerAgent: 3 # Max dzieci per agent
|
||||
```
|
||||
|
||||
## Mechanizm
|
||||
|
||||
```
|
||||
Parent AgentRun
|
||||
├── spec.parent: null
|
||||
├── Tworzy child AgentRun:
|
||||
│ spec:
|
||||
│ parent:
|
||||
│ runName: parent-run
|
||||
│ sessionKey: parent-session
|
||||
│ spawnDepth: 1
|
||||
│ ↓
|
||||
│ └── Child AgentRun
|
||||
│ ├── Tworzy grandchild:
|
||||
│ │ spec.parent.spawnDepth: 2
|
||||
│ │ ↓
|
||||
│ │ └── Grandchild AgentRun
|
||||
│ │ └── maxDepth=2 → NIE może tworzyć dalej
|
||||
│ └── Child może mieć max 3 siblings (maxChildrenPerAgent)
|
||||
└── Parent czeka na wyniki children
|
||||
```
|
||||
|
||||
## Policy enforcement
|
||||
|
||||
`SubagentPolicySpec` w [[SympoziumPolicy]] enforcuje limity:
|
||||
- `maxDepth: 3` - admission webhook odrzuca AgentRun z spawnDepth > 3
|
||||
- `maxConcurrent: 5` - controller sprawdza ile runów jest aktywnych
|
||||
|
||||
## Use case
|
||||
|
||||
Sub-agenty umożliwiają **divide-and-conquer** workflows:
|
||||
```
|
||||
"Zoptymalizuj klaster" (parent)
|
||||
├── "Sprawdź zużycie CPU per namespace" (child 1)
|
||||
├── "Sprawdź zużycie pamięci per namespace" (child 2)
|
||||
└── "Sprawdź nieużywane PVC" (child 3)
|
||||
```
|
||||
|
||||
Każdy child to osobny Job z własnym RBAC, izolacją i lifecycle.
|
||||
|
||||
## Śledzenie
|
||||
|
||||
Env var `SPAWN_DEPTH` mówi agentowi na jakiej głębokości jest. Agent może podejmować decyzje na tej podstawie (np. nie tworzyć sub-agentów jeśli jest już głęboko).
|
||||
|
||||
---
|
||||
|
||||
Powiązane: [[AgentRun]] | [[SympoziumPolicy]] | [[Model efemerycznych agentów]]
|
||||
Reference in New Issue
Block a user