Migrate all repos into monorepo context folders
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.
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
# 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:
|
||||
|
||||
```json
|
||||
{
|
||||
"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
|
||||
|
||||
```json
|
||||
{
|
||||
"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
|
||||
|
||||
```json
|
||||
{
|
||||
"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
|
||||
```
|
||||
Reference in New Issue
Block a user