Werkzeugkasten: Zugangsdaten je Einheit (#692)

A unit holds credentials for its members, by tool and setting - needed once,
not once per agent, and other units never get them.

- UnitConfig.credentials, protected by ConfigSecrets like every secret.
- OrgChart.ToolSettingsFor: an agent's own settings, completed by the nearest
  unit up that holds the value; own non-empty values win; no tool is granted.
  Used for runs, tool jobs and preflight probes.
- OrgAdministration.SetUnitCredential, PUT /organisation/units/{id}/credentials;
  the view lists held settings, never values.
- Templates never carry unit credentials; they are named instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-10-01 12:50:27 +02:00
co-authored by Claude Opus 5.5
parent 661807b2d0
commit 9a265888f8
17 changed files with 306 additions and 13 deletions
+9
View File
@@ -784,6 +784,15 @@ beidem.
braucht sie einmal, nicht sechsmal — und die Buchhaltung darf den Marktplatz-Schlüssel
nicht sehen. Gehört an die Einheit (#683), mit demselben Vererbungsgedanken wie die
Rechte.
> **Umgesetzt (#692).** Eine Einheit hält Zugangsdaten je Werkzeug und Einstellung
> (`credentials`), geschützt gespeichert wie alle Geheimnisse und in der Oberfläche nur
> als „gesetzt" sichtbar. Ein Werkzeug eines Mitglieds — auch einer Untereinheit — läuft
> mit seinen eigenen Einstellungen, ergänzt um die der nächsten Einheit nach oben, die den
> Wert hält; ein eigener, nicht leerer Wert des Agenten gewinnt. Ein Zugangsdatum gibt
> kein Werkzeug, und Nachbareinheiten bekommen nichts. Gilt für Läufe, Tool-Jobs und
> Vorprüfungen gleichermaßen. Nur Einstellungen der obersten Ebene — verschachtelte wie
> `providers.x.apiKey` bleiben am Agenten. Vorlagen (#691) tragen sie nie mit.
2. **Das Lesen dessen, was wirklich hereinkommt.** Eine Auftragsbestätigung ist ein
PDF-Anhang, eine Preisliste eine Tabelle. Text aus Anhängen zu holen ist die
unspektakulärste und am häufigsten gebrauchte fehlende Fähigkeit. Ein PDF vom