Most agent stacks fail the same way: you build a “habit agent”, then a “todo agent”, then a “Slack agent”, and each one develops its own logic and state. After a month, behavior drifts and you can’t tell which system is the source of truth.
Buffy’s architecture is designed to prevent that: one behavior core, many adapters.
This post explains the architecture boundary between OpenClaw workflows and Buffy’s behavior core, and why it’s the simplest way to scale agents across channels without duplicating product logic.
The core idea: adapters are replaceable, the behavior core is not
OpenClaw is great at composing agent workflows. But you don’t want OpenClaw to become the place where long-lived behavior state and scheduling logic lives.
Instead:
- OpenClaw: orchestration and UX.
- Buffy core: activities + reminders + memory + event history.
- Adapters: ChatGPT/Telegram/Slack/internal tools.
Reference flow
flowchart TD
User[User] --> OpenClaw[OpenClaw_Workflow]
OpenClaw --> Adapter[Interface_Adapter]
Adapter --> BuffyAPI[Buffy_API]
BuffyAPI --> Core[Behavior_Core]
Core --> Data[Postgres_RabbitMQ_Memory]
Core --> Reply[Reply_Payload]
Reply --> Adapter
Adapter --> User
Core --> Worker[Reminder_Worker_Scheduler]
Worker --> Channels[Telegram_Slack_ChatGPT_Internal]
Channels --> User
Why this boundary matters
1. Consistency across agents
If the behavior logic lives in the core, every surface behaves the same:
- “Create habit” means the same thing in ChatGPT and Slack.
- “Snooze 20m” updates the same activity and history everywhere.
- Reminders follow the same rules regardless of channel.
2. Multi-channel becomes an integration problem
When you add a new channel:
- You build a thin adapter that normalizes messages.
- You do not rewrite the habit/task logic.
That’s the pattern described in:
- Building Multi-Channel Bots on Top of One Behavior Core
- Multi-Channel Habit Tracking Across ChatGPT, Telegram and Slack
3. Long-term memory stays coherent
If memory is managed in one place (episodic logs + semantic patterns), you can build features like:
- “notice that evenings slip after late meetings”
- “shift reminders to mornings”
…without each agent inventing its own interpretation of the past.
For the memory model, see:
Where to start
If you’re building or evaluating OpenClaw agent workflows, start with the product-level entry points:
Then move to the developer guide:
Where to go next
- Next step: start with one habit or routine, then pick where it should reach you (ChatGPT/Telegram/Slack): How to Get Started With Buffy Agent in 5 Minutes