smoke-test
Use after making changes to the amux server or dashboard to verify the dashboard and APIs are working correctly
mkdir -p ~/.claude/commands && curl -fsSL https://raw.githubusercontent.com/mixpeek/amux/HEAD/.claude/commands/smoke-test.md -o ~/.claude/commands/smoke-test.mdsmoke-test.md
# /smoke-test — Product Verification
Quick health check of the amux server and dashboard after code changes.
The user's request is: **$ARGUMENTS**
## Quick (default)
Run these checks and report pass/fail for each:
```bash
# 1. Server is up
curl -sk -o /dev/null -w '%{http_code}' $AMUX_URL/ | grep -q 200
# 2. Dashboard HTML is valid (contains expected markers)
curl -sk $AMUX_URL/ | grep -q 'id="app"'
# 3. Sessions API responds
curl -sk $AMUX_URL/api/sessions | python3 -c "import json,sys; d=json.load(sys.stdin); print(f'{len(d)} sessions')"
# 4. Board API responds
curl -sk $AMUX_URL/api/board | python3 -c "import json,sys; d=json.load(sys.stdin); print(f'{len(d)} items')"
# 5. SSE endpoint connects (grab first event within 15s)
timeout 15 curl -sk -N $AMUX_URL/api/events 2>/dev/null | head -5
# 6. Workspace compiles + client JS parses
cargo check --workspace --quiet && echo "cargo check ok"
node --check crates/amux-dashboard/static/app.js && echo "client JS ok"
```
## Full
Run all quick checks plus:
```bash
# 7. Notes API
curl -sk $AMUX_URL/api/notes | python3 -c "import json,sys; json.load(sys.stdin); print('notes ok')"
# 8. Schedules API
curl -sk $AMUX_URL/api/schedules | python3 -c "import json,sys; json.load(sys.stdin); print('schedules ok')"
# 9. CRM API
curl -sk $AMUX_URL/api/crm/contacts | python3 -c "import json,sys; json.load(sys.stdin); print('crm ok')"
# 10. Email inbox API
curl -sk "$AMUX_URL/api/email/inbox?count=1" | python3 -c "import json,sys; json.load(sys.stdin); print('email ok')"
# 11. Calendar feed
curl -sk $AMUX_URL/api/calendar.ics | head -1 | grep -q 'BEGIN:VCALENDAR' && echo "ical ok"
```
Report a summary table: check name, status (pass/fail), and any error details for failures.
## Gotchas
- Always use `curl -sk` — self-signed TLS cert.
- The SSE check may hang if the server is down — the `timeout` command handles this.
- A syntax check pass does not mean the server reloaded — it auto-restarts on file save, but if the save was recent, give it 1-2 seconds.Pick up an open issue from the amux issue tracker, mark it doing, work it, and mark it done.
Use when the user says "add to board", "create a task", or wants to track a todo on the amux kanban board
Use when you need to interact with the amux system — manage board tasks, check sessions, send emails, automate browsers, or work with CRM contacts
Use when the user asks to interact with a web page, take a screenshot of a site, click or type in Chrome, scrape content, or debug a web UI. Connects to real Chrome tabs with existing logins.
Scaffold a closed orchestrator loop — creates the mission note, state/constraints notes, and a scheduler entry from the v2 template.
Use when the user needs to log into a website for browser automation, save auth cookies, or sync browser profiles to cloud
Use when you need to test the amux dashboard UI, investigate a visual bug, or verify a frontend change works correctly
Use when the user wants to record a video of a browser task, create a screen recording, or produce an MP4 demo