Flightdeck: Ein Claude Code Agenten-Dashboard für Ihr Terminal
Ein Live-Panel für Claude Code: Modell und Kontext, jede Berechtigungsprüfung, Subagenten-Karten, Turn-Beleg.
Berechtigungen
- Fängt Tool-Aufrufe abSieht jeden Tool-Aufruf von Claude (tool.call / tool.check) und könnte ihn blockieren oder verändern.
- Liest deine PromptsKann sehen, was du eingibst, und den Gesprächsverlauf lesen (prompt.* / session.append / session.messages).
- Verändert die OberflächeZeichnet in die Oberfläche von Claude Code: Leisten, Bereiche, Statustext, Toasts (ui.render / $.ui.*).
- Fügt Befehle/Tools hinzuRegistriert neue Slash-Befehle oder Tools, die du oder Claude aufrufen können ($.command.register / $.tool.register).
- getestet mit
- v2.1.303
- zuletzt getestet
- erfordert
- Claude Code ≥ 2.1.287
- Oberflächen
- Bereich, über dem Prompt, Statuszeile
In Claude Code installieren:
/plugin install flightdeck --marketplace scasella/claude-flightdeckWas macht diese Mod?
Flightdeck ist eine Community-Mod von Stephen Casella (scasella) und arbeitet als Claude Code Agenten-Dashboard: ein Panel, das zeigt, was Ihre Sitzung und ihre Agenten gerade tun. Es sammelt Modellname und Aufwandsstufe, eine Kontextanzeige, die Sitzungskosten, Ratenlimit-Fenster, wenn Ihr Tarif sie meldet, jede Berechtigungsprüfung, Subagenten-Karten und einen Beleg für den letzten Turn.
Die Panels sind: main (Modell, Aufwand, Modus, Anzahl der Anfragen, Kontext, Kosten, Geschwindigkeit der letzten Anfrage), architect (Konsultationen eines Berater-Agenten oder Server-Tools, per regulärem Ausdruck erkannt), gate (ein Feld pro Berechtigungsprüfung: erlaubt, vom Klassifikator oder von Ihnen entschieden, ausstehend oder abgelehnt), agents (Karten, die ab drei Agenten zu Swimlanes werden), loops (Modellschleifen, die zu keiner Karte passen), receipt (Dauer, Agenten, Änderungen, Fehler und Kosten des Turns) und ein kurzes log. Panels ohne Inhalt brauchen keinen Platz. Laut README des Autors stammt jede Zahl aus einem echten Sitzungsereignis; die „Momente“ des Architekten sind geschätzt und so gekennzeichnet.
Demo
Die Aufnahme startet Claude Code mit der geladenen Mod im kleinen Demo-Projekt. Das Terminal ist schmaler als 144 Spalten, daher öffnen wir das Panel mit /flightdeck. Über dem Prompt erscheint eine umrandete Zusammenfassung mit idle und $0.00. Dann bitten wir Claude, README.md zu lesen und das Projekt in einem Satz zu beschreiben. Während der Turn läuft, wechselt das Panel auf working und eine gate-Zeile zeigt 1 allowed · 0 classifier · 0 denied. Am Ende des Turns zeigt es die Kontextanzeige (4 %), die Kosten und eine Belegzeile: last turn 47s · 0 agents · 0 edits · 0 errors.
Installation
Nutzen Sie eine der Methoden im Installationsblock; sie installieren direkt aus dem eigenen Marketplace des Autors. Führen Sie /reload-plugins und danach /flightdeck aus. Der Autor weist darauf hin, dass der Installer melden kann, Konfigurationsoptionen seien nicht gesetzt; die Standardwerte funktionieren.
$ install flightdeck
Erfordert Claude Code ≥ 2.1.287
Wird aus dem Marketplace des Autors installiert: scasella/claude-flightdeck
1.Eine Zeile, direkt in Claude Code
/plugin install flightdeck --marketplace scasella/claude-flightdeckIn eine laufende Sitzung einfügen (v2.1.275+). Claude Code fragt zuerst, ob der Marketplace hinzugefügt werden soll.
2.Aus deiner Shell
claude plugin marketplace add scasella/claude-flightdeck claude plugin install flightdeck@claude-flightdeckFühre danach in jeder bereits geöffneten Sitzung /reload-plugins aus.
3.Ohne Installation ausprobieren
git clone https://github.com/scasella/claude-flightdeck claude --plugin-dir ./claude-flightdeckLädt die Mod nur für eine Sitzung. An deinen Einstellungen wird nichts geändert.
So funktioniert es
Alles liegt in $.state-Atomen, und jeder Hook aktualisiert sie und reicht das Ereignis weiter. Eine Berechtigungsprüfung wird so erfasst, aus hooks/register.tsx:
on('tool.check', async ($, e, next) => {
const verdict = await next(e)
if (e.tool_use_id) {
const check: Check = {
id: e.tool_use_id,
tool: e.tool,
bucket: bucketOf(e.tool),
verdict: verdict.decision === 'allow' ? 'rule' : verdict.decision,
detail: shorten(describeInput(e.tool, e.input), 90),
// ...
}
await update($, gate, g => recordCheck(normalizeGate(g), check))
}
return verdict
})Das Urteil wird so zurückgegeben, wie es kam. Das Panel selbst wird an der Render-Stelle Pane gezeichnet. Das Layout hängt vom Ort ab: eine Zusammenfassung mit höchstens 8 Zeilen inline über dem Prompt, eine Spalte neben dem Transkript und zwei Spalten ab 110 Spalten. Zwei kleine Client-Module, rail.tsx und elapsed.tsx, zeichnen die animierten Verbindungslinien und die laufenden Uhren auf dem eigenen Frame-Takt der Oberfläche, sodass das Panel nicht neu zeichnen muss. Reducer und Formatierer sind reine Funktionen in hooks/core.ts.
Anpassen
Die Optionen stehen in /config: panels (welche Panels in welcher Reihenfolge), layout (auto, compact, wide oder mini), maxCards (1 bis 6), motion (while-active oder off), palette (theme oder pastel), architectPattern, architectLabel, gateLabel, matchDescriptions, moments, openOnStart und statusLine. Der Befehl /flightdeck kennt open, close, reset und layout auto|compact|wide|mini. Fokussieren Sie das Panel mit ctrl+x tab; die Tasten 1 bis 6 klappen eine Karte auf, und f, s, o öffnen die Datei-, Shell- und sonstigen Zeilen des Gate.
Berechtigungen & Sicherheit
Bevor wir etwas ausgeführt haben, haben wir jede Datei gelesen, die das Plugin ausführen kann: plugin.json, marketplace.json, hooks/hooks.json, hooks/register.tsx, hooks/core.ts, hooks/rail.tsx, hooks/elapsed.tsx, die Typdeklarationen und die Tests. Es gibt keine package.json, kein Installationsskript, keine Binärdatei und keinen gebündelten Code. Eine Suche nach Netzwerk, Prozessen, eval, dynamischem Import und versteckten Unicode-Zeichen blieb ohne Treffer.
- Netzwerk, Prozesse, Dateien, Umgebung: keine. Die Mod sendet keine Anfragen, startet keine Befehle, liest und schreibt keine Dateien, liest keine Umgebungsvariablen und ruft das Modell nicht auf.
- Was sie beobachtet: Name und Eingabe jedes Tool-Aufrufs, jedes Berechtigungsurteil, Subagenten-Starts, Token-Nutzung und Endantworten sowie die ersten 70 Zeichen jedes Prompts für das Log. Sie behält nur kurze Zusammenfassungen im Sitzungszustand, Zugangsdaten werden durch einen Filter mit regulären Ausdrücken maskiert. Der Filter ist ein Bemühen nach bestem Wissen; betrachten Sie das Panel daher als etwas, das Ihre Befehle zeigt.
- Gating-Hooks:
tool.check,tool.call,agent.spawn,agent.offer,session.append,session.compactundclassic.UserPromptSubmitsind alle durchlässig: Sie warten aufnext(e)und geben dessen Ergebnis zurück.claude plugin validatemerkt an, dass sie kein.catchhaben; die Hooks classic und compact laufen außerdem nicht dort, wo eine Organisation Claude Code verwaltet. - Telemetrie, Daemons, andere Schreibzugriffe: keine; nach der Sitzung bleibt nichts bestehen.
- Lizenz: MIT, mit LICENSE-Datei.
claude plugin validate meldete keine Fehler oder Warnungen. Die 28 Tests des Autors bestanden unter Claude Code 2.1.303.
- Fängt Tool-Aufrufe ab
- Sieht jeden Tool-Aufruf von Claude (tool.call / tool.check) und könnte ihn blockieren oder verändern.
- Liest deine Prompts
- Kann sehen, was du eingibst, und den Gesprächsverlauf lesen (prompt.* / session.append / session.messages).
- Verändert die Oberfläche
- Zeichnet in die Oberfläche von Claude Code: Leisten, Bereiche, Statustext, Toasts (ui.render / $.ui.*).
- Fügt Befehle/Tools hinzu
- Registriert neue Slash-Befehle oder Tools, die du oder Claude aufrufen können ($.command.register / $.tool.register).
Kompatibilität & Fehlerbehebung
Geprüft mit Claude Code 2.1.303 unter macOS (validate und Tests); die README des Autors verlangt 2.1.287 oder neuer. Wenn das Panel nicht erscheint:
- Führen Sie
/reload-pluginsund dann/flightdeckaus. Unter 144 Spalten öffnet sich das Panel nicht von selbst. - Suchen Sie im Transkript nach einer gedimmten Zeile, die mit
flightdeck:beginnt; sie nennt den fehlgeschlagenen Hook oder den Grund, warum das Panel abgelehnt wurde. - Wirken die Farben falsch, setzen Sie
paletteaufpastel. Wirken Zähler nach einem Update veraltet, führen Sie/flightdeck resetaus. - In VS Code und auf dem Handy stehen Verbindungslinien und Uhren still.
FAQ
- Sendet Flightdeck Daten von meinem Rechner weg?
- Nein. Im Code haben wir keine Netzwerkaufrufe, keine Prozessstarts und kein Lesen oder Schreiben von Dateien gefunden. Es ruft nur die eigenen APIs von Claude Code für Uhr, Nutzung, Zustand und Panel auf. Der Zustand liegt im Sitzungszustand und endet mit der Sitzung.
- Kann es meine Tool-Aufrufe blockieren oder ändern?
- Nein. Es hängt sich in tool.check, tool.call, agent.spawn und weitere Hooks ein, aber jeder Hook wartet auf den nächsten Handler und gibt dessen Ergebnis unverändert zurück. Es lehnt nichts ab, schreibt nichts um und verzögert nichts.
- Speichert es meine Befehle, auch mit Geheimnissen?
- Pro Berechtigungsprüfung behält es eine einzeilige Zusammenfassung im Sitzungszustand (Toolname plus Pfad, Befehl oder Muster, auf 90 Zeichen gekürzt). Gängige Formen von Zugangsdaten wie Bearer-Token, API-Schlüssel und Passwörter werden vorher maskiert. Die Zusammenfassung erscheint nur im Panel und wird nicht über Sitzungen hinweg gespeichert.
- Das Panel hat sich beim Start von Claude Code nicht geöffnet. Warum?
- openOnStart öffnet das Panel nur in Terminals mit mindestens 144 Spalten. In einem schmaleren Terminal führen Sie /flightdeck aus. Inline über dem Prompt zeigt es eine Zusammenfassung mit 8 Zeilen.
- Wie unterscheidet es sich von Agent Radar?
- Agent Radar zeichnet über dem Prompt eine Live-Zeile pro laufendem Subagenten. Flightdeck ist ein breiteres Dashboard in einem Panel, mit Modell, Kontextanzeige, Kosten, einem Streifen für Berechtigungsprüfungen, Subagenten-Karten, die zu Swimlanes werden, und dem Beleg des letzten Turns.
# Ähnliche Mods
EmpfohlenAgent Radar
Pro laufendem Subagent eine Live-Zeile über der Eingabe: Zeit, Tool-Anzahl und aktuelle Aktion, dazu ein /radar-Pane.
- über dem Prompt
- Bereich
- Toast
- Fängt Tool-Aufrufe ab
- Liest deine Prompts
- Verändert die Oberfläche
- Fügt Befehle/Tools hinzu
getestet mit v2.1.291
EmpfohlenContext Bar
Das Kontextfenster von Claude Code als gestapelter Balken über dem Prompt, eine Farbe pro Kategorie, mit Token-Zahlen.
- über dem Prompt
- Verändert die Oberfläche
- Fügt Befehle/Tools hinzu
- Speichert Daten
getestet mit v2.1.291
EmpfohlenKontext-Meter
Kontextfüllstand, 5-Stunden- und 7-Tage-Plannutzung und Sitzungskosten in der Statuszeile, plus Warnung vor dem Limit.
- Statuszeile
- Toast
- Verändert die Oberfläche
getestet mit v2.1.310
Mehr in Panes & Dashboards, Timer, Todos, Standups.