{"id":"118b7c41-0a9e-49a9-9395-5727d75a2a4f","entityType":"agent","slug":"clawhub-globalcaos-whatsapp-ultimate","name":"Whatsapp Ultimate","canonicalUrl":"https://www.xpersona.co/agent/clawhub-globalcaos-whatsapp-ultimate","canonicalPath":"/agent/clawhub-globalcaos-whatsapp-ultimate","generatedAt":"2026-10-09T19:18:20.627Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"description":"WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person. Skill: Whatsapp Ultimate Owner: globalcaos Summary: WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person. Tags: latest:3.5.1 Version history: v3.5.1 | 2026-02-26T13:54:06.706Z | user Added ackMessage: gateway-level instant message acknowledgment for visual cue in WhatsApp Web v3.5.0 | 2026-02-26T13:53:12.267Z | auto Big change: Documentation rewrit","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 2.6K downloads reported by the source. Last updated 4/15/2026.","installCommand":"clawhub skill install kn7623hrcwt6rg73a67xw3wyx580asdw:whatsapp-ultimate","sourceUrl":"https://clawhub.ai/globalcaos/whatsapp-ultimate","homepage":"https://clawhub.ai/globalcaos/whatsapp-ultimate","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/globalcaos/whatsapp-ultimate","kind":"source"}],"safetyScore":84,"overallRank":62,"popularityScore":68,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person. Skill: Whatsapp Ultimate Owner: glob"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"stars":null,"forks":null,"downloads":2563,"packageName":null,"latestVersion":"3.5.1","tractionLabel":"2.6K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-02-28T18:28:02.115Z","emptyReason":null},"lastUpdatedAt":"2026-04-15T00:45:39.800Z","lastCrawledAt":"2026-02-28T18:28:02.115Z","lastIndexedAt":null,"nextCrawlAt":"2026-03-01T18:28:02.115Z","lastVerifiedAt":null,"highlights":[{"version":"3.5.1","createdAt":"2026-02-26T13:54:06.706Z","changelog":"Added ackMessage: gateway-level instant message acknowledgment for visual cue in WhatsApp Web","fileCount":7,"zipByteSize":11751},{"version":"3.5.0","createdAt":"2026-02-26T13:53:12.267Z","changelog":"Big change: Documentation rewritten for clarity and completeness. Many new capabilities detailed. - Full WhatsApp feature overview: messaging (text, media, polls, stickers, voice notes, GIFs), interactions (reactions, edit, unsend), and group management (create, modify, participants, invite links) - In-depth action syntax and command examples for all 22 supported WhatsApp actions - JID (Jabber ID) documentation and best practices for media, stickers, and voice note conversion - New in v3.5.0: **Added `ackMessage`**—gateway-level instant text acknowledgment on inbound messages; faster feedback than bot replies and more visible than emoji reactions - \"Tips\" and \"Comparison\" sections now included for context, usage guidance, rate limits, and differences from similar skills - Removed old engine/architecture details, focusing now purely on capabilities and usage","fileCount":7,"zipByteSize":11751},{"version":"3.4.0","createdAt":"2026-02-22T23:36:07.245Z","changelog":"Chat search now resolves LID/JID aliases across both @lid and @s.whatsapp.net formats","fileCount":null,"zipByteSize":null},{"version":"3.3.0","createdAt":"2026-02-21T00:06:39.951Z","changelog":"Security scan response: patches now clearly marked as optional with review instructions, file modification table, revert command. Fixed 12→13 skill count. Replied to @Cranbaerry comment about whatsapp_history access.","fileCount":null,"zipByteSize":null},{"version":"3.2.0","createdAt":"2026-02-20T23:11:11.147Z","changelog":"Security scan fixes: declared all required bins (npx, tsx, sed, python3), added patches block documenting which source files are modified and how, expanded security notes explaining patch mechanism, credential usage, and network scope.","fileCount":null,"zipByteSize":null},{"version":"3.1.0","createdAt":"2026-02-20T23:07:12.248Z","changelog":"New marketing copy: humor-driven security gate pitch, won't-pattern hook, pairing section with fork conversion link.","fileCount":null,"zipByteSize":null},{"version":"3.0.0","createdAt":"2026-02-20T22:56:05.774Z","changelog":"Merged whatsapp-tools: contact sync, group creation, admin operations. Added metadata.openclaw with required bins, channels, security notes. Now truly ultimate — messaging + administration in one skill.","fileCount":null,"zipByteSize":null},{"version":"2.2.0","createdAt":"2026-02-20T10:19:40.729Z","changelog":"Added model + auth mode prefix template ({model}, {authMode}). Every message now shows which model and whether subscription or API is active.","fileCount":null,"zipByteSize":null}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install kn7623hrcwt6rg73a67xw3wyx580asdw:whatsapp-ultimate","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T19:18:20.626Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-globalcaos-whatsapp-ultimate/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":null},"readme":"Skill: Whatsapp Ultimate\n\nOwner: globalcaos\n\nSummary: WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person.\n\nTags: latest:3.5.1\n\nVersion history:\n\nv3.5.1 | 2026-02-26T13:54:06.706Z | user\n\nAdded ackMessage: gateway-level instant message acknowledgment for visual cue in WhatsApp Web\n\nv3.5.0 | 2026-02-26T13:53:12.267Z | auto\n\nBig change: Documentation rewritten for clarity and completeness. Many new capabilities detailed.\n\n- Full WhatsApp feature overview: messaging (text, media, polls, stickers, voice notes, GIFs), interactions (reactions, edit, unsend), and group management (create, modify, participants, invite links)\n- In-depth action syntax and command examples for all 22 supported WhatsApp actions\n- JID (Jabber ID) documentation and best practices for media, stickers, and voice note conversion\n- New in v3.5.0: **Added `ackMessage`**—gateway-level instant text acknowledgment on inbound messages; faster feedback than bot replies and more visible than emoji reactions\n- \"Tips\" and \"Comparison\" sections now included for context, usage guidance, rate limits, and differences from similar skills\n- Removed old engine/architecture details, focusing now purely on capabilities and usage\n\nv3.4.0 | 2026-02-22T23:36:07.245Z | user\n\nChat search now resolves LID/JID aliases across both @lid and @s.whatsapp.net formats\n\nv3.3.0 | 2026-02-21T00:06:39.951Z | user\n\nSecurity scan response: patches now clearly marked as optional with review instructions, file modification table, revert command. Fixed 12→13 skill count. Replied to @Cranbaerry comment about whatsapp_history access.\n\nv3.2.0 | 2026-02-20T23:11:11.147Z | user\n\nSecurity scan fixes: declared all required bins (npx, tsx, sed, python3), added patches block documenting which source files are modified and how, expanded security notes explaining patch mechanism, credential usage, and network scope.\n\nv3.1.0 | 2026-02-20T23:07:12.248Z | user\n\nNew marketing copy: humor-driven security gate pitch, won't-pattern hook, pairing section with fork conversion link.\n\nv3.0.0 | 2026-02-20T22:56:05.774Z | user\n\nMerged whatsapp-tools: contact sync, group creation, admin operations. Added metadata.openclaw with required bins, channels, security notes. Now truly ultimate — messaging + administration in one skill.\n\nv2.2.0 | 2026-02-20T10:19:40.729Z | user\n\nAdded model + auth mode prefix template ({model}, {authMode}). Every message now shows which model and whether subscription or API is active.\n\nv2.1.0 | 2026-02-20T10:03:36.464Z | user\n\nFixed: Self-chat inbound messages now captured in history DB. Added install script to patch OpenClaw core. Added syncFullHistory config for full backfill on reconnect.\n\nv2.0.3 | 2026-02-18T10:50:08.427Z | user\n\nv2.0.3: Clarified Rule 1 — agent sees all chats but only responds in allowed groups.\n\nv2.0.2 | 2026-02-18T10:46:09.770Z | user\n\nv2.0.2: Expanded 3-rule gate explanation with plain-language breakdown of each rule and real-world examples.\n\nv2.0.1 | 2026-02-18T10:41:31.992Z | user\n\nv2.0.1: Complete marketing rewrite — audience-focused pitch, cross-links to 10 companion skills, competitive comparison, quick-start config, voice pipeline docs, 3-rule gate explanation.\n\nv2.0.0 | 2026-02-18T10:35:08.650Z | user\n\nv2.0: Strict 3-rule group gate (no bypasses). DM prefix gate. Audio preflight passthrough for voice note transcription. responsePrefix config. triggerPrefix for all conversations.\n\nv1.9.0 | 2026-02-16T19:46:26.145Z | user\n\nThinking heartbeat: alternating 🤔↔🧐 reactions (~1s interval) as processing watchdog. messagePrefix documentation.\n\nv1.8.2 | 2026-02-16T07:58:38.697Z | user\n\nAdd messagePrefix documentation — use emoji (🤖) for instant agent identification in chats\n\nv1.8.1 | 2026-02-14T22:39:27.827Z | user\n\nFix: reliable thinking reaction cleanup — 🤔 now properly removed on reply delivery with safety net after dispatch. No more stuck reactions.\n\nv1.8.0 | 2026-02-14T22:21:42.687Z | user\n\n🤔 Thinking Reaction: visible progress indicator for groups (workaround for WhatsApp broken typing indicators on linked devices). Owner voice/media messages bypass triggerPrefix in groups. markOnlineOnConnect + available presence before composing.\n\nv1.7.1 | 2026-02-14T20:34:45.380Z | user\n\nAdd clean DM behavior guide: verboseDefault off config, voice transcript in replies\n\nv1.7.0 | 2026-02-14T20:25:06.040Z | user\n\nVoice note transcription with triggerPrefix matching, metallic voice replies (sherpa-onnx), echo prevention for bot-sent voice notes, audio preflight before prefix check\n\nv1.6.1 | 2026-02-14T19:15:07.573Z | user\n\nSmart offline recovery: recovered messages tagged for review-before-action instead of blind execution\n\nv1.6.0 | 2026-02-14T19:11:27.092Z | user\n\nOffline message recovery: gateway automatically processes messages received during downtime (6h window). Self-chat fix: messages from primary phone now reach the agent reliably.\n\nv1.5.2 | 2026-02-13T22:12:32.373Z | user\n\nFix repository/homepage links to fork\n\nv1.5.1 | 2026-02-13T22:09:25.074Z | user\n\nSEO-optimized description and keywords for better discoverability\n\nv1.5.0 | 2026-02-13T15:49:51.665Z | user\n\nv1.5.0: Full history resync via re-link — pull months/years of old messages into SQLite. Includes whatsapp-resync plugin with automatic backup, restore endpoint, and INITIAL_BOOTSTRAP sync capture. Tested: 3.2K→17.6K messages, 3+ years of history recovered.\n\nv1.3.0 | 2026-02-12T15:15:07.687Z | user\n\nSEO-optimized description, 12 tags for discoverability, expanded comparison table, use-case triggers, getGroupInfo tips\n\nv1.2.1 | 2026-02-11T06:20:27.877Z | user\n\nv1.2.1: Improved message history docs, added comparison table rows for history/search/import, added daily summary cron pattern, cleaned up dead hook-based archiver.\n\nv1.1.2 | 2026-02-08T23:34:55.919Z | user\n\nAdded credits, fixed repository link\n\nv1.1.1 | 2026-02-08T05:10:38.632Z | user\n\nFix: replaced identifiable example names with generic ones\n\nv1.2.0 | 2026-02-06T21:02:55.646Z | user\n\nv1.2.0: Added persistent message history with SQLite + FTS5 full-text search. Import WhatsApp exports, search conversations, recall what was said. Repository link added.\n\nv1.1.0 | 2026-02-06T20:02:30.416Z | user\n\nAdded access control docs and troubleshooting for DM sender attribution fix\n\nv1.0.1 | 2026-02-06T19:35:18.033Z | user\n\nBug fix: senderE164 resolution for outbound DMs\n\nv1.0.0 | 2026-02-06T11:44:03.725Z | user\n\nInitial release: 22 actions - full messaging, interactions, group management. Native Baileys integration.\n\nArchive index:\n\nArchive v3.5.1: 7 files, 11751 bytes\n\nFiles: description.md (972b), scripts/apply-history-fix.sh (4212b), scripts/apply-model-prefix.sh (5313b), scripts/wa-create-group.ts (2392b), scripts/wa-fetch-contacts.ts (5978b), SKILL.md (8317b), _meta.json (136b)\n\nFile v3.5.1:SKILL.md\n\n---\nname: whatsapp-ultimate\nversion: 3.5.0\ndescription: \"WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person.\"\nmetadata:\n  openclaw:\n    emoji: \"📱\"\n    requires:\n      channels: [\"whatsapp\"]\n---\n\n# WhatsApp Ultimate\n\n**Everything you can do in WhatsApp, your AI agent can do too.**\n\nThis skill documents all WhatsApp capabilities available through OpenClaw's native channel integration. No external Docker services, no CLI wrappers — just direct WhatsApp Web protocol via Baileys.\n\n---\n\n## Prerequisites\n\n- OpenClaw with WhatsApp channel configured\n- WhatsApp account linked via QR code (`openclaw whatsapp login`)\n\n---\n\n## Capabilities Overview\n\n| Category | Features |\n|----------|----------|\n| **Messaging** | Text, media, polls, stickers, voice notes, GIFs |\n| **Interactions** | Reactions, replies/quotes, edit, unsend |\n| **Groups** | Create, rename, icon, description, participants, admin, invite links |\n\n**Total: 22 distinct actions**\n\n---\n\n## Messaging\n\n### Send Text\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" message=\"Hello!\"\n```\n\n### Send Media (Image/Video/Document)\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" message=\"Check this out\" filePath=/path/to/image.jpg\n```\nSupported: JPG, PNG, GIF, MP4, PDF, DOC, etc.\n\n### Send Poll\n```\nmessage action=poll channel=whatsapp to=\"+34612345678\" pollQuestion=\"What time?\" pollOption=[\"3pm\", \"4pm\", \"5pm\"]\n```\n\n### Send Sticker\n```\nmessage action=sticker channel=whatsapp to=\"+34612345678\" filePath=/path/to/sticker.webp\n```\nMust be WebP format, ideally 512x512.\n\n### Send Voice Note\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/audio.ogg asVoice=true\n```\n**Critical:** Use OGG/Opus format for WhatsApp voice notes. MP3 may not play correctly.\n\n### Send GIF\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/animation.mp4 gifPlayback=true\n```\nConvert GIF to MP4 first (WhatsApp requires this):\n```bash\nffmpeg -i input.gif -movflags faststart -pix_fmt yuv420p -vf \"scale=trunc(iw/2)*2:trunc(ih/2)*2\" output.mp4 -y\n```\n\n---\n\n## Interactions\n\n### Add Reaction\n```\nmessage action=react channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" emoji=\"🚀\"\n```\n\n### Remove Reaction\n```\nmessage action=react channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" remove=true\n```\n\n### Reply/Quote Message\n```\nmessage action=reply channel=whatsapp to=\"34612345678@s.whatsapp.net\" replyTo=\"QUOTED_MSG_ID\" message=\"Replying to this!\"\n```\n\n### Edit Message (Own Messages Only)\n```\nmessage action=edit channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" message=\"Updated text\"\n```\n\n### Unsend/Delete Message\n```\nmessage action=unsend channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\"\n```\n\n---\n\n## Group Management\n\n### Create Group\n```\nmessage action=group-create channel=whatsapp name=\"Project Team\" participants=[\"+34612345678\", \"+34687654321\"]\n```\n\n### Rename Group\n```\nmessage action=renameGroup channel=whatsapp groupId=\"123456789@g.us\" name=\"New Name\"\n```\n\n### Set Group Icon\n```\nmessage action=setGroupIcon channel=whatsapp groupId=\"123456789@g.us\" filePath=/path/to/icon.jpg\n```\n\n### Set Group Description\n```\nmessage action=setGroupDescription channel=whatsapp groupJid=\"123456789@g.us\" description=\"Team chat for Q1 project\"\n```\n\n### Add Participant\n```\nmessage action=addParticipant channel=whatsapp groupId=\"123456789@g.us\" participant=\"+34612345678\"\n```\n\n### Remove Participant\n```\nmessage action=removeParticipant channel=whatsapp groupId=\"123456789@g.us\" participant=\"+34612345678\"\n```\n\n### Promote to Admin\n```\nmessage action=promoteParticipant channel=whatsapp groupJid=\"123456789@g.us\" participants=[\"+34612345678\"]\n```\n\n### Demote from Admin\n```\nmessage action=demoteParticipant channel=whatsapp groupJid=\"123456789@g.us\" participants=[\"+34612345678\"]\n```\n\n### Leave Group\n```\nmessage action=leaveGroup channel=whatsapp groupId=\"123456789@g.us\"\n```\n\n### Get Invite Link\n```\nmessage action=getInviteCode channel=whatsapp groupJid=\"123456789@g.us\"\n```\nReturns: `https://chat.whatsapp.com/XXXXX`\n\n### Revoke Invite Link\n```\nmessage action=revokeInviteCode channel=whatsapp groupJid=\"123456789@g.us\"\n```\n\n### Get Group Info\n```\nmessage action=getGroupInfo channel=whatsapp groupJid=\"123456789@g.us\"\n```\nReturns: name, description, participants, admins, creation date.\n\n---\n\n## JID Formats\n\nWhatsApp uses JIDs (Jabber IDs) internally:\n\n| Type | Format | Example |\n|------|--------|---------|\n| Individual | `<number>@s.whatsapp.net` | `34612345678@s.whatsapp.net` |\n| Group | `<id>@g.us` | `123456789012345678@g.us` |\n\nWhen using `to=` with phone numbers, OpenClaw auto-converts to JID format.\n\n---\n\n## Tips\n\n### Voice Notes\nAlways use OGG/Opus format:\n```bash\nffmpeg -i input.wav -c:a libopus -b:a 64k output.ogg\n```\n\n### Stickers\nConvert images to WebP stickers:\n```bash\nffmpeg -i input.png -vf \"scale=512:512:force_original_aspect_ratio=decrease,pad=512:512:(ow-iw)/2:(oh-ih)/2:color=0x00000000\" output.webp\n```\n\n### Acknowledgment Messages (ackMessage)\nSend an instant text message when an inbound message is received — fires at gateway level before model inference:\n```json\n{\n  \"channels\": {\n    \"whatsapp\": {\n      \"ackMessage\": {\n        \"text\": \"⚡\",\n        \"direct\": true,\n        \"group\": \"never\"\n      }\n    }\n  }\n}\n```\n| Field | Type | Default | Description |\n|-------|------|---------|-------------|\n| `text` | string | `\"\"` | Message to send (empty = disabled) |\n| `direct` | boolean | `true` | Send in direct chats |\n| `group` | `\"always\"` / `\"mentions\"` / `\"never\"` | `\"never\"` | Group behavior |\n\nThis is different from `ackReaction` (which sends an emoji reaction). `ackMessage` sends a standalone message bubble — visible in WhatsApp Web even when reaction flips aren't.\n\n### Rate Limits\nWhatsApp has anti-spam measures. Avoid:\n- Bulk messaging to many contacts\n- Rapid-fire messages\n- Messages to contacts who haven't messaged you first\n\n### Message IDs\nTo react/edit/unsend, you need the message ID. Incoming messages include this in the event payload. For your own sent messages, the send response includes the ID.\n\n---\n\n## Comparison with Other Skills\n\n| Feature | whatsapp-ultimate | wacli | whatsapp-automation | gif-whatsapp |\n|---------|-------------------|-------|---------------------|--------------|\n| Native integration | ✅ | ❌ (CLI) | ❌ (Docker) | N/A |\n| Send text | ✅ | ✅ | ❌ | ❌ |\n| Send media | ✅ | ✅ | ❌ | ❌ |\n| Polls | ✅ | ❌ | ❌ | ❌ |\n| Stickers | ✅ | ❌ | ❌ | ❌ |\n| Voice notes | ✅ | ❌ | ❌ | ❌ |\n| GIFs | ✅ | ❌ | ❌ | ✅ |\n| Reactions | ✅ | ❌ | ❌ | ❌ |\n| Reply/Quote | ✅ | ❌ | ❌ | ❌ |\n| Edit | ✅ | ❌ | ❌ | ❌ |\n| Unsend | ✅ | ❌ | ❌ | ❌ |\n| Group create | ✅ | ❌ | ❌ | ❌ |\n| Group management | ✅ (full) | ❌ | ❌ | ❌ |\n| Receive messages | ✅ | ✅ | ✅ | ❌ |\n| Two-way chat | ✅ | ❌ | ❌ | ❌ |\n| External deps | None | Go binary | Docker + WAHA | ffmpeg |\n\n---\n\n### 3.5.0\n\n- **Added:** `ackMessage` — gateway-level instant message acknowledgment. Sends a configurable text message (e.g. ⚡) the moment an inbound message arrives, before any model inference. Fires at the same speed as `ackReaction` (emoji flip). Useful as a visual cue to distinguish your messages from bot replies in WhatsApp Web where reaction flips aren't visible.\n\n### 3.4.0\n\n- **Fixed:** Chat search now resolves LID/JID aliases — searching by chat name finds messages across both `@lid` and `@s.whatsapp.net` JID formats\n- **Added:** `resolveChatJids()` cross-references chats, contacts, and messages tables to discover all JID aliases for a given chat filter\n- **Improved:** Search falls back to original LIKE behaviour if no JIDs resolve, so no regressions\n\n### 3.0.0\n\n```\nYour Agent\n    ↓\nOpenClaw message tool\n    ↓\nWhatsApp Channel Plugin\n    ↓\nBaileys (WhatsApp Web Protocol)\n    ↓\nWhatsApp Servers\n```\n\nNo external services. No Docker. No CLI tools. Direct protocol integration.\n\n---\n\n## License\n\nMIT — Part of OpenClaw\n\n---\n\n## Links\n\n- OpenClaw: https://github.com/openclaw/openclaw\n- Baileys: https://github.com/WhiskeySockets/Baileys\n- ClawHub: https://clawhub.com\n\nFile v3.5.1:_meta.json\n\n{\n  \"ownerId\": \"kn7623hrcwt6rg73a67xw3wyx580asdw\",\n  \"slug\": \"whatsapp-ultimate\",\n  \"version\": \"3.5.1\",\n  \"publishedAt\": 1772114046706\n}\n\nFile v3.5.1:description.md\n\n**WhatsApp Ultimate**\n\n🔹 **Model Identification:** Every message shows the active model and auth mode — `🤖(claude-opus-4-6|sub)` or `🤖(gpt-4o|api)`. Know instantly if you're on a fallback or burning API credits.\n\n🔹 **Complete Message History:** Captures ALL messages including self-chat inbound that standard Baileys misses. Full bidirectional logging for your command channel.\n\n🔹 **Template Variables:** Customize your prefix with `{model}`, `{authMode}`, `{provider}`, `{think}`, and more. Full control over what shows in every message.\n\n🔹 **Security Gating:** 3-rule allowlist — authorized users, authorized chats, trigger prefix.\n\n🔹 **Full History Sync:** Backfill all messages on reconnect with `syncFullHistory: true`.\n\n🔹 **Searchable Archive:** SQLite-backed full-text search across all chats, senders, and date ranges.\n\n🚀 **Install:** `clawhub install whatsapp-ultimate` then run the patch scripts to enhance your OpenClaw instance.\n\nArchive v3.5.0: 7 files, 11751 bytes\n\nFiles: description.md (972b), scripts/apply-history-fix.sh (4212b), scripts/apply-model-prefix.sh (5313b), scripts/wa-create-group.ts (2392b), scripts/wa-fetch-contacts.ts (5978b), SKILL.md (8317b), _meta.json (136b)\n\nFile v3.5.0:SKILL.md\n\n---\nname: whatsapp-ultimate\nversion: 3.5.0\ndescription: \"WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person.\"\nmetadata:\n  openclaw:\n    emoji: \"📱\"\n    requires:\n      channels: [\"whatsapp\"]\n---\n\n# WhatsApp Ultimate\n\n**Everything you can do in WhatsApp, your AI agent can do too.**\n\nThis skill documents all WhatsApp capabilities available through OpenClaw's native channel integration. No external Docker services, no CLI wrappers — just direct WhatsApp Web protocol via Baileys.\n\n---\n\n## Prerequisites\n\n- OpenClaw with WhatsApp channel configured\n- WhatsApp account linked via QR code (`openclaw whatsapp login`)\n\n---\n\n## Capabilities Overview\n\n| Category | Features |\n|----------|----------|\n| **Messaging** | Text, media, polls, stickers, voice notes, GIFs |\n| **Interactions** | Reactions, replies/quotes, edit, unsend |\n| **Groups** | Create, rename, icon, description, participants, admin, invite links |\n\n**Total: 22 distinct actions**\n\n---\n\n## Messaging\n\n### Send Text\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" message=\"Hello!\"\n```\n\n### Send Media (Image/Video/Document)\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" message=\"Check this out\" filePath=/path/to/image.jpg\n```\nSupported: JPG, PNG, GIF, MP4, PDF, DOC, etc.\n\n### Send Poll\n```\nmessage action=poll channel=whatsapp to=\"+34612345678\" pollQuestion=\"What time?\" pollOption=[\"3pm\", \"4pm\", \"5pm\"]\n```\n\n### Send Sticker\n```\nmessage action=sticker channel=whatsapp to=\"+34612345678\" filePath=/path/to/sticker.webp\n```\nMust be WebP format, ideally 512x512.\n\n### Send Voice Note\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/audio.ogg asVoice=true\n```\n**Critical:** Use OGG/Opus format for WhatsApp voice notes. MP3 may not play correctly.\n\n### Send GIF\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/animation.mp4 gifPlayback=true\n```\nConvert GIF to MP4 first (WhatsApp requires this):\n```bash\nffmpeg -i input.gif -movflags faststart -pix_fmt yuv420p -vf \"scale=trunc(iw/2)*2:trunc(ih/2)*2\" output.mp4 -y\n```\n\n---\n\n## Interactions\n\n### Add Reaction\n```\nmessage action=react channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" emoji=\"🚀\"\n```\n\n### Remove Reaction\n```\nmessage action=react channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" remove=true\n```\n\n### Reply/Quote Message\n```\nmessage action=reply channel=whatsapp to=\"34612345678@s.whatsapp.net\" replyTo=\"QUOTED_MSG_ID\" message=\"Replying to this!\"\n```\n\n### Edit Message (Own Messages Only)\n```\nmessage action=edit channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" message=\"Updated text\"\n```\n\n### Unsend/Delete Message\n```\nmessage action=unsend channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\"\n```\n\n---\n\n## Group Management\n\n### Create Group\n```\nmessage action=group-create channel=whatsapp name=\"Project Team\" participants=[\"+34612345678\", \"+34687654321\"]\n```\n\n### Rename Group\n```\nmessage action=renameGroup channel=whatsapp groupId=\"123456789@g.us\" name=\"New Name\"\n```\n\n### Set Group Icon\n```\nmessage action=setGroupIcon channel=whatsapp groupId=\"123456789@g.us\" filePath=/path/to/icon.jpg\n```\n\n### Set Group Description\n```\nmessage action=setGroupDescription channel=whatsapp groupJid=\"123456789@g.us\" description=\"Team chat for Q1 project\"\n```\n\n### Add Participant\n```\nmessage action=addParticipant channel=whatsapp groupId=\"123456789@g.us\" participant=\"+34612345678\"\n```\n\n### Remove Participant\n```\nmessage action=removeParticipant channel=whatsapp groupId=\"123456789@g.us\" participant=\"+34612345678\"\n```\n\n### Promote to Admin\n```\nmessage action=promoteParticipant channel=whatsapp groupJid=\"123456789@g.us\" participants=[\"+34612345678\"]\n```\n\n### Demote from Admin\n```\nmessage action=demoteParticipant channel=whatsapp groupJid=\"123456789@g.us\" participants=[\"+34612345678\"]\n```\n\n### Leave Group\n```\nmessage action=leaveGroup channel=whatsapp groupId=\"123456789@g.us\"\n```\n\n### Get Invite Link\n```\nmessage action=getInviteCode channel=whatsapp groupJid=\"123456789@g.us\"\n```\nReturns: `https://chat.whatsapp.com/XXXXX`\n\n### Revoke Invite Link\n```\nmessage action=revokeInviteCode channel=whatsapp groupJid=\"123456789@g.us\"\n```\n\n### Get Group Info\n```\nmessage action=getGroupInfo channel=whatsapp groupJid=\"123456789@g.us\"\n```\nReturns: name, description, participants, admins, creation date.\n\n---\n\n## JID Formats\n\nWhatsApp uses JIDs (Jabber IDs) internally:\n\n| Type | Format | Example |\n|------|--------|---------|\n| Individual | `<number>@s.whatsapp.net` | `34612345678@s.whatsapp.net` |\n| Group | `<id>@g.us` | `123456789012345678@g.us` |\n\nWhen using `to=` with phone numbers, OpenClaw auto-converts to JID format.\n\n---\n\n## Tips\n\n### Voice Notes\nAlways use OGG/Opus format:\n```bash\nffmpeg -i input.wav -c:a libopus -b:a 64k output.ogg\n```\n\n### Stickers\nConvert images to WebP stickers:\n```bash\nffmpeg -i input.png -vf \"scale=512:512:force_original_aspect_ratio=decrease,pad=512:512:(ow-iw)/2:(oh-ih)/2:color=0x00000000\" output.webp\n```\n\n### Acknowledgment Messages (ackMessage)\nSend an instant text message when an inbound message is received — fires at gateway level before model inference:\n```json\n{\n  \"channels\": {\n    \"whatsapp\": {\n      \"ackMessage\": {\n        \"text\": \"⚡\",\n        \"direct\": true,\n        \"group\": \"never\"\n      }\n    }\n  }\n}\n```\n| Field | Type | Default | Description |\n|-------|------|---------|-------------|\n| `text` | string | `\"\"` | Message to send (empty = disabled) |\n| `direct` | boolean | `true` | Send in direct chats |\n| `group` | `\"always\"` / `\"mentions\"` / `\"never\"` | `\"never\"` | Group behavior |\n\nThis is different from `ackReaction` (which sends an emoji reaction). `ackMessage` sends a standalone message bubble — visible in WhatsApp Web even when reaction flips aren't.\n\n### Rate Limits\nWhatsApp has anti-spam measures. Avoid:\n- Bulk messaging to many contacts\n- Rapid-fire messages\n- Messages to contacts who haven't messaged you first\n\n### Message IDs\nTo react/edit/unsend, you need the message ID. Incoming messages include this in the event payload. For your own sent messages, the send response includes the ID.\n\n---\n\n## Comparison with Other Skills\n\n| Feature | whatsapp-ultimate | wacli | whatsapp-automation | gif-whatsapp |\n|---------|-------------------|-------|---------------------|--------------|\n| Native integration | ✅ | ❌ (CLI) | ❌ (Docker) | N/A |\n| Send text | ✅ | ✅ | ❌ | ❌ |\n| Send media | ✅ | ✅ | ❌ | ❌ |\n| Polls | ✅ | ❌ | ❌ | ❌ |\n| Stickers | ✅ | ❌ | ❌ | ❌ |\n| Voice notes | ✅ | ❌ | ❌ | ❌ |\n| GIFs | ✅ | ❌ | ❌ | ✅ |\n| Reactions | ✅ | ❌ | ❌ | ❌ |\n| Reply/Quote | ✅ | ❌ | ❌ | ❌ |\n| Edit | ✅ | ❌ | ❌ | ❌ |\n| Unsend | ✅ | ❌ | ❌ | ❌ |\n| Group create | ✅ | ❌ | ❌ | ❌ |\n| Group management | ✅ (full) | ❌ | ❌ | ❌ |\n| Receive messages | ✅ | ✅ | ✅ | ❌ |\n| Two-way chat | ✅ | ❌ | ❌ | ❌ |\n| External deps | None | Go binary | Docker + WAHA | ffmpeg |\n\n---\n\n### 3.5.0\n\n- **Added:** `ackMessage` — gateway-level instant message acknowledgment. Sends a configurable text message (e.g. ⚡) the moment an inbound message arrives, before any model inference. Fires at the same speed as `ackReaction` (emoji flip). Useful as a visual cue to distinguish your messages from bot replies in WhatsApp Web where reaction flips aren't visible.\n\n### 3.4.0\n\n- **Fixed:** Chat search now resolves LID/JID aliases — searching by chat name finds messages across both `@lid` and `@s.whatsapp.net` JID formats\n- **Added:** `resolveChatJids()` cross-references chats, contacts, and messages tables to discover all JID aliases for a given chat filter\n- **Improved:** Search falls back to original LIKE behaviour if no JIDs resolve, so no regressions\n\n### 3.0.0\n\n```\nYour Agent\n    ↓\nOpenClaw message tool\n    ↓\nWhatsApp Channel Plugin\n    ↓\nBaileys (WhatsApp Web Protocol)\n    ↓\nWhatsApp Servers\n```\n\nNo external services. No Docker. No CLI tools. Direct protocol integration.\n\n---\n\n## License\n\nMIT — Part of OpenClaw\n\n---\n\n## Links\n\n- OpenClaw: https://github.com/openclaw/openclaw\n- Baileys: https://github.com/WhiskeySockets/Baileys\n- ClawHub: https://clawhub.com\n\nFile v3.5.0:_meta.json\n\n{\n  \"ownerId\": \"kn7623hrcwt6rg73a67xw3wyx580asdw\",\n  \"slug\": \"whatsapp-ultimate\",\n  \"version\": \"3.5.0\",\n  \"publishedAt\": 1772113992267\n}\n\nFile v3.5.0:description.md\n\n**WhatsApp Ultimate**\n\n🔹 **Model Identification:** Every message shows the active model and auth mode — `🤖(claude-opus-4-6|sub)` or `🤖(gpt-4o|api)`. Know instantly if you're on a fallback or burning API credits.\n\n🔹 **Complete Message History:** Captures ALL messages including self-chat inbound that standard Baileys misses. Full bidirectional logging for your command channel.\n\n🔹 **Template Variables:** Customize your prefix with `{model}`, `{authMode}`, `{provider}`, `{think}`, and more. Full control over what shows in every message.\n\n🔹 **Security Gating:** 3-rule allowlist — authorized users, authorized chats, trigger prefix.\n\n🔹 **Full History Sync:** Backfill all messages on reconnect with `syncFullHistory: true`.\n\n🔹 **Searchable Archive:** SQLite-backed full-text search across all chats, senders, and date ranges.\n\n🚀 **Install:** `clawhub install whatsapp-ultimate` then run the patch scripts to enhance your OpenClaw instance.","readmeExcerpt":"Skill: Whatsapp Ultimate Owner: globalcaos Summary: WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person. Tags: latest:3.5.1 Version history: v3.5.1 | 2026-02-26T13:54:06.706Z | user Added ackMessage: gateway-level instant message acknowledgment for visual cue in WhatsApp Web v3.5.0 | 2026-02-26T13:53:12.267Z | auto Big change: Documentation rewrit","codeSnippets":[],"executableExamples":[{"language":"text","snippet":"message action=send channel=whatsapp to=\"+34612345678\" message=\"Hello!\""},{"language":"text","snippet":"message action=send channel=whatsapp to=\"+34612345678\" message=\"Check this out\" filePath=/path/to/image.jpg"},{"language":"text","snippet":"message action=poll channel=whatsapp to=\"+34612345678\" pollQuestion=\"What time?\" pollOption=[\"3pm\", \"4pm\", \"5pm\"]"},{"language":"text","snippet":"message action=sticker channel=whatsapp to=\"+34612345678\" filePath=/path/to/sticker.webp"},{"language":"text","snippet":"message action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/audio.ogg asVoice=true"},{"language":"text","snippet":"message action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/animation.mp4 gifPlayback=true"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: whatsapp-ultimate\nversion: 3.5.0\ndescription: \"WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person.\"\nmetadata:\n  openclaw:\n    emoji: \"📱\"\n    requires:\n      channels: [\"whatsapp\"]\n---\n\n# WhatsApp Ultimate\n\n**Everything you can do in WhatsApp, your AI agent can do too.**\n\nThis skill documents all WhatsApp capabilities available through OpenClaw's native channel integration. No external Docker services, no CLI wrappers — just direct WhatsApp Web protocol via Baileys.\n\n---\n\n## Prerequisites\n\n- OpenClaw with WhatsApp channel configured\n- WhatsApp account linked via QR code (`openclaw whatsapp login`)\n\n---\n\n## Capabilities Overview\n\n| Category | Features |\n|----------|----------|\n| **Messaging** | Text, media, polls, stickers, voice notes, GIFs |\n| **Interactions** | Reactions, replies/quotes, edit, unsend |\n| **Groups** | Create, rename, icon, description, participants, admin, invite links |\n\n**Total: 22 distinct actions**\n\n---\n\n## Messaging\n\n### Send Text\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" message=\"Hello!\"\n```\n\n### Send Media (Image/Video/Document)\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" message=\"Check this out\" filePath=/path/to/image.jpg\n```\nSupported: JPG, PNG, GIF, MP4, PDF, DOC, etc.\n\n### Send Poll\n```\nmessage action=poll channel=whatsapp to=\"+34612345678\" pollQuestion=\"What time?\" pollOption=[\"3pm\", \"4pm\", \"5pm\"]\n```\n\n### Send Sticker\n```\nmessage action=sticker channel=whatsapp to=\"+34612345678\" filePath=/path/to/sticker.webp\n```\nMust be WebP format, ideally 512x512.\n\n### Send Voice Note\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/audio.ogg asVoice=true\n```\n**Critical:** Use OGG/Opus format for WhatsApp voice notes. MP3 may not play correctly.\n\n### Send GIF\n```\nmessage action=send channel=whatsapp to=\"+34612345678\" filePath=/path/to/animation.mp4 gifPlayback=true\n```\nConvert GIF to MP4 first (WhatsApp requires this):\n```bash\nffmpeg -i input.gif -movflags faststart -pix_fmt yuv420p -vf \"scale=trunc(iw/2)*2:trunc(ih/2)*2\" output.mp4 -y\n```\n\n---\n\n## Interactions\n\n### Add Reaction\n```\nmessage action=react channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" emoji=\"🚀\"\n```\n\n### Remove Reaction\n```\nmessage action=react channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" remove=true\n```\n\n### Reply/Quote Message\n```\nmessage action=reply channel=whatsapp to=\"34612345678@s.whatsapp.net\" replyTo=\"QUOTED_MSG_ID\" message=\"Replying to this!\"\n```\n\n### Edit Message (Own Messages Only)\n```\nmessage action=edit channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\" message=\"Updated text\"\n```\n\n### Unsend/Delete Message\n```\nmessage action=unsend channel=whatsapp chatJid=\"34612345678@s.whatsapp.net\" messageId=\"ABC123\"\n```\n\n---\n\n## Group Management\n\n### Create Group\n```\nmessage action=group-create channel=whatsapp name=\"Project Team\" participants=[\"+34"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7623hrcwt6rg73a67xw3wyx580asdw\",\n  \"slug\": \"whatsapp-ultimate\",\n  \"version\": \"3.5.1\",\n  \"publishedAt\": 1772114046706\n}"},{"path":"description.md","content":"**WhatsApp Ultimate**\n\n🔹 **Model Identification:** Every message shows the active model and auth mode — `🤖(claude-opus-4-6|sub)` or `🤖(gpt-4o|api)`. Know instantly if you're on a fallback or burning API credits.\n\n🔹 **Complete Message History:** Captures ALL messages including self-chat inbound that standard Baileys misses. Full bidirectional logging for your command channel.\n\n🔹 **Template Variables:** Customize your prefix with `{model}`, `{authMode}`, `{provider}`, `{think}`, and more. Full control over what shows in every message.\n\n🔹 **Security Gating:** 3-rule allowlist — authorized users, authorized chats, trigger prefix.\n\n🔹 **Full History Sync:** Backfill all messages on reconnect with `syncFullHistory: true`.\n\n🔹 **Searchable Archive:** SQLite-backed full-text search across all chats, senders, and date ranges.\n\n🚀 **Install:** `clawhub install whatsapp-ultimate` then run the patch scripts to enhance your OpenClaw instance."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person. Skill: Whatsapp Ultimate Owner: globalcaos Summary: WhatsApp skill with a 3-rule security gate. Your agent speaks only when spoken to — in the right chat, by the right person. Tags: latest:3.5.1 Version history: v3.5.1 | 2026-02-26T13:54:06.706Z | user Added ackMessage: gateway-level instant message acknowledgment for visual cue in WhatsApp Web v3.5.0 | 2026-02-26T13:53:12.267Z | auto Big change: Documentation rewrit","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":999,"uniquenessScore":59,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-04-15T00:45:39.800Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T19:18:20.627Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}