MR
Mayur Rathi
@gokapso
⭐ 6 GitHub stars

Automate Whatsapp

Automate Whatsapp is an productivity AI skill with a core value of Build WhatsApp automations with Kapso workflows: configure WhatsApp triggers, edit workflow graphs, manage executions, deploy functions, and use databases/integrations for state. It helps developers solve real-world problems in the productivity domain, boosting efficiency, automating repetitive tasks, and optimizing workflows.

Build WhatsApp automations with Kapso workflows: configure WhatsApp triggers, edit workflow graphs, manage executions, deploy functions, and use databases/integrations for state. Use when automatin...

Last verified on: 2026-07-07

Quick Facts

Category productivity
Works With Claude
Source mayurrathi/awesome-agent-skills
Stars ⭐ 6
Last Verified 2026-07-07
Risk Level Low
mkdir -p ./skills/automate-whatsapp && curl -sfL https://raw.githubusercontent.com/mayurrathi/awesome-agent-skills/main/skills/automate-whatsapp/SKILL.md -o ./skills/automate-whatsapp/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# Automate WhatsApp


When to use


Use this skill to build and run WhatsApp automations: workflow CRUD, graph edits, triggers, executions, function management, app integrations, and D1 database operations.


Setup


Env vars:

- `KAPSO_API_BASE_URL` (host only, no `/platform/v1`)

- `KAPSO_API_KEY`


How to


Edit a workflow graph


1. Fetch graph: `node scripts/get-graph.js <workflow_id>` (note the `lock_version`)

2. Edit the JSON (see graph rules below)

3. Validate: `node scripts/validate-graph.js --definition-file <path>`

4. Update: `node scripts/update-graph.js <workflow_id> --expected-lock-version <n> --definition-file <path>`

5. Re-fetch to confirm


For small edits, use `edit-graph.js` with `--old-file` and `--new-file` instead.


If you get a lock_version conflict: re-fetch, re-apply changes, retry with new lock_version.


Manage triggers


1. List: `node scripts/list-triggers.js <workflow_id>`

2. Create: `node scripts/create-trigger.js <workflow_id> --trigger-type <type> --phone-number-id <id>`

3. Toggle: `node scripts/update-trigger.js --trigger-id <id> --active true|false`

4. Delete: `node scripts/delete-trigger.js --trigger-id <id>`


For inbound_message triggers, first run `node scripts/list-whatsapp-phone-numbers.js` to get `phone_number_id`.


Debug executions


1. List: `node scripts/list-executions.js <workflow_id>`

2. Inspect: `node scripts/get-execution.js <execution-id>`

3. Get value: `node scripts/get-context-value.js <execution-id> --variable-path vars.foo`

4. Events: `node scripts/list-execution-events.js <execution-id>`


Create and deploy a function


1. Write code with handler signature (see function rules below)

2. Create: `node scripts/create-function.js --name <name> --code-file <path>`

3. Deploy: `node scripts/deploy-function.js --function-id <id>`

4. Verify: `node scripts/get-function.js --function-id <id>`


Set up agent node with app integrations


1. Find model: `node scripts/list-provider-models.js`

2. Find account: `node scripts/list-accounts.js --app-slug <slug>` (use `pipedream_account_id`)

3. Find action: `node scripts/search-actions.js --query <word> --app-slug <slug>` (action_id = key)

4. Create integration: `node scripts/create-integration.js --action-id <id> --app-slug <slug> --account-id <id> --configured-props <json>`

5. Add tools to agent node via `flow_agent_app_integration_tools`


Database CRUD


1. List tables: `node scripts/list-tables.js`

2. Query: `node scripts/query-rows.js --table <name> --filters <json>`

3. Create/update/delete with row scripts


Graph rules


- Exactly one start node with `id` = `start`

- Never change existing node IDs

- Use `{node_type}_{timestamp_ms}` for new node IDs

- Non-decide nodes have 0 or 1 outgoing `next` edge

- Decide edge labels must match `conditions[].label`

- Edge keys are `source`/`target`/`label` (not `from`/`to`)


For full schema details, see `references/graph-contract.md`.


Function rules


js
async function handler(request, env) {
  // Parse input
  const body = await request.json();
  // Use env.KV and env.DB as needed
  return new Response(JSON.stringify({ result: "ok" }));
}

- Do NOT use `export`, `export default`, or arrow functions

- Return a `Response` object


Execution context


Always use this structure:

- `vars` - user-defined variables

- `system` - system variables

- `context` - channel data

- `metadata` - request metadata


Scripts


Workflows


| Script | Purpose |

|--------|---------|

| `list-workflows.js` | List workflows (metadata only) |

| `get-workflow.js` | Get workflow metadata |

| `create-workflow.js` | Create a workflow |

| `update-workflow-settings.js` | Update workflow settings |


Graph


| Script | Purpose |

|--------|---------|

| `get-graph.js` | Get workflow graph + lock_version |

| `edit-graph.js` | Patch graph via string replacement |

| `update-graph.js` | Replace entire graph |

| `validate-graph.js` | Validate graph structure locally |


Triggers


| Script | Purpose |

|-

🎯 Best For

  • UI designers
  • Product designers
  • Claude users
  • Knowledge workers
  • Remote teams

💡 Use Cases

  • Generating component mockups
  • Creating design system tokens
  • Using Automate Whatsapp in daily workflow
  • Automating repetitive productivity tasks

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply Automate Whatsapp to Your Work

    Provide context for your task — paste source material, describe your audience, or share existing work to guide the AI.

  4. 4

    Review and Refine

    Edit the AI output for accuracy, tone, and completeness. Add human insight where the AI lacks context.

❓ Frequently Asked Questions

Does this work with Figma?

Some design skills integrate with Figma plugins. Check the Works With section for supported tools.

How do I install Automate Whatsapp?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/automate-whatsapp/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Skipping usability testing

AI-generated designs should be validated with real users before development.

Not reading the full skill

Skills contain important context and edge cases beyond the quick start.

🔗 Related Skills