{"id":"e0cc9375-a6c1-4a8f-8d5a-411374faa8c3","shortId":"EvzfGw","kind":"skill","title":"pilot-keychain","tagline":"Secure credential exchange with auto-expiry for Pilot Protocol agents.  Use this skill when: 1. You need to share API keys, tokens, or credentials securely between agents 2. You want automatic expiration and rotation of shared secrets 3. You need end-to-end encrypted credential d","description":"# Pilot Keychain\n\nSecure credential exchange for Pilot Protocol with automatic expiration and encryption.\n\n## Commands\n\n### Send Credential\n```bash\nRECIPIENT=\"agent.pilot\"\nCRED_VALUE=\"sk-1234567890\"\nEXPIRES_AT=$(date -u -d '+1 hour' +%Y-%m-%dT%H:%M:%SZ)\n\ncat > /tmp/cred.json <<EOF\n{\"credential_id\":\"$(openssl rand -hex 8)\",\"value\":\"$CRED_VALUE\",\"expires_at\":\"$EXPIRES_AT\"}\nEOF\n\npilotctl --json send-file \"$RECIPIENT\" /tmp/cred.json\nrm /tmp/cred.json\n```\n\n### Receive Credential\n```bash\npilotctl --json received | jq -r '.received[] | select(.filename | test(\"cred-.*\\\\.json\")) | .filepath' | \\\n  xargs -I {} cat {} | jq -r 'select(.expires_at > (now | todate)) | .value'\n```\n\n### Cleanup Expired\n```bash\nfor CRED_FILE in ~/.pilot/keychain/received/cred-*.json; do\n  EXPIRES_AT=$(jq -r '.expires_at' \"$CRED_FILE\")\n  [ $(date +%s) -gt $(date -d \"$EXPIRES_AT\" +%s) ] && rm \"$CRED_FILE\"\ndone\n```\n\n## Workflow Example\n\n```bash\n#!/bin/bash\n# Credential lifecycle\n\nmkdir -p ~/.pilot/keychain/{sent,received}\n\nsend_credential() {\n  local recipient=\"$1\"\n  local value=\"$2\"\n  local cred_id=$(openssl rand -hex 8)\n\n  cat > /tmp/cred-$cred_id.json <<EOF\n{\n  \"credential_id\": \"$cred_id\",\n  \"value\": \"$value\",\n  \"expires_at\": \"$(date -u -d '+1 hour' +%Y-%m-%dT%H:%M:%SZ)\"\n}\nEOF\n\n  pilotctl --json send-file \"$recipient\" /tmp/cred-$cred_id.json\n  mv /tmp/cred-$cred_id.json ~/.pilot/keychain/sent/\n}\n\nsend_credential \"agent.pilot\" \"sk-secret-key\"\n```\n\n## Dependencies\n\nRequires pilot-protocol, pilotctl, jq, and openssl.","tags":["pilot","keychain","skills","teoslayer","agent-skills","ai-agents","clawhub","networking","openclaw","overlay-network","p2p","pilot-protocol"],"capabilities":["skill","source-teoslayer","skill-pilot-keychain","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-keychain","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,506 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:57.196Z","embedding":null,"createdAt":"2026-05-18T13:22:42.608Z","updatedAt":"2026-05-18T19:14:57.196Z","lastSeenAt":"2026-05-18T19:14:57.196Z","tsv":"'+1':80,211 '-1234567890':74 '/.pilot/keychain':178 '/.pilot/keychain/received/cred-':147 '/.pilot/keychain/sent':231 '/bin/bash':173 '/tmp/cred-':197,226,229 '/tmp/cred.json':89,111,113 '1':19,185 '2':32,188 '3':42 '8':96,195 'agent':14,31 'agent.pilot':70,234 'api':24 'auto':9 'auto-expiri':8 'automat':35,61 'bash':68,116,142,172 'cat':88,131,196 'cleanup':140 'command':65 'cred':71,98,126,144,156,167,190,202 'cred_id.json':198,227,230 'credenti':5,28,50,55,67,91,115,174,182,200,233 'd':51,79,162,210 'date':77,158,161,208 'depend':239 'done':169 'dt':84,215 'encrypt':49,64 'end':46,48 'end-to-end':45 'eof':90,104,199,219 'exampl':171 'exchang':6,56 'expir':36,62,75,100,102,135,141,150,154,163,206 'expiri':10 'file':109,145,157,168,224 'filenam':124 'filepath':128 'gt':160 'h':85,216 'hex':95,194 'hour':81,212 'id':92,191,201,203 'jq':120,132,152,245 'json':106,118,127,148,221 'key':25,238 'keychain':3,53 'lifecycl':175 'local':183,186,189 'm':83,86,214,217 'mkdir':176 'mv':228 'need':21,44 'openssl':93,192,247 'p':177 'pilot':2,12,52,58,242 'pilot-keychain':1 'pilot-protocol':241 'pilotctl':105,117,220,244 'protocol':13,59,243 'r':121,133,153 'rand':94,193 'receiv':114,119,122,180 'recipi':69,110,184,225 'requir':240 'rm':112,166 'rotat':38 'secret':41,237 'secur':4,29,54 'select':123,134 'send':66,108,181,223,232 'send-fil':107,222 'sent':179 'share':23,40 'sk':73,236 'sk-secret-key':235 'skill':17 'skill-pilot-keychain' 'source-teoslayer' 'sz':87,218 'test':125 'todat':138 'token':26 'topic-agent-skills' 'topic-ai-agents' 'topic-clawhub' 'topic-networking' 'topic-openclaw' 'topic-overlay-network' 'topic-p2p' 'topic-pilot-protocol' 'u':78,209 'use':15 'valu':72,97,99,139,187,204,205 'want':34 'workflow':170 'xarg':129 'y':82,213","prices":[{"id":"6dcd2213-4028-474b-8b47-a10074d66898","listingId":"e0cc9375-a6c1-4a8f-8d5a-411374faa8c3","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:42.608Z"}],"sources":[{"listingId":"e0cc9375-a6c1-4a8f-8d5a-411374faa8c3","source":"github","sourceId":"TeoSlayer/pilot-skills/pilot-keychain","sourceUrl":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-keychain","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:42.608Z","lastSeenAt":"2026-05-18T19:14:57.196Z"}],"details":{"listingId":"e0cc9375-a6c1-4a8f-8d5a-411374faa8c3","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"TeoSlayer","slug":"pilot-keychain","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":"6fa1e5421e8a9be260c3b846e176967e3e285b15","skill_md_path":"skills/pilot-keychain/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-keychain"},"layout":"multi","source":"github","category":"pilot-skills","frontmatter":{"name":"pilot-keychain","license":"AGPL-3.0","description":"Secure credential exchange with auto-expiry for Pilot Protocol agents.  Use this skill when: 1. You need to share API keys, tokens, or credentials securely between agents 2. You want automatic expiration and rotation of shared secrets 3. You need end-to-end encrypted credential distribution  Do NOT use this skill when: - You need persistent credential storage (use secure vault instead) - You're sharing large files (use pilot-send for file transfer) - You need multi-recipient broadcast (use separate sends per recipient)","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-keychain"},"updatedAt":"2026-05-18T19:14:57.196Z"}}