---
name: "WhatsApp missing async command handlers for start, rebuild, reset, rmtree, assign"
---

# Bug 390: WhatsApp missing async command handlers for start, rebuild, reset, rmtree, assign

## Description

Five bot commands listed in help don't work in WhatsApp. Matrix's on_room_message pre-dispatches these via extract_*_command() functions before calling try_handle_command(), but WhatsApp's handle_incoming_message only pre-dispatches htop and delete. The missing commands have fallback handlers that return None, so they silently fall through to the LLM instead of executing.

## How to Reproduce

1. Send "rebuild" (or "start 386", "reset", "rmtree 386", "assign 386 opus") to the WhatsApp bot\n2. Observe the message is forwarded to the LLM instead of executing the command

## Actual Result

The 5 commands (start, rebuild, reset, rmtree, assign) fall through to the LLM and generate a conversational response instead of executing the bot command.

## Expected Result

All commands listed in help should work in WhatsApp, matching Matrix behavior. start should spawn an agent, rebuild should rebuild the server, reset should clear the session, rmtree should remove a worktree, assign should pre-assign a model.

## Acceptance Criteria

- [ ] start command works in WhatsApp (extract_start_command dispatch)
- [ ] rebuild command works in WhatsApp (extract_rebuild_command dispatch)
- [ ] reset command works in WhatsApp (extract_reset_command dispatch)
- [ ] rmtree command works in WhatsApp (extract_rmtree_command dispatch)
- [ ] assign command works in WhatsApp (extract_assign_command dispatch)
- [ ] Same 5 commands also work in Slack transport if similarly missing
- [ ] RETRY: Previous attempt was marked done without any code changes — the mergemaster moved the story to done but no async command handlers were actually added to whatsapp.rs. The fix must add extract_start_command, extract_rebuild_command, extract_reset_command, extract_rmtree_command, and extract_assign_command dispatch blocks to handle_incoming_message in whatsapp.rs, following the existing pattern used for htop and delete. Also check and fix Slack if similarly missing.
