Prerequisites
- BeeAI Platform installed (Quickstart)
- uv package manager (should be already installed if you followed the quickstart)
Start From Template
1
Use the official starter template
- Clone directly
- Use as a GitHub template
2
Test the Template Agent
Enable auto-reload during development: Add
watchfiles to automatically restart your server when code changes:3
Run your agent
In another terminal:
Implement Your Agent Logic
Navigate to src/beeai_agents/agent.py and replace the example with your agent logic. The starter example is minimal and intended for demonstration purposes only:1
Start a server
An agent is essentially an HTTP server. Create a
Server instance and run it using run().2
Mark your agent function
Add the
@server.agent decorator to your function so the platform recognizes it as an agent.3
Name your agent
The function name becomes the agent’s name in the platform.
4
Describe your agent
Write a docstring for the function; it will be extracted and shown as the agent’s description in the platform.
5
Understand the function arguments
- First argument: an A2A
Message. - Second argument: a
Contextobject with run details (e.g.,task_id,context_id).
6
Extract text from Message
Use
get_message_text() to quickly extract the text content from a Message.7
Make it an async generator
The agent function should be asynchronous and yield results as they’re ready.
8
Send responses easily
- Yield an
AgentMessage(a handy wrapper around A2A Message) for convenience. - Or yield a plain
str, which will be automatically converted into an A2A Message.
Starting from Scratch
If you prefer not to use the starter repo:- Create an empty Python project
- Install
beeai-sdk - Copy the example code above
Next Steps
After building your agent, you can:- Provide more GUI configuration via
AgentDetail - Leverage LLM Configuration
- Explore Messages for communication between agents and clients
- Build beautiful GUIs for your agents with GUI components
- Request structured inputs with forms
- Work with files