Skip to content
cccskills
FreePublished on GitHub

add-reactions

Add WhatsApp emoji reaction support — receive, send, store, and search reactions.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md2.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Add Reactions

This skill adds emoji reaction support to NanoClaw's WhatsApp channel: receive and store reactions, send reactions from the container agent via MCP tool, and query reaction history from SQLite.

Phase 1: Pre-flight

Check if already applied

Check if src/status-tracker.ts exists:

test -f src/status-tracker.ts && echo "Already applied" || echo "Not applied"

If already applied, skip to Phase 3 (Verify).

Phase 2: Apply Code Changes

Ensure WhatsApp fork remote

git remote -v

If whatsapp is missing, add it:

git remote add whatsapp https://github.com/qwibitai/nanoclaw-whatsapp.git

Merge the skill branch

git fetch whatsapp skill/reactions
git merge whatsapp/skill/reactions || {
  git checkout --theirs package-lock.json
  git add package-lock.json
  git merge --continue
}

This adds:

  • scripts/migrate-reactions.ts (database migration for reactions table with composite PK and indexes)
  • src/status-tracker.ts (forward-only emoji state machine for message lifecycle signaling, with persistence and retry)
  • src/status-tracker.test.ts (unit tests for StatusTracker)
  • container/skills/reactions/SKILL.md (agent-facing documentation for the react_to_message MCP tool)
  • Reaction support in src/db.ts, src/channels/whatsapp.ts, src/types.ts, src/ipc.ts, src/index.ts, src/group-queue.ts, and container/agent-runner/src/ipc-mcp-stdio.ts

Run database migration

npx tsx scripts/migrate-reactions.ts

Validate code changes

npm test
npm run build

All tests must pass and build must be clean before proceeding.

Phase 3: Verify

Build and restart

npm run build

Linux:

systemctl --user restart nanoclaw

macOS:

launchctl kickstart -k gui/$(id -u)/com.nanoclaw

Test receiving reactions

  1. Send a message from your phone
  2. React to it with an emoji on WhatsApp
  3. Check the database:
sqlite3 store/messages.db "SELECT * FROM reactions ORDER BY timestamp DESC LIMIT 5;"

Test sending reactions

Ask the agent to react to a message via the react_to_message MCP tool. Check your phone — the reaction should appear on the message.

Troubleshooting

Reactions not appearing in database

  • Check NanoClaw logs for Failed to process reaction errors
  • Verify the chat is registered
  • Confirm the service is running

Migration fails

  • Ensure store/messages.db exists and is accessible
  • If "table reactions already exists", the migration already ran — skip it

Agent can't send reactions

  • Check IPC logs for Unauthorized IPC reaction attempt blocked — the agent can only react in its own group's chat
  • Verify WhatsApp is connected: check logs for connection status

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Add /compact command for manual context compaction. Solves context rot in long sessions by forwarding the SDK's built-in /compact slash command. Main-group or trusted sender only.

The English summary is being prepared. Showing the original description.

nanocoai/nanoclaw-gmail2Updated Apr 3, 2026

Add Discord bot channel integration to NanoClaw.

The English summary is being prepared. Showing the original description.

nanocoai/nanoclaw-gmail2Updated Apr 3, 2026

Add Emacs as a channel. Opens an interactive chat buffer and org-mode integration so you can talk to NanoClaw from within Emacs (Doom, Spacemacs, or vanilla). Uses a local HTTP bridge — no bot token or external service needed.

The English summary is being prepared. Showing the original description.

nanocoai/nanoclaw-gmail2Updated Apr 3, 2026

Add Gmail integration to NanoClaw. Can be configured as a tool (agent reads/sends emails when triggered from WhatsApp) or as a full channel (emails can trigger the agent, schedule tasks, and receive replies). Guides through GCP OAuth setup and implements the integration.

The English summary is being prepared. Showing the original description.

nanocoai/nanoclaw-gmail2Updated Apr 3, 2026

Add image vision to NanoClaw agents. Resizes and processes WhatsApp image attachments, then sends them to Claude as multimodal content blocks.

The English summary is being prepared. Showing the original description.

nanocoai/nanoclaw-gmail2Updated Apr 3, 2026

Add a macOS menu bar status indicator for NanoClaw. Shows a bolt icon with a green/red dot indicating whether NanoClaw is running, with Start, Stop, and Restart controls. macOS only.

The English summary is being prepared. Showing the original description.

nanocoai/nanoclaw-gmail2Updated Apr 3, 2026

See all skills by nanocoai

Report a problem with this skill