Cuenta personal
Tus chats de WhatsApp, mensajes, contactos, búsquedas, archivos, encuestas y envíos explícitos.
Tus chats de WhatsApp, mensajes, contactos, búsquedas, archivos, encuestas y envíos explícitos.
Opciones globales
| Opción | Qué hace |
|---|---|
-V, --version | output the version number. |
-v, --verbose | more detail in what is shown: -v ids, -vv everything we know. Default: 0. |
--json | machine-readable output: one JSON value on stdout; --json=id,text keeps only those fields. |
--jsonl | machine-readable output: one JSON object per line, for streaming and jq. |
--quiet | diagnostics off; a failure is still said. |
--trace | the connection's own log lines on stderr — never message content. |
--debug | on a failure, its whole record — cause and stack — in place of the short line. |
--timeout <duration> | give up on the whole command after this — 30s, 2m, 500ms. |
--offline | answer from what was recorded and never connect; fails if nothing was. |
--no-input | never prompt or open interactive login; piped input remains available. |
--max-input-bytes <bytes> | maximum buffered input bytes (default: 16777216). |
--max-output-bytes <bytes> | maximum machine output bytes (default: 4194304; 0 disables). |
--brief | found messages as reference, title, time, sender and excerpt only. |
--full | found messages with their whole text and every provider field. |
--dry-run | preview parsed arguments and permissions before running the action. |
--yes | go ahead without the question an ask level puts before a write. |
--record | keep this run — ids and timings, never message content. |
--no-record | do not keep it, whatever the configuration says. |
Comandos
wa chats
the account's chats
wa chats list
chats, newest first, archived ones included; the query is answered from the local store, so online, where the messenger filters nothing, it needs --offline
wa chats list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
--all | every row, no paging. |
wa chats events
who joined, left, was added or removed, and by whom — from the chat's service messages; the last 7 days unless the query names time
wa chats events <chat> [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
query | optional | field:value terms that narrow the list — the fields are below. |
wa chats inspect
what an invite or public link leads to, without joining it
wa chats inspect <link>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
link | required | an invite link or a public one. |
wa chats show
one chat: its kind, unread count, last message time and who is in it
wa chats show <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats documents
the Google Docs and Drive documents linked in a chat's stored messages
wa chats documents list
every document link in the chat, newest first, and whether the store has it
wa chats documents list <chat> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
wa chats mark-read
mark a chat read; the other side sees that you read it
Changes something in WhatsApp.
wa chats mark-read <chat> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
| Opción | Qué hace |
|---|---|
--until-id <id> | only up to this message id; the newest by default. |
wa chats tracking
the chats whose member lists serve fetches daily into the local store — chats members fetch --track adds one
wa chats tracking list
every tracked chat: since when, and its last member count
wa chats tracking list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
wa chats tracking show
one chat: whether it is tracked, and its member count per day for the last 30 days
wa chats tracking show <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats tracking add
fetch this chat's member list daily while serve runs, from its next run
Changes something on this computer only.
wa chats tracking add <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats tracking remove
stop fetching it daily; the history already kept stays
Changes something on this computer only.
wa chats tracking remove <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats join
join a group or channel by its link; the others in it see that you joined
Changes something in WhatsApp.
wa chats join <link>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
link | required | an invite link, or a public one. |
wa chats leave
leave a group or channel; the others in it see that you left
Changes something in WhatsApp.
wa chats leave <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats folders
your chat folders
wa chats folders list
your chat folders, in the order the app shows them
wa chats folders list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms; this list filters by none yet. |
wa chats folders show
one chat folder, with the names of the chats in it
wa chats folders show <folder>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
folder | required | the folder's id, or its title exactly. |
wa chats folders create
create a chat folder
Changes something in WhatsApp.
wa chats folders create <title> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
title | required | the folder's name; the app may refuse a long one. |
| Opción | Qué hace |
|---|---|
--chat <chat> | a chat to put in it, by id or name; repeat it for more. |
wa chats folders update
rename a folder, or change which chats are in it
Changes something in WhatsApp.
wa chats folders update <folder> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
folder | required | folder id, or its title exactly. |
| Opción | Qué hace |
|---|---|
--title <title> | a new name. |
--add <chat> | put a chat in it; repeat it for more. |
--remove <chat> | take a chat out of it, and off its excluded and pinned lists; repeat it for more. |
wa chats folders delete
delete a folder; the chats in it stay
Changes something in WhatsApp.
wa chats folders delete <folder>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
folder | required | folder id, or its title exactly. |
wa chats rules
what chats moderate judges a group by, kept in a file of this profile
wa chats rules show
the group's rules; the defaults, marked not saved, if it has none yet
wa chats rules show <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats rules set
change one rule; the group's first change writes every rule with its default
Changes something on this computer only.
wa chats rules set <chat> <key> <value>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
key | required | one of: trusted, blocked, blockedNames, links, invites, forwards, blockedPeople, flood.messages, flood.minutes, flood.action, newAccount.days, newAccount.action, consent.delete, consent.remove. |
value | required | the new value; a list is comma-separated. |
wa chats rules unset
put one rule back to its default
Changes something on this computer only.
wa chats rules unset <chat> <key>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
key | required | one of: trusted, blocked, blockedNames, links, invites, forwards, blockedPeople, flood.messages, flood.minutes, flood.action, newAccount.days, newAccount.action, consent.delete, consent.remove. |
wa chats mute
stop notifications from a chat, for good or until a time; nobody in it is told
Changes something in WhatsApp.
wa chats mute <chat> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
| Opción | Qué hace |
|---|---|
--until <time> | only until then: 2026-09-25T09:00 (local time), or 30m, 2h, 7d from now. |
wa chats unmute
hear a muted chat again
Changes something in WhatsApp.
wa chats unmute <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats archive
move a chat into the archive; nobody in it is told
Changes something in WhatsApp.
wa chats archive <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats unarchive
bring an archived chat back to the chat list
Changes something in WhatsApp.
wa chats unarchive <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats mark-unread
mark a chat unread on your own devices; nobody in it is told
Changes something in WhatsApp.
wa chats mark-unread <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa chats clear
delete every message in a chat for this account; the others in it keep theirs
Changes something in WhatsApp.
wa chats clear <chat> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
| Opción | Qué hace |
|---|---|
--allow-dangerous | go ahead without the question an ask level puts before a deletion. |
wa contacts
people this account has a one-to-one chat with
wa contacts list
people you have a one-to-one chat with; name: matches the name, your local alias or the @username, notes: your private notes about them
wa contacts list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
--all | every row, no paging. |
--order <recent|name> | newest conversation first, or alphabetical. Default: recent. |
wa contacts show
one person and the chats you share with them
wa contacts show <person> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
| Opción | Qué hace |
|---|---|
--with-notes | include your private notes, subject to contacts.notes.list permission. |
wa contacts info
everything the messenger says about one person — handles, flags, last seen, when they registered — and how many of their messages the store holds in each chat you share, the first and the last, and the earlier names and usernames the store saw them with
wa contacts info <person> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
| Opción | Qué hace |
|---|---|
--show-phone | print the whole phone number. |
wa contacts context
what the store holds about one person, in every messenger linked to them: shared chats, the last messages each way, their recent messages, where others mentioned them — never connects
wa contacts context <person> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
| Opción | Qué hace |
|---|---|
--limit <n> | at most this many messages in each list; 10 if not given. |
--since-time <time> | nothing older than this ISO 8601 time, or 2h / 1d ago. |
--chat <chat> | a chat, by id or name; repeat it for more — then their newest messages in each, 20 unless --limit, short unless -v. |
wa contacts prepare
before you talk to someone: what contacts context gives, plus the one-to-one chats where they wrote last, open tasks, accepted facts, your notes and their recent meetings, each with its reference; never connects
wa contacts prepare <person> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
| Opción | Qué hace |
|---|---|
--limit <n> | at most this many messages, and items in each section; 10 if not given. |
--since-time <time> | no message or meeting older than this ISO 8601 time, or 2h / 1d ago. |
wa contacts events
everything one person took part in, in every messenger linked to them — messages they wrote or were mentioned in, chats, mail, meetings, tasks — newest first, from the store; never connects
wa contacts events <person> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | at most this many; 50 if not given. |
--cursor <cursor> | go on from where the last page stopped; page.next gives it, with the same filters. |
wa contacts check
whether one person looks like a bot, a fake or a spammer: their profile and what they wrote in the store — a hint, never a verdict; the public ban lists cover Telegram only, so nothing is sent
wa contacts check <person> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
| Opción | Qué hace |
|---|---|
--no-registries | do not ask the public ban lists; nothing about them leaves this machine. |
wa contacts link
record that two people in the store are one person — the same name is never enough
Changes something on this computer only.
wa contacts link <person> <other>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name. |
other | required | the same in another messenger of the store, as : — max:Ana; me: it is you, as zoom: me. |
wa contacts unlink
undo contacts link for one identity: it is a person of its own again
Changes something on this computer only.
wa contacts unlink <person>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | their id, @username, or part of their name; : for another messenger. |
wa contacts lookup
who has this phone number — asks for it, or reads it from stdin; never an argument
wa contacts lookupwa contacts sync
take the whole contact list from the messenger into the local store
Changes something on this computer only.
wa contacts syncwa contacts aliases
a private local display name in the selected account
wa contacts aliases set
your own name for a person in this account; kept on this machine, never sent
Changes something on this computer only.
wa contacts aliases set <person> <alias>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
alias | required | the private name to use for this person. |
wa contacts aliases remove
drop your local name for a person; their own name shows again
Changes something on this computer only.
wa contacts aliases remove <person>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
wa contacts notes
your private notes on a stored contact, the same in every account that sees them
wa contacts notes list
every private note you keep on a person, oldest first
wa contacts notes list <person> [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
query | optional | field:value terms; this list filters by none yet. |
wa contacts notes show
one private note on a person, with its revision for edit
wa contacts notes show <person> <id>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
id | required | the note id from contacts notes list. |
wa contacts notes add
add a private note on a person from stdin or --text-file; never sent
Changes something on this computer only.
wa contacts notes add <person> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
| Opción | Qué hace |
|---|---|
--text-file <path> | read note text from a file; omitted or - reads stdin. |
wa contacts notes edit
replace a note's text; --revision must match the one you read
Changes something on this computer only.
wa contacts notes edit <person> <id> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
id | required | the note id from contacts notes list. |
| Opción | Qué hace |
|---|---|
--text-file <path> | read note text from a file; omitted or - reads stdin. |
--revision <n> | the revision you read before editing. |
wa contacts notes remove
delete one private note on a person
Changes something on this computer only.
wa contacts notes remove <person> <id>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | the person's id, reference or known name. |
id | required | the note id from contacts notes list. |
wa contacts add
add a person to your contacts — contacts list still shows only people you have a dialog with
Changes something in WhatsApp.
wa contacts add <person>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | person id — contacts lookup finds one — or part of a known name. |
wa contacts block
stop a person from writing to you — they need not be a contact
Changes something in WhatsApp.
wa contacts block <person>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | person id — contacts lookup finds one — or part of a known name. |
wa contacts unblock
let a blocked person write to you again
Changes something in WhatsApp.
wa contacts unblock <person>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | person id — contacts lookup finds one — or part of a known name. |
wa contacts rename
rename the contact in the messenger address book; use contacts alias for a private local name
Changes something in WhatsApp.
wa contacts rename <person> <first-name> [last-name]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
person | required | person id — contacts lookup finds one — or part of a known name. |
first-name | required | the name you want to see for them. |
last-name | optional | the last name you want to see for them. |
wa contacts import
upload phone numbers and add the people the messenger has under them
Changes something in WhatsApp.
wa contacts import <file>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
file | required | one person per line: number, then a comma, a tab or a semicolon, then the name. |
wa messages
read and send messages
wa messages evidence
general chat context, newest first, with references, coverage and fingerprints for verification
wa messages evidence <chat> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
| Opción | Qué hace |
|---|---|
--limit <n> | how many, 1–100. |
--cursor <cursor> | go on from where page.next says the last packet stopped. |
wa messages list
a chat's messages, oldest to newest
wa messages list <chat> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
query | optional | where to start: id<42, date>2026-10-01; starred:true keeps the ones you starred. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many. |
--cursor <cursor> | go on from where the last page stopped; page.next gives it. |
--transcribe | turn voice messages not heard yet into text — by the messenger where it can, else by a model on this machine; can take minutes. |
--model <model> | which downloaded speech model hears them, with --transcribe; models list shows them. |
wa messages send
send a text message; without [text], the text is read from stdin
Changes something in WhatsApp.
wa messages send <chat> [text] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
text | optional | the message. |
| Opción | Qué hace |
|---|---|
--reply-to <message> | answer this message, by its id in the same chat. |
--operation-id <id> | repeat a send whose outcome was unknown, without risking a second copy. |
--no-preview | no preview card for a link in the text. |
--md | read this messenger's Markdown; see its formatting guide for supported syntax. |
--file <file> | attach a file; the text becomes its caption; repeat it for an album. Default: ``. |
--photo <file> | attach a .jpg, .png or .webp as a photo; the text becomes its caption; repeat it for an album. Default: ``. |
--as-file | send each --file as a file to download, a video included. |
--voice <file> | send an Ogg Opus file as a voice message, alone, with no text. |
--allow-any-file | send a file even from credential folders or this CLI's own folders. |
--filename <name> | the name others see for the --file, instead of its name on disk. |
--sticker-file <file> | send a .webp file as a sticker, alone, with no text. |
wa messages show
one message, by its chat and id or by its msg: locator
wa messages show <chat> [message]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter); or a msg: locator, with no message id after it. |
message | optional | the message id. |
wa messages context
a message and what came either side of it, oldest first
wa messages context <chat> [message] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter); or a msg: locator, with no message id after it. |
message | optional | the message id. |
| Opción | Qué hace |
|---|---|
--thread | the stored reply chain and replies instead of time neighbours; falls back when no graph exists. |
--thread-hops <n> | at most this many links from the hit (default: 8). |
--thread-messages <n> | at most this many messages in each thread context (default: 50). |
--thread-bytes <n> | at most this many bytes of whole messages and links in each context (default: 65536). |
--thread-within <duration> | messages within this long either side of the hit (default: 1d). |
--before-n <n> | how many before it. Default: 5. |
--after-n <n> | how many after it. Default: 5. |
wa messages download
save a message's photos, files, videos and voice notes to a folder — or a whole chat's with --all
Changes something on this computer only.
wa messages download <chat> [message] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | optional | the message id; left out with --all. |
| Opción | Qué hace |
|---|---|
--output-dir <dir> | where to save them; created if missing. Default: .. |
--all | every file of the chat, newest first; run it again to continue where it stopped. |
--pause <duration> | with --all, a pause between pages, to stay under the provider's limits. Default: 2s. |
--extract | read text layers from the files this download maps into the local content index. |
wa messages transcribe
a voice message as text — by WhatsApp where it can, else by a model on this machine
wa messages transcribe <chat> <message> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the id of a voice message. |
| Opción | Qué hace |
|---|---|
--local | use the model on this machine, never the messenger. |
--model <model> | which downloaded model; implies --local (models list). |
wa messages edit
change the text of your own message; the other side may have read it already
Changes something in WhatsApp.
wa messages edit <chat> <message> [text] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the id of your own message. |
text | optional | the new text; without it, read from stdin. |
| Opción | Qué hace |
|---|---|
--md | read this messenger's Markdown; see its formatting guide for supported syntax. |
wa messages delete
delete messages for you only; with --for-everyone, for everyone in the chat
Changes something in WhatsApp.
wa messages delete <chat> <message> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message ids, by spaces or commas, at most 10. |
| Opción | Qué hace |
|---|---|
--for-everyone | delete for everyone in the chat, not only for you — they cannot get it back. |
--allow-dangerous | go ahead without the question an ask level puts before a deletion. |
wa messages forward
forward one message to another chat
Changes something in WhatsApp.
wa messages forward <chat> <message> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | the chat the message is in: a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
| Opción | Qué hace |
|---|---|
--to <chat> | where it goes: a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--operation-id <id> | repeat a forward whose outcome was unknown, without risking a second copy. |
wa messages pin
pin a message in a chat; its members are told
Changes something in WhatsApp.
wa messages pin <chat> <message> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
| Opción | Qué hace |
|---|---|
--expire-time <time> | how long the pin lasts: 24h, 7d or 30d; 7d by default. |
wa messages unpin
unpin a message in a chat
Changes something in WhatsApp.
wa messages unpin <chat> <message>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
wa messages star
star a message, so it is easy to find again; only you see the star
Changes something in WhatsApp.
wa messages star <chat> <message>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
wa messages unstar
take the star off a message
Changes something in WhatsApp.
wa messages unstar <chat> <message>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
wa messages link
a message permalink when supported, and its account-scoped locator
wa messages link <chat> [message]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter); or a msg: locator, with no message id after it. |
message | optional | the message id. |
wa messages comments
the comments received under a post, oldest to newest
wa messages comments <chat> <post> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | the chat: a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
post | required | the post's message id in the chat. |
query | optional | where to start: id<42. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many. |
--cursor <cursor> | go on from where the last page stopped; page.next gives it. |
wa messages links
why a message is in its conversation: each link it has, and the chain of answers back to the start
wa messages links <chat> <message>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
wa messages sync
bring a chat's history in the local store up to date, newest first; run it again to continue; --all syncs every chat
Changes something on this computer only.
wa messages sync [chat] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | optional | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
| Opción | Qué hace |
|---|---|
--all | every chat, most recently active first — what search needs; the last 90d unless --since-time or --last. |
--limit <n> | at most this many messages in this run, per chat with --all; 1000 if not given. |
--page-size <n> | how many messages one request asks for; 50 if not given. |
--pause <duration> | the least pause between pages, to stay under the provider's limits; each is up to twice that. Default: 2s. |
--since-time <time> | stop once it reaches messages older than this: ISO 8601, or 2h / 1d ago. |
--last <n> | stop once the newest n messages are held. |
--catch-up | prepare local search after this run; overrides search_catch_up. |
--no-catch-up | skip local preparation after this run. |
--catch-up-chunks <n> | at most this many local vector chunks. |
--catch-up-messages <n> | skip a graph rebuild larger than this many messages. |
--catch-up-time <duration> | local preparation time budget, 30s by default. |
--background | run as a job that outlives this command; store jobs show follows it. |
--dry-run | only estimate how many messages, requests and minutes a full fetch would still take — from the store, no request. |
wa reactions
react to messages
wa reactions add
put your reaction on a message; it replaces the one you had
Changes something in WhatsApp.
wa reactions add <chat> <message> <emoji>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
emoji | required | one emoji, for example 👍. |
wa reactions remove
take your reaction off a message
Changes something in WhatsApp.
wa reactions remove <chat> <message>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the message id. |
wa polls
read a poll, vote in it, create one
wa polls show
a poll and its answer ids, as the message carries it now
wa polls show <chat> <message>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the id of the message that carries the poll. |
wa polls voters
who voted for what, newest first
wa polls voters <chat> <message> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the id of the message that carries the poll. |
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
wa polls vote
vote in a poll, or take your vote back; the others see it
Changes something in WhatsApp.
wa polls vote <chat> <message> [answers] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | the id of the message that carries the poll. |
answers | optional | answer ids, as polls show prints them. |
| Opción | Qué hace |
|---|---|
--retract | take your vote back. |
wa polls create
send a poll to a chat, as a message of its own; everyone sees who voted for what
Changes something in WhatsApp.
wa polls create <chat> <question> <answers> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
question | required | the question. |
answers | required | two answers or more. |
| Opción | Qué hace |
|---|---|
--multiple | people may pick several answers. |
--operation-id <id> | repeat a create whose outcome was unknown, without risking a second poll. |
wa inbox
other people's unread messages in every chat; --new for what arrived since the last check
wa inbox [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | from when: date>2h, date>2026-10-01; the saved point stays put. |
| Opción | Qué hace |
|---|---|
--new | what arrived since the last check, each message once — for scheduled runs. |
--limit <n> | at most this many per chat, the newest. |
--all | muted and archived chats too — left out unless they mention you or reply to you. |
--transcribe | turn voice messages not heard yet into text — by the messenger where it can, else by a model on this machine; can take minutes. |
--model <model> | which downloaded speech model hears them, with --transcribe; models list shows them. |
wa review
every message, yours too, in chats that changed since a point — for reviewing who owes what
wa review [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | where the last review ended and which chat: date>2h, chat:"Book club"; 3 days ago if no date. |
| Opción | Qué hace |
|---|---|
--unanswered [duration] | only questions to you or a group's admins that nobody answered, asked at least this long ago — 4h, 1d; 24h if not given. |
--all | muted and archived chats too — left out unless they mention you or reply to you. |
--transcribe | turn voice messages not heard yet into text — by the messenger where it can, else by a model on this machine; can take minutes. |
--model <model> | which downloaded speech model hears them, with --transcribe; models list shows them. |
--new | what changed since the last review --new, a point per chat — for scheduled runs. |
wa conversations
the conversations inside a chat, found in the stored messages by replies, mentions and who wrote next
wa conversations list
a chat's conversations, the newest first: when, how many messages, how many people
wa conversations list <chat> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many. |
wa conversations show
one conversation's messages, oldest first — by its id, or the one a message is in
wa conversations show <conversation> [message]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
conversation | required | a conversation id from conversations list; or a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter), with a message. |
message | optional | a message id in that chat: show the conversation it is in. |
wa conversations related
the conversations nearest in meaning to the one a message is in, in every built chat, best first — from the vectors conversations embed stored; runs no model
wa conversations related <chat> <message> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
message | required | a message id in that chat. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many. |
--model <model> | local: a model id from models list (default: e5-small); remote: the provider's model. |
--embedding-provider <provider> | embedding provider: local or openai; flags override profile settings. |
--base-url <url> | a server with OpenAI's /v1/embeddings: Gemini, Jina, or Ollama and LM Studio on this machine. |
--dims <n> | remote: the vector size — needed with --base-url; shortens an OpenAI model's. |
wa conversations status
how fresh each built chat's conversations and vectors are: messages the build has not seen, chunks with a current, stale or missing vector
wa conversations status [options]| Opción | Qué hace |
|---|---|
--chat <chat> | only this chat: a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--model <model> | local: a model id from models list (default: e5-small); remote: the provider's model. |
--embedding-provider <provider> | embedding provider: local or openai; flags override profile settings. |
--base-url <url> | a server with OpenAI's /v1/embeddings: Gemini, Jina, or Ollama and LM Studio on this machine. |
--dims <n> | remote: the vector size — needed with --base-url; shortens an OpenAI model's. |
wa conversations batches
windows of a chat for your own AI agent to link: which earlier message each one answers
wa conversations batches status
how many messages still wait for an answer, in how many batches, and how much text
wa conversations batches status [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--size <n> | messages to answer per batch, 10–200; 50 by default. |
wa conversations batches show
the next window to answer, with the messages before it; message text goes to stdout only
wa conversations batches show [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--size <n> | messages to answer per batch, 10–200; 50 by default. |
wa conversations links
message links and the conversations derived from them
wa conversations links rebuild
find a chat's conversations in what the store holds, replacing the last build; without --chat, every chat that changed since its build and every group never built; never asks the messenger
Sends text to an outside service.
wa conversations links rebuild [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--analyze | link batches using the configured analysis provider; requires --chat and remembers consent for this chat/provider. |
--analysis-provider <provider> | analysis: agent, openai or anthropic. |
--model <model> | analysis model; overrides analysis_model. |
--base-url <url> | analysis API endpoint; overrides analysis_base_url. |
--size <n> | analysis answer messages per batch, 10–200; default 50. |
--max-tokens <n> | analysis input/output reservation cap per run; default 100000. |
--max-chats <n> | at most this many chats in one run; 20 if not given. |
wa conversations links add
store your agent's answer to a batch, read as JSON from stdin: { "model", "answers": [{ "message", "parent", "confidence" }] }; all or nothing
Changes something on this computer only.
wa conversations links add [options]| Opción | Qué hace |
|---|---|
--batch <id> | the batch id conversations batches show printed. |
wa conversations links clear
drop your agent's answers for a chat, or only one model's; messages are never touched
Changes something on this computer only.
wa conversations links clear [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--answer-model <model> | only the stored answers this model gave. |
wa conversations embeddings
stored conversation vectors
wa conversations embeddings status
how many chunks of a chat have a vector of the model, how many are left, and what is left costs
wa conversations embeddings status [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--model <model> | local: a model id from models list (default: e5-small); remote: the provider's model. |
--embedding-provider <provider> | embedding provider: local or openai; flags override profile settings. |
--base-url <url> | a server with OpenAI's /v1/embeddings: Gemini, Jina, or Ollama and LM Studio on this machine. |
--dims <n> | remote: the vector size — needed with --base-url; shortens an OpenAI model's. |
wa conversations embeddings clear
drop a chat's vectors, or only one model's; messages and conversations are never touched
Changes something on this computer only.
wa conversations embeddings clear [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--model <model> | local: a model id from models list (default: e5-small); remote: the provider's model. |
--embedding-provider <provider> | embedding provider: local or openai; flags override profile settings. |
--base-url <url> | a server with OpenAI's /v1/embeddings: Gemini, Jina, or Ollama and LM Studio on this machine. |
--dims <n> | remote: the vector size — needed with --base-url; shortens an OpenAI model's. |
wa conversations rebuild
build, then embed with the model on this machine, the chats that changed since their build and the group chats never built — or only --chat; bounded per run, so run it again for the rest; never asks the messenger, downloads no model and sends no text anywhere
Changes something on this computer only.
wa conversations rebuild [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--max-chats <n> | at most this many chats in one run; 20 if not given. |
--max-chunks <n> | at most this many chunks embedded in one run; 2000 if not given. |
wa conversations consents
remembered analysis permissions for this account's chats and provider endpoints
wa conversations consents list
which chats and provider endpoints you allowed to analyse, and when
wa conversations consents list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
wa conversations consents remove
forget analysis permissions so the next analysis asks again
Changes something on this computer only.
wa conversations consents remove [options]| Opción | Qué hace |
|---|---|
--chat <chat> | revoke only this chat's consents; defaults to every chat. |
--consent-provider <identity> | exact provider identity from consents list; defaults to every provider. |
wa conversations embed
compute a vector for each chunk of a chat's conversations for search by meaning — on this machine, or with --embedding-provider through a service and your key; resumes where it stopped; without --chat, every built chat with chunks left, on this machine only
Sends text to an outside service.
wa conversations embed [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--model <model> | local: a model id from models list (default: e5-small); remote: the provider's model. |
--embedding-provider <provider> | embedding provider: local or openai; flags override profile settings. |
--base-url <url> | a server with OpenAI's /v1/embeddings: Gemini, Jina, or Ollama and LM Studio on this machine. |
--dims <n> | remote: the vector size — needed with --base-url; shortens an OpenAI model's. |
--threads <n> | local: threads in all (default: min(8, cores)). |
--concurrency <n> | remote: requests at once (default: 4). |
--max-tokens <n> | remote: stop before a run that could send more tokens than this. |
--max-chats <n> | at most this many chats in one run; 20 if not given. |
--max-chunks <n> | at most this many chunks embedded in one run; 2000 if not given, and no limit with --chat. |
wa attachments
the files of stored messages: their text in the local store, where search finds it
wa attachments extract
read the text of downloaded files — text, PDF/DOCX text layers, ODT/ODS/XLSX/PPTX/EPUB — into the local store, where search finds them
Changes something on this computer only.
wa attachments extract [options]| Opción | Qué hace |
|---|---|
--chat <chat> | only this chat's files; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--from-dir <dir> | match files in this nonrecursive directory; needs --chat. |
--cursor <cursor> | continue from the cursor returned by a bounded extraction. |
--download | first save the files no download saved yet, from the messenger, into --output-dir. |
--output-dir <dir> | with --download, where to save them; created if missing. |
--limit <n> | read at most this many files; run it again to continue. |
--ocr | explicitly call models.ocr for bulk image and scanned-PDF text extraction. |
--concurrency <n> | remote: requests at once (default: 4). |
wa attachments list
files of stored messages, newest first: where each was saved and whether its text is held — never the text
wa attachments list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
--all | every row, no paging. |
wa attachments show
read a bounded chunk of one retained attachment; JSON includes base64 bytes
wa attachments show <chat> [message] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter); or a msg: locator alone. |
message | optional | the message id. |
| Opción | Qué hace |
|---|---|
--attachment <n> | file position from 1; required for several files. |
--page <n> | render one PDF page as PNG, from 1; optional unpdf/canvas, no OCR. |
--offset-bytes <n> | byte offset from 0. |
--chunk-bytes <n> | bytes to return, 1–1048576 (default524288). |
--expected-fingerprint <hash> | require the whole file SHA-256 from the preceding chunk. |
wa attachments update
keep the text an agent read from a file — a scan, a photo — so search finds it; nothing is sent
Changes something on this computer only.
wa attachments update <chat> [message] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter); or a msg: locator, with no message id after it. |
message | optional | the message id. |
| Opción | Qué hace |
|---|---|
--attachment <n> | which file of the message, from 1; needed when it has more than one. |
--text-file <path> | read the text from this file; - or none reads stdin. |
wa attachments download
archive media from selected chats; verify and keep existing copies
Changes something on this computer only.
wa attachments download <dir> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory; created if missing. |
| Opción | Qué hace |
|---|---|
--chat <chat> | only this chat; repeat for more; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). Default: ``. |
--since-time <time> | include messages from this ISO timestamp with a time zone. |
--pause <duration> | pause between history pages. Default: 2s. |
wa attachments check
rehash all archived files without connecting to the messenger
wa attachments check <dir>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory. |
wa attachments jobs
daily media archive timers for this profile
wa attachments jobs install
install a Linux daily archive timer for this directory; starts nothing
Changes something on this computer only.
wa attachments jobs install <dir> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory, used with the same profile as install. |
| Opción | Qué hace |
|---|---|
--at <HH:mm> | daily start time. Default: 03:00. |
--timezone <zone> | IANA time zone of the daily start time. Default: UTC. |
--chat <chat> | only this chat; repeat for more; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). Default: ``. |
--since-time <time> | include messages from this ISO timestamp with a time zone. |
wa attachments jobs start
enable the installed archive timer at login and start its daily schedule
Changes something on this computer only.
wa attachments jobs start <dir>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory, used with the same profile as install. |
wa attachments jobs stop
disable the archive timer; a download already running finishes
Changes something on this computer only.
wa attachments jobs stop <dir>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory, used with the same profile as install. |
wa attachments jobs status
show whether this directory's archive timer is installed and active
wa attachments jobs status <dir>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory, used with the same profile as install. |
wa attachments jobs uninstall
remove this directory's stopped archive timer; keep archived files
Changes something on this computer only.
wa attachments jobs uninstall <dir>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | archive directory, used with the same profile as install. |
wa attachments move
move older images into another verified archive; remember their new locations
Changes something on this computer only.
wa attachments move <dir> <archive-dir> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
dir | required | source media archive directory. |
archive-dir | required | destination archive directory; created if needed. |
| Opción | Qué hace |
|---|---|
--before-time <time> | move images whose message date is before this ISO timestamp with zone. |
--dry-run | show counts and bytes without moving files or creating the destination. |
wa tags
your own labels on chats, people, messages and tasks, kept in the local store and never sent; tag: in a search finds them
wa tags rebuild
derive local group/channel tags from cached metadata using keyword rules
Changes something on this computer only.
wa tags rebuild [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a stored group/channel; repeat to select several. Default: ``. |
--limit <n> | process at most 1–500 chats. Default: 50. |
--sync-first | read current descriptions from the messenger before classifying. |
--dry-run | preview cached classification without changing the store. |
wa tags add
put tags on one chat, person, message or task
Changes something on this computer only.
wa tags add <tag> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
tag | required | one or more tags: 1–32 letters a–z, digits and hyphens; upper case is lowered. |
| Opción | Qué hace |
|---|---|
--chat <chat> | the chat to tag, or the chat of --message; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--contact <person> | the person to tag: their id, @username or name, as the local store knows them. |
--message <message> | the message to tag: its id in --chat, or a msg: locator alone. |
--task <id> | the task to tag: its id or key, as tasks list shows it. |
wa tags remove
take tags off one chat, person, message or task
Changes something on this computer only.
wa tags remove <tag> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
tag | required | one or more tags: 1–32 letters a–z, digits and hyphens; upper case is lowered. |
| Opción | Qué hace |
|---|---|
--chat <chat> | the chat to untag, or the chat of --message; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--contact <person> | the person to untag: their id, @username or name, as the local store knows them. |
--message <message> | the message to untag: its id in --chat, or a msg: locator alone. |
--task <id> | the task to untag: its id or key, as tasks list shows it. |
--claim <claim> | remove only this ownership claim: manual or auto. |
wa tags list
what is tagged: this account's chats, messages and tasks, and the people of its messenger
wa tags list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
wa mentions
phones, e-mail, links, documents, names and addresses in stored messages
wa mentions list
this account's mentions matching the query, newest first; --new for those found since the last review
wa mentions list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | fields below; a bare word is a value, so a phone typed with 8 finds it written with +7. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
--new | undecided mentions found since the last --new run that showed them all; the first run shows every one. |
wa mentions domains
the sites this account's links point to, most linked first, with chats and first and last time
wa mentions domains [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | narrows the links counted: the fields below; dismissed links are never counted. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
wa mentions places
confirmed addresses, in every account, most mentioned first; mentions confirm <id> adds one
wa mentions places [options]| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
wa mentions show
one mention, the text around it, and how many other places hold its value
wa mentions show <id>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
id | required | the mention's id, from mentions list. |
wa mentions confirm
say what a mention is: a phone's owner everywhere it is written, the stored document, who a name means, an address as a place
Changes something on this computer only.
wa mentions confirm <id> [person] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
id | required | the mention's id, from mentions list. |
person | optional | person: or organization: that owns the phone or the e-mail address; person: a name means; a document or a street address needs none. |
| Opción | Qué hace |
|---|---|
--all-in-chat | a name: also every undecided place of the same name in its chat. |
--as-owner | record it as yours although an agent's terminal runs the tool (AI_AGENT or CLAUDECODE set). |
wa mentions reject
not a real mention: dismiss its value everywhere and on later syncs; a name only where it is
Changes something on this computer only.
wa mentions reject <id> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
id | required | the mention's id, from mentions list. |
| Opción | Qué hace |
|---|---|
--all-in-chat | a name: also every undecided place of the same name in its chat. |
--as-owner | record it as yours although an agent's terminal runs the tool (AI_AGENT or CLAUDECODE set). |
wa mentions rebuild
find the mentions of every stored message again; decisions are kept
Changes something on this computer only.
wa mentions rebuild [kind]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
kind | optional | only this kind: person-name after people were added or renamed. One of: phone, email, url, document, person-name, place. |
wa images
search pictures by what they show, with a model on this machine
wa images embed
compute a vector for each picture the store knows and has none for — downloading it through the messenger, keeping only the vector; needs picture_search on in the profile and images models download clip-b32; resumes where it stopped
Changes something on this computer only.
wa images embed [options]| Opción | Qué hace |
|---|---|
--chat <chat> | only this chat; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--limit <n> | at most this many pictures in one run; 100 if not given. |
wa images models
models that read pictures, for images embed and picture search
wa images models list
the picture models, which are downloaded, and which one is the default
wa images models list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms; this list filters by none yet. |
wa images models download
download a picture model once, checked against the sha256 this version expects
Reads from an outside service.
wa images models download <model>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
model | required | a model id from images models list. |
wa metadata
cached group/channel descriptions for local automatic tags
wa metadata show
a stored chat's cached description, as automatic tags read it
wa metadata show [options]| Opción | Qué hace |
|---|---|
--chat <chat> | a stored chat. |
wa metadata sync
fetch group and channel descriptions again and cache them
Changes something on this computer only.
wa metadata sync [options]| Opción | Qué hace |
|---|---|
--chat <chat> | stored group/channel; repeat for several. Default: ``. |
--only-missing | only chats with no metadata yet; without --chat, every stored group/channel. |
--limit <n> | process at most 1–500 chats. Default: 50. |
wa tasks
what waits on you — unanswered questions, mentions, requests, promises — kept in the local store; review and serve add them
wa tasks list
tasks, oldest first, with their message or note source
wa tasks list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many. |
wa tasks add
add a task for a stored message or note — a promise, a request
Changes something on this computer only.
wa tasks add <message> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
message | required | a message locator, msg:///, or note:. |
| Opción | Qué hace |
|---|---|
--type <type> | the task's type: question, request, mention or promise. |
--category <name> | what it is about, from the list tasks categories prints: money, documents, meeting, …. |
--into <id> | when tasks add listed tasks that may be the same job: link the message to this one instead of opening a task. |
--new | when tasks add listed tasks that may be the same job: open the task anyway. |
--title <title> | one line: the action and its object — send Alex the API token. |
--description <text> | the detail, in Markdown: who owes whom, done when, next step, keywords. |
--due <time> | when it must be done: an ISO 8601 time or 2h, 3d from now; none clears it. |
--remind-time <time> | when to look at it again: an ISO 8601 time or 2h, 3d from now; none clears it. |
--assignee <person...> | who does it: sender (whoever sent the task's message) or person:; none clears it. Leave it out when unsure: a task with no assignee is better than none. |
wa tasks update
update a task's text, schedule, category, assignees, priority or parent; nothing reaches the messenger
Changes something on this computer only.
wa tasks update <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
| Opción | Qué hace |
|---|---|
--category <name> | what it is about, from the list tasks categories prints: money, documents, meeting, …; a change is kept in the task's history. |
--priority <n> | priority from 0 (urgent) through 4 (low). |
--parent <id> | parent task in the same project; none clears it. |
--title <title> | one line: the action and its object — send Alex the API token. |
--description <text> | the detail, in Markdown: who owes whom, done when, next step, keywords. |
--due <time> | when it must be done: an ISO 8601 time or 2h, 3d from now; none clears it. |
--remind-time <time> | when to look at it again: an ISO 8601 time or 2h, 3d from now; none clears it. |
--assignee <person...> | who does it: sender (whoever sent the task's message) or person:; none clears it. Leave it out when unsure: a task with no assignee is better than none. |
wa tasks link
link a task to messages, chats, people or URLs — or to another task: task:
Changes something on this computer only.
wa tasks link <task> [targets] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
targets | optional | msg: locators, person:, document:, note:, a URL; or task:, which links two project tasks. |
| Opción | Qué hace |
|---|---|
--chat <chat> | a chat it concerns, repeatable; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--kind <kind> | related-to (default), evidence — it shows the task is real — or created-from; for task:, related-to, blocked-by, follow-up-of, duplicate-of or discovered-from. |
wa tasks show
one task: its plan and everything linked to it
wa tasks show <task>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
wa tasks related
tasks that may be the same job as this one, best first, each with a band — likely, maybe, different — and the reasons; merges nothing
wa tasks related <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many, at most 40 (default 10). |
wa tasks duplicates
pairs of tasks that may be one job
wa tasks duplicates list
pairs of tasks a rule opened that may be one job, newest first, with score and reasons: merge, reject or defer each; decision:unsure lists the ones deferred to the owner
wa tasks duplicates list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many. |
wa tasks duplicates reject
two tasks are not the same job: the pair leaves the list and is never offered again
Changes something on this computer only.
wa tasks duplicates reject <task> <other-task>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task listed as the duplicate, by its id or key. |
other-task | required | the task it was paired with. |
wa tasks duplicates defer
the fields and the text cannot tell: leave the pair to the owner, who lists it with decision:unsure
Changes something on this computer only.
wa tasks duplicates defer <task> <other-task>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task listed as the duplicate, by its id or key. |
other-task | required | the task it was paired with. |
wa tasks merge
one job seen twice: link every message of the duplicate to the task and close the duplicate dismissed, duplicate-of the task; nothing is deleted, and tasks unmerge undoes it
Changes something on this computer only.
wa tasks merge <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the duplicate, by its id or key; it must be open. |
| Opción | Qué hace |
|---|---|
--into <id> | the task that stays, by its id or key. |
wa tasks unmerge
undo a merge: reopen the task and remove its duplicate-of relation; messages the merge linked stay linked
Changes something on this computer only.
wa tasks unmerge <task>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the merged task, by its id or key. |
wa tasks agenda
what needs a look today, from the local store and without message text: tasks overdue, due or to check, chats where you owe an answer, chats where you wait for one, open tasks someone else does
wa tasks agenda [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--due-within <duration> | list tasks due within this: 30m, 2h, 1d (default 1d). |
--unanswered <duration> | list chats where someone else wrote last this long ago (default 1d). |
--waiting <duration> | list chats where you wrote last this long ago (default 7d). |
--within <duration> | leave out chats silent longer than this: they ended (default 30d). |
--holder <name> | who you are for claims: a session id or a chat id; default WIRECAT_HOLDER, else Claude Code's session, else the agent's name. |
wa tasks categories
the categories a task takes, with what each means and the words a rule picks it by
wa tasks categorieswa tasks scan
the task rules over a chat's newest stored messages: in a one-to-one chat a question you did not answer, in a group only a question in reply to you and a mention of you, open a task, and your answer closes one; a channel opens none — for a chat the first sync left alone (config task_first_pass_per_chat). Lists what would open and changes nothing unless --yes; with --yes the duplicate check runs as on a sync. Reads only the local store
Changes something on this computer only.
wa tasks scan <chat> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
| Opción | Qué hace |
|---|---|
--last <n> | read the newest n stored messages of each chat (default 50, at most 1000). |
wa tasks claim
take an open task so no other agent works it at once; the claim lapses by itself
Changes something on this computer only.
wa tasks claim <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
| Opción | Qué hace |
|---|---|
--lease <duration> | how long the claim lasts: 30m, 2h (default 30m); claiming again extends it. |
--holder <name> | who you are for claims: a session id or a chat id; default WIRECAT_HOLDER, else Claude Code's session, else the agent's name. |
wa tasks release
give back a task you claimed, before the claim lapses; the owner may release any
Changes something on this computer only.
wa tasks release <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
| Opción | Qué hace |
|---|---|
--holder <name> | who you are for claims: a session id or a chat id; default WIRECAT_HOLDER, else Claude Code's session, else the agent's name. |
wa tasks close
close a task: done, or dismissed when it needs no answer. An agent (AI_AGENT or CLAUDECODE set) states its --certainty; below config task_agent_close_min, or with task_agent_close off, the task stays open and the close waits on the owner, who confirms it with tasks close or refuses it with tasks reject. A closed task stays closed, unless tasks unmerge reopens a merged one
Changes something on this computer only.
wa tasks close <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
| Opción | Qué hace |
|---|---|
--as <state> | how it is closed: done, or dismissed — it needs no answer; the owner may leave it out to confirm an agent's close. |
--reason <text> | why, kept with the task — no-reply-needed, for example. |
--certainty <n> | an agent's: how sure it is, 0 to 1, that the task needs nothing more. |
--as-owner | close it as yours although an agent's terminal runs the tool (AI_AGENT or CLAUDECODE set). |
wa tasks reject
refuse the close an agent suggested: the task stays open and leaves close:suggested; the agent may close it again
Changes something on this computer only.
wa tasks reject <task> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
task | required | the task's id or key, as tasks list shows it. |
| Opción | Qué hace |
|---|---|
--as-owner | refuse it as yours although an agent's terminal runs the tool (AI_AGENT or CLAUDECODE set). |
wa search
find things by text: one resource when you know it (messages, notes), or search all across messages and notes; for mail, the separate memo CLI: memo search mail
wa search all
search messenger messages and notes in the local store, and a meeting account's transcripts when --source names one — best match first; not mail (the separate memo CLI searches it: memo search mail), tasks, people, memories or projects. Use it when you do not know where something was written; search messages or notes reads one kind with all its fields
wa search all <query> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | required | strict Lucene query: words, "phrases", AND/OR/NOT, field groups and date ranges. |
| Opción | Qué hace |
|---|---|
--only <resources> | only these resources, separated by commas: messages, notes; meetings when --source names a meeting account. |
--source <accounts> | only these accounts, separated by commas: provider:account as a hit shows it, a provider, a kind or group:; each resource reads the ones of its kind, and meetings only when it names one. |
--max-meetings <n> | how many of the meeting account's meetings to look through, newest first, or all for every one (default 100). |
--limit <n> | how many. |
--page <n> | which page, starting at 1. |
--exact | bare words and quotes match their exact form only, as exact:word does. |
--timezone <zone> | the IANA timezone for calendar date boundaries. |
wa search messages
search messenger messages in the local store — what was read, fetched or kept by serve; --discover searches the archive only
wa search messages [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | strict Lucene query: words, "phrases", AND/OR/NOT, field groups and date ranges; with --saved, more words AND-ed to it. |
| Opción | Qué hace |
|---|---|
--thread | the stored reply chain and replies instead of time neighbours; falls back when no graph exists. |
--thread-hops <n> | at most this many links from the hit (default: 8). |
--thread-messages <n> | at most this many messages in each thread context (default: 50). |
--thread-bytes <n> | at most this many bytes of whole messages and links in each context (default: 65536). |
--thread-within <duration> | messages within this long either side of the hit (default: 1d). |
--source <accounts> | every account of this messenger held in the store; personal, bots or all — the same as in: in the query; or a list: group:work,telegram:Alice. |
--limit <n> | how many. |
--page <n> | which page, starting at 1. |
--newest | newest first instead of best first. |
--exact | bare words and quotes match their exact form only, as exact:word does; text: still matches every form. |
--context <n> | messages before and after each hit; 2 in the terminal, 0 otherwise. |
--discover | find partial lexical matches and eligible replies in the local archive; results are evidence, not confirmed answers. |
--timezone <zone> | the IANA timezone for calendar date boundaries. |
--saved <name|id> | run a saved search or an earlier run; options typed here replace its own. |
wa search notes
search the notes — written in memo, or imported from a notes folder — by words and, with the local text model, by meaning; each hit says which found it and what it links to
wa search notes <query> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | required | strict Lucene query: words, "phrases", AND/OR/NOT, tag:, source:internal (written in memo) or source:file (from a notes folder) and date ranges. |
| Opción | Qué hace |
|---|---|
--source <accounts> | only these notes accounts, separated by commas: notes:internal for notes written in memo, notes: as a hit shows it, notes, documents or group:. |
--filter <query> | a query every hit must also match; it does not change the search by meaning. |
--limit <n> | how many. |
--page <n> | which page, starting at 1. |
--exact | words as written only; meaning is not searched. |
--timezone <zone> | the IANA timezone for calendar date boundaries. |
wa search conversations
the conversations nearest to a query in meaning and in words, best first, in one chat or every one — meaning after conversations embed; runs on this machine
Reads from an outside service.
wa search conversations <query> [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | required | what to look for, in your own words, in any language the model reads. |
| Opción | Qué hace |
|---|---|
--model <model> | local: a model id from models list (default: e5-small); remote: the provider's model. |
--embedding-provider <provider> | embedding provider: local or openai; flags override profile settings. |
--base-url <url> | a server with OpenAI's /v1/embeddings: Gemini, Jina, or Ollama and LM Studio on this machine. |
--dims <n> | remote: the vector size — needed with --base-url; shortens an OpenAI model's. |
--max-chats <n> | at most this many chats in one run; 20 if not given. |
--max-chunks <n> | at most this many chunks embedded in one run; 2000 if not given. |
--chat <chat> | only this chat: a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--since-time <time> | only those still going at this ISO 8601 time, or 30m / 2h / 1d ago, or later. |
--filter <query> | strict Lucene filter: any message in a conversation must match; does not change the meaning query. |
--source <accounts> | accounts to search: personal, bots, all, a provider, or a list like group:work,telegram:Alice,email:[email protected]; defaults to the active account. |
--timezone <zone> | IANA timezone for filter dates; system timezone by default. |
--limit <n> | how many. |
--catch-up | first build and embed, on this machine, the chats in scope that changed or were never built — within --max-chats and --max-chunks. |
wa searches
saved searches and the history of search messages and stats messages show, kept in the local store; --saved runs one
wa searches create
save a search under a name without running it; search messages --saved runs it
Changes something on this computer only.
wa searches create <name> [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
name | required | up to 64 letters a–z, digits and hyphens, not only digits. |
query | optional | the query, as for search messages; none matches every stored message. |
| Opción | Qué hace |
|---|---|
--chat <chat> | only this chat — the same as chat: in the query; a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
--source <accounts> | every account of this messenger held in the store; personal, bots or all — the same as in: in the query; or a list: group:work,telegram:Alice,email:[email protected]. |
--limit <n> | how many. |
--newest | newest first instead of best first. |
--exact | bare words and quotes match their exact form only, as exact:word does; text: still matches every form. |
--context <n> | messages before and after each hit. |
--timezone <zone> | the IANA timezone for calendar date boundaries. |
--by <group> | count by chat, sender, day or hour for stats messages show --saved. |
--selection <json> | save the resolved parent ranking query and options from a drilldown. |
--replace | overwrite a saved search of the same name. |
wa searches show
one saved search or earlier run: its query, options and how often it ran
wa searches show <name|id>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
name|id | required | a saved search's name, or the id of any row of searches history. |
wa searches list
the saved searches, by name
wa searches list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms; this list filters by none yet. |
wa searches history
the searches and counts that ran, newest first — saved ones included; never their results
wa searches history [options]| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
--all | every row, no paging. |
wa searches delete
delete a saved search, or one run from the history
Changes something on this computer only.
wa searches delete <name|id>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
name|id | required | a saved search's name, or the id of any row of searches history. |
wa searches clear
empty the history; saved searches stay
Changes something on this computer only.
wa searches clearwa recipients
the chats this profile may send to, when the list is on
wa recipients list
the chats on the list; empty and off until the first add
wa recipients list [query]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
wa recipients add
allow sending to this chat; the first add turns the list on
Changes something on this computer only.
wa recipients add <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | a chat: its name, or its WhatsApp id (…@lid, …@g.us, …@newsletter). |
wa recipients remove
stop allowing this chat; the list stays on
Changes something on this computer only.
wa recipients remove <chat>| Argumento | Obligatoriedad | Qué es |
|---|---|---|
chat | required | chat id, or the title as the list shows it. |
wa recipients clear
delete the list, which turns it off: this profile may send to any chat again
Changes something on this computer only.
wa recipients clearwa sends
every attempt to send from this profile — never the text
wa sends list
attempts to send, newest first: sent, refused, failed, or not known
wa sends list [query] [options]| Argumento | Obligatoriedad | Qué es |
|---|---|---|
query | optional | field:value terms that narrow the list — the fields are below. |
| Opción | Qué hace |
|---|---|
--limit <n> | how many to show. |
--page <n> | which page, starting at 1. |
--all | every row, no paging. |
Códigos de salida
Branch on the code, not on the text: the text can change, the code does not.
| Code | When |
|---|---|
0 | it worked |
2 | validation_error |
3 | configuration_error |
4 | authentication_error |
5 | permission_error |
6 | not_found |
7 | confirmation_required |
8 | rate_limited |
9 | timeout |
10 | network_error |
11 | provider_error |
12 | provider_unavailable |
13 | invalid_response |
14 | outcome_unknown |
130 | cancelled |
1 | anything else |
0 and only 0 means the operation was done. 14 (outcome_unknown) means a message may
have gone: repeat it only with the same --operation-id, which WhatsApp uses to drop a second copy.