Features
Platform modules
Bridges, IoT, fleet, game, RCS, voice clone, commerce, and federation as they ship today.
These sit on the same Worker as chat. Set secrets in .dev.vars or the hosted console.
Hosted publish-config
Without forking the Worker, PUT /admin/projects/:id/publish-config (CLI pnpm fluxy:deploy) overlays fluxy.config: deny substrings, guest_can_publish, iotAutoAgentId, and rooms (anonymous, per-room deny, capabilities, kv/counter extension slots). When that agent id is set, HTTP ingest can invoke the room agent without an @mention. Self-host: keep callbacks in fluxy.config.ts; hosted never evals tenant JS.
Omnichannel adapters
Console path: Bridges. Each channel is a row in channel_configs (OAuth or bot token, webhook URL, signing secret). Slack, Discord, Telegram, Teams, WhatsApp, and the others in cross-platform.js share that table.
- Create the vendor app (Slack app, Discord bot, …).
- Paste tokens and the signing secret in Bridges.
- Point the vendor webhook at your Worker.
The web channel needs no vendor app. Structured replies: Channel forms.
IoT and fleet
Devices POST JSON. The room fans out iot.reading or fleet.gps_update.
- Register and ingest: IoT
- GPS: Fleet
- Health:
GET /iot/devices/:id/healthscores recent readings (mean, slope, alerts). - Geofence: Worker REST
GET/POST /fleet/geofencesviaclient.listFleetGeofences()/createFleetGeofence(). There is no separate “location SDK” package. The in-memory helpers oncreateFluxyIoT()are local rule helpers, not the fleet API.
Game
createWorkerFluxyGameClient covers matchmake, startMatch, submitInput (game.tick), endMatch, D1 GET /games/leaderboard, checkpoints, NPC, quests, tournaments. Checkpoint federate copies save state between rooms (and to a peer Worker if you set the federation URL). Scaffold: --example game-tick. Two players to start a match.
RCS
Paid Twilio or MessageBird account. Set RCS_OUTBOUND_URL, RCS_API_KEY, and RCS_WEBHOOK_SECRET. Inbound webhooks must include an HMAC of the body (X-RCS-Signature hex SHA-256). Forms: Channel forms.
Voice clone and translation
Workers AI covers STT and TTS on /voice-ai/transcribe and /voice-ai/speak. Clone-quality output is POST /voice-ai/clone-translate with { audioBase64, targetLang, voiceId }. The Worker forwards to VOICE_CLONE_URL (your GPU or VPS). Same member JWT as the rest of voice AI.
Agent commerce
When a cross-org commitment reaches committed, the Worker writes a settlement. Default provider is manual (both sides confirm, you mark settled). Set X402_FACILITATOR_URL to post an x402 payment request and store external_ref. AP2 mandates are not a second protocol here: they ride the same settlement row.
Federation
One FluxyChat deployment is the product: many orgs in /cross-org rooms, audit chain, human gates. To span two Workers, set FLUXY_FEDERATION_PEER_URL plus FLUXY_FEDERATION_SECRET and use game checkpoint federate or the cross-org peer forward. Both sides must share the secret.