Geben Sie Aktionen Ihres eigenen Agenten von Ihrem Telefon aus frei.
ColliePWA zeigt die Fragen eines selbst gebauten Agenten auf deinem Smartphone, direkt neben deinen Terminal-Agenten. Du antwortest mit einem Fingertipp, und der Agent erhält deine Antwort.
01/Durable Agents
Ihr eigener Agent auf Ihrem Telefon.
Ein Durable Agent ist ein Agent, den du selbst baust und betreibst, zum Beispiel mit Pi Durable. Er kommuniziert mit deinem Collie über ein kleines Protokoll, den Wire, und ein SDK für Node und Bun übernimmt das für dich. ColliePWA stellt dann die Fragen des Agenten, seine Konversationen und seinen Chat dar, sodass du keinen UI-Code schreiben musst.
Experimentell. Das Protokoll kann sich in jeder Minor-Version ändern, oder die Funktion wird entfernt. Derzeit verwenden es nur die Beispiele im Collie-Repository.
02/ColliePWA
Was Sie erhalten
- Freigaben mit verbleibender Zeit
- Eine Frage des Agenten wird zu einer Karte auf deinem Smartphone: Ja oder Nein, eine Auswahl, eine Textzeile oder ein kurzes Formular. Du antwortest mit einem Fingertipp, und die Karte zeigt, wie lange die Frage offen bleibt.
- Ein Chat mit Verlauf
- Jede Konversation des Agenten öffnet sich als Chat. Der Agent speichert das Protokoll, sodass du auch seine beendeten Konversationen lesen kannst.
- Ein eigener Bereich und Push
- Der Agent bekommt auf dem Smartphone einen eigenen Bereich für Durable Agents. Dieser Bereich wandert über deine Spaces, wenn eine Frage wartet. Wenn push aktiviert ist, sendet eine Frage auch eine Benachrichtigung.
- Neben Ihren Terminal-Sitzungen
- Deine Sitzungen in Herdr, tmux und zellij sehen aus wie zuvor und funktionieren genauso. Ein Durable Agent ist ein weiterer Ursprung für eine Sitzung.
03/hello.mjs
Zehn Zeilen bis zur ersten Frage
Installiere das SDK im Ordner deines Agenten:
$ npm install @colliepwa/durable-sdk@experimentalSpeichere diesen Agenten als hello.mjs und starte ihn dann mit node hello.mjs oder bun hello.mjs. Er gibt den Pfad seines Sockets aus und wartet.
import { openCollie } from "@colliepwa/durable-sdk";
const socket = process.env.COLLIE_DURABLE_SOCKET ?? `${process.env.XDG_RUNTIME_DIR}/hello/app.sock`;
const collie = await openCollie({ socket, hostName: "hello", caps: { asks: true } });
const pane = collie.workspace("hello", { title: "Hello" }).tab("main", { title: "Questions" }).pane("deploy", { title: "Deploy", harness: "hello" });
collie.ready();
console.log(`listening ${collie.address}`);
const options = [{ id: "yes", label: "Yes" }, { id: "no", label: "No" }];
const answer = await pane.ask({ kind: "choice", toolCallId: "deploy-1", itemId: "deploy-1", title: "Deploy to staging?", options });
console.log(`answer: ${answer.optionIds[0]}`);
await collie.close();Hänge den Agenten in einem zweiten Terminal mit dem ausgegebenen Pfad an dein Collie an. --restart startet die Collie-Bridge neu: Dein Smartphone verbindet sich nach wenigen Sekunden wieder, und deine Terminal-Sitzungen laufen weiter.
$ collie durable attach hello --socket /run/user/1000/hello/app.sock --restart
Öffne ColliePWA auf deinem Smartphone. Im Bereich Durable Agents erscheint eine Zeile hello. Öffne sie, und die Konversation enthält die Frage "Deploy to staging?". Tippe auf Ja oder Nein. Der Agent gibt deine Antwort aus und beendet sich.
04/Socket · HTTPS
Wo es läuft
- Auf derselben Maschine
- Collie erreicht den Agenten über einen privaten Socket, eine Datei, die nur dein Benutzer öffnen kann.
- Überall sonst
- Collie erreicht den Agenten über HTTPS mit einem Token von mindestens 32 Zufallsbytes, und jeder mit diesem Token kann für dich antworten.
- Node oder Bun
- Das SDK läuft unter Node 22.18 oder neuer und unter Bun 1.4 oder neuer.
05/Dokumentation
Dokumentation lesen
Die Seite zu Durable Agents in der Dokumentation beschreibt die Einrichtung, die zwei Verbindungswege, die Fehlersuche und was ein Durable Agent auf dem Smartphone anzeigen kann.