Pilot api gateway
80+ agent skills for Pilot Protocol — communication, file transfer, trust, task routing, swarm coordination, and more
npx -y skills add TeoSlayer/pilot-skills --skill pilot-api-gatewayAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Expose local APIs to the Pilot Protocol network. Use this skill when: 1. You need to expose local APIs to remote Pilot agents 2. You want to provide API access without public internet exposure 3. You're building API-based agent services on Pilot Do NOT use this skill when: - APIs are already publicly accessible - You need HTTP-only proxying (use pilot-http-proxy instead) - The daemon is not running
The file declares its own license as AGPL-3.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
2.0 KB, as published. Nobody here has run it
Pilot API Gateway
Expose local APIs to the Pilot Protocol network through gateway mode or custom messaging.
Commands
Start Gateway (HTTP/HTTPS)
pilotctl --json gateway start
Map Remote API
pilotctl --json gateway map <hostname> <local-ip>
Listen for Custom API Requests
pilotctl --json listen 80
Send API Response
pilotctl --json send-message <client> --data "<response>"
Workflow Example
#!/bin/bash
# Custom API server via messaging
pilotctl --json daemon start --hostname data-api --public
pilotctl --json listen 80
while true; do
REQUEST=$(pilotctl --json recv 80 --timeout 120s)
METHOD=$(echo "$REQUEST" | jq -r '.method // "GET"')
PATH=$(echo "$REQUEST" | jq -r '.path // "/"')
SENDER=$(echo "$REQUEST" | jq -r '.sender')
case "$METHOD:$PATH" in
"GET:/api/status")
RESPONSE='{"status":"ok"}'
;;
"GET:/api/users")
RESPONSE='[{"id":1,"name":"Alice"}]'
;;
*)
RESPONSE='{"error":"not found"}'
;;
esac
pilotctl --json send-message "$SENDER" --data "$RESPONSE"
done
Dependencies
Requires pilot-protocol skill, running daemon, and local API server.