{"skill":{"slug":"whatsapp-local-endpoints-router","displayName":"WhatsApp Local Endpoints Router","summary":"Route incoming WhatsApp content to local HTTP endpoints and return endpoint JSON directly to the user. Use when a WhatsApp message contains plain text/random...","description":"---\nname: whatsapp-local-router\ndescription: Route incoming WhatsApp content to local HTTP endpoints and return endpoint JSON directly to the user. Use when a WhatsApp message contains plain text/random symbols that should be sent to POST http://localhost:8080/process, or when a WhatsApp message contains a QR image that should be sent to POST http://localhost:8080/decode-qr.\n---\n\n# WhatsApp Local Router\n\n## Overview\n\nHandle two WhatsApp input types and mirror backend responses back to the user:\n- Text input → `/process`\n- QR image input → `/decode-qr`\n\nAlways send the endpoint response body back to the user with no extra formatting unless the user asks for explanation.\n\n## Workflow\n\n1. Confirm the message comes from WhatsApp context.\n2. Choose route:\n   - If inbound includes an image attachment path (QR image expected), call decode route.\n   - Otherwise treat user text as arbitrary string and call process route.\n3. Execute request with `scripts/route_whatsapp.sh`.\n4. Return stdout from the script directly to the user.\n5. If the endpoint returns an error or invalid JSON, return a short error summary and include raw response body.\n\n## Commands\n\nRun from workspace root:\n\n```bash\n# Text -> /process\nbash skills/whatsapp-local-router/scripts/route_whatsapp.sh process \"<any text>\"\n\n# Image -> /decode-qr\nbash skills/whatsapp-local-router/scripts/route_whatsapp.sh decode \"/path/to/image.png\"\n```\n\n## Routing Rules\n\n- Preserve text exactly; do not sanitize, trim, or reinterpret symbols.\n- Use multipart field name `image` for QR decode uploads.\n- Timeout requests after 20 seconds.\n- If both text and image are present, prioritize image decode unless user explicitly asks to process text.\n- Keep response concise: send backend JSON as-is.\n","tags":{"latest":"1.0.0"},"stats":{"comments":0,"downloads":263,"installsAllTime":10,"installsCurrent":0,"stars":0,"versions":1},"createdAt":1771337125430,"updatedAt":1778991198813},"latestVersion":{"version":"1.0.0","createdAt":1771337125430,"changelog":"Initial release of whatsapp-local-router, a skill for routing WhatsApp inputs to local HTTP endpoints.\n\n- Routes plain text messages to POST /process and QR image messages to POST /decode-qr on localhost.\n- Forwards backend JSON responses directly to the user without formatting changes.\n- Invokes backend via a shell script, returning stdout or raw error responses.\n- Prioritizes image (QR) decoding if both image and text are present.\n- Enforces a 20-second request timeout.\n- Preserves input text exactly as received.","license":null},"metadata":null,"owner":{"handle":"olegqm","userId":"s17f1qtxhhvmcesmndk8kyyf41884m1p","displayName":"Oleh Savchenko","image":"https://avatars.githubusercontent.com/u/89446399?v=4"},"moderation":{"isSuspicious":false,"isMalwareBlocked":false,"verdict":"clean","reasonCodes":["review.llm_review"],"summary":"Review: review.llm_review","engineVersion":"v2.4.24","updatedAt":1779972600326}}