import asyncio
from definable.agents import Agent
from definable.interfaces import (
TelegramInterface,
TelegramConfig,
DiscordInterface,
DiscordConfig,
SQLiteIdentityResolver,
serve,
)
from definable.memory import CognitiveMemory, SQLiteMemoryStore
from definable.models import OpenAIChat
memory = CognitiveMemory(store=SQLiteMemoryStore(db_path="./multi_memory.db"))
resolver = SQLiteIdentityResolver(db_path="./identity.db")
agent = Agent(
model=OpenAIChat(id="gpt-4o"),
instructions="You are a helpful multi-platform bot.",
memory=memory,
)
telegram = TelegramInterface(
agent=agent,
config=TelegramConfig(bot_token="telegram-token"),
)
discord = DiscordInterface(
agent=agent,
config=DiscordConfig(bot_token="discord-token"),
)
asyncio.run(serve(telegram, discord, name="my-bot", identity_resolver=resolver))