disclaw/docs/ideas/known-issues.md
Nick Tabeling 242bb0d34e
Some checks failed
CI / build-and-test (ubuntu-latest) (pull_request) Has been cancelled
CI / build-and-test (windows-latest) (pull_request) Has been cancelled
CI / lint (pull_request) Has been cancelled
docs: add known issues and future feature ideas to docs/ideas/
KI-001: Tool-Permission-Popups blockieren Agents lautlos
KI-002: Workspace-Wiederherstellung nach Datenverlust
KI-002.1: Management-Channel auto-recreate bei Löschung
KI-003: Token-Verbrauch durch vollständige History-Injection
SF-001: Multi-Agent-Kollaboration & Projekt-Workspaces
SF-002: Konversationelles Agent-Design per Chat
SF-003: Security-Bot-Schicht & Permission-Management
SF-004: Vollständige Discord-Feature-Nutzung

Forgejo Issues #33–#40 angelegt (type:known-issue / type:idea).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-09 16:57:44 +02:00

70 lines
2.9 KiB
Markdown

# Known Issues & Limitations
Gesammelte Probleme, die beim realen Betrieb aufgefallen sind.
Werden in einem eigenen Planungs-Sprint adressiert, sobald die Grundvariante stabil läuft.
---
## KI-001: Tool-Permission-Popups erreichen den Nutzer nicht
**Symptom**: Sobald ein Agent in seinem Workspace aktiv wird (z. B. Dateien schreibt,
Befehle ausführt), fordert Claude Code interactive Tool-Permissions an. Diese Popups
erscheinen nur im Terminal des laufenden DisClaw-Prozesses — nicht im Discord-Channel.
Der Agent blockiert lautlos und wartet auf eine Eingabe, die nie kommt.
**Auswirkung**: Agents mit aktiver Arbeit hängen oder brechen nach Timeout ab.
**Mögliche Lösungsrichtungen**:
- `--dangerously-skip-permissions` für vertrauenswürdige Agents (nur mit expliziter
Nutzer-Freigabe pro Agent)
- Permission-Profile in `agent.yaml` definieren, die beim Spawn als `--allowedTools`-
Argumente übergeben werden
- Security-Bot-Schicht (siehe `future-features.md` → SF-003) als vorgelagerter
Permission-Manager
---
## KI-002: Workspace-Wiederherstellung nach Datenverlust
**Symptom**: Wenn `data/` gelöscht wird oder ein Discord-Channel manuell entfernt wird,
verliert DisClaw die Channel→Workspace-Zuordnung in SQLite. Bestehende Workspace-
Verzeichnisse unter `~/.disclaw/workspaces/` sind nicht mehr erreichbar.
**Auswirkung**: Agents sind effektiv verloren, obwohl ihre Dateien noch auf der Festplatte
existieren.
**Gewünschtes Verhalten**:
- Befehl im Management-Channel (z. B. `/recover-agent <name>` oder `/recover-agents`),
der Workspace-Verzeichnisse nach `agent.yaml` scannt und fehlende Channel+DB-Einträge
neu anlegt
- Optional: Beim Start alle bekannten Workspaces gegen DB abgleichen und Warnungen
ausgeben, wenn Einträge fehlen
---
## KI-002.1: Management-Channel (#disclaw) wird automatisch neu erstellt
**Symptom**: Wird der `#disclaw`-Channel im Discord-Server versehentlich gelöscht,
startet der DisClaw-Service nicht mehr — er findet keinen Management-Channel und bricht ab.
**Gewünschtes Verhalten**:
- Beim Start prüfen, ob der konfigurierte Management-Channel noch existiert
- Wenn nicht: Channel automatisch neu anlegen (gleicher Name, gleiche Berechtigungen)
und die Channel-ID in der Config aktualisieren
- Log-Meldung / Discord-DM an den Bot-Owner
---
## KI-003: Hoher Token-Verbrauch durch Context-Reload
**Symptom**: Bei jeder Nachricht wird der gesamte Konversations-Verlauf als Text in den
Prompt injiziert. Bei längeren Chats steigen Token-Kosten und Latenz erheblich.
**Auswirkung**: Teurer Betrieb, langsamere Antworten bei wachsender History.
**Mögliche Lösungsrichtungen**:
- `--resume <session-id>` von Claude Code nutzen (Phase 2 geplant) statt History-Injection
- Konversations-History auf N letzte Nachrichten begrenzen (konfigurierbares
`max_history_messages` in `disclaw.yaml`)
- Zusammenfassung älterer History durch den Agent selbst (Summary-Compression)
- Token-Zähler im DB-Eintrag pro Conversation tracken