Coding-Agenten
Ein Coding-Agent arbeitet mit dem Hub unter seinem eigenen Schlüssel, nie unter deinem. Der Hub erkennt am Schlüssel, dass ein Agent anfragt, und hält ihn unter einer festen Obergrenze, egal welche Rolle das Gerät hat.
Wie ein Agent den Hub erreicht
Abschnitt betitelt „Wie ein Agent den Hub erreicht“- Mit
pbxim Agentenmodus: Der Agent ruftpbx --agent claude-code …auf, oderpbxmitPBX_AGENT=claude-codein seiner Umgebung.pbxsigniert jede Anfrage mit dem Agentenschlüssel des Geräts für diese Integration (unten). - Über den MCP-Server von ownpaas (
ownpaas-mcp) auf deinem Mac (ownpaas ist ein eigenes Produkt, noch nicht veröffentlicht): Der Agent ruft die Werkzeuge des Hubs auf (list_servers,get_status,create_twin,list_twins,reset_twin_data,delete_twin,get_evidence,request_access,list_releases). ownpaas signiert jeden Aufruf mit einem Agentenschlüssel, der für diese Agent-Integration (Claude Code, Cursor, Codex) auf diesem Gerät registriert ist. In der Konfiguration des Agenten steht kein Schlüssel. - Mit einem API-Schlüssel der Art
agent, für Skripte und CI: höchstensread,twins:writeundaccess:developer. Der Schlüssel wird einmal gezeigt; der Hub speichert nur einen Hash.
Der Agentenmodus von pbx
Abschnitt betitelt „Der Agentenmodus von pbx“pbx --agent claude-code twin create --production shop --task fix-42PBX_AGENT=claude-code pbx twin list- Der Schlüssel. Jedes Gerät hat pro Integration einen Agentenschlüssel (P-256, ohne Anwesenheit einer Person). Der Hub leitet den Prinzipal
agentaus dem Schlüssel ab, nicht aus dem, was die Anfrage sagt. - Die erste Nutzung registriert ihn. Der erste Lauf im Agentenmodus auf einem Gerät erzeugt den Agentenschlüssel und registriert ihn beim Hub, signiert mit dem eigenen Schlüssel des Geräts: Ein
presence-Gerät fragt seine Person einmal (Touch ID, eine PIN). Danach signiert der Agentenschlüssel ohne jemanden.pbx agent register claude-codetut dasselbe vorab, damit die Abfrage nicht mitten im Lauf eines Agenten kommt. - Ein Widerruf bleibt. Nach
pbx agent revoke claude-code(oder dem Widerruf durch einen Owner) scheitern die Anfragen des Agenten mit dem Hinweis, dass eine Person den Schlüssel neu registriert.pbxregistriert ihn nicht von selbst neu. - Kein Ausweichen auf deinen Schlüssel. Ist
PBX_AGENTgesetzt, wird abgelehnt, was nur eine Person signiert, bevor etwas signiert ist:pbx open,pbx approve, das Koppeln,pbx agent registerundpbx agent revoke. SetzePBX_AGENTin der Umgebung des Agenten (seinem Shell-Profil, der Konfiguration des MCP-Servers), nicht nur--agentin seinen Befehlszeilen. - Die Antworten. Erlaubte Anfragen enden mit 0. Anfragen über der Obergrenze enden mit 4 und der Ablehnung des Hubs. Anfragen, die eine Person freigeben muss, enden mit 5, der ID der Freigabe und der
pbx approve-Zeile, die auszuführen ist; mit--output jsonsteht die Freigabe auf stdout. Zerstörende Befehle nehmen--confirm NAME, nie--yes, damit ein Agent sie ohne Terminal aufrufen kann; der Hub entscheidet trotzdem. - Die Sitzung. Das Audit nennt die Integration und die Sitzung:
PBX_AGENT_SESSION, sonst eine propbx-Lauf.
Die Grenze. Auf einem Gerät, dessen Signaturschlüssel sich ohne eine Person öffnet (passphrase-stored, tpm, tang), kann ein Prozess desselben Benutzers lesen, was pbx liest, und als das Gerät signieren. Der Agentenmodus hält einen Agenten, der sich an die Regeln hält, unter seiner Obergrenze; nur der Signaturschlüssel eines presence-Geräts hält auch einen, der es nicht tut. Die Grenze ziehen die Obergrenze und die Freigaben des Hubs, nicht der Client.
Was ein Agent darf
Abschnitt betitelt „Was ein Agent darf“| Agent | |
|---|---|
| Hosts, Twins, Releases, Nachweise lesen | erlaubt |
| Twins anlegen, zurücksetzen und löschen | erlaubt |
SSH und podman --remote auf einem Twin | erlaubt |
| Einen Production- oder Staging-Host löschen, ein Release freigeben, Bedien-Login oder Admin-Zugriff in Production | fragt an; eine Person gibt frei |
| Admin-Zugriff auf einem Twin, Schlüssel, Geräte, Einstellungen | abgelehnt |
| Ein Twin mit einer Kopie der Produktionsdaten | fragt an; eine Person gibt frei |
Freigaben
Abschnitt betitelt „Freigaben“Eine Anfrage eines Agenten, die eine Person braucht, wartet als offen. Eine Person gibt sie von einem gekoppelten Gerät der Stufe presence frei, mit dem eingetippten Namen des Hosts: pbx approvals listet sie, pbx approve <id> signiert die Freigabe mit dem Schlüssel des Geräts. Der Hub führt die aufgezeichnete Anfrage dann einmal aus. Kein Werkzeug gibt frei, und ein Agentenschlüssel kann es nie. Das Portal des Hubs zeigt Freigaben, kann aber nicht entscheiden, weil ein Browser keinen Signaturschlüssel hält.
Das Audit
Abschnitt betitelt „Das Audit“Jede Zeile nennt den Prinzipal (Person, Agent oder CI), das Gerät, den Schlüssel und bei einem Agenten seine Integration und Sitzung. Eine freigegebene Operation nennt, wer angefragt und wer freigegeben hat.