Demo: Startup Pitch Room
A multi-agent chat room where AI agents roleplay as startup team members - founder, engineer, and investor - discussing and debating startup ideas.
Demo: Startup Pitch Room
A multi-agent chat room where AI agents roleplay as startup team members discussing and debating ideas. This demo showcases how multiple agents can collaborate in a shared channel, each with distinct personalities and perspectives.
Important: Please stop your network if you are running them.
What You'll Learn
- Running multiple agents simultaneously
- Agent personality design through prompts
- Preventing agent-to-agent infinite loops
- Channel-based multi-agent coordination
Architecture
┌─────────────────────────────────────────────────┐
│ pitch-room channel │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ founder │ │ engineer │ │ investor │ │
│ │(visionary│ │(technical│ │ (VC │ │
│ │ ideas) │ │feasibility│ │perspective│ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │ │ │ │
│ └──────────────┼──────────────┘ │
│ ▼ │
│ messaging mod (channels) │
└─────────────────────────────────────────────────┘Agents
| Agent | Role | Personality |
|---|---|---|
| founder | Visionary Entrepreneur | Pitches ideas, drives discussion, passionate and optimistic |
| engineer | Technical Co-founder | Evaluates feasibility, asks about implementation details |
| investor | VC Perspective | Questions market fit, ROI, competitive landscape |
Prerequisites
- OpenAgents installed (
pip install openagents) - An OpenAI API key
# Optional: Set the OpenAI base URL
export OPENAI_BASE_URL="your-base-url-here"
# Must: Set the OpenAI API key
export OPENAI_API_KEY="your-key-here"Quick Start
You'll need 4 terminal windows for this demo.
Terminal 1: Start the Network
openagents network start demos/01_startup_pitch_room/Terminal 2: Start Founder Agent
openagents agent start demos/01_startup_pitch_room/agents/founder.yamlTerminal 3: Start Engineer Agent
openagents agent start demos/01_startup_pitch_room/agents/engineer.yamlTerminal 4: Start Investor Agent
openagents agent start demos/01_startup_pitch_room/agents/investor.yamlConnect with Studio
Open Studio at http://localhost:8050 and connect to localhost:8700.
If you have stopped OpenAgents Studio, you can start it again with
openagents studio -sTry It Out
Post a startup idea to the pitch-room channel:
"I have an idea for a startup that uses AI to help small restaurants optimize their food ordering and reduce waste."
Watch as the three agents engage with your idea from their unique perspectives!

Example Interactions
Founder's response style:
"I've been thinking about a problem that affects millions of small restaurant owners..."
Engineer's response style:
"From a technical standpoint, we'd need to integrate with existing POS systems..."
Investor's response style:
"What's the TAM here? How do you plan to acquire customers cost-effectively?"
Configuration Deep Dive
Network Configuration
The network configuration is defined in the network.yaml file. You can modify the network configuration to fit your needs.
# demos/01_startup_pitch_room/network.yaml
network:
name: "StartupPitchRoom"
mods:
- name: "openagents.mods.workspace.messaging"
enabled: true
config:
default_channels:
- name: "pitch-room"
description: "Main room for startup pitch discussions"
- name: "ideas"
description: "Channel for sharing new startup ideas"Agent Configuration (Founder Example)
# demos/01_startup_pitch_room/agents/founder.yaml
type: "openagents.agents.collaborator_agent.CollaboratorAgent"
agent_id: "founder"
config:
model_name: "gpt-4o-mini"
instruction: |
You are the FOUNDER - a passionate, visionary entrepreneur.
YOUR PERSONALITY:
- Enthusiastic and optimistic about new ideas
- Driven by solving big problems
- Creative thinker who sees opportunities others miss
- Persuasive communicator
RULES:
1. Keep responses under 50 words
2. Use send_channel_message (NOT reply_channel_message)
3. ONLY respond to messages from humans
4. If the sender is "founder", "engineer", or "investor",
call finish tool immediately - do NOT respond to other agents
react_to_all_messages: true
reaction_delay: "random(0, 3)"Key Pattern: Preventing Infinite Loops
Notice the critical rule in the agent instructions:
RULES:
3. ONLY respond to messages from humans
4. If the sender is "founder", "engineer", or "investor",
call finish tool immediatelyThis prevents agents from responding to each other endlessly. Without this rule, one agent's response would trigger all other agents, creating an infinite conversation loop.
Alternative Approaches
You can also use triggers instead of react_to_all_messages for more control:
react_to_all_messages: false
triggers:
- event: "thread.channel_message.notification"
filter:
sender_type: "human" # Only react to human messagesCustomization Ideas
Add More Team Members
Create additional agents with different perspectives:
# agents/marketer.yaml
agent_id: "marketer"
config:
instruction: |
You are the MARKETER - focused on go-to-market strategy.
- Think about branding, positioning, user acquisition
- Ask about target demographics and messaging
- Consider viral growth and community buildingChange the Domain
Modify the channel names and agent personas for different scenarios:
- Tech Review Panel: critic, fan, analyst
- Product Design Team: designer, PM, researcher
- Investment Committee: analyst, risk manager, portfolio manager
Troubleshooting
Agents Responding to Each Other
If agents get into a loop:
- Stop all agents (Ctrl+C)
- Verify the "don't respond to other agents" rule is in each agent's instructions
- Restart agents one by one
Agents Not Responding
- Check all agents are connected: Look for connection logs in each terminal
- Verify you're posting to
pitch-roomchannel (notgeneral) - Ensure your message is from a human user in Studio
What's Next?
- Tech News Stream - See agents with external tool access fetching real news
- Research Team - Learn router-based task delegation