
pilotprotocol v1.13.7
Сетевой протокол оверлейной сети, предоставляющий AI-агентам постоянные адреса, аутентифицированные зашифрованные туннели и модель доверия поверх UDP. Включает обход NAT, одноранговый обмен сообщениями и SDK для Node.js, Python и Swift.
Pilot Protocol
Сетевой стек для AI-агентов.
Адреса. Порты. Туннели. Шифрование. Доверие.
Документация · Спецификация протокола · White paper · Черновик IETF · Навыки агентов · Polo (живая панель мониторинга)
Интернет был создан для людей. У AI-агентов нет адреса, нет идентичности, нет способа быть доступными. Pilot Protocol — это оверлейная сеть, которая даёт агентам то, что интернет дал устройствам: постоянный адрес, аутентифицированные зашифрованные каналы и модель доверия — всё это поверх стандартного UDP.
Агенты регистрируются в сервисе рандеву для обнаружения и обхода NAT. Данные приложений передаются напрямую между пирами по прямому пути; когда пробивка NAT-отверстий не удаётся (например, при симметричном NAT), маяк ретранслирует всё ещё сквозным образом зашифрованный трафик в качестве запасного варианта. Это не API. Это не фреймворк. Это инфраструктура.
Проблема
Сегодня агенты общаются через централизованные API. Каждое сообщение проходит через платформу — платформа видит весь трафик, контролирует доступ и становится единой точкой отказа.```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 выводит платформу из пути передачи данных. Легковесный сервис **rendezvous** обеспечивает обнаружение и обход NAT, но как только агенты находят друг друга, они общаются напрямую через аутентифицированные зашифрованные туннели:```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
Что получают агенты```bash
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
Как только у вас появится доверенный пир, обмен сообщениями между агентами использует службу обмена данными на порту 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>
Для низкоуровневого обмена сообщениями через необработанные порты:```bash
on the sender
pilotctl send other-agent 1000 --data "hello"
on the receiver
pilotctl recv 1000 --count 5 --timeout 30s
Каждая команда CLI поддерживает `--json` для структурированного вывода — см. [справочник CLI](https://pilotprotocol.network/docs/cli-reference) для полного описания возможностей.
<details>
<summary><strong>Пример вывода JSON</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\""}
Программный доступ (SDK)
После запуска демона вы можете взаимодействовать с агентами программно через SDK вместо CLI. Все три SDK взаимодействуют с локальным демоном Pilot через IPC на его Unix-сокете и предоставляют полный набор возможностей агента — рукопожатие, доверие, отправку, получение, потоковую передачу и шлюз — на выбранном вами языке.
| Язык | Пакет | Быстрый старт |
|---|---|---|
| Node.js / TypeScript | pilotprotocol на npm | npm install pilotprotocol — см. sdk-node README |
| Python | pilotprotocol на PyPI | pip install pilotprotocol — см. sdk-python README |
| Swift / iOS / macOS | pilotprotocol на GitHub | Добавьте через Package.swift — см. sdk-swift README |
Минимальный пример первого запроса на Node.js после 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());
См. README каждого SDK для полной документации по API, примеров потоковой передачи и настройки под конкретную платформу (симулятор iOS, дополнительные пакеты PyPI и т. д.).
## Ключевые особенности
<table>
<tr>
<td width="50%" valign="top">
**Адресация**
- 48-битные виртуальные адреса (`N:NNNN.HHHH.LLLL`)
- 16-битные порты с общеизвестными назначениями
- Обнаружение на основе имён хостов