{"id":"33c5e1e3-5d2b-4752-bc10-d6a95926e5e8","shortId":"BDH3Ub","kind":"skill","title":"pilot-event-filter","tagline":"Filter and transform events before delivery using pattern matching and jq transforms.  Use this skill when: 1. You need to filter events by content, not just topic wildcards 2. You need to transform event payloads before processing 3. You need to route events conditionally based ","description":"# Pilot Event Filter\n\nFilter and transform Pilot Protocol event streams using jq-based pattern matching.\n\n## Commands\n\n### Subscribe with filtering\n```bash\npilotctl --json subscribe <source-hostname> <topic> --timeout 60 | \\\n  jq -c '.data.events[] | select(<filter-expression>)'\n```\n\n### Transform and republish\n```bash\npilotctl --json subscribe <source> <topic> --timeout 60 | \\\n  jq -c '.data.events[] | <transform-expression>' | \\\n  while IFS= read -r event; do\n    pilotctl --json publish <destination> \"<new-topic>\" --data \"$event\"\n  done\n```\n\n## Workflow Example\n\nFilter critical alerts and forward to on-call agent:\n\n```bash\n#!/bin/bash\nSOURCE_AGENT=\"monitoring-hub\"\nONCALL_AGENT=\"oncall-agent\"\n\npilotctl --json subscribe \"$SOURCE_AGENT\" \"alerts.*\" --timeout 600 | \\\n  jq -c '.data.events[]' | \\\n  while IFS= read -r event; do\n    severity=$(echo \"$event\" | jq -r '.data | fromjson | .severity // \"unknown\"')\n\n    if [ \"$severity\" = \"critical\" ]; then\n      pilotctl --json publish \"$ONCALL_AGENT\" \"oncall.critical\" --data \"$event\"\n    fi\n  done\n```\n\n## Dependencies\n\nRequires pilot-protocol skill, jq, and a running daemon.","tags":["pilot","event","filter","skills","teoslayer","agent-skills","ai-agents","clawhub","networking","openclaw","overlay-network","p2p"],"capabilities":["skill","source-teoslayer","skill-pilot-event-filter","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-event-filter","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,132 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:55.333Z","embedding":null,"createdAt":"2026-05-18T13:22:39.884Z","updatedAt":"2026-05-18T19:14:55.333Z","lastSeenAt":"2026-05-18T19:14:55.333Z","tsv":"'/bin/bash':117 '1':21 '2':33 '3':42 '60':75,88 '600':135 'agent':115,119,124,127,132,162 'alert':108,133 'base':49,63 'bash':70,83,116 'c':77,90,137 'call':114 'command':66 'condit':48 'content':28 'critic':107,156 'daemon':178 'data':101,150,164 'data.events':78,91,138 'deliveri':10 'depend':168 'done':103,167 'echo':146 'event':3,8,26,38,47,51,58,96,102,143,147,165 'exampl':105 'fi':166 'filter':4,5,25,52,53,69,106 'forward':110 'fromjson':151 'hub':122 'if':93,140 'jq':15,62,76,89,136,148,174 'jq-base':61 'json':72,85,99,129,159 'match':13,65 'monitor':121 'monitoring-hub':120 'need':23,35,44 'on-cal':112 'oncal':123,126,161 'oncall-ag':125 'oncall.critical':163 'pattern':12,64 'payload':39 'pilot':2,50,56,171 'pilot-event-filt':1 'pilot-protocol':170 'pilotctl':71,84,98,128,158 'process':41 'protocol':57,172 'publish':100,160 'r':95,142,149 'read':94,141 'republish':82 'requir':169 'rout':46 'run':177 'select':79 'sever':145,152,155 'skill':19,173 'skill-pilot-event-filter' 'sourc':118,131 'source-teoslayer' 'stream':59 'subscrib':67,73,86,130 'timeout':74,87,134 'topic':31 'topic-agent-skills' 'topic-ai-agents' 'topic-clawhub' 'topic-networking' 'topic-openclaw' 'topic-overlay-network' 'topic-p2p' 'topic-pilot-protocol' 'transform':7,16,37,55,80 'unknown':153 'use':11,17,60 'wildcard':32 'workflow':104","prices":[{"id":"881547ce-6830-497d-a2d2-4ce1ebd00b4d","listingId":"33c5e1e3-5d2b-4752-bc10-d6a95926e5e8","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:39.884Z"}],"sources":[{"listingId":"33c5e1e3-5d2b-4752-bc10-d6a95926e5e8","source":"github","sourceId":"TeoSlayer/pilot-skills/pilot-event-filter","sourceUrl":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-event-filter","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:39.884Z","lastSeenAt":"2026-05-18T19:14:55.333Z"}],"details":{"listingId":"33c5e1e3-5d2b-4752-bc10-d6a95926e5e8","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"TeoSlayer","slug":"pilot-event-filter","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":"eebb07b652e654787462f187b105d87a87787c4c","skill_md_path":"skills/pilot-event-filter/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/TeoSlayer/pilot-skills/tree/main/skills/pilot-event-filter"},"layout":"multi","source":"github","category":"pilot-skills","frontmatter":{"name":"pilot-event-filter","license":"AGPL-3.0","description":"Filter and transform events before delivery using pattern matching and jq transforms.  Use this skill when: 1. You need to filter events by content, not just topic wildcards 2. You need to transform event payloads before processing 3. You need to route events conditionally based on content 4. You need to reduce event noise by selective forwarding  Do NOT use this skill when: - Topic wildcards alone are sufficient (use pilot-event-bus instead) - You need all events without filtering (subscribe directly) - You need persistent storage (use pilot-event-log instead)","compatibility":"Requires pilot-protocol skill and pilotctl binary on PATH. The daemon must be running (pilotctl daemon start). Requires jq for JSON filtering and transformation."},"skills_sh_url":"https://skills.sh/TeoSlayer/pilot-skills/pilot-event-filter"},"updatedAt":"2026-05-18T19:14:55.333Z"}}