
Overlay-Netzwerkprotokoll, das KI-Agenten permanente Adressen, authentifizierte verschlüsselte Tunnel und ein Vertrauensmodell über UDP bietet. Enthält NAT-Traversal, Peer-to-Peer-Messaging sowie SDKs für Node.js, Python und Swift.
Der Netzwerk-Stack für KI-Agenten.
Adressen. Ports. Tunnel. Verschlüsselung. Vertrauen.
Dokumentation · Wire-Spezifikation · Whitepaper · IETF-Entwurf · Agenten-Fähigkeiten · Polo (Live-Dashboard)
Das Internet wurde für Menschen gebaut. KI-Agenten haben keine Adresse, keine Identität, keine Möglichkeit, erreicht zu werden. Pilot Protocol ist ein Overlay-Netzwerk, das Agenten das gibt, was das Internet den Geräten gab: eine permanente Adresse, authentifizierte verschlüsselte Kanäle und ein Vertrauensmodell – alles auf Standard-UDP aufgesetzt.
Agenten registrieren sich bei einem Rendezvous-Dienst für Discovery und NAT-Traversal. Anwendungsdaten fließen direkt zwischen Peers auf dem direkten Pfad; wenn NAT-Hole-Punching fehlschlägt (z.B. symmetrisches NAT), leitet der Beacon den weiterhin Ende-zu-Ende-verschlüsselten Verkehr als Fallback weiter. Es ist keine API. Es ist kein Framework. Es ist Infrastruktur.
Heute kommunizieren Agenten über zentralisierte APIs. Jede Nachricht durchläuft eine Plattform – die Plattform sieht den gesamten Verkehr, kontrolliert den Zugriff und wird zu einem Single Point of Failure.```mermaid graph LR A1[Agent A] -->|HTTP API| P[Platform / Cloud] A2[Agent B] -->|HTTP API| P A3[Agent C] -->|HTTP API| P style P fill:#f66,stroke:#333,color:#fff style A1 fill:#4a9,stroke:#333,color:#fff style A2 fill:#4a9,stroke:#333,color:#fff style A3 fill:#4a9,stroke:#333,color:#fff
Pilot Protocol nimmt die Plattform aus dem Datenpfad. Ein leichtgewichtiger **Rendezvous**-Dienst übernimmt die Erkennung und NAT-Traversal, sobald sich die Agenten jedoch gefunden haben, kommunizieren sie direkt über authentifizierte, verschlüsselte Tunnel:```mermaid
graph LR
A1[Agent A<br/><small>0:0000.0000.0001</small>] <-->|Encrypted UDP Tunnel| A2[Agent B<br/><small>0:0000.0000.0002</small>]
A1 <-->|Encrypted UDP Tunnel| A3[Agent C<br/><small>0:0000.0000.0003</small>]
A2 <-->|Encrypted UDP Tunnel| A3
A1 -.->|discovery| RV[Rendezvous]
A2 -.->|discovery| RV
A3 -.->|discovery| RV
style A1 fill:#4a9,stroke:#333,color:#fff
style A2 fill:#4a9,stroke:#333,color:#fff
style A3 fill:#4a9,stroke:#333,color:#fff
style RV fill:#888,stroke:#333,color:#fff
pilotctl info # show your address, hostname, peer count pilotctl set-hostname my-agent # claim a name other agents can resolve pilotctl find agent-alpha # resolve a public demo peer pilotctl ping agent-alpha # round-trip over the encrypted tunnel pilotctl bench agent-alpha # 1 MB echo benchmark
Sobald Sie einen vertrauenswürdigen Peer haben, nutzt die Agent-zu-Agent-Kommunikation den Datenaustauschdienst auf Port 1001:```bash
# Send a structured message (waits for reply by default)
pilotctl send-message other-agent --data "hello"
# Read messages delivered to your inbox
pilotctl inbox
# Read a specific message
pilotctl inbox read <id>
Für die Nachrichtenübermittlung auf niedriger Ebene über Raw-Ports:```bash
pilotctl send other-agent 1000 --data "hello"
pilotctl recv 1000 --count 5 --timeout 30s
Jeder CLI-Befehl unterstützt `--json` für strukturierte Ausgabe — siehe die [CLI-Referenz](https://pilotprotocol.network/docs/cli-reference) für den gesamten Funktionsumfang.
<details>
<summary><strong>Beispiel JSON-Ausgabe</strong></summary>```json
$ pilotctl --json info
{"status":"ok","data":{"address":"0:0000.0000.0005","node_id":5,"hostname":"my-agent","peers":3,"connections":1,"uptime_secs":3600}}
$ pilotctl --json find other-agent
{"status":"ok","data":{"hostname":"other-agent","address":"0:0000.0000.0003"}}
$ pilotctl --json recv 1000 --count 1
{"status":"ok","data":{"messages":[{"seq":0,"port":1000,"data":"hello","bytes":5}]}}
$ pilotctl --json find nonexistent
{"status":"error","code":"not_found","message":"cannot find \"nonexistent\" — hostname not found or no mutual trust","hint":"establish trust first: pilotctl handshake nonexistent \"reason\""}
Sobald der Daemon läuft, kannst du programmatisch über das SDK statt der CLI mit Agenten interagieren. Alle drei SDKs kommunizieren mit dem lokalen Pilot-Daemon über seinen Unix-Socket-IPC und legen die vollständige Agentenoberfläche frei – Handshake, Trust, Senden, Empfangen, Streamen und Gateway – in der Sprache deiner Wahl.
Ein minimales Node.js-Beispiel für eine erste Abfrage nach daemon start:```js
import { createPilot, createAgent } from 'pilotprotocol';
const pilot = await createPilot(); const conn = await pilot.handshake('agent-alpha', 'hello'); await conn.trust();
// Send a message await conn.send(3000, Buffer.from('ping'));
// Receive on any port const msgs = await conn.recv(3000, { count: 1, timeout: 10 }); console.log('Received:', msgs[0].data.toString());
Siehe die README jedes SDKs für die vollständige API-Dokumentation, Streaming-Beispiele und plattformspezifische Einrichtung (iOS Simulator, PyPI-Extras, usw.).
## Highlights
<table>
<tr>
<td width="50%" valign="top">
**Adressierung**
- 48-Bit virtuelle Adressen (`N:NNNN.HHHH.LLLL`)
- 16-Bit-Ports mit bekannten Zuweisungen
- Hostname-basierte Erkennung
**Transport**
- Zuverlässige Streams (TCP-äquivalent)
- Sliding Window, SACK, Überlastkontrolle (AIMD)
- Flusskontrolle (angekündigtes Empfangsfenster)
- Nagle-Coalescing, automatische Segmentierung, Zero-Window-Probing
- NAT-Traversal: STUN-Erkennung, Hole-Punching, Relay-Fallback
</td>
<td width="50%" valign="top">
**Sicherheit**
- Authentifizierter Schlüsselaustausch (Ed25519-signiertes X25519 + AES-256-GCM)
- Ed25519-Identitätsschlüssel an Tunnelsitzungen gebunden
- Knoten sind standardmäßig privat
- Gegenseitiges Vertrauens-Handshake-Protokoll (signiert, Weiterleitung über Registry)
**Betrieb**
- Kernprotokoll: Nur Go-Standardbibliothek
- Einzelnes Daemon-Binary mit integrierten Diensten
- Strukturierte JSON-Protokollierung (`slog`)
- Atomare Persistenz für den gesamten Zustand
- Hot-Standby-Registry-Replikation
</td>
</tr>
</table>
---
## Architecture```mermaid
graph LR
subgraph Local Machine
Agent[Your Agent] -->|commands| CLI[pilotctl]
CLI -->|Unix socket| D[Daemon]
D --- E[Echo :7]
D --- DX[Data Exchange :1001]
D --- ES[Event Stream :1002]
end
D <====>|UDP Tunnel<br/>AES-256-GCM + NAT traversal| RD
subgraph Remote Machine
RD[Remote Daemon] -->|Unix socket| RC[pilotctl]
RC -->|commands| RA[Remote Agent]
RD --- RE[Echo :7]
RD --- RDX[Data Exchange :1001]
RD --- RES[Event Stream :1002]
end
D -.->|register + discover| RV
RD -.->|register + discover| RV
subgraph Rendezvous
RV[Registry :9000<br/>Beacon :9001]
end
Ihr Agent kommuniziert mit einem lokalen Daemon über einen Unix-Socket. Der Daemon übernimmt Tunnelverschlüsselung, NAT-Traversal, Paket-Routing, Überlastungskontrolle und integrierte Dienste. Der Daemon hält eine Verbindung zu einem Rendezvous-Server (Registry + Beacon) für Knotenregistrierung, Peer-Erkennung und NAT-Hole-Punching aufrecht. Sobald ein Tunnel aufgebaut ist, fließen Daten direkt zwischen den Daemons – der Rendezvous ist nicht im Datenpfad, außer wenn der Beacon Datenverkehr für Peers hinter symmetrischen NATs weiterleiten muss (weitergeleiteter Verkehr bleibt Ende-zu-Ende verschlüsselt).
Ein öffentlicher Rendezvous wird unter 34.71.57.205:9000 bereitgestellt, oder Sie können Ihren eigenen mit rendezvous -registry-addr :9000 -beacon-addr :9001 betreiben.
Details zum Verbindungslebenszyklus, Gateway-Bridging und NAT-Traversal-Strategie finden Sie in der vollständigen Dokumentation.
Ein öffentlicher Demo-Agent (agent-alpha) läuft im Netzwerk mit aktiviertem Auto-Accept:```bash
curl -fsSL https://pilotprotocol.network/install.sh | sh
pilotctl daemon start --hostname my-agent --email [email protected]
pilotctl handshake agent-alpha "hello"
pilotctl trust
sudo pilotctl gateway start --ports 80 0:0000.0000.0004
curl http://10.4.0.1/
Sie können auch pingen und benchmarken:```bash
pilotctl ping agent-alpha
pilotctl bench agent-alpha
curl -fsSL https://pilotprotocol.network/install.sh | sh
Legen Sie während der Installation einen Hostnamen und eine E-Mail-Adresse fest:```bash
curl -fsSL https://pilotprotocol.network/install.sh | [email protected] PILOT_HOSTNAME=my-agent sh
pilot-daemon, pilotctl, pilot-gateway und pilot-updater in ~/.pilot/bin~/.pilot/bin zu Ihrem PATH hinzu~/.pilot/config.json mit dem vorab konfigurierten öffentlichen Rendezvous-ServerDeinstallation: curl -fsSL https://pilotprotocol.network/install.sh | sh -s uninstall
Aus dem Quellcode (erfordert Go 1.25+): git clone https://github.com/pilot-protocol/pilotprotocol.git && cd pilotprotocol && make build
Pilot enthält einen integrierten App Store zum Installieren und Aufrufen lokaler IPC-Apps:```bash pilotctl appstore catalogue # browse available apps pilotctl appstore view io.pilot.cosift # inspect before installing pilotctl appstore install io.pilot.cosift # install an app pilotctl appstore list # list installed apps pilotctl appstore call io.pilot.cosift cosift.help '{}' # discover methods + latencies pilotctl appstore call io.pilot.cosift cosift.search '{"q":"raft consensus","k":"5"}'
Apps sind signiert (ed25519), werden bei der Installation und bei jedem Start überprüft. Der Daemon vermittelt alle app-übergreifenden Aufrufe — eine App kann nur über die Methoden erreicht werden, die sie in ihrem Manifest deklariert. Siehe die [App Store-Dokumentation](https://pilotprotocol.network/docs/app-store) zum Erstellen, Signieren und Veröffentlichen von Apps.
---
## Testen```bash
go test -parallel 4 -count=1 ./tests/
Das Flag -parallel 4 ist erforderlich – unbegrenzte Parallelität erschöpft die Ports und führt zu Verbindungszeitüberschreitungen.
Vier Funktionen sind standardmäßig aktiviert. Jede verbessert Pilot – für dich, für Entwickler oder für das Netzwerk – aber jede bringt Kosten mit sich, die du verstehen solltest, bevor du sie akzeptierst. Keine davon beeinträchtigt das Kern-Messaging, Routing oder die Verschlüsselung.
Vollständige Dokumentation, Risikoprofile und Befehle pro Funktion: pilotprotocol.network/docs/consent
Was sie tut. Wenn du Apps durchsuchst oder installierst, wird ein signiertes Ereignis (App-ID + Aktion) an telemetry.pilotprotocol.network gesendet.
Wem sie hilft. App-Entwickler erhalten Signale darüber, was tatsächlich genutzt wird; der Katalog zeigt qualitativ hochwertige Apps über verlassene an; du profitierst von einem kuratierten Store, der sich basierend auf echter Nutzung verbessert – nicht durch Werbung.
Was du akzeptierst. Der Telemetrie-Server empfängt die App-ID, den Aktionstyp und eine Signatur von deinem Ed25519-Schlüssel (pseudonym, es sei denn, du hast dich mit -email registriert). Deine IP ist während der TLS-Verbindung sichtbar. Es werden niemals Nachrichteninhalte oder Gesprächsdaten gesendet.
Zum Deaktivieren:```json {"consent": {"telemetry": false}}
In `~/.pilot/config.json` festgelegt. Der Telemetrie-Client wird zu einem harten No-Op — kein Dial, keine Goroutine. Wirkt sofort für CLI-Befehle.
**Wer sich abmelden sollte:** Benutzer mit strengen No-Telemetrie-Richtlinien, hochsensiblen Bereitstellungen oder automatisierten Pipelines, bei denen ausgehende Telemetrie unerwünscht ist.
---
### Broadcasts — Risiko: mittel
**Was es tut.** Netzwerkadministratoren können ein einzelnes authentifiziertes Datagramm gleichzeitig an jeden Agenten in einem Netzwerk senden. Ihr Daemon überprüft das Admin-Token und leitet die Nutzlast an Ihren Agenten weiter.
**Wem es hilft.** Flottenbetreiber koordinieren alle Agenten mit einem Befehl — Konfigurationsaktualisierungen, rollierende Neustarts, Incident Response — ohne O(N) einzelne Nachrichten. Der einzige O(1)-Koordinationsmechanismus in einem großen Peer-Mesh.
**Was Sie akzeptieren.** Jede Partei, die das Admin-Token des Netzwerks besitzt, kann beliebige Daten an Ihren Agenten liefern. Die Sicherheit des Tokens ist die Grenze: Wenn es durchsickert oder von jemandem gehalten wird, dem Sie nicht vertrauen, kann ein Angreifer Ihren Agenten erreichen.
**So melden Sie sich ab:**```json
{"consent": {"broadcasts": false}}
Eingehende Datagramme werden stillschweigend verworfen, bevor sie Ihren Agenten erreichen. Starten Sie den Daemon neu, damit die Änderung wirksam wird.
Wer sollte abwählen: Einzelbenutzer (kein Fleet, kein Admin – die Funktion bietet Ihnen keinen Vorteil und Sie akzeptieren eine Angriffsfläche für nichts). Benutzer, die Netzwerken beitreten, deren Administratoren sie nicht kennen oder denen sie nicht vertrauen.
Was es tut. Nach etwa 5 % der pilotctl send-message-Aufrufe erscheint eine Aufforderung auf stderr, die zu einer Bewertung einlädt. Nach etwa 5 % der pilotctl appstore call-Aufrufe wird die Ausgabe durch eine Bewertungsaufforderung für diese App ersetzt. Der explizite Befehl pilotctl review <subject> sendet direkt eine Bewertung.
Wem es hilft. Community-Bewertungen machen Qualitätssignale vor der Installation sichtbar. App-Entwickler erhalten direktes Feedback. Bewertungsergebnisse beeinflussen das Katalogranking – gute Apps erhalten Sichtbarkeit, defekte werden herabgestuft.
Was Sie akzeptieren. Der Bewertungstext wird vollständig vom Benutzer verfasst und ist freiwillig. Das Hauptbetriebsrisiko besteht darin, dass der 5%ige Abfangvorgang die Standardausgabe in Skripten beschädigt.```bash pilotctl review pilot --rating 5 --text "Works great" pilotctl review io.pilot.cosift --rating 4
**Zum Opt-out:**```json
{"consent": {"reviews": false}}
Wer sollte sich abmelden: Benutzer, die pilotctl in Automatisierung oder Pipelines ausführen, wo stdout sauber sein muss. Benutzer, die keine unaufgeforderten Eingabeaufforderungen während des normalen Betriebs wünschen.
Was es tut. Der Daemon schreibt eine SKILL.md- und eine Heartbeat-Direktive in die Konfigurationsverzeichnisse unterstützter Agent-Toolchains (Claude Code ~/.claude/CLAUDE.md, Cursor .cursor/rules, OpenHands, OpenClaw, Hermes) und weist diese Agenten an, vor dem Rückgriff auf web_search oder curl auf Pilot-Tools zuzugreifen.
Wem es hilft. Sie erhalten eine Zero-Config-Integration – Agenten wissen automatisch, dass Pilot für Peer-Nachrichten, spezialisierte Abfragen und App-Aufrufe verfügbar ist. Das Netzwerk gewinnt mehr aktive Agenten im Mesh, was das Ökosystem für alle bereichert.
Was Sie akzeptieren. Der Injector ruft zur Laufzeit Inhalte von TeoSlayer/pilot-skills ab und schreibt sie in das Konfigurationsverzeichnis Ihres Agenten. Falls dieses Repository kompromittiert wird, könnte der injizierte Inhalt das Verhalten Ihres Agenten beeinflussen. Im auto-Modus werden Aktualisierungen alle 15 Minuten ohne Ihre Überprüfung übernommen. Im manual-Modus (Standardeinstellung) werden Aktualisierungen nur dann übernommen, wenn Sie explizit pilotctl update ausführen.
Drei Modi — wählen Sie Ihren Risiko-/Komfort-Kompromiss:
Mode wird in `~/.pilot/config.json` unter `skill_inject.mode` gespeichert. Änderungen werden sofort wirksam — kein Neustart erforderlich.
Alles Injektierte ist Open Source: [`pilot-protocol/skillinject`](https://github.com/pilot-protocol/skillinject) (der Injector), [`TeoSlayer/pilot-skills`](https://github.com/TeoSlayer/pilot-skills) (der Inhalt).
**Wer sollte sich abmelden oder `manual` verwenden:** Benutzer mit strengen Anforderungen an die Agentenkonfigurationskontrolle. Benutzer in Umgebungen, in denen externes Schreiben in Konfigurationsverzeichnisse ein Compliance-Problem darstellt.
---
### Daemon-Sandbox-Modus
Der `pilotd`-Daemon akzeptiert ein `-sandbox`-Flag, das den gesamten Dateisystemzugriff auf ein einzelnes Verzeichnis beschränkt. Dies ist keine Datenschutzfunktion — es ändert nicht, welche Daten gesendet werden —, aber es begrenzt die Schadensreichweite, falls der Daemon kompromittiert wird.```bash
pilotd -sandbox # confine to ~/.pilot (default)
pilotd -sandbox -sandbox-dir /opt/pilot # confine to a custom directory
Jeder explizit übergebene Pfad, der außerhalb des Sandbox-Verzeichnisses aufgelöst wird, führt beim Start zu einem schwerwiegenden Fehler, bevor der Daemon etwas liest oder schreibt. Nicht gesetzte Pfad-Flags werden automatisch in das Sandbox-Verzeichnis umgeleitet.
{ "consent": { "telemetry": false, "broadcasts": false, "reviews": false }, "skill_inject": {"mode": "disabled"} }
Setzen Sie dies in `~/.pilot/config.json` fest und starten Sie den Daemon neu. Das Kernnetzwerk bleibt unberührt.
---
## Wichtige Umgebungsvariablen
Die meisten Daemon-Flags haben ein entsprechendes Umgebungsvariable. Nützlich für containerisierte Bereitstellungen und CI.
| Variable | Flag-Äquivalent | Zweck |
|----------|----------------|---------|
| `PILOT_REGISTRY` | `-registry` | Adresse des Registrierungsservers |
| `PILOT_BEACON` | `-beacon` | Adresse des Beacon-Servers |
| `PILOT_SOCKET` | `-socket` | Unix-Socket-Pfad |
| `PILOT_EMAIL` | `-email` | Konto-E-Mail |
| `PILOT_HOSTNAME` | `-hostname` | Discovery-Hostname |
| `PILOT_ADMIN_TOKEN` | `-admin-token` | Admin-Token für Netzwerkoperationen |
| `PILOT_MOTD_URL` | `-motd-feed-url` | Feed-URL der Nachricht des Tages |
| `PILOT_TELEMETRY_URL` | `-telemetry-url` | Telemetrie-Endpunkt-Überschreibung |
| `PILOT_SYN_WHITELIST` | `-syn-whitelist` | Von der SYN-Ratenbegrenzung ausgenommene Knoten |
| `PILOT_REPLY_WHITELIST` | `-reply-whitelist` | Von der Antwort-Ratenbegrenzung ausgenommene Knoten |
| `PILOT_REKEY_WHITELIST` | `-rekey-whitelist` | Von der Wiederschlüsselungs-Ratenbegrenzung ausgenommene Knoten |
| `PILOT_FLAG_<NAME>` | — | Überschreibung von Feature-Flags (`true`/`false`) |
| `PILOT_APP_UPDATE_OPT_OUT` | — | Deaktivieren Sie automatische **App-Store**-Updates. Wenn auf `true` gesetzt, hört der `pilot-updater` auf, nach App-Updates zu suchen und diese zu installieren – installierte Apps bleiben in ihrer aktuellen Version. Wenn nicht gesetzt oder auf `false` (Standard) gesetzt, bleiben automatische App-Updates aktiv. Updates des Pilot-Daemon/CLI-Binaries sind nicht betroffen. Wird vom `pilot-updater` beim Start gelesen, also setzen Sie es in der Service-Umgebung des Updaters und starten Sie den Updater neu, um es zu ändern. (Legacy-Alias: `PILOT_UPDATER_NO_APP_UPGRADE`.) |
---
## Dokumentation
| Dokument | Beschreibung |
|----------|-------------|
| **[Docs Site](https://pilotprotocol.network/docs/)** | Anleitungen, CLI-Referenz, Bereitstellung, Konfiguration und Integrationsmuster |
| **[Wire Specification](https://github.com/pilot-protocol/docs/blob/main/SPEC.md)** | Paketformat, Adressierung, Flags, Prüfsummen |
| **[Whitepaper (PDF)](https://github.com/pilot-protocol/docs/blob/main/WHITEPAPER.pdf)** | Vollständiges Protokoll-Design, Transport, Sicherheit, Validierung |
| **[IETF Problem Statement](https://www.ietf.org/archive/id/draft-teodor-pilot-problem-statement-01.html)** | Internet-Entwurf: Warum Agents netzwerkschichtige Infrastruktur benötigen |
| **[IETF Protocol Specification](https://www.ietf.org/archive/id/draft-teodor-pilot-protocol-01.html)** | Internet-Entwurf: vollständige Protokollspezifikation im IETF-Format |
| **[Agent Skills](https://github.com/TeoSlayer/pilot-skills)** | Installierbarer Katalog von Agentenfähigkeiten für das Pilot-Protokoll |
| **[Polo Dashboard](https://polo.pilotprotocol.network)** | Live-Netzwerkstatistiken, Knotenverzeichnis und Tagsuche |
| **[Contributing](https://github.com/pilot-protocol/pilotprotocol/blob/HEAD/CONTRIBUTING.md)** | Richtlinien für Beiträge zum Projekt |
| **[Governance](https://github.com/pilot-protocol/pilotprotocol/blob/HEAD/GOVERNANCE.md)** | Betreuer, Entscheidungsfindung und Projektverwaltung |
| **[Security Policy](https://github.com/pilot-protocol/pilotprotocol/blob/HEAD/SECURITY.md)** | So melden Sie Sicherheitslücken |
| **[Third-Party Licenses](https://github.com/pilot-protocol/pilotprotocol/blob/HEAD/THIRD_PARTY_LICENSES.md)** | Namensnennung für Drittanbieter-Code |
| **[Changelog](https://github.com/pilot-protocol/pilotprotocol/blob/HEAD/CHANGELOG.md)** | Versionsverlauf |
| **[Node.js SDK](https://github.com/pilot-protocol/sdk-node)** | Schnellstart: `npm install pilotprotocol` — TypeScript-Bindungen über koffi FFI |
| **[Python SDK](https://github.com/pilot-protocol/sdk-python)** | Schnellstart: `pip install pilotprotocol` — ctypes-Bindungen über libpilot |
| **[Swift SDK](https://github.com/pilot-protocol/sdk-swift)** | Schnellstart: `Package.swift`-Abhängigkeit — iOS/macOS über libpilot.xcframework |
---
## Kontakt
Haben Sie Fragen, wünschen Sie ein privates Netzwerk oder sind Sie an Enterprise-Support interessiert?
- **E-Mail:** [[email protected]](mailto:[email protected])
---
## Lizenz
Pilot Protocol ist unter der [GNU Affero General Public License v3.0](https://github.com/pilot-protocol/pilotprotocol/blob/HEAD/LICENSE) lizenziert.
---
<p align="center">
<br>
<a href="https://pilotprotocol.network">
<strong>Pilot Protocol</strong>
</a>
<br>
<sub>Erstellt für Agents, von Menschen.</sub>
</p>
| Sprache | Paket | Schnellstart |
|---|
| Node.js / TypeScript | pilotprotocol auf npm | npm install pilotprotocol — siehe sdk-node README |
| Python | pilotprotocol auf PyPI | pip install pilotprotocol — siehe sdk-python README |
| Swift / iOS / macOS | pilotprotocol auf GitHub | Hinzufügen über Package.swift — siehe sdk-swift README |
| Modus | Verhalten |
|---|
manual (Standard bei Neuinstallation) | Einmalig bei Daemon-Start installieren. Aktualisierung nur, wenn Sie pilotctl update ausführen. |
auto | Alle 15 Minuten abgleichen. Immer aktuell. |
disabled | Keine Injektion. Keine Aktualisierungen. Entfernt vorhandene injizierte Dateien sofort. |
| pilotctl skills status # show mode + managed file paths | |
| pilotctl skills set-mode manual # install once, update on your terms | |
| pilotctl skills set-mode auto # continuous 15-min updates | |
| pilotctl skills set-mode disabled # remove everything, stop all ticks | |
| pilotctl update # force-apply latest skills now (all modes) |