{"id":"9934c34d-cf8b-4db9-8379-749b01391a84","shortId":"W5AQAS","kind":"skill","title":"pilot-multi-region-content-sync-setup","tagline":"Deploy a multi-region content distribution system with 4 agents.  Use this skill when: 1. User wants to sync content across geographic regions 2. User is configuring an origin or edge node for content distribution 3. User asks about CDN-like content replication between agents  Do","description":"# Multi-Region Content Sync Setup\n\nDeploy 4 agents: 1 origin + 3 regional edge nodes for content distribution.\n\n## Roles\n\n| Role | Hostname | Skills | Purpose |\n|------|----------|--------|---------|\n| origin | `<prefix>-origin` | pilot-sync, pilot-share, pilot-broadcast, pilot-heartbeat-monitor | Source of truth, broadcasts updates |\n| edge-us | `<prefix>-edge-us` | pilot-sync, pilot-share, pilot-health, pilot-heartbeat-monitor | US regional edge |\n| edge-eu | `<prefix>-edge-eu` | pilot-sync, pilot-share, pilot-health, pilot-heartbeat-monitor | EU regional edge |\n| edge-asia | `<prefix>-edge-asia` | pilot-sync, pilot-share, pilot-health, pilot-heartbeat-monitor | Asia regional edge |\n\n## Setup Procedure\n\n**Step 1:** Ask the user which role this agent should play and what prefix to use.\n\n**Step 2:** Install the skills for the chosen role:\n```bash\n# For origin:\nclawhub install pilot-sync pilot-share pilot-broadcast pilot-heartbeat-monitor\n# For any edge node:\nclawhub install pilot-sync pilot-share pilot-health pilot-heartbeat-monitor\n```\n\n**Step 3:** Set the hostname:\n```bash\npilotctl --json set-hostname <prefix>-<role>\n```\n\n**Step 4:** Write the role-specific JSON manifest to `~/.pilot/setups/multi-region-content-sync.json`.\n\n**Step 5:** Tell the user to initiate handshakes.\n\n## Manifest Templates Per Role\n\n### origin\n```json\n{\n  \"setup\": \"multi-region-content-sync\", \"role\": \"origin\", \"role_name\": \"Content Origin\",\n  \"hostname\": \"<prefix>-origin\",\n  \"description\": \"Source of truth for all content. Broadcasts updates to all edge nodes.\",\n  \"skills\": {\n    \"pilot-sync\": \"Push content changes to all edge nodes.\",\n    \"pilot-share\": \"Transfer new content files to edges.\",\n    \"pilot-broadcast\": \"Broadcast content-update events to all edges simultaneously.\",\n    \"pilot-heartbeat-monitor\": \"Track heartbeats from all edges, alert when a region goes dark.\"\n  },\n  \"peers\": [\n    { \"role\": \"edge-us\", \"hostname\": \"<prefix>-edge-us\", \"description\": \"US regional edge node\" },\n    { \"role\": \"edge-eu\", \"hostname\": \"<prefix>-edge-eu\", \"description\": \"EU regional edge node\" },\n    { \"role\": \"edge-asia\", \"hostname\": \"<prefix>-edge-asia\", \"description\": \"Asia regional edge node\" }\n  ],\n  \"data_flows\": [\n    { \"direction\": \"send\", \"peer\": \"<prefix>-edge-us\", \"port\": 1001, \"topic\": \"content-update\", \"description\": \"Content updates\" },\n    { \"direction\": \"send\", \"peer\": \"<prefix>-edge-eu\", \"port\": 1001, \"topic\": \"content-update\", \"description\": \"Content updates\" },\n    { \"direction\": \"send\", \"peer\": \"<prefix>-edge-asia\", \"port\": 1001, \"topic\": \"content-update\", \"description\": \"Content updates\" },\n    { \"direction\": \"receive\", \"peer\": \"<prefix>-edge-us\", \"port\": 1002, \"topic\": \"heartbeat\", \"description\": \"Health heartbeats\" },\n    { \"direction\": \"receive\", \"peer\": \"<prefix>-edge-eu\", \"port\": 1002, \"topic\": \"heartbeat\", \"description\": \"Health heartbeats\" },\n    { \"direction\": \"receive\", \"peer\": \"<prefix>-edge-asia\", \"port\": 1002, \"topic\": \"heartbeat\", \"description\": \"Health heartbeats\" }\n  ],\n  \"handshakes_needed\": [\"<prefix>-edge-us\", \"<prefix>-edge-eu\", \"<prefix>-edge-asia\"]\n}\n```\n\n### edge-us / edge-eu / edge-asia\n```json\n{\n  \"setup\": \"multi-region-content-sync\", \"role\": \"edge-<region>\", \"role_name\": \"<Region> Edge Node\",\n  \"hostname\": \"<prefix>-edge-<region>\",\n  \"description\": \"Serves content for the <region> region. Syncs from origin and reports health.\",\n  \"skills\": {\n    \"pilot-sync\": \"Pull content updates from origin.\",\n    \"pilot-share\": \"Receive content files from origin.\",\n    \"pilot-health\": \"Monitor local health and sync status.\",\n    \"pilot-heartbeat-monitor\": \"Send periodic heartbeats to origin.\"\n  },\n  \"peers\": [{ \"role\": \"origin\", \"hostname\": \"<prefix>-origin\", \"description\": \"Content source — receives updates from here\" }],\n  \"data_flows\": [\n    { \"direction\": \"receive\", \"peer\": \"<prefix>-origin\", \"port\": 1001, \"topic\": \"content-update\", \"description\": \"Content updates\" },\n    { \"direction\": \"send\", \"peer\": \"<prefix>-origin\", \"port\": 1002, \"topic\": \"heartbeat\", \"description\": \"Health heartbeats\" }\n  ],\n  \"handshakes_needed\": [\"<prefix>-origin\"]\n}\n```\n\n## Data Flows\n\n- `origin → edge-*` : content updates (port 1001)\n- `edge-* → origin` : heartbeat and sync confirmation (port 1002)\n\n## Workflow Example\n\n```bash\n# On origin — broadcast content:\npilotctl --json send-file <prefix>-edge-us ./content/index.html\npilotctl --json publish <prefix>-edge-us content-update '{\"file\":\"index.html\",\"version\":42}'\n# On edge — confirm and heartbeat:\npilotctl --json publish <prefix>-origin sync-complete '{\"region\":\"us\",\"version\":42}'\npilotctl --json publish <prefix>-origin heartbeat '{\"region\":\"us\",\"status\":\"healthy\"}'\n```\n\n## Dependencies\n\nRequires `pilot-protocol` skill, `pilotctl` binary, `clawhub` binary, and a running daemon.","tags":["pilot","multi","region","content","sync","setup","skills","teoslayer","agent-skills","ai-agents","clawhub","networking"],"capabilities":["skill","source-teoslayer","skill-pilot-multi-region-content-sync-setup","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-multi-region-content-sync-setup","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 (4,793 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:58.671Z","embedding":null,"createdAt":"2026-05-18T13:22:44.276Z","updatedAt":"2026-05-18T19:14:58.671Z","lastSeenAt":"2026-05-18T19:14:58.671Z","tsv":"'/.pilot/setups/multi-region-content-sync.json':250 '/content/index.html':619 '1':23,65,168 '1001':388,403,418,566,595 '1002':433,446,459,579,603 '2':32,184 '3':44,67,230 '4':17,63,241 '42':632,648 '5':252 'across':29 'agent':18,54,64,175 'alert':333 'asia':145,148,162,369,373,375,416,457,475,484 'ask':46,169 'bash':192,234,606 'binari':665,667 'broadcast':89,97,205,286,314,315,609 'cdn':49 'cdn-like':48 'chang':298 'chosen':190 'clawhub':195,214,666 'complet':644 'configur':35 'confirm':601,635 'content':5,13,28,42,51,59,72,269,275,285,297,308,317,391,394,406,409,421,424,490,502,517,525,553,569,572,592,610,627 'content-upd':316,390,405,420,568,626 'daemon':671 'dark':338 'data':379,559,588 'depend':658 'deploy':8,62 'descript':279,348,361,374,393,408,423,436,449,462,500,552,571,582 'direct':381,396,411,426,439,452,561,574 'distribut':14,43,73 'edg':39,69,100,103,120,122,125,142,144,147,164,212,290,301,311,322,332,342,346,351,355,359,364,368,372,377,385,400,415,430,443,456,468,471,474,477,480,483,493,496,499,591,596,617,624,634 'edge-asia':143,146,367,371,414,455,473,482 'edge-eu':121,124,354,358,399,442,470,479 'edge-us':99,102,341,345,384,429,467,476,616,623 'eu':123,126,140,356,360,362,401,444,472,481 'event':319 'exampl':605 'file':309,526,615,629 'flow':380,560,589 'geograph':30 'goe':337 'handshak':258,465,585 'health':113,135,157,224,437,450,463,511,531,534,583 'healthi':657 'heartbeat':92,116,138,160,208,227,326,329,435,438,448,451,461,464,540,544,581,584,598,637,653 'hostnam':76,233,239,277,344,357,370,498,550 'index.html':630 'initi':257 'instal':185,196,215 'json':236,247,264,485,612,621,639,650 'like':50 'local':533 'manifest':248,259 'monitor':93,117,139,161,209,228,327,532,541 'multi':3,11,57,267,488 'multi-region':10,56 'multi-region-content-sync':266,487 'name':274,495 'need':466,586 'new':307 'node':40,70,213,291,302,352,365,378,497 'origin':37,66,79,80,194,263,272,276,278,508,520,528,546,549,551,564,577,587,590,597,608,641,652 'peer':339,383,398,413,428,441,454,547,563,576 'per':261 'period':543 'pilot':2,82,85,88,91,106,109,112,115,128,131,134,137,150,153,156,159,198,201,204,207,217,220,223,226,294,304,313,325,514,522,530,539,661 'pilot-broadcast':87,203,312 'pilot-health':111,133,155,222,529 'pilot-heartbeat-monitor':90,114,136,158,206,225,324,538 'pilot-multi-region-content-sync-setup':1 'pilot-protocol':660 'pilot-shar':84,108,130,152,200,219,303,521 'pilot-sync':81,105,127,149,197,216,293,513 'pilotctl':235,611,620,638,649,664 'play':177 'port':387,402,417,432,445,458,565,578,594,602 'prefix':180 'procedur':166 'protocol':662 'publish':622,640,651 'pull':516 'purpos':78 'push':296 'receiv':427,440,453,524,555,562 'region':4,12,31,58,68,119,141,163,268,336,350,363,376,489,505,645,654 'replic':52 'report':510 'requir':659 'role':74,75,173,191,245,262,271,273,340,353,366,492,494,548 'role-specif':244 'run':670 'send':382,397,412,542,575,614 'send-fil':613 'serv':501 'set':231,238 'set-hostnam':237 'setup':7,61,165,265,486 'share':86,110,132,154,202,221,305,523 'simultan':323 'skill':21,77,187,292,512,663 'skill-pilot-multi-region-content-sync-setup' 'sourc':94,280,554 'source-teoslayer' 'specif':246 'status':537,656 'step':167,183,229,240,251 'sync':6,27,60,83,107,129,151,199,218,270,295,491,506,515,536,600,643 'sync-complet':642 'system':15 'tell':253 'templat':260 'topic':389,404,419,434,447,460,567,580 'topic-agent-skills' 'topic-ai-agents' 'topic-clawhub' 'topic-networking' 'topic-openclaw' 'topic-overlay-network' 'topic-p2p' 'topic-pilot-protocol' 'track':328 'transfer':306 'truth':96,282 'updat':98,287,318,392,395,407,410,422,425,518,556,570,573,593,628 'us':101,104,118,343,347,349,386,431,469,478,618,625,646,655 'use':19,182 'user':24,33,45,171,255 'version':631,647 'want':25 'workflow':604 'write':242","prices":[{"id":"6eb3b0e0-04b8-43f0-9ec9-ff46e88b80aa","listingId":"9934c34d-cf8b-4db9-8379-749b01391a84","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:44.276Z"}],"sources":[{"listingId":"9934c34d-cf8b-4db9-8379-749b01391a84","source":"github","sourceId":"TeoSlayer/pilot-skills/pilot-multi-region-content-sync-setup","sourceUrl":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-multi-region-content-sync-setup","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:44.276Z","lastSeenAt":"2026-05-18T19:14:58.671Z"}],"details":{"listingId":"9934c34d-cf8b-4db9-8379-749b01391a84","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"TeoSlayer","slug":"pilot-multi-region-content-sync-setup","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":"08e30ac6b241bba24c6c6c7f9972204db04041ad","skill_md_path":"skills/pilot-multi-region-content-sync-setup/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-multi-region-content-sync-setup"},"layout":"multi","source":"github","category":"pilot-skills","frontmatter":{"name":"pilot-multi-region-content-sync-setup","license":"AGPL-3.0","description":"Deploy a multi-region content distribution system with 4 agents.  Use this skill when: 1. User wants to sync content across geographic regions 2. User is configuring an origin or edge node for content distribution 3. User asks about CDN-like content replication between agents  Do NOT use this skill when: - User wants to sync a single file (use pilot-sync instead) - User wants a one-shot file transfer (use pilot-share instead)"},"skills_sh_url":"https://skills.sh/TeoSlayer/pilot-skills/pilot-multi-region-content-sync-setup"},"updatedAt":"2026-05-18T19:14:58.671Z"}}