A two-day hands-on masterclass for software engineers on building multi-agent AI systems with CrewAI. The capstone is an autonomous crew of AI agents that triages GitHub issues, writes real code, opens pull requests, and reviews them — all automatically.
turntablMasterClass/
├── curriculum/ # Masterclass teaching materials
│ ├── day1.md # Day 1: Foundations of Agentic AI
│ ├── day2.md # Day 2: Multi-Agent Systems & Production Deployment
│ ├── Agentic AI.png # Diagram: how tool calling actually works
│ └── resources.md # Additional reading and references
│
├── project/ # Day 2 capstone — crew-based implementation
│ ├── agents/ # The four agents (PM, Team Lead, Frontend, Backend)
│ ├── tools/ # Custom GitHub and git tools
│ ├── .github/workflows/ # GitHub Actions workflow for automated triage
│ └── main.py # Entry point: assembles and runs the crew
│
├── project-flows/ # Alternative implementation using CrewAI Flows
│ ├── crews/ # Specialized crews (triage, frontend, backend, review)
│ ├── flow.py # Flow-based orchestration with deterministic routing
│ └── main.py # Entry point
│
├── masterclass-ad-email.md # Announcement email copy
└── masterclass-description.md
The curriculum/ directory contains everything taught during the masterclass.
-
Day 1 — Foundations of Agentic AI Covers the core concepts: what makes a system "agentic", the agent loop (Perceive → Reason → Act → Observe), how tool calling actually works under the hood, CrewAI's three pillars (Role, Goal, Backstory), prompt engineering for agents, and debugging common failure modes. Participants build their first single-agent GitHub issue analyzer.
-
Day 2 — Multi-Agent Systems & Production Deployment Goes from one agent to a full team. Covers hierarchical delegation, task pipelines, shared context via task outputs, deploying to GitHub Actions, evaluating non-deterministic systems, and CrewAI Flows for deterministic orchestration. Participants build the multi-agent crew in
project/.
The project/ directory contains a multi-agent system with four agents that collaboratively triage and implement GitHub issues:
| Agent | Role | LLM |
|---|---|---|
| Project Manager | Delegates tasks in the hierarchical crew | openai/gpt-4o |
| Technical Team Lead | Triages issues and reviews PRs | openai/gpt-4o |
| Senior Frontend Developer | Implements frontend changes, opens PRs | anthropic/claude-sonnet-4-20250514 |
| Senior Backend Developer | Implements backend changes, opens PRs | anthropic/claude-sonnet-4-20250514 |
Workflow: Team Lead triages the issue → PM delegates implementation to the right dev → Dev clones the repo, writes code, and opens a PR → Team Lead reviews and approves → Team Lead posts a summary on the issue.
Prerequisites: Python 3.11+, uv installed.
# 1. Clone and enter the project
git clone https://github.com/blitzblade/turntablMasterClass.git
cd turntablMasterClass/project
# 2. Install dependencies
uv sync
# 3. Configure environment variables
cp .env.example .env
# Edit .env and set:
# ANTHROPIC_API_KEY — for the dev agents
# OPENAI_API_KEY — for the PM and Team Lead agents
# GITHUB_TOKEN — a PAT with repo access
# GITHUB_REPO — the target repo (e.g. "blitzblade/crew-commerce")
# 4. Run the crew on a specific issue
uv run python main.py --issue 1The workflow at project/.github/workflows/agent-triage.yml automatically runs the crew whenever a new issue is opened (or labeled needs-triage).
-
Copy the project into the target repo — the workflow file needs to live in the repo you want the agents to work on.
-
Add repository secrets (Settings → Secrets and variables → Actions):
ANTHROPIC_API_KEY— your Anthropic API keyOPENAI_API_KEY— your OpenAI API keyGITHUB_TOKENis provided automatically by Actions
-
Create an issue in the repo. The workflow triggers on
issues: [opened, labeled], spins up the crew, and the agents will comment, label, and open a PR automatically.
Safety guardrails already configured in the workflow:
timeout-minutes: 10prevents runaway agentsconcurrencygroup cancels duplicate runs for the same issuemax_rpm=5in the crew config keeps API usage within rate limits
The project-flows/ directory contains the same functionality implemented with CrewAI Flows instead of a single hierarchical crew. Flows add deterministic Python routing on top of crew executions, making the pipeline more inspectable and testable. See project-flows/README.md for details.
Compare the two approaches side by side to understand when to use each.
MIT — built for the Turntabl Agentic AI Masterclass.