feat(agenten): Runde 10 Prompt 1 — gemeinsame Bearbeitung für Aufgaben, Systeme und Kanäle

Aufgaben, Systeme und Kanäle werden alle drei als Liste geführt und ab jetzt
auch gleich bearbeitet: anlegen, ändern, entfernen, zu- und abschalten — dort,
wo man sie sieht. Die Maske und die drei Listengriffe stehen einmal zentral
statt dreimal je Reiter; sonst unterscheiden sie sich nach der ersten Korrektur.

- AgentEntityDialog: eine Maske für alle drei Entitäten, über den React-
  Schlüssel je Eintrag neu aufgebaut statt über einen Effekt zurückgesetzt
- agentEntityEditing: upsertById, removeById, newEntityId als reine Funktionen
- Systeme sind über Provider, Service und Hook schreibbar (saveSystems) und
  tragen neu einen Aktiv-Schalter
- Systemreiter: eine einzige Liste statt «Lesende»/«Schreibende Systemzugänge»,
  kein Einleitungsbalken mehr; Aktiv, Zugriff und Verbindung stehen je Eintrag
- Thomas steht als «Agentenverwalter» in der Navigation, zählt aber nicht als
  sechster Agent in Sitzungszimmer, Auslastung und Begrüssung
- Chatverlauf scrollt in sich, ohne die Seite springen zu lassen

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Benjamin SutterandClaude Opus 5 committed 2026-09-12 22:41:34 +02:00
1 parent c6f3b2d6e3
commit 1c4b3f7dd8
15 files changed
+952 -131

No files matched your search

+2 -2
View File
@@ -1,6 +1,6 @@
import { WorkspaceType } from '../../domain/enums'
import { HOME_NAV_LABEL, MY_AGENTS_LABEL, ROUTES } from '../../lib/constants'
import { AGENT_WORKSPACES } from '../../lib/agentWorkspaces'
import { AGENT_NAV_ENTRIES } from '../../lib/agentWorkspaces'
import type { LucideIcon } from 'lucide-react'
import {
Building2,
@@ -75,7 +75,7 @@ export const WORKSPACE_CONFIG: Record<WorkspaceType, WorkspaceConfig> = {
icon: Users,
// Die drei Verwaltungsbereiche sind Reiter der Hauptseite geworden;
// hier stehen ab Runde 4 die fünf digitalen Mitarbeitenden selbst.
children: AGENT_WORKSPACES.map(a => ({
children: AGENT_NAV_ENTRIES.map(a => ({
path: a.path,
label: a.name,
agentId: a.id,