{"id":"d5ff1d30-c390-4d13-b9e5-d0a7c77e0abe","shortId":"K9kgFu","kind":"skill","title":"pilot-api-gateway","tagline":"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: - AP","description":"# Pilot API Gateway\n\nExpose local APIs to the Pilot Protocol network through gateway mode or custom messaging.\n\n## Commands\n\n### Start Gateway (HTTP/HTTPS)\n```bash\npilotctl --json gateway start\n```\n\n### Map Remote API\n```bash\npilotctl --json gateway map <hostname> <local-ip>\n```\n\n### Listen for Custom API Requests\n```bash\npilotctl --json listen 80\n```\n\n### Send API Response\n```bash\npilotctl --json send-message <client> --data \"<response>\"\n```\n\n## Workflow Example\n\n```bash\n#!/bin/bash\n# Custom API server via messaging\n\npilotctl --json daemon start --hostname data-api --public\npilotctl --json listen 80\n\nwhile true; do\n  REQUEST=$(pilotctl --json recv 80 --timeout 120s)\n  METHOD=$(echo \"$REQUEST\" | jq -r '.method // \"GET\"')\n  PATH=$(echo \"$REQUEST\" | jq -r '.path // \"/\"')\n  SENDER=$(echo \"$REQUEST\" | jq -r '.sender')\n\n  case \"$METHOD:$PATH\" in\n    \"GET:/api/status\")\n      RESPONSE='{\"status\":\"ok\"}'\n      ;;\n    \"GET:/api/users\")\n      RESPONSE='[{\"id\":1,\"name\":\"Alice\"}]'\n      ;;\n    *)\n      RESPONSE='{\"error\":\"not found\"}'\n      ;;\n  esac\n\n  pilotctl --json send-message \"$SENDER\" --data \"$RESPONSE\"\ndone\n```\n\n## Dependencies\n\nRequires pilot-protocol skill, running daemon, and local API server.","tags":["pilot","api","gateway","skills","teoslayer","agent-skills","ai-agents","clawhub","networking","openclaw","overlay-network","p2p"],"capabilities":["skill","source-teoslayer","skill-pilot-api-gateway","topic-agent-skills","topic-ai-agents","topic-clawhub","topic-networking","topic-openclaw","topic-overlay-network","topic-p2p","topic-pilot-protocol"],"categories":["pilot-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/TeoSlayer/pilot-skills/pilot-api-gateway","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add TeoSlayer/pilot-skills","source_repo":"https://github.com/TeoSlayer/pilot-skills","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 6 github stars · SKILL.md body (1,210 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:51.205Z","embedding":null,"createdAt":"2026-05-18T13:22:33.985Z","updatedAt":"2026-05-18T19:14:51.205Z","lastSeenAt":"2026-05-18T19:14:51.205Z","tsv":"'/api/status':167 '/api/users':172 '/bin/bash':114 '1':17,175 '120s':142 '2':28 '3':39 '80':100,132,140 'access':34 'agent':27,46 'alic':177 'ap':56 'api':3,7,23,33,44,58,62,85,94,102,116,127,202 'api-bas':43 'base':45 'bash':78,86,96,104,113 'build':42 'case':162 'command':74 'custom':72,93,115 'daemon':122,199 'data':110,126,189 'data-api':125 'depend':192 'done':191 'echo':144,151,157 'error':179 'esac':182 'exampl':112 'expos':5,21,60 'exposur':38 'found':181 'gateway':4,59,69,76,81,89 'get':149,166,171 'hostnam':124 'http/https':77 'id':174 'internet':37 'jq':146,153,159 'json':80,88,98,106,121,130,138,184 'listen':91,99,131 'local':6,22,61,201 'map':83,90 'messag':73,109,119,187 'method':143,148,163 'mode':70 'name':176 'need':19 'network':12,67 'ok':170 'path':150,155,164 'pilot':2,10,26,49,57,65,195 'pilot-api-gateway':1 'pilot-protocol':194 'pilotctl':79,87,97,105,120,129,137,183 'protocol':11,66,196 'provid':32 'public':36,128 'r':147,154,160 're':41 'recv':139 'remot':25,84 'request':95,136,145,152,158 'requir':193 'respons':103,168,173,178,190 'run':198 'send':101,108,186 'send-messag':107,185 'sender':156,161,188 'server':117,203 'servic':47 'skill':15,54,197 'skill-pilot-api-gateway' 'source-teoslayer' 'start':75,82,123 'status':169 'timeout':141 'topic-agent-skills' 'topic-ai-agents' 'topic-clawhub' 'topic-networking' 'topic-openclaw' 'topic-overlay-network' 'topic-p2p' 'topic-pilot-protocol' 'true':134 'use':13,52 'via':118 'want':30 'without':35 'workflow':111","prices":[{"id":"229b5038-6e31-45e2-932f-5a33475ea868","listingId":"d5ff1d30-c390-4d13-b9e5-d0a7c77e0abe","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"TeoSlayer","category":"pilot-skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:22:33.985Z"}],"sources":[{"listingId":"d5ff1d30-c390-4d13-b9e5-d0a7c77e0abe","source":"github","sourceId":"TeoSlayer/pilot-skills/pilot-api-gateway","sourceUrl":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-api-gateway","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:33.985Z","lastSeenAt":"2026-05-18T19:14:51.205Z"}],"details":{"listingId":"d5ff1d30-c390-4d13-b9e5-d0a7c77e0abe","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"TeoSlayer","slug":"pilot-api-gateway","github":{"repo":"TeoSlayer/pilot-skills","stars":6,"topics":["agent-skills","ai-agents","clawhub","networking","openclaw","overlay-network","p2p","pilot-protocol"],"license":"agpl-3.0","html_url":"https://github.com/TeoSlayer/pilot-skills","pushed_at":"2026-05-13T06:08:49Z","description":"80+ agent skills for Pilot Protocol — communication, file transfer, trust, task routing, swarm coordination, and more","skill_md_sha":"7bf0aa2b42865c09061cf5b56d2bd243bdfe0747","skill_md_path":"skills/pilot-api-gateway/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-api-gateway"},"layout":"multi","source":"github","category":"pilot-skills","frontmatter":{"name":"pilot-api-gateway","license":"AGPL-3.0","description":"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","compatibility":"Requires pilot-protocol skill and pilotctl binary on PATH. The daemon must be running (pilotctl daemon start)."},"skills_sh_url":"https://skills.sh/TeoSlayer/pilot-skills/pilot-api-gateway"},"updatedAt":"2026-05-18T19:14:51.205Z"}}