- Phoenix.new ist ein vollständig online arbeitender AI-Coding-Agent, der speziell auf Elixir und das Phoenix-Framework zugeschnitten ist
- Nutzer können in einer browserbasierten IDE über eine isolierte virtuelle Maschine Code schreiben und sich mit dem Agenten eine Root-Shell teilen
- Der Phoenix.new-Agent steuert den Browser direkt, testet so die UI und automatisiert alles von Code-Änderungen über Deployment bis zur GitHub-Integration
- Nutzer können den Entwicklungsfortschritt über Live-App-Vorschau und Log-Monitoring in Echtzeit verfolgen
- Erweiterungen auf verschiedene Sprachen und Frameworks sind geplant, was Veränderungen künftiger Entwicklungs-Workflows erwarten lässt
Einführung
- Chris McCord ist der Entwickler, der das Phoenix-Framework für Elixir geschaffen hat
- Zuletzt hat er sich bei Fly.io auf ein internes Projekt konzentriert, um eine Umgebung zu schaffen, in der LLM-Agenten mit Elixir und Phoenix genauso gut arbeiten wie mit Python und JavaScript
- Als Ergebnis dieses Projekts wurde Phoenix.new vorgestellt
- Phoenix.new ist ein vollständig online laufender AI-Coding-Agent für Elixir und Phoenix mit vollem Funktionsumfang
- Es wird als ein Tool hervorgehoben, das für Echtzeit-Zusammenarbeit und schnelles Prototyping optimiert ist
Hauptmerkmale von Phoenix.new
- Es läuft im Browser, bietet aber sowohl dem Nutzer als auch dem Agenten eine Root-Shell auf einer isolierten virtuellen Maschine, die als Fly Machine erstellt wurde
- Nutzer können über eine Oberfläche im VSCode-Stil wie vorgesehen auf die Shell zugreifen
- Der Agent ist auf Phoenix spezialisiert und versteht die Anforderungen von Echtzeit-Kollaborationsanwendungen
- Phoenix.new hat einen Browser eingebaut, den der Agent „headless“ steuert, um Frontend-Änderungen zu testen und damit zu interagieren
- Statt nur Screenshots auszuwerten, kann er den tatsächlichen Seiteninhalt und den JavaScript-Status erfassen
Vorteile des Root-Zugriffs
- Der Agent kann wie ein Nutzer direkt eine Shell öffnen und Entwicklungsexperimente durchführen
- Weil es sich um eine isolierte VM-Umgebung handelt, sind auch Aktionen wie das Hinzufügen von Paketen in
mix.exsoder die Installation von APT-Paketen auf Systemebene möglich - Diese Struktur automatisiert einen großen Teil wiederkehrender und lästiger Aufgaben
- Alle erzeugten Apps laufen sofort in der Cloud und erhalten automatisch eine private Share-URL (Domain
.phx.run), integriertes Port-Forwarding, GitHub-Integration sowie die Infrastruktur-Guardrails von Fly.io (Virtualisierung, WireGuard, isolierte Netzwerke) - Die
gh-CLI von GitHub ist standardmäßig installiert, sodass der Agent auch Team-Workflows wie Repositorys klonen, Issues prüfen und PRs erstellen ausführen kann - Eine automatische Deployment- und Testing-Schleife ist vorhanden, sodass der Agent alles vom Starten der App bis zum Erkennen und Beheben von Fehlern übernehmen kann
Builds in Echtzeit prüfen
- Phoenix.new führt einen echten Browser aus, um Webanwendungen zu testen
- Beim Hinzufügen von Frontend-Funktionen schreibt und kompiliert es nicht nur Code, sondern bedient die UI direkt und prüft dabei gleichzeitig die Seite, den JavaScript-Status und Server-Logs
- In die eigene UI ist eine Live-App-Vorschau eingebaut, mit der sich Entwicklung und Änderungen in Echtzeit überwachen lassen
- Änderungen werden auch über mehrere
.phx.run-Tabs hinweg in Echtzeit synchronisiert
Mehr als nur Prototyping
- Es wurden bereits Full-Stack-Apps mit WebSocket, Phoenix Presence und echter Datenbankanbindung entwickelt
- Alles, was sich in Shell und Browser tun lässt, kann der Agent automatisch oder auf Anforderung des Nutzers erledigen
- Unterstützt werden etwa das Untersuchen von Datenbanken nach dem Setzen von
$DATABASE_URL, Vorschläge für Ecto-Schemas oder die Installation eines MySQL-Clients
- Unterstützt werden etwa das Untersuchen von Datenbanken nach dem Setzen von
- Moderne LLMs verfügen über breites Wissen und Generalisierungsfähigkeit, sodass auch Erweiterungen auf neue Sprachen oder Frameworks zu erwarten sind
- Beispiele: erfolgreiches spontanes Coden einer Phoenix-LiveView-Tetris-App; künftig sind auch Rails, React Native, Svelte, Go usw. denkbar
- Der System-Prompt ist aktuell auf Phoenix ausgerichtet, doch es wurde die Absicht erklärt, auf andere Sprachen und Frameworks zu erweitern
Ausblick auf das Zeitalter asynchroner Agenten
- Es wird betont, dass dies eine Zeit großer Veränderungen in Entwickler-Workflows ist
- Künftige Entwicklung werde sich voraussichtlich von der Arbeit mit Dateien in der lokalen Shell hin zu einer agentengesteuerten Form in asynchronen CI-Umgebungen verlagern
- Auch wenn lokale Entwicklung nicht verschwinden wird, dürften die meisten wiederkehrenden Aufgaben in agentenzentrierte Cloud-Umgebungen wechseln
- Tatsächlich wird Phoenix.new bereits im Alltag genutzt, etwa zum Klassifizieren von
phoenix-core-Issues und zum Erstellen von PRs zur Problemlösung - Chris McCord zeigt sich begeistert und erwartungsvoll hinsichtlich dieses Wandels und der künftigen Möglichkeiten von Phoenix.new
1 Kommentare
Hacker-News-Kommentare
Ich finde diesen Service wirklich beeindruckend und würde hier gern die zwei wichtigsten Innovationen hervorheben
Ich würde Kasm Workspaces empfehlen. Damit lassen sich Docker-basierte Linux-Desktop-Umgebungen remote frei starten, und es eignet sich auch sehr gut als AI-Entwicklungsumgebung. Persistenz für Home-Verzeichnisse und Pakete wird ebenfalls unterstützt. Docker-Hub-Link, Reddit-Diskussion zur Paketpersistenz
Es gibt die Meinung, dass es eine Innovation sei, wenn sich ein Agent in einer containerisierten Umgebung frei bewegen kann, aber ich frage mich, ob das wirklich so innovativ ist
Ich gebe offen zu, dass ich der Gründer von Phoenix bin; wenn ihr Fragen habt, kann ich sie beantworten. Zur Einordnung: phoenix.new ist ein globaler Elixir-Cluster, der weltweit verteilt ist. Wenn man sich zum Beispiel aus Australien anmeldet, bekommt man ein IDE und einen Agenten in Sydney zugewiesen
Tolle Arbeit. Beim Branding Phoenix.new war ich etwas verwirrt und frage mich, ob das dasselbe ist wie das mir bekannte Elixir-Web-Framework oder ob es darüber hinausgeht
phoenix.flyio.newdafür nicht passender?Ich habe erfahren, dass die Phoenix.new-Umgebung einen Headless-Chrome-Browser enthält, den der Agent steuern kann. Wenn man ihm sagt, er solle Frontend-Funktionen hinzufügen, schreibt er also nicht nur Code und sorgt dafür, dass Kompilierung und Linting durchlaufen, sondern startet die App selbst, bedient die UI und prüft gleichzeitig Seiteninhalte, JavaScript-Zustand und Server-Logs. Ich frage mich, ob man diesen Headless-Browser und den Agenten auch lokal in einer Umgebung wie Cursor ausführen kann
Ich konnte keine Dokumentation zu Sicherheitsrichtlinien oder dazu finden, ob vom Nutzer eingereichter Code für das Training verwendet wird. Ich würde gern wissen, wo man die entsprechenden Sicherheitsrichtlinien einsehen kann
Ich würde gern wissen, welchen Ansatz ihr bei Barrierefreiheit verfolgt und ob ihr Accessibility-Tests für die phoenix.new-UI durchführt. Da viele Leute auch Frontends mit Phoenix schreiben, würde ich außerdem gern wissen, ob ihr die generierten Frontends schon einmal auf Barrierefreiheit bewertet habt
Wenn du Einblicke in die Provisionierung isolierter Umgebungen mit der Fly API teilen kannst, wäre ich daran sehr interessiert. Ich probiere selbst einen ähnlichen Ansatz für ein Low-Code-Serverless-Workflow-System aus
Als jemand, der Elixir mag und an die Zukunft von agentischer AI glaubt, finde ich diesen Service sehr cool. Ich habe aber Fragen zum Kontextmanagement und zu den verwendeten Modellen
Ich bin mir nicht sicher, ob Phoenix.new ein Produkt von Fly.io oder ein Projekt darunter ist. Ich frage mich auch, ob die Preisgestaltung klar kommuniziert wird, insbesondere wie zusätzliche Kosten für dauerhaft deployte Web-Services aussehen. Auf dem Smartphone war das auf der Startseite nur schwer zu finden
Ich hatte oft Sorge, dass Elixir bei der LLM-Unterstützung zurückfallen könnte, deshalb freue ich mich sehr über solche Bemühungen. Durch diese aktiven Versuche habe ich mehr Vertrauen, dass die Zukunft von Elixir sicherer ist
Ich denke halb im Scherz, dass gerade die Tatsache, dass LLMs Elixir nicht gut schreiben, am Ende sogar der größte Reiz von Elixir sein könnte
Ich habe die Erfahrung gemacht, dass Claude auch Full-Stack-Elixir-Apps mit LiveView sehr gut erzeugt hat. Das Meme dazu entspricht also nicht wirklich der Realität, sondern eher einem Gefühl
Ich habe in den letzten Monaten LLMs zum Schreiben von Elixir-Code verwendet und finde, dass sie ziemlich gut sind, auch wenn sie nicht so perfekt wie bei JS sind
Ich baue seit einigen Wochen mit LLMs neue Prototypen, meist in Zed mit GitHub Copilot und Claude Sonnet 3.7, und die Erfahrung ist hervorragend. Manchmal versucht es noch, veraltete Muster zu verwenden, aber das ist kaum problematisch. Neue LiveView-Features erzeugt es problemlos. Insgesamt unterscheidet sich die Produktivität nicht stark von dem, was ich sonst in Python- oder Next.js-Projekten erlebt habe. Wahrscheinlich profitiere ich auch davon, überwiegend populäre und gut bekannte Pakete zu verwenden. Als ich zu Beginn selbst ein Phoenix-Projekt erzeugt und es dann dem LLM übergeben habe, kam es auch seltener in merkwürdige Richtungen ab
Aus der Perspektive von jemandem, der mit Common Lisp arbeitet, fände ich es gut, wenn man LLMs mit der bestehenden Codebasis nachtrainieren könnte. Nur die Dokumentation lesen zu lassen scheint die Genauigkeit bei der Codegenerierung oder die allgemeine Problemlösungsfähigkeit nicht wirklich zu verbessern
Ich würde @chrismccord gern fragen, ob das ein gemeinsames Projekt von Chris und Fly.io ist; ich bin etwas verwirrt. Ist es nicht möglich, die App vollständig zu trennen und selbst zu betreiben? Bedeutet das, dass es sich nicht um das Open-Source-Phoenix-Projekt handelt?
Die Meinung, dass LLMs mit Elixir nicht gut umgehen können, überrascht mich. Ich selbst habe AI-Tools in Phoenix-/Elixir-Sideprojects ziemlich erfolgreich genutzt
Ich habe LLMs nur mit Elixir verwendet und habe daher keinen Vergleich, aber Claude geht zwar oft seltsame Wege; wenn man es jedoch die Handbücher lesen lässt, funktioniert es anschließend ziemlich gut
Ich habe deutlich das Gefühl, dass LLMs bei Elixir heute besser sind als früher. Komplexere Aufgaben wie Phoenix oder LiveView bleiben schwieriger als einfaches Elixir. Mich würde interessieren, welches LLM am besten zu Elixir/Phoenix passt
Wenn man auf „Sign in with fly.io“ klickt, landet man auf einer Zahlungsseite, aber es gibt keine Detailinformationen dazu, was in der 20-$-Option mit „Built-In AI Assistance“ enthalten ist. Es heißt, Funktionen wie Build, Refactoring und Debugging würden in der IDE bereitgestellt, aber ich würde gern den genauen Umfang wissen
Ich habe mich direkt angemeldet und nachgesehen: Es gibt keine kostenlose Testphase, sondern sofort nur ein 20-$-Abo. Auch Nutzungslimits sind nicht angegeben
Phoenix.new wirkt leistungsstark, und ich werde es auf jeden Fall testen. Es ist noch nicht ganz das agentische Framework, das ich mir wünsche, um die BEAM-Umgebung maximal auszunutzen, aber vielleicht könnte jido diese Rolle übernehmen