A multi-agent AI system that collaboratively plans social media marketing campaigns.
This project demonstrates how specialized AI agents can coordinate, critique, and refine marketing strategies using Google Agent Development Kit (ADK) and Gemini models.
The system simulates a small marketing team where different AI agents handle strategy, research, copywriting, critique, and final editing.
The system uses workflow agents provided by Google ADK.
SequentialAgent
- Controls the end-to-end workflow
- Executes agents in a fixed order
LoopAgent
- Allows iterative improvement
- Used for copywriting + critique cycles
Workflow:
User Input
↓
Coordinator
↓
Strategist
↓
Researcher
↓
Copywriter
↓
Critic
↓
(Revision Loop if needed)
↓
Editor
↓
Final Campaign Output
Builds a structured marketing brief from user inputs.
Responsibilities:
- Normalize campaign requirements
- Structure the prompt for downstream agents
Defines the campaign direction.
Outputs:
- campaign objective
- content pillars
- messaging angles
- audience fit reasoning
Analyzes references or marketing context.
Outputs:
- useful content patterns
- successful hooks/formats
- clichés to avoid
- potential risks
Generates campaign content ideas.
Outputs:
- Instagram post concepts
- caption drafts
- hooks
- call-to-actions
Evaluates the generated marketing content.
Evaluation criteria:
- brand tone fit
- audience fit
- originality
- clarity
- CTA strength
- execution readiness
If the average score is below threshold, the workflow loops and the copy is rewritten.
Produces the final campaign deliverable.
Outputs:
- campaign summary
- finalized post concepts
- polished captions
- recommended CTAs
- Python
- Google Agent Development Kit (ADK)
- Gemini 2.5 Flash
- Pydantic
- FastAPI (via ADK web runtime)
marketing-agent
│
├─ marketing_agent
│ ├─ agent.py
│ ├─ prompts.py
│ ├─ tools.py
│ └─ schemas.py
│
├─ .gitignore
├─ README.md
└─ requirements.txt
Create a virtual environment:
python -m venv .venv
Activate environment:
Windows
.venv\Scripts\activate
Install dependencies:
pip install -r requirements.txt
Create .env
GOOGLE_API_KEY="YOUR_GEMINI_API_KEY"
Start the ADK web interface:
adk web
Or run directly:
adk run marketing_agent
Brand name: My Brand
Brand description:
Food brand selling instant noodles and snacks in Canada.
Target audience:
Canadians Gen Z / Millennials interested in instant noodles and snacks.
Goal:
Increase Instagram engagement and make the brand feel more current.
Tone:
Energetic, modern, culturally aware.
Constraints:
Avoid sounding overly corporate.
This project focuses on agent collaboration rather than single-prompt generation.
Key concepts demonstrated:
- multi-agent task decomposition
- structured agent roles
- critique-driven iteration
- workflow orchestration using ADK
- tool-augmented reasoning
Planned enhancements:
- conditional stopping based on critic scores
- campaign memory and session history
- integration with Google Search grounding
- automatic content calendar generation
- web UI for campaign inputs
- performance evaluation metrics
Minji Kim Toronto, Canada
Software engineer focused on AI systems, LLM workflows, and agent orchestration.
