Was drin steckt.
Hier findest du eine Übersicht der zentralen Bausteine: vom Grid-System über Personas bis hin zum eingebauten MCP-Server. Alles auf einer Seite, damit du in Ruhe verstehen kannst, wie die Komponenten ineinandergreifen.
Die Applikation
CIPHER-MUX ist eine Electron-Umgebung. Das Herzstück ist ein Grid mit bis zu 21 Zellen für Agent-Sessions und Markdown-Editoren. Im Hintergrund sorgt tmux dafür, dass deine Sitzungen auch bei einem Neustart oder Systemausfall sicher erhalten bleiben.
Das Grid-System flexibel nutzen
Das Grid ist deine Arbeitsfläche — maximal 7 Spalten, 3 Reihen. Ordne Sessions per Drag & Drop an, wie es für deinen Workflow passt. Zellen lassen sich vertikal erweitern. Die Kopfzeilen bieten Projektwechsel und Shell-Zugriff.
Sitzungen und das tmux-Backend
Jede Zelle beherbergt einen isolierten CLI-Prozess mit eigenem Kontextfenster — welche CLI, entscheidet die Rolle. Da das tmux-Backend die Prozesse im Hintergrund aktiv hält, kannst du die App jederzeit schließen. Beim nächsten Start hilft dir ein Recovery-Dialog dabei, bestehende Sitzungen nahtlos wiederaufzunehmen.
- Eigener CLI-Prozess pro Zelle
- Eigener Kontext, eigene Projektanweisung, eigene History
- Header-Controls: Expand, Projekt wechseln, Shell, Close
- Klick auf Header = Fokus, visuelle Hervorhebung
- $-Button: direkt ins tmux-Terminal der Session
- Eject: Session aus dem Grid in eigenes Fenster
Presets — Funktionale System-Prompts
Während Personas das „Wie“ klären, definieren Presets das „Was“. Sie geben den Agenten klare Aufgaben, Werkzeuge und Grenzen vor. Acht spezialisierte Rollen gliedern den Entwicklungsprozess:
Personas — Die richtige Tonalität finden
Personas steuern, wie das Modell mit dir kommuniziert. Da jeder Mensch anders arbeitet, stehen dir sechs Standard-Profile zur Auswahl. Jede Persona hat jetzt ihren eigenen Avatar — eine visuelle Identität, die im Session-Header und im Workspace-Editor angezeigt wird. Bei Bedarf lassen sich jederzeit eigene Profile anlegen.
Cipher // The Sentinel Wachsam, pragmatisch loyal. Maker-Team-Vibe.
Relay // The Dry Wissenschaftsjournalistisch. Sachlich, auf Augenhöhe.
Wayne // The Pragmatic Enthusiast „Das kriegen wir hin“-Attitude. Motivation in zähen Sessions.
Der Kyniker // Radikal Reduziert Maximal komprimiert, telegrafisch. Nur Fakten und Code.
Theaitetos // Diskursiv Gegenfragen, logische Lücken aufdecken, Reflexion erzwingen.
Der Glitch // Weird · Quirky Bricht KI-Antwortmuster. Für festgefahrene Situationen.
Wie sich Prompts zusammensetzen
Das System-Prompt einer Session wird dynamisch generiert. Es kombiniert die Funktion (Preset) mit der Tonalität (Persona) und dem spezifischen Projektkontext (Workspace). So ist sichergestellt, dass der Agent immer genau weiß, in welchem Umfeld er sich gerade bewegt.
Spracherkennung und Audio-Ausgabe
Lieber sprechen als tippen? Whisper.cpp läuft lokal, komplett ohne Cloud. VAD erkennt Sprechpausen automatisch. Für Sprachausgabe: Piper oder macOS-Systemstimme. Neu: Das Cipher-Adult-Voice-Bundle liefert eine dedizierte deutsche Erwachsenenstimme.
- VAD: erkennt pausen
- review-then-submit
- transkript zuerst sichtbar
- „abschicken“ / „senden“
- „hoch“ / „runter“
- „zum marker“
- „grid links/rechts“
- „grid hoch/runter“
- fuzzy: „grit“, „zelle“
- STT-Pin auf session
- BT-klick → send
- komplett händefrei
say als Fallback.Wissen lokal sichern
Notizen und Specs landen im eingebauten Editor — CodeMirror 6, Markdown, Auto-Save. Projektwissen speichern die Companion-Sessions in einer lokalen SQLite-Datenbank. Auto-Tagging läuft datenschutzfreundlich über gemma3:4b via Ollama.
- YAML-Frontmatter (Titel, Tags)
- Auto-Save nach 2s · Cmd+S triggert Auto-Tagging
- Ollama gemma3:4b (lokal) für Tag-Vorschläge
- Global oder Workspace-scoped
- Tag-Tree in der Sidebar (NotesTreeView)
- TestcaseView mit Checkboxen + Screenshots
- Voller MCP-Zugriff: lesen, schreiben, suchen, handoff
Companion, Refinement, Voice merken sich Fakten, Präferenzen, Interaktionen, Ereignisse — über Sessions hinweg.
Model Context Protocol (MCP)
Ein lokaler HTTP-Server mit 62 Tools in 10 Kategorien. Agenten steuern darüber Sessions, kommunizieren über einen Message Bus und greifen auf Notes und Memory zu.
Zugänglich für alle
cipher-mux nimmt Barrierefreiheit ernst. Neben 10 wählbaren Farbthemes (siehe oben) gibt es dedizierte Profile für Farbfehlsichtigkeit — damit alle Statusinformationen auch ohne Farbunterscheidung lesbar bleiben. Der Focus Mode blendet alle Zellen außer der aktiven ab — weniger visuelles Rauschen, mehr Konzentration.
Effizienter Umgang mit Tokens
Lange Sessions stoßen irgendwann an Kontext-Grenzen. Eine Echtzeit-Anzeige hilft dir, die Auslastung im Blick zu behalten. Der Workshop empfiehlt oder initiiert bei 90% Auslastung selbstständig Zusammenfassungs-Routinen, damit keine Informationen verloren gehen. Zudem wählt das System je nach Aufgabenschwere automatisch das passendste LLM (Opus, Sonnet oder Haiku).
Focus Mode
Eine Session, volle Aufmerksamkeit. Focus Mode expandiert eine Zelle auf 2×2 und blendet alles andere ab. Die Focus-Bar zeigt Context-Auslastung und Schriftgröße — ein Klick oder Cmd+Shift+F schaltet um. Gut für lange Ausgaben, Code-Reviews und konzentriertes Arbeiten.
Drei Agent-CLIs, zwei Tiers
Eine Rolle ist nicht an eine CLI gebunden. Pro Rolle wählt das Feld „CLI“ im Preset-Editor, welche CLI ihre Sessions startet; „Standard-CLI“ in den Einstellungen setzt die Vorgabe für alle Rollen, die keine eigene nennen. Tier 2 heißt: nicht jede Mux-Fähigkeit ist dort gemessen — was fehlt, zeigt der Preset-Editor beim Umschalten an, vor dem Sessionstart und nicht danach. Grid, Presets, Personas, Workspaces, Notes, Voice und der MCP-Server arbeiten unter allen drei. Darunter steht das Feld „Modell“: leer lassen heißt, die CLI entscheidet selbst — sonst schlägt sie vor, was sie kennt, und ein voller Modellname außerhalb der Liste geht auch.
Die Voreinstellung — und zwar nicht aus Gewohnheit: die einzige CLI, für die jede Mux-Fähigkeit gemessen ist. Projektanweisung: CLAUDE.md. Context-Anzeige, Sub-Agents, MCP-Werkzeuge, Companion-Memory, Rollengrenzen über einen PreToolUse-Hook. Gemessen an Claude Code 2.1.284.
Projektanweisung: AGENTS.md. Context-Anzeige, MCP-Werkzeuge, Companion-Memory und Rollengrenzen (PreToolUse-Hook) laufen. Was fehlt: Sub-Agents. Selbst installieren und anmelden — der Setup-Wizard kennt sie nicht. Gemessen an codex-cli 0.155.1.
Projektanweisung: AGENTS.md. Context-Anzeige und Rollengrenzen laufen über Plugins statt über Hook-Dateien, MCP-Werkzeuge und Companion-Memory wie gehabt. Was fehlt: Sub-Agents. Selbst installieren — und einen Anbieter anmelden, sonst steht die Session am Prompt und tut nichts. Gemessen an opencode 1.18.34.
Local Cyber Factory — Claude schneidet zu, ein lokales Modell codet
Claude ist gut im Zerlegen und Prüfen, aber jede Zeile Code kostet Kontingent. Die Local Cyber Factory teilt die Arbeit deshalb auf: Ein Architekt in Claude Code zerlegt ein Vorhaben in kleine Häppchen und schreibt pro Häppchen einen Abnahmetest. Den Code schreibt ein lokales Modell über opencode, angebunden an einen beliebigen OpenAI-kompatiblen Endpunkt. Dazwischen steht ein Läufer im Mux, der selbst kein Modell ist — er glaubt dem Worker nichts, er misst. Im ersten echten Lauf mit qwen3.8-27b auf einem DGX Spark wurden vier Häppchen alle im ersten Versuch grün, jedes in 100 bis 180 Sekunden.
Zerlegt, schreibt die Abnahmetests und nimmt grüne Häppchen ab. Produktionscode darf er nicht schreiben — das ist keine Bitte im Prompt, sondern eine Rollengrenze, die den Aufruf ablehnt.
Bekommt pro Versuch eine frische Session und schreibt den Code. Die Abnahmetests darf er nicht anfassen. Modell, Basis-URL, Kontext und Ausgabelimit stehen in den Einstellungen; ein Schlüssel ist nicht nötig.
Prüft vorab, ob der Abnahmetest wirklich rot ist und der Arbeitsbaum sauber. Danach das Gate: Testbefehl, Prüfsumme und git-Diff der geschützten Tests. Grün wird ein Commit, rot ein gesicherter Patch und ein Reset. Höchstens zwei Versuche pro Häppchen, dann bist du dran.
Braucht „skipPermissions“, sonst hängt opencode im Rückfrage-Dialog — der Mux lehnt dann mit genau diesem Grund ab. Am Ausgabelimit endet ein lokales Modell still, ohne Fehler; der Läufer wertet das als Fehlversuch. Geschützt ist nur, was der Architekt als geschützt nennt. Der Worker schreibt bisher keine eigenen Unit-Tests. Häppchen laufen nacheinander, nicht parallel. macOS only.