Echtzeit-Sprach- und Chatfunktion
Mikrofon-Audio wird als 16 kHz PCM eingespeist. Gemini Live liefert 24 kHz Sprache und Live-Transkripte, während getippte Nachrichten derselben Sitzung beitreten können.
Amos AI ist ein Enterprise Resource Agent – ein KI-Agent, der ein ERP vollständig für Sie betreibt. Amos läuft innerhalb von Zavora ERP. Sprache oder Chat werden zu einem klar abgegrenzten Buchhaltungs-Workflow: Er liest das Live-Hauptbuch, folgt einem Buchhaltungs-Playbook, bittet vor dem Buchen um Freigabe und legt Belege neben dem Gespräch ab.
Amos
AI Accountant · online
Warum es ein Super-Agent ist
Amos ist ein eigenständiger Rust- und Axum-Dienst, eingebettet im ERP. ADK-Rusts RealtimeRunner behält Sprache, Text, Transkripte, Tool-Aufrufe und Unterbrechungen in einer Live-Sitzung, sodass ein Benutzer natürlich sprechen und bei Bedarf präzise tippen kann.
Wenn eine Anfrage eine Aktion erfordert, lädt Amos eine fokussierte Buchhaltungsfunktion und ruft ERP-Werkzeuge über MCP auf. Jedes Werkzeug ist mit den Rollenscopes und dem Audit-Kontext des Nutzers umhüllt. Ledger-Buchungen stoppen an einem expliziten Genehmigungstor, das in Rust durchgesetzt wird, dann mit dem ERP-Token des Benutzers ausführen, wenn genehmigt.
Das Ergebnis bleibt sichtbar. Amos führt einen Arbeitsplan, steuert das echte ERP über ein separates Browser-Werkzeugset, erfasst Screenshot-Beweise, speichert Sitzungsverlauf, ruft genehmigten Geschäftskontext ab und nutzt eng gefasste Hintergrundagenten für geplante Buchhaltungsroutinen.
Mikrofon-Audio wird als 16 kHz PCM eingespeist. Gemini Live liefert 24 kHz Sprache und Live-Transkripte, während getippte Nachrichten derselben Sitzung beitreten können.
MCP verbindet Amos mit Berichten, Rechnungen, Zahlungen, Gehaltsabrechnung, Beschaffung, Inventar, Abstimmung, Steuererklärungen und Periodenschluss.
Drop-in SKILL.md Playbooks definieren Werkzeugreihenfolge, Buchhaltungsprüfungen, Bestätigungspunkte und Aktionen, die Amos niemals ausführen darf.
Ein Arbeitsplan zeigt jeden Schritt. Werkzeugaktivität, Posting-Abzeichen und Abschlussstatus werden über den Session-WebSocket übertragen.
Ein Playwright MCP-Server navigiert durch das Produkt, überprüft das Ergebnis und speichert Screenshots neben der Unterhaltung.
Rollenumfänge werden bei jedem Werkzeugaufruf geprüft. Ein Ledger-Schreibvorgang pausiert an einem code-implementierten Bestätigungstor, bevor das Werkzeug ausgeführt wird.
Postgres und pgvector bewahren Geschäftsdaten, Erkenntnisse und Sitzungszusammenfassungen. Abruf, Duplikaterkennung und Vergessenspfade halten diesen Speicher wartbar.
Abgegrenzte One-Shot-Agenten bereiten Briefings, Management-Accounts, Abstimmungen, Steuerarbeiten, Zahlungsvorschläge und Abschluss-Pakete im Geschäftskalender vor.
Fallstudie · Management Accounts
Das nützliche Ergebnis ist keine generische Erklärung. Amos fragt das Geschäftsbuch, vergleicht Perioden und Budget, berechnet Finanz-KPIs, benennt wesentliche Treiber und lässt den unterstützenden Workflow neben der Antwort sichtbar.

Die Sitzungsuhr liefert die Zeitzone des Nutzers, den fiskalischen Kontext und das Arbeitsdatum, sodass ‚letzter Monat‘ konsistent aufgelöst wird.
Das use_skill-Werkzeug bringt den Workflow für Finanzberichterstattung oder Management-Accounts nur dann in den Kontext, wenn er benötigt wird.
Abgegrenzte MCP-Werkzeuge führen P&L, Budgetvergleiche, Vorperiodenberichte, Bilanz, Rechnungen, Zahlungen, Lohnabrechnung und Steuerstatus aus.
Amos leitet Margen, DSO, DPO, Liquidität, Cash Cover und Materialabweichungen aus Werkzeugergebnissen ab, anstatt Zahlen zu erfinden.
Die UI erhält Aufgabenfortschritt, Werkzeugaktivität, Bericht und vorgeschlagene Entscheidungen über die aktuelle WebSocket-Sitzung.
Das Transkript wird gespeichert und dauerhafte Geschäftsfakten oder Workflow-Lektionen können in einer späteren Sitzung abgerufen werden.
Architektur
Das Echtzeitmodell erhält niemals eine uneingeschränkte Verbindung zum Ledger. ADK-Rust vermittelt ein gefiltertes Werkzeugset in die Sitzung, und jeder Aufruf durchläuft Autorisierungs-, Bestätigungs- und Prüfungs-Wrapper, bevor er das ERP oder den Browser erreicht.
Beweise und Kontrolle
Amos verwendet einen isolierten Playwright MCP-Server, um das ERP zu öffnen, zum betroffenen Datensatz oder Bericht zu navigieren, den sichtbaren Zustand zu überprüfen und eine Belegkarte zu erfassen. Der Browser dient als Verifikationsoberfläche; Buchhaltungsaktionen laufen weiterhin über die abgegrenzten ERP-Tools.
ledger:post sendet eine Bestätigungskarte und wartet. Ablehnen oder Zeitüberschreitung bedeutet, dass das Tool nicht ausgeführt wird.

Zusammensetzbares Buchhaltungswissen
Jede Fähigkeit ist ein versionierbares SKILL.md Playbook. Der Echtzeit-Prompt erhält einen kurzen Katalog, dann use_skill lädt den vollständigen Workflow und nur die erlaubten MCP-Tools, wenn der Job sie benötigt.
Proaktive Buchhaltung
Eine Routine deklariert ihren Cron-Zeitplan, Prompt, Skill, genaue Werkzeuge, Bereiche und Benachrichtigungsverhalten in TOML. ADK-Rust erstellt einen kurzlebigen LLM-Agenten für diesen Job, zeichnet den Lauf auf und sendet das Ergebnis an den ERP-Posteingang.

Das Rust hinter Amos
Das Repository baut einen RealtimeRunner, verbindet MCP-Werkzeuge mit der Live-Sitzung und umhüllt jedes Werkzeug, bevor das Modell es aufrufen kann. Der Genehmigungspfad ist Anwendungscode, sodass eine Änderung eines Prompts ihn nicht umgehen kann.
Das komplette Amos-Crate lesen ↗let mut builder = RealtimeRunner::builder()
.model(state.model.clone())
.config(config);
for tool in mcp_tools {
let scoped = ScopedTool::wrap(
tool,
granted_scopes.clone(),
user_id.clone(),
session_id.clone(),
audit.clone(),
Some(session.clone()),
);
builder = builder.tool_arc(
definition,
Arc::new(ToolBridgeAdapter::new(scoped, context_factory.clone())),
);
}if required_scopes.contains(&"ledger:post") {
if let Err(refusal) = self.confirm_with_user(&args).await {
self.record(self.inner.name(), AuditOutcome::Denied).await;
return Ok(json!({ "error": refusal }));
}
}
self.record(self.inner.name(), AuditOutcome::Allowed).await;
let args = self.with_user_token(args).await;
self.inner.execute(ctx, args).awaitAktueller Bereitstellungsvertrag
Baue ein komplettes Agentenprodukt
Amos zeigt, wie ADK-Rust native Audio-, MCP-Tools, Skills, Speicher, Hintergrundagenten, Produkt-UI, Autorisierung, Freigabe und Belege um einen Produktionsworkflow verbinden kann.