Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)
Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
4.0 KiB
Sub-Agenten
Kiro CLI unterstützt Sub-Agenten – spezialisierte Rollen die der Haupt-Agent für komplexe Aufgaben nutzen kann.
Verfügbare Profile
| Agent | Datei | Rolle | Tools |
|---|---|---|---|
| researcher | researcher.json |
Informationen sammeln, analysieren | Alle |
| implementer | implementer.json |
Code schreiben, testen, committen | Alle |
| reviewer | reviewer.json |
Code-Review, Security, Best Practices | read, grep, shell |
Wie der Haupt-Agent Sub-Agenten nutzt
Der Haupt-Agent entscheidet selbst ob er Sub-Agenten braucht. Bei komplexen Aufgaben nutzt er das subagent Tool:
subagent(
task: "Feature implementieren und reviewen",
stages: [
{name: "research", role: "researcher", prompt: "Analysiere die bestehende Codebasis..."},
{name: "implement", role: "implementer", prompt: "Implementiere basierend auf der Analyse...", depends_on: ["research"]},
{name: "review", role: "reviewer", prompt: "Prüfe die Implementierung...", depends_on: ["implement"]}
]
)
Parallelisierung
Stages ohne depends_on laufen parallel:
Stage 1 (parallel): Stage 2: Stage 3:
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ researcher: │───┐ │ implementer: │ │ reviewer: │
│ API lesen │ ├───▶│ Code + Tests │──▶│ Qualität │
│ researcher: │───┘ │ │ │ prüfen │
│ DB Schema │ └──────────────┘ └──────────────┘
└──────────────┘
Shared Filesystem
Alle Sub-Agenten teilen /workspace/project. Der Researcher schreibt Ergebnisse in Dateien die der Implementer liest.
Eigene Profile erstellen
Ein Agent-Profil ist eine JSON-Datei:
{
"tools": ["*"],
"systemPrompt": "Du bist ein spezialisierter Agent für..."
}
Felder
| Feld | Beschreibung |
|---|---|
tools |
["*"] für alle, oder Liste: ["read", "grep", "shell", "write"] |
systemPrompt |
Instruktionen für den Sub-Agenten |
mcpServers |
Optional: zusätzliche MCP-Server für diesen Agenten |
Beispiel: Ops-Agent
{
"tools": ["*"],
"systemPrompt": "Du bist ein Ops-Agent. Analysiere Kubernetes-Cluster: Pods, Deployments, Events, Logs. Identifiziere Probleme und schlage Lösungen vor. Nutze kubectl für alle Abfragen.",
"mcpServers": {
"orchestrator": {
"url": "http://opencode-k8s-agent-${ART_NAME}-tools.${ART_NAME}-tools.svc.cluster.local:8080/mcp",
"headers": {
"x-runtime": "kiro",
"x-agent-kiro-api-key": "${KIRO_API_KEY}",
"x-agent-gitlab-token": "${GITLAB_TOKEN}"
}
}
}
}
Beispiel: Security-Agent
{
"tools": ["read", "grep", "shell"],
"systemPrompt": "Du bist ein Security-Agent. Prüfe Code auf Schwachstellen: SQL Injection, XSS, Secrets im Code, unsichere Dependencies. Nutze trivy und gitleaks. Erstelle einen strukturierten Security-Report."
}
Laden der Profile
Das Entrypoint-Script kopiert beim Pod-Start automatisch alle agents/*.json nach $HOME/.kiro/agents/. Änderungen an Profilen werden beim nächsten Job-Start wirksam – kein Image-Rebuild nötig.
MCP-Server für Sub-Agenten
Die mcp.json im Root dieses Repos wird als MCP-Konfiguration für alle Agenten geladen. Damit können Sub-Agenten:
- Den Orchestrator aufrufen (weitere K8s-Pods spawnen)
- Playwright für Browser-Tests nutzen
- Andere MCP-Server ansprechen (Jira, Confluence, etc.)
Rekursive Hierarchie
Ein Sub-Agent kann über den Orchestrator-MCP-Server weitere Agent-Pods starten:
Haupt-Agent (Pod A)
└── subagent: researcher
└── MCP: orchestrator.implement_ticket(...)
└── Neuer Pod B startet
└── arbeitet unabhängig