Skip to content

Overview

The Syncopate Bot SDK lets you build programmable bots that live inside Syncopate workspaces. Bots can listen to messages, respond to commands, manage channels, and automate workflows — all through a familiar, decorator-based API.

  • Respond to messages — react to keywords, patterns, or mentions
  • Register commands — define !ping, !help, !deploy or any custom command
  • Manage channels — create, update, and archive channels programmatically
  • Look up users — fetch user profiles, check roles, send DMs
  • Automate workflows — connect to external APIs, trigger actions on events
  • Real-time events — receive typing indicators, member joins/leaves, channel updates via SSE
PythonTypeScript
Packagesyncopate@syncopate/sdk
StyleFunctional decorators (@bot.event)Class decorators (@OnEvent)
RuntimePython 3.11+Node.js 18+
Gatewayaiohttp SSEeventsource SSE

Both SDKs share the same architecture and feature set. Choose whichever fits your stack.

┌─────────────────────────────────────┐
│ Bot / Client │ ← Developer-facing API
├─────────────────────────────────────┤
│ Decorators / Commands / Context │ ← @event, @command()
├───────────────────┬─────────────────┤
│ REST Client │ SSE Gateway │ ← HTTP + real-time events
├───────────────────┴─────────────────┤
│ Models │ ← User, Channel, Message, etc.
└─────────────────────────────────────┘