{"id":"89dade83-0b89-4e61-9e6d-d3f03856136c","shortId":"3nEP7F","kind":"skill","title":"pilot-swarm-join","tagline":"Join or create agent swarms with auto-discovery and peer mesh formation.  Use this skill when: 1. An agent needs to join an existing swarm or create a new one 2. You need to discover and connect to peers in a named swarm 3. You want to establish bidirectional trust with swarm mem","description":"# pilot-swarm-join\n\nJoin or create named agent swarms with automatic peer discovery and mesh trust establishment.\n\n## Commands\n\n### Join Swarm\n```bash\npilotctl --json publish \"registry-hostname\" \"swarm:$SWARM_NAME\" --data \"{\\\"agent\\\":\\\"$AGENT_ID\\\",\\\"role\\\":\\\"worker\\\"}\"\n```\n\n### Subscribe to Swarm\n```bash\npilotctl --json subscribe \"registry-hostname\" \"swarm:$SWARM_NAME\"\n```\n\n### Discover Peers\n```bash\nPEERS=$(pilotctl --json inbox | jq -r '.messages[] | select(.topic == \"swarm:'$SWARM_NAME'\") | .sender')\n```\n\n### Handshake with Peers\n```bash\nfor peer in $PEERS; do\n  pilotctl --json handshake \"$peer\" \"Joining swarm $SWARM_NAME\"\ndone\n```\n\n### Approve Peers\n```bash\npilotctl --json pending | jq -r '.[].node_id' | xargs -I {} pilotctl --json approve {}\n```\n\n### Leave Swarm\n```bash\npilotctl --json publish \"registry-hostname\" \"swarm:$SWARM_NAME\" --data \"{\\\"agent\\\":\\\"$AGENT_ID\\\",\\\"action\\\":\\\"leave\\\"}\"\n```\n\n## Workflow Example\n\n```bash\n#!/bin/bash\n# Join compute swarm\n\nSWARM_NAME=\"compute-cluster-01\"\nAGENT_ID=$(pilotctl --json info | jq -r '.node_id')\nREGISTRY_HOST=\"registry.example.com\"\n\n# Announce presence\npilotctl --json publish \"$REGISTRY_HOST\" \"swarm:$SWARM_NAME\" \\\n  --data \"{\\\"agent\\\":\\\"$AGENT_ID\\\",\\\"role\\\":\\\"worker\\\",\\\"joined_at\\\":\\\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\\\"}\"\n\n# Subscribe to swarm updates\npilotctl --json subscribe \"$REGISTRY_HOST\" \"swarm:$SWARM_NAME\"\nsleep 2\n\n# Discover peers\nPEERS=$(pilotctl --json inbox | jq -r '.messages[] | select(.topic == \"swarm:'$SWARM_NAME'\") | .payload.agent')\n\n# Handshake with peers\nfor peer in $PEERS; do\n  pilotctl --json handshake \"$peer\" \"Joining swarm $SWARM_NAME\"\ndone\n\n# Approve handshakes\npilotctl --json pending | jq -r '.[].node_id' | xargs -I {} pilotctl --json approve {}\n```\n\n## Dependencies\n\nRequires pilot-protocol, pilotctl, jq, and running daemon with registry connection.","tags":["pilot","swarm","join","skills","teoslayer","agent-skills","ai-agents","clawhub","networking","openclaw","overlay-network","p2p"],"capabilities":["skill","source-teoslayer","skill-pilot-swarm-join","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-swarm-join","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,846 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:15:04.806Z","embedding":null,"createdAt":"2026-05-18T13:22:53.098Z","updatedAt":"2026-05-18T19:15:04.806Z","lastSeenAt":"2026-05-18T19:15:04.806Z","tsv":"'/bin/bash':179 '01':188 '1':22 '2':36,240 '3':49 'action':174 'agent':8,24,67,91,92,171,172,189,212,213 'announc':201 'approv':143,157,273,286 'auto':12 'auto-discoveri':11 'automat':70 'bash':80,99,111,128,145,160,178 'bidirect':54 'cluster':187 'command':77 'comput':181,186 'compute-clust':185 'connect':42,299 'creat':7,32,65 'daemon':296 'data':90,170,211 'date':219 'depend':287 'discov':40,109,241 'discoveri':13,72 'done':142,272 'dt':223 'establish':53,76 'exampl':177 'exist':29 'format':17 'h':224 'handshak':125,136,256,266,274 'host':199,207,235 'hostnam':86,105,166 'id':93,152,173,190,197,214,281 'inbox':115,246 'info':193 'join':4,5,27,62,63,78,138,180,217,268 'jq':116,149,194,247,278,293 'json':82,101,114,135,147,156,162,192,204,232,245,265,276,285 'leav':158,175 'm':222,225 'mem':58 'mesh':16,74 'messag':118,249 'name':47,66,89,108,123,141,169,184,210,238,254,271 'need':25,38 'new':34 'node':151,196,280 'one':35 'payload.agent':255 'peer':15,44,71,110,112,127,130,132,137,144,242,243,258,260,262,267 'pend':148,277 'pilot':2,60,290 'pilot-protocol':289 'pilot-swarm-join':1,59 'pilotctl':81,100,113,134,146,155,161,191,203,231,244,264,275,284,292 'presenc':202 'protocol':291 'publish':83,163,205 'r':117,150,195,248,279 'registri':85,104,165,198,206,234,298 'registry-hostnam':84,103,164 'registry.example.com':200 'requir':288 'role':94,215 'run':295 'select':119,250 'sender':124 'skill':20 'skill-pilot-swarm-join' 'sleep':239 'source-teoslayer' 'subscrib':96,102,227,233 'swarm':3,9,30,48,57,61,68,79,87,88,98,106,107,121,122,139,140,159,167,168,182,183,208,209,229,236,237,252,253,269,270 'sz':226 'topic':120,251 'topic-agent-skills' 'topic-ai-agents' 'topic-clawhub' 'topic-networking' 'topic-openclaw' 'topic-overlay-network' 'topic-p2p' 'topic-pilot-protocol' 'trust':55,75 'u':220 'updat':230 'use':18 'want':51 'worker':95,216 'workflow':176 'xarg':153,282 'y':221","prices":[{"id":"e6e0a5b4-bd86-4155-8c49-4fc56cb8620d","listingId":"89dade83-0b89-4e61-9e6d-d3f03856136c","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:53.098Z"}],"sources":[{"listingId":"89dade83-0b89-4e61-9e6d-d3f03856136c","source":"github","sourceId":"TeoSlayer/pilot-skills/pilot-swarm-join","sourceUrl":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-swarm-join","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:53.098Z","lastSeenAt":"2026-05-18T19:15:04.806Z"}],"details":{"listingId":"89dade83-0b89-4e61-9e6d-d3f03856136c","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"TeoSlayer","slug":"pilot-swarm-join","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":"84f6465f2443c7f3007c02a7f77f40f7cfcdf5a3","skill_md_path":"skills/pilot-swarm-join/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-swarm-join"},"layout":"multi","source":"github","category":"pilot-skills","frontmatter":{"name":"pilot-swarm-join","license":"AGPL-3.0","description":"Join or create agent swarms with auto-discovery and peer mesh formation.  Use this skill when: 1. An agent needs to join an existing swarm or create a new one 2. You need to discover and connect to peers in a named swarm 3. You want to establish bidirectional trust with swarm members  Do NOT use this skill when: - You only need point-to-point communication (use pilot-p2p-connect) - You need structured topologies like star or tree (use pilot-formation)","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-swarm-join"},"updatedAt":"2026-05-18T19:15:04.806Z"}}