// ai · security

marlin

LLM entwirft nur, handelt nie · deterministisches RBAC + Human-Approval · Append-only-Audit-Log

Problem

Dienstleister wollen Chat-Automatisierung — Reviews beantworten, Anfragen vorsortieren, Belege erfassen. Der übliche Weg gibt einem LLM API-Tokens und Handlungsvollmacht. Das ist keine Automatisierung, das ist eine Sicherheitslücke mit Chat-Interface: ein injizierter Prompt in einer Kundenmail genügt, und das Modell handelt im Namen der Firma.

Ansatz

marlin baut die Grenze deterministisch. Fünf Regeln bilden das Rückgrat:

  1. LLM raus aus dem Action-Path. Das Modell produziert ausschließlich Text — Entwürfe, Klassifikationen, Extraktionen. Es hält keine Tokens, keine Shell, kein Netz. Deterministischer Code hält die Secrets und führt jede privilegierte Aktion aus.
  2. Allowlist statt Blocklist. „Tu X nie“ als Prompt-Regel ist schwach, Injection schlägt Instruktionen. Die echte Guardrail: die Fähigkeit existiert nicht. You can’t be tricked into using a power you don’t have.
  3. Das LLM ist nie die Security-Boundary. Autorisierung ist deterministisches RBAC auf Discord-Rollen aus der API — unfälschbar.
  4. Human-Approval vor Side-Effects. Das Modell entwirft, ein autorisierter Mensch klickt Approve, ein deterministischer Sender führt aus.
  5. Untrusted Text ist Data, nicht Command. Jede privilegierte Aktion landet in einer Append-only-Audit-Tabelle.

Kurzform: The LLM proposes; code disposes. Jeder Tenant läuft als eigener gehärteter Container — minimale Privilegien, kein Docker-Socket, nur ausgehende Verbindungen.

Entscheidungen

  • Kein Memory-Framework im MVP. Generische Memory-Layer merken sich die falschen Dinge und entscheiden mit. Kuratiertes, reversibles Memory über explizite Kommandos schlägt automatisches Sammeln.
  • Threat-Model explizit gemacht: Prompt-Injection über angreiferkontrollierte Review-, Mail- oder Chat-Texte ergibt schlimmstenfalls einen schlechten Entwurf — nie einen Breach.

Status & Learnings

Gebaut, deployt, erste Phasen produktiv gelaufen — aktuell pausiert. Das Sicherheitsmodell ist das eigentliche Produkt: die Muster (LLM aus dem Action-Path, Allowlist, deterministisches RBAC) übertragen sich auf jedes Agent-System, das mit fremdem Text arbeitet.