Anleitung

So funktioniert Statio Deploy, von der ersten App bis zur letzten Variable in der .env. Jeder Abschnitt steht für sich: Lies den, den du brauchst.

Die Oberfläche der App ist auf Italienisch: Diese Anleitung nennt Tasten und Felder so, wie sie auf dem Bildschirm stehen, mit ihrer Bedeutung in Klammern.

Eine App hinzufügen

Die Taste + oben in der Liste öffnet das Blatt Nuovo applicativo (neue App). Es gibt nur wenige Felder:

Eine App änderst du mit Modifica… (bearbeiten) und entfernst sie mit Elimina… (löschen): Sie verschwindet aus der Liste, der Projektordner bleibt unberührt.

Die Befehlserkennung

Sobald du den Ordner wählst, oder mit der Taste Rileva (erkennen), liest Statio Deploy die Projektdateien und schlägt die gefundenen Befehle vor, vom wahrscheinlichsten zum unwahrscheinlichsten. Ein Klick auf einen Vorschlag übernimmt ihn ins Befehlsfeld.

Erkannt werden die Skripte aus package.json (npm, pnpm, yarn oder bun, je nach Lockfile), Django-, FastAPI- und Streamlit-Projekte, Python-Einstiegspunkte mit .venv, Poetry oder uv, Makefile-Ziele, Docker Compose, Shell-Skripte, das Procfile und die Codeblöcke im README.

Die Erkennung liest nur: Sie führt nichts aus. Findet sie nichts, gibst du den Befehl selbst ein.

Starten und stoppen

Das Hauptfenster von Statio Deploy: links die Liste der Apps, rechts Shop in Betrieb mit seinem Next.js-Log.

Avvia (starten, ⌘R) führt den Befehl in deiner Login-Shell aus, derselben wie im Terminal: Es gelten dein PATH, nvm, pyenv und alles aus .zprofile und .zshrc. Darunter zeigt der Bereich Log die Ausgabe live. Mit eingeschaltetem Segui (folgen) scrollt das Log von selbst zur letzten Zeile; Svuota (leeren) löscht es.

Arresta (stoppen, ⌘.) stoppt die App und alle Prozesse, die sie gestartet hat, nicht nur den ersten: Jede App läuft in einer eigenen Prozessgruppe. Zuerst wird sie gebeten, sich sauber zu beenden; nach fünf Sekunden wird sie, falls nötig, zwangsweise beendet. Riavvia (neu starten, ⇧⌘R) macht beides hintereinander. Ferma tutto (alle stoppen, ⌥⌘.) stoppt alle laufenden Apps.

Wenn du Statio Deploy beendest, werden die noch laufenden Apps gestoppt.

Im Browser öffnen

Apri nel browser (im Browser öffnen, ⌘O) öffnet die Adresse der App. Die Adresse kann Variablen aus den .env-Dateien des Projekts enthalten: http://localhost:${PORT} nimmt den Wert von PORT, und ${PORT:-3000} nimmt 3000, wenn die Variable fehlt. Änderst du also den Port in der .env, zieht der Link mit.

Der Browser wird auf drei Ebenen gewählt: der in der App angegebene, sonst der Standard in den Einstellungen von Statio Deploy, sonst der des Systems. Über das Menü Apri con (öffnen mit) wählst du ihn für ein einziges Mal.

Die .env bearbeiten

Der Editor für die .env-Datei von Shop, mit verdeckten geheimen Schlüsseln.

Der Bereich Ambiente (Umgebung), neben Log, zeigt die Variablen der Umgebungsdateien der App, jeweils eine Datei. Du kannst einen Wert ändern, am Ende eine Variable hinzufügen oder eine löschen (und sie mit Ripristina wiederherstellen, solange du nicht gespeichert hast). Salva (speichern, ⌘S) schreibt die Datei.

Der Rest der Datei ändert sich um kein Byte: Kommentare, Leerzeilen, Anführungszeichen, export und Zeilenenden bleiben, wie du sie geschrieben hast. Zeilen, die die App nicht deuten kann, bleiben unverändert stehen, und mehrzeilige Werte werden angezeigt, aber nicht bearbeitet: Dafür gibt es Apri nell'editor (im Editor öffnen).

Ändert ein anderes Programm die Datei, während du sie bearbeitest, bemerkt Statio Deploy das und fragt vor dem Speichern, ob die Version auf der Festplatte Ricarica (neu geladen) oder Sovrascrivi (überschrieben) werden soll. Vor jedem Speichern wird die vorherige Version in die Daten von Statio Deploy kopiert, außerhalb des Projekts.

Statio Deploy gibt die Variablen nicht an die App weiter: Die App liest ihre .env selbst beim Start. Deshalb erscheint, wenn du sie bei laufender App änderst, der Hinweis, sie neu zu starten.

Belegte Ports

Sales Dashboard gestoppt, mit der Warnung, dass Port 8501 von einem Python-Prozess belegt ist.

Bevor eine App startet, prüft Statio Deploy den Port ihrer Adresse. Ist er schon belegt, sagt es dir, von wem, einer anderen App aus Statio Deploy oder einem fremden Prozess, und lässt dich wählen: den anderen Prozess stoppen, trotzdem starten oder abbrechen.

Auch eine gestoppte App, deren Port belegt ist, zeigt in der Liste eine Warnung: Meist ist es eine Kopie, die in einem Terminal weiterläuft.

Das Feld in der Menüleiste: die Apps mit ihrem Status, Tasten zum Öffnen, Starten oder Stoppen und alle stoppen.

Am schnellsten nutzt du Statio Deploy über das Feld in der Menüleiste. Das Symbol (ein Kartenstapel, mit einem Punkt, wenn etwas läuft) öffnet es mit allen Apps untereinander: für jede der Statuspunkt, der Name, die Taste zum Öffnen im Browser, falls sie eine Adresse hat, und die zum Starten oder Stoppen. Ein Klick auf den Namen öffnet das Hauptfenster direkt bei dieser App. Oben steht die Zahl der laufenden Apps; unten Ferma tutto (alle stoppen), Apri Statio Deploy (Statio Deploy öffnen) und Esci da Statio Deploy (beenden). Das Feld funktioniert auch bei geschlossenem Hauptfenster und lässt sich in den Einstellungen ausblenden.

Das Symbol im Dock zeigt die Zahl der laufenden Apps. Wird eine App von selbst beendet, kommt eine Mitteilung: ein Klick, und Statio Deploy öffnet sich bei dieser App, mit dem Log, das den Grund zeigt.

Weiterlaufende Prozesse

Statio Deploy merkt sich die Prozesse, die es startet. Wird es unerwartet beendet (ein Absturz, ein erzwungenes Ausschalten), findet es beim nächsten Start die Apps, die weiterlaufen, und zeigt eine Warnung: Du kannst sie stoppen oder ignorieren. Ihr Log ist nicht mehr verfügbar, weil man sich an einen früher gestarteten Prozess nicht wieder anhängen kann.

KI-Agenten

Statio Deploy enthält einen MCP-Server, das Protokoll, über das KI-Agenten externe Werkzeuge nutzen. Verbunden mit Claude Code, Claude Desktop, Cursor, Codex oder einem anderen MCP-Client kann der Agent die Apps auflisten, Status, Logs und .env lesen, die Befehle eines Projekts suchen und, wenn du es erlaubst, Apps für dich starten, stoppen, hinzufügen und ändern.

Ab Werk ist er aus: Eingeschaltet wird er unter Einstellungen › Agenti AI (KI-Agenten) mit Consenti agli agenti AI di gestire Statio Deploy (KI-Agenten Statio Deploy verwalten lassen). Darunter sind die Permessi (Berechtigungen) in Gruppen geteilt: Apps, Status, Logs und .env lesen; Apps starten, stoppen und öffnen; Apps hinzufügen, ändern und entfernen; .env-Dateien ändern. Außer dem Lesen bleibt jede Gruppe aus, bis du sie einschaltest.

Werte von Schlüsseln mit SECRET, TOKEN, PASSWORD, KEY, PRIVATE oder CREDENTIAL kommen beim Agenten verdeckt an, in den .env-Dateien und in den Logs, es sei denn, du schaltest Consenti di leggere i valori sensibili (sensible Werte lesen lassen) ein. Mit Chiedi conferma per le azioni a rischio (bei riskanten Aktionen nachfragen, ab Werk an) fragt Statio Deploy nach, bevor ein Befehl startet, den du nie selbst gestartet hast oder den ein Agent geändert hat, und vor „alle stoppen“. Apps hinzufügen, ihren Befehl oder Ordner ändern, sie entfernen und Variablen löschen fragt immer nach.

Unter Configura un client (Client einrichten) wählst du deinen Client und kopierst die fertige Konfiguration; für Claude Desktop gibt es Aggiungi a Claude Desktop (zu Claude Desktop hinzufügen). Die Verbindung läuft über ein kleines Programm in der App und öffnet keine Netzwerkports. Für Clients, die keine lokalen Programme starten können, gibt es den Server HTTP locale (lokaler HTTP-Server): Er lauscht nur auf 127.0.0.1 und verlangt ein Token. Agenten, die nur im Browser laufen, wie ChatGPT im Web, können sich nicht verbinden. Das Registro attività (Aktivitätsprotokoll) listet jede Aktion der Agenten mit Client, Uhrzeit und Ergebnis.

Einstellungen und Daten

In den Einstellungen (⌘,) wählst du das Erscheinungsbild (System, Hell oder Dunkel), den Standardbrowser, das Symbol in der Menüleiste, die Mitteilungen und den Start bei der Anmeldung. Fragt macOS nach einer Bestätigung, findest du sie in den Systemeinstellungen unter Anmeldeobjekte.

Alle Daten liegen in ~/Library/Application Support/Local Deploy/: die Liste der Apps (apps.json), die Kopien der bearbeiteten .env-Dateien (env-backups/, die letzten zehn pro Datei) und die gestarteten Prozesse (running.json). Der Ordner trägt noch den ursprünglichen Namen der App, damit die Daten bisheriger Nutzer bleiben, wo sie sind.