average-processor-75195
06/06/2026, 6:12 PMlimited-student-10747
06/06/2026, 6:41 PMlimited-student-10747
06/06/2026, 6:44 PMcalm-artist-7206
06/06/2026, 7:49 PMbland-bear-604
06/06/2026, 7:53 PMnpm run dev in agent-canvas (the ingress proxy binds to all interfaces by default)
• Open http://<tailscale-ip>:8000/ from your phone browser
• One gotcha: if you previously ran agent-canvas on the same browser, clear localStorage for that site first — the old backend registry will point at 127.0.0.1 which is localhost on the phone, not the Mac. Edit the backend URL to use the Tailscale IP instead.
ngrok + OAuth is probably more robust for anything internet-facing. Tailscale is simpler for personal use since nothing is exposed to the public internet.
Beyond the web UI — messaging channels:
We also talk to the agent-server directly from messaging apps:
• Slack — a Socket Mode Slack app that receives messages and dispatches to the agent-server REST API. Architecture: https://enyst.github.io/smolpaws-slack.html
• WhatsApp — via Baileys (unofficial WhatsApp Web API). Messages come in, get routed to agent-server conversations, responses come back.
• Discord — similar pattern, bot receives messages, forwards to agent-server.
All of these use the same agent-server REST API (POST /api/conversations, POST /api/conversations/{id}/events, SSE for streaming responses). The messaging app is just a thin adapter that translates platform events to/from the API.
So depending on what you want:
• Quick visual access from phone → Tailscale + agent-canvas in browser
• Chat-style interaction → build a Slack/Discord/WhatsApp connector that talks to the agent-server APIcalm-artist-7206
06/06/2026, 7:57 PMaverage-processor-75195
06/06/2026, 8:06 PMbland-bear-604
06/06/2026, 8:08 PMcalm-artist-7206
06/06/2026, 8:16 PMbland-bear-604
06/06/2026, 8:25 PMgentle-apple-32922
06/08/2026, 2:30 PM