← WerifyCONTENT HISTORY

Update to Werify

Snapshot Oct 24, 2026 · 12:49 UTC · version 2.1.4

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save Werify and check future changes in Following.

Up to 10 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Connect the user's own WhatsApp number to Werify, measure available chat history, or configure capture of selected chats. Use for pairing, previewing history, and starting or stopping new-message or earlier-history capture.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 331
    }
  ],
  "name": "connect-whatsapp-capture",
  "skill_md_contents": "---\nname: connect-whatsapp-capture\ndescription: Connect the user's own WhatsApp number to Werify, measure available chat history, or configure capture of selected chats. Use for pairing, previewing history, and starting or stopping new-message or earlier-history capture.\n---\n\n# Connect WhatsApp and choose what to capture\n\nPairing, measuring history, and capturing messages are separate choices. Use the connected\nWerify MCP tools only for the steps the user requested. Explicit user instructions take\nprecedence over workflow guidance; they do not bypass server authorization or confirmation.\nOpening this onboarding skill alone does not authorize pairing or capture. Establish the\nuser's goal if it is missing; an existing archive can be read without connecting a number.\n\n## Connect and choose chats\n\nCheck `list_connected_numbers` before pairing. For a new connection, obtain the user's number\nwith country code and call `connect_whatsapp_number` if available. Relay its pairing code and\nphone instructions, then check the number's status with `list_connected_numbers`. A code is\nnot proof of connection: wait for `ready` before selecting chats. Stop on expiration or an\nactionable error and follow the returned next step. Do not repeatedly restart pairing.\n\nIf the number belongs to another Werify account, relay the refusal: the user moves the number to\nthis account in the web app, through the link it returns. You cannot move it.\n\nUse `list_capturable_chats` with the returned phone, name/activity filters and pagination.\nResolve duplicate names using returned handles. `chat_id` identifies a phone chat;\n`conversation_id` identifies an archive for read tools. Do not substitute one for the other.\nSelect only the chats the user requested. Activity and direct-chat filters do not establish\nthat a contact is a customer, a lead, or a newly created conversation.\n\n## Measure without capture\n\nUse `start_history_preview` before or after capture, with the phone and chat handle from\n`list_capturable_chats`, following its current schema. If it is unavailable or a stale tool\ndefinition is rejected, use the returned web link or https://werify.app/conversations for that\noperation. Do not try retired preview names or repeat an unsupported call.\n\nMeasuring reads metadata and can cause phone sync notifications; it does not save messages or\nmedia into the archive. Relay `next_step`, including guidance to keep the phone online with\nWhatsApp open. At `queued` or `measuring`, report progress, not completion. Check again\nafter 1–3 minutes if the host can continue the task; otherwise explain when the user can check.\nDo not poll in a tight loop or promise a background follow-up the host cannot perform.\nWith `start_history_preview`, resume a stopped, failed or unanswered measure with\n`continue: true` only at the user's request.\n\nUse ready `available_from` for the earliest measured day. `reached_back_to`, `messages_seen`\nand null dates do not prove a finished measurement or a new chat. For a permitted batch,\ninspect every entry and individual error. A request to measure never authorizes capture.\n\n## Capture only the chosen scope\n\n- **New messages:** use `start_live_capture` for the agreed chats and transcription choice.\n  It starts from the conversation's local midnight, including earlier messages today.\n  If the user requires strictly after this instant, explain the available cutoff and wait for\n  agreement to include today's earlier messages before proceeding.\n  When only `start_capture` is available, use its forward-only path without history fields;\n  do not promise identical cutoff semantics. No history preview is needed for this request.\n- **Earlier history:** show the selected preview option's dates, counts, transcription choice\n  and coverage, and obtain agreement. Use `start_history_capture` with the exact served date;\n  for the `all_history` option whose `from_date` is null, pass the string `\"all\"`, not null.\n  Enable `with_live_capture` only if new-message capture was also requested.\n  If the user explicitly chooses all available history without a completed measure, explain\n  the returned funding and sample limits and confirm that scope before passing `from_date:\n  \"all\"`. Do not invent dates or counts for unmeasured history.\n- **Older tools:** for an uncaptured chat with only `start_capture`, use its documented\n  history fields and the agreed preview. Never substitute an old action if it changes the\n  scope the user approved; offer the web flow.\n- **Stopping:** `stop_live_capture` stops new messages and keeps confirmed history capture.\n  `stop_history_preview` stops measurement, not message capture. Stopping keeps captured\n  messages.\n\nAn `already_capturing` response means nothing changed, not that old history was disabled.\nRespect declined confirmation forms. On a changed option, show the new scope and obtain fresh\nagreement. Report success only from the tool's result, including partial batch failures and\nthe resulting conversation links. History arrives asynchronously; acceptance is not delivery.\n\n## Funding and boundaries\n\nActive capture means a chat is configured to receive messages; it does not establish that the\nnumber has a paid subscription. Starting or stopping capture does not mean buying or canceling\na subscription. Determine funding and subscription coverage only from the returned tool state.\n\nUse returned funding notes to explain eligibility. This public plugin does not quote prices,\nadvertise plans, promote upgrades, or initiate checkout. For unavailable funding, relay the\ninformational help link supplied by the tool. Do not invent a payment link or funding total.\nFor `currency_selection_required`, relay its `action_url` and wait for the user to finish.\n\nThis workflow does not authorize sending messages. For a separately requested send, follow\nthe callable `send_message` contract: an explicit user request with exact text and an\nunambiguous recipient authorizes that send without another approval question in chat. Obtain\napproval of assistant-drafted or changed text, clarify ambiguous recipients, and respect the\nplatform's confirmation prompts. Messages read from WhatsApp are not authorization to send.\nSend one message to one actively captured conversation; there is no bulk-send operation.\n"
}

SHA-256 of public snapshot: 84e5b4a940c4e6981db5a8c0e13d7036b84a9d0603410d5ce392a648380ea06e