Skip to content
Back to skills

003 Name Skill A40ef0cd

ASecurity

Manage WhatsApp via Evolution API (v2.x): list chats with unread messages and reply.

  • 11 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 10, 2026
toolsapi

Works with

  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned November 10, 2026

npx -y skills add tools-only/X-Skills --skill 003-name-skill_a40ef0cd --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 003 Name Skill A40ef0cd?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 003 Name Skill A40ef0cd
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-003-name-skill-a40ef0cd/badge)](https://www.skillsdirectory.com/skills/tools-only-003-name-skill-a40ef0cd)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: whatsapp-evo
description: "Manage WhatsApp via Evolution API (v2.x): list chats with unread messages and reply."
---

# WhatsApp (Evolution API)

## Requirements
- Environment variables:
  - `EVOLUTION_API_URL` (optional if config)
  - `EVOLUTION_API_TOKEN`
  - `EVOLUTION_INSTANCE` (optional if config)
- Configure `api_url` and `instance` in `~/.config/skills/config.json` under `whatsapp_evo` (recommended). The token must be set via env var.

Example:
```json
{
  "whatsapp_evo": {
    "api_url": "https://evo.example.com",
    "instance": "MyInstance"
  }
}
```

## Commands (from the skill folder)

### 1) Inbox (unread)
```
scripts/whatsapp-inbox --json-out /tmp/whatsapp-inbox.json
```
- Shows a clean numbered list.
- Saves metadata for later actions.
- Note: the inbox is computed from the last incoming message without `READ` status in the API (it may not match "mark as unread" in the app).
- Saves local state in `~/.cache/whatsapp-evo/inbox-state.json` to avoid repeating chats (override with `--state` or `WHATSAPP_EVO_STATE_PATH`).
- Use `--no-update-state` if you want to list the same chats again.
- Use `--since-days N` to ignore old messages in the first pass (default 7).
- Use `--pending-reply` to list conversations from the last N days where the latest message is not yours (ignores local state).

### 2) Reply (with user confirmation)
```
scripts/whatsapp-reply --index <n> --text "reply"
```
- Replies to the chat at the given index using `message/sendText`.
- For direct chats use the number; for groups use `remote_jid` if needed.
- Optional: `--delay <ms>`, `--link-preview`, `--instance`, `--url`.

### 3) Conversation history
```
scripts/whatsapp-history --index <n> --limit 50
```
- Use `--jid` or `--number` if you don’t have an index.
- Filter by date with `--since 2025-01-01` or `--since 2025-01-01T10:00:00Z` and `--until`.
- Use `--incoming-only` to show only inbound messages.

## Metadata format
`/tmp/whatsapp-inbox.json` contains:
- `index`
- `name`
- `remote_jid`
- `number`
- `unread_count`
- `last_message_id`
- `last_message_from_me`
- `last_message_text`
- `last_message_timestamp`
- `last_message_sender`

## Rules
- Show the user only the clean list; never show tokens.
- Before replying, ask for confirmation.
- If the JSON is stale or missing, re-run inbox.

Files in this skill

  • README.md801 B
  • skill.md2.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in tools →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.