Entscheidungen aus dem Testbetrieb umgesetzt (#572): #577 #579 #581 #589 #193 #205 #594 #595 #597 #598 #599 #588

- Engine: leere Antworten nachfassen, Aufgaben enden mit Ergebniszeile (EmptyResponse/Incomplete),
  gleiche Fehlschlaege erkennen (RepeatedFailure), Zeitzeile vor Chatnachrichten,
  Werkzeugergebnisse gerahmt, Vorpruefung vor dem Staging, Belegkosten wie RunUsage
- Staging: gescheiterte Freigaben als Failed; AgentEditor-Aenderungen freigabepflichtig,
  Selbstbearbeitung gesperrt (allowSelfEdit)
- Taskboard: Termine beim Anlegen pruefen, naechster/letzter Lauf, pausieren, Sofortlauf,
  Kostenprognose, Hinweis auf wachsenden Kontext; Jobs-Reiter und /api/jobs entfernt
- Release: Instanzmanager samt Weboberflaeche im Paket, setup.json fragt manager.json ab,
  Token nicht mehr ins systemd-Journal
Version 0.1.6.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-09-15 11:23:10 +02:00
co-authored by Claude Opus 5
parent 8ab9d99abe
commit 0b6ea73ec1
42 changed files with 2646 additions and 512 deletions
+46
View File
@@ -14,6 +14,15 @@
"fileLinux": "clawddotnet/Settings.json",
"location": "config",
"format": "json"
},
{
"_comment": "#588: Der Instanzmanager liegt seit 0.1.6 im selben Paket. manager.json liegt im selben Konfigurationsordner; der Manager verschluesselt Token beim ersten Start und liest Klartext unveraendert ein.",
"id": "manager",
"file": "clawddotnet/manager.json",
"fileWindows": "ClawdDotNet/manager.json",
"fileLinux": "clawddotnet/manager.json",
"location": "config",
"format": "json"
}
],
@@ -57,6 +66,43 @@
"options": ["production", "development"],
"default": "production",
"required": false
},
{
"key": "webUiToken",
"target": "manager",
"label": "Zugangstoken der Weboberflaeche",
"help": "Mindestens 20 Zeichen. Wer es kennt, bedient alle Instanzen - wie ein Passwort behandeln.",
"type": "secret",
"required": true,
"validate": "^.{20,}$",
"validationMessage": "Das Token braucht mindestens 20 Zeichen."
},
{
"key": "webUiBinding",
"target": "manager",
"label": "Weboberflaeche erreichbar",
"help": "loopback: nur auf diesem Rechner. any: auch aus dem Netz - dann Firewall bzw. VPN beachten.",
"type": "enum",
"options": ["loopback", "any"],
"default": "loopback",
"required": false
},
{
"key": "webUiPort",
"target": "manager",
"label": "Port der Weboberflaeche",
"type": "int",
"default": "7000",
"required": false
},
{
"key": "instanceWindows",
"target": "manager",
"label": "Instanzen mit eigenem Fenster",
"help": "Auf einem Server ohne Bildschirmsitzung: false - dann laufen die Instanzen kopflos und werden ueber die Weboberflaeche bedient.",
"type": "bool",
"default": "true",
"required": false
}
]
}