disclaw/tasks/EPICS.md

5.2 KiB
Raw Permalink Blame History

DisClaw — Epics (Phase 26+)

Diese Epics werden am Anfang jeder Phase in granulare Issues verfeinert (analog zu Phase 0/1 im Backlog). Bis dahin ist der Status locked — kein Branch, keine Entwicklung. Freigabe durch explizite Entscheidung des Users nach Phasen-Abschluss.


Phase 2 — Context-Effizienz (--resume)

Voraussetzung: Phase 0 + Phase 1 vollständig gemergt. docs/cli-feature-probe.md ausgeführt und --resume-Verhalten bestätigt.

DIS-EP-201

DB-Migration + SessionStore-Methoden Neue Spalte session_id in workspaces-Tabelle. SessionStore-Klasse mit get/set/clear-Methoden. Branch-Pattern wenn verfeinert: phase-2/session-store

DIS-EP-202

Runner-Integration --resume mit DB-Fallback runner.ts hängt --resume <id> an wenn session_id vorhanden. Fallback: strukturierte DB-Rehydrierung mit role-getaggten Turns. ID wird nach jedem Run aus JSON top-level gelesen und in DB aktualisiert. Branch-Pattern: phase-2/runner-resume

DIS-EP-203

Usage-Metriken Logging + agent_runs-Tabelle Cache-Hit-Statistiken aus CLI-Output extrahieren (falls verfügbar). agent_runs-Tabelle für Token-Tracking. Branch-Pattern: phase-2/usage-metrics

DIS-EP-204

Integration-Tests Session-Resume + Fork-Case Tests die --resume-Flow end-to-end verifizieren: erfolgreicher Resume, Session nicht gefunden (Fallback), Fork-Case (neue ID nach Resume). Branch-Pattern: phase-2/session-tests


Phase 3 — UX-Feinschliff

Voraussetzung: Phase 2 abgeschlossen.

DIS-EP-301

Typing-Refresh 8s + sendResponse-Helper + Attachment-Fallback Bot zeigt „tippt…" an solange Claude arbeitet, refresht alle 8s. sendResponse(channel, text)-Helper kapselt Split + Sanitize + Send. Branch-Pattern: phase-3/typing-send-helper

DIS-EP-302

Attachment-Inbox für eingehende Discord-Bilder Bilder aus Discord-Attachments werden in einen tmp-Ordner des Workspace-Agents gespeichert und via @path/to/file.png-Syntax in den Prompt injiziert. Branch-Pattern: phase-3/attachment-inbox

DIS-EP-303

Input-Limit + User-Feedback-Reactions Nachrichten > konfigurierbares Limit werden abgewiesen. Reaction-Feedback: 👀 (verarbeitung), (erfolg), (fehler), ⚠️ (timeout). Branch-Pattern: phase-3/input-limit-reactions

DIS-EP-304

Unit-Tests sendResponse + Attachment-Inbox Vollständige Unit-Test-Abdeckung für Phase-3-Komponenten. Branch-Pattern: phase-3/ux-tests


Phase 4 — Skills und Permissions (Profile)

Voraussetzung: Phase 3 abgeschlossen.

DIS-EP-401

Profile-Registry-Grundgerüst src/agent/profiles/registry.ts mit ProfileRegistry-Interface und Lade-Mechanismus aus src/agent/profiles/*.ts. Branch-Pattern: phase-4/profile-registry

DIS-EP-402

Fünf Profile: developer, researcher, writer, ops, sandboxed Konkrete Profile mit je angepasstem .claude/settings.json-Template und CLAUDE.md-Abschnitt. Branch-Pattern: phase-4/profiles-builtin

DIS-EP-403

/new-agent profile:<name> Option /new-agent name:x role:y profile:developer nutzt das Profile-Template statt des Default. Branch-Pattern: phase-4/new-agent-profile-option

DIS-EP-404

PreToolUse-Hook guard-tool.cjs + Audit-Log Node.js-Script das als Hook vor Tool-Calls ausgeführt wird. Prüft gegen Deny-Liste, schreibt Audit-Log. Branch-Pattern: phase-4/pretooluse-hook

DIS-EP-405

Integration-Tests Hook-Guard + Profile-Permissions Tests für Hook-Script und Profile-Settings-Rendering. Branch-Pattern: phase-4/profile-tests


Phase 5 — Streaming

Voraussetzung: Phase 4 abgeschlossen.

DIS-EP-501

runAgentStream() mit --output-format stream-json Parallele Runner-Implementierung die NDJSON-Stream vom CLI konsumiert. Flags: --verbose --include-partial-messages. Branch-Pattern: phase-5/runner-stream

DIS-EP-502

Defensiver NDJSON-Event-Parser src/agent/stream-parser.ts mit versioniertem Event-Dispatch, defensivem Parsing, Fallback bei unbekannten Event-Typen. Branch-Pattern: phase-5/stream-parser

DIS-EP-503

stream-to-discord — Edit-Debouncing 1200ms, Rollover bei 1900 Zeichen Discord-Nachricht wird inkrementell editiert während Claude schreibt. Min. 1200ms zwischen Edits. Neue Nachricht bei Überlauf. Branch-Pattern: phase-5/stream-to-discord

DIS-EP-504

Feature-Flag + Fallback + Integration-Tests disclaw.yamlstreaming: false (Default). Graceful Fallback auf Bulk-Send bei Streaming-Fehlern. Integration-Tests. Branch-Pattern: phase-5/streaming-flag-tests


Phase 6+ — Zukunft (Platzhalter)

Noch nicht geschätzt, nicht priorisiert. Ideen aus docs/development-plan.md §6+.

Thema Kurzbeschreibung
Agent-zu-Agent-Kommunikation Agenten können einander Aufgaben delegieren via Discord-Mentions
/list-agents, /delete-agent Management-Channel-Befehle für Workspace-Verwaltung
Web-Dashboard Browser-UI für Agenten-Übersicht, Konversationen, Nutzung
Docker-Isolation Jeder Agent-Workspace in eigenem Container
Automatische Workspace-Migration Migration bestehender ./workspaces/-Ordner zu neuem Root
Multi-Guild-Support Ein DisClaw-Bot für mehrere Discord-Server
MCP-Server pro Workspace Workspace-spezifische MCP-Konfiguration aktivierbar