A multi-agent AI system for creating team logos, powered by collaborative AI agents communicating via Slack.
The Agent Team Logo Creator is a collaborative multi-agent system designed to transform the creative process of logo development into an orchestrated, intelligent workflow. The system comprises four specialized AI agents, each embodying a distinct role within a traditional design team: Nova serves as the Project Manager, coordinating tasks and ensuring alignment with client requirements; Pixel brings creative vision as the UX Designer, crafting visual concepts and iterating on aesthetic direction; Bolt operates as the Developer, translating designs into technical implementations and managing the codebase; and Scout functions as the Quality Assurance specialist, rigorously testing outputs and validating that deliverables meet established standards. These agents communicate through a shared Slack workspace, mimicking the natural collaboration patterns of human teams while leveraging the speed and consistency of AI-driven execution.
| Agent | Role | Responsibilities |
|---|---|---|
| Nova π | Product Manager | PRD interviews with Babak/Arash, GitHub issues/PRs, task coordination, code reviews |
| Pixel π¨ | UX Designer | High-level UX designs as images, wireframes, visual mockups |
| Bolt β‘ | Full-Stack Developer | Frontend & backend implementation, code commits |
| Scout π | QA Engineer | Testing, bug reports, quality assurance |
Babak and Arash - Product Owners
- Provide product vision and requirements
- Participate in PRD interviews with Nova
- Review and approve key decisions
- Available in #logo-creator Slack channel
- All agents take orders from Babak or Arash
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β ORCHESTRATOR β
β (orchestrator.py) β
β β
β Runs Claude Code 4 times per sync cycle, once per agent β
β Each agent's prompt is built from their spec MD file β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β TOOLS β
β β
β βββββββββββββββββββ βββββββββββββββ βββββββββββββββ β
β βslack_interface β β Image Gen β β Internet β β
β β (all agents) β β(Pixel only) β β Search β β
β βββββββββββββββββββ βββββββββββββββ βββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AGENT SPECS (Prompts) β
β agent-docs/*.md β
β β
β NOVA_SPEC.md β PIXEL_SPEC.md β BOLT_SPEC.md β SCOUT_SPEC.md β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SLACK CHANNEL β
β #logo-creator β
β β
β All agents + Babak/Arash communicate here β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β MEMORY FILES β
β memory/*.md β
β β
β Each agent persists context between sessions β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Agents have access to these tools:
| Tool | Available To | Purpose |
|---|---|---|
| slack_interface.py | All agents | Communication in #logo-creator |
| Image Generation | Pixel | Create UI mockups, wireframes, designs |
| Internet Search | All agents | Research, documentation, best practices |
| GitHub CLI | All agents | Code commits, issues, PRs |
All agent communication uses the slack_interface.py CLI tool:
# First-time setup (required)
python slack_interface.py config --set-channel "#logo-creator"
python slack_interface.py config --set-agent nova
# Send messages as configured agent
python slack_interface.py say "Sprint planning at 2pm!"
# Read messages from the channel
python slack_interface.py read # Last 50 messages
python slack_interface.py read -l 100 # Last 100 messages
# Upload files
python slack_interface.py upload design.png --title "New Design"
# Show configuration
python slack_interface.py configSee agent-docs/SLACK_INTERFACE.md for complete documentation.
The orchestrator runs Claude Code 4 times per sync cycle:
- Nova (PM) - Reads spec from
NOVA_SPEC.md, checks Slack, manages project - Pixel (UX) - Reads spec from
PIXEL_SPEC.md, creates designs - Bolt (Dev) - Reads spec from
BOLT_SPEC.md, writes code - Scout (QA) - Reads spec from
SCOUT_SPEC.md, tests and reports bugs
Each agent:
- Gets their behavior/personality from their spec MD file
- Reads their memory file for previous context
- Communicates via Slack #logo-creator channel using
slack_interface.py - Updates their memory file after work
- Commits work to GitHub
Before development begins:
- Nova interviews Babak/Arash - Gathers requirements through structured questions in Slack
- Nova drafts PRD - Documents vision, features, and acceptance criteria
- Babak/Arash review & approve - PRD finalized before development begins
- Wake Up - Orchestrator triggers all agents
- Sync Meeting - Agents post status updates to #logo-creator
- Work Phase - Agents execute their tasks
- Commit & Document - Agents update memory and push to GitHub
agent-team-logo-creator/
βββ README.md
βββ requirements.txt
βββ slack_interface.py # Slack communication CLI tool
β
βββ agent-docs/ # Agent specifications (prompts)
β βββ ARCHITECTURE.md
β βββ AGENT_PROTOCOL.md
β βββ ONBOARDING.md # Agent onboarding guide
β βββ SLACK_INTERFACE.md # Slack tool documentation
β βββ NOVA_SPEC.md # Nova's behavior & personality
β βββ PIXEL_SPEC.md # Pixel's behavior & personality
β βββ BOLT_SPEC.md # Bolt's behavior & personality
β βββ SCOUT_SPEC.md # Scout's behavior & personality
β βββ PRD.md # Product Requirements (created by Nova)
β
βββ memory/ # Agent memory files
β βββ nova_memory.md
β βββ pixel_memory.md
β βββ bolt_memory.md
β βββ scout_memory.md
β
βββ avatars/ # Agent avatar images
β βββ nova.png
β βββ pixel.png
β βββ bolt.png
β βββ scout.png
β
βββ orchestrator.py # Main orchestrator
- Python 3.11+
- Claude Code CLI
- GitHub CLI (
gh) - Slack workspace with #logo-creator channel
- Bot token with required scopes (channels:history, chat:write, etc.)
When an agent wakes up for the first time, follow the Onboarding Guide:
- Read your agent specification - Understand your role and responsibilities
- Configure Slack - Set default channel and agent identity
- Test capabilities - Verify all tools work
- Check memory - Read context from previous sessions
ask tool to request clarification from the user.
See agent-docs/ONBOARDING.md for complete documentation.
# Install dependencies
pip install -r requirements.txt
# Configure Slack (required before use)
python slack_interface.py config --set-channel "#logo-creator"
python slack_interface.py config --set-agent nova
# Test Slack connection
python slack_interface.py scopes
python slack_interface.py read# Run all agents (Nova β Pixel β Bolt β Scout)
python orchestrator.py
# Run a specific agent
python orchestrator.py --agent Nova
python orchestrator.py --agent Pixel --task "Create homepage wireframe"
# List available agents
python orchestrator.py --listMIT License - NinjaTech AI
