Resume Cartel is a Google ADK (Agent Development Kit) app that builds role-targeted resumes with a coordinated team of agents—coach, writer, critic, and YAML export—so you ship evidence-backed drafts instead of generic filler.
- Multi-Agent Architecture: Specialized agents for coaching, writing, critiquing, and formatting.
- Interactive Coaching: A user-facing agent that gathers requirements and guides you through the process.
- Quality Loop: Built-in critic agent ensures high-quality evidence, role fit, and consistency.
- Markdown Artifacts: Maintains versioned working documents (e.g.,
candidate-profile.md,resume-draft.md). - YAML Export: Automatically converts the finalized markdown resume into a structured
resume.yamlformat. - Integrated Research: Agents have access to Google Search for real-time research.
The example/ directory includes conversation screenshots and a frozen snapshot of ADK session artifacts so you can see how a real run progresses without starting the app.
1. First-time interaction — The coach asks focused questions; you supply the role you are targeting, background, constraints, and any evidence you want emphasized. That input is distilled into working documents (for example requirements.md, raw-notes.md, and candidate-profile.md).
2. Critic–writer loop and draft — After enough context is captured, the writer and critic agents iterate: the writer updates resume-draft.md, the critic records feedback in critique.md, and the coach drives further revisions until the draft stabilizes (subject to RESUME_MAX_REVISION_ITERATIONS).
Under example/adk_session_artifacts/ you will find the same artifact names as in Working Documents, each stored under versions/<n>/ the way ADK persists them during a session. Browse those files to follow how requirements become a profile, then a critiqued draft, and optionally exports such as final-resume.md and resume.yaml.
graph TD
User([User]) <-->|Interacts| Coach[ResumeCoachAgent]
Coach -->|Delegates| Writer[ResumeWriterAgent]
Coach -->|Delegates| Critic[ResumeCriticAgent]
Coach -->|Delegates| Yaml[ResumeYamlAgent]
Writer -.->|Drafts & Revises| MD[(Markdown Artifacts)]
Critic -.->|Reviews| MD
Yaml -.->|Converts| YAML[(resume.yaml)]
Coach -.->|Manages State| MD
- Python 3.13+
- uv (Python package manager)
Create a .env file in the root directory with the following variables:
# Required: Google Gemini API Key
GEMINI_API_KEY=your_api_key_here
# Optional: Model overrides (defaults to gemini-3.1-pro-preview)
RESUME_COACH_MODEL=gemini-3.1-pro-preview
RESUME_WRITER_MODEL=gemini-3.1-pro-preview
RESUME_CRITIC_MODEL=gemini-3.1-pro-preview
# Optional: Max revisions before forcing finalization
RESUME_MAX_REVISION_ITERATIONS=4- Install dependencies and start the ADK web interface:
uv run adk web- The ADK app entrypoint is
resume_builder.agent:root_agent. Open the provided local URL in your browser to start a Resume Cartel session with the coach agent.
The system uses the following ADK artifacts as versioned working documents during the session:
requirements.mdraw-notes.mdcoach-notes.mdcandidate-profile.mdresume-draft.mdcritique.mdfinal-resume.mdresume.yaml(Generated upon request)

