Why every framework is the same thirty lines — and what that means for buy-vs-build — step 9 of 9
One last thing before we move on. Same surface as a write step — but the lesson doesn't complete until this passes.
Final drill. Audit a real-shaped agent stack. Write
audit_stack(projects) that takes a list of project profiles and
returns a dict with two fields:
recommendations: dict mapping each project'snameto its recommendation string ("framework-free","vercel-ai-sdk","langgraph", or"crewai").framework_free_count: int — how many projects stay framework-free.
Use the SAME rule order as step 7 (first match wins):
team_size <= 2ANDtime_to_first_demo_days <= 14→"framework-free"needs_streamingANDlanguagein ("typescript","both") →"vercel-ai-sdk"needs_durable_stateANDlanguagein ("python","both") →"langgraph"- else →
"crewai"
Five projects run. Expected output:
Solo MVP -> framework-free
Chat widget -> vercel-ai-sdk
Research agent -> langgraph
Newsroom sim -> crewai
Pair scripting tool -> framework-free
framework-free count: 2
One last thing before we move on. Same surface as a write step — but the lesson doesn't complete until this passes.
Final drill. Audit a real-shaped agent stack. Write
audit_stack(projects) that takes a list of project profiles and
returns a dict with two fields:
recommendations: dict mapping each project'snameto its recommendation string ("framework-free","vercel-ai-sdk","langgraph", or"crewai").framework_free_count: int — how many projects stay framework-free.
Use the SAME rule order as step 7 (first match wins):
team_size <= 2ANDtime_to_first_demo_days <= 14→"framework-free"needs_streamingANDlanguagein ("typescript","both") →"vercel-ai-sdk"needs_durable_stateANDlanguagein ("python","both") →"langgraph"- else →
"crewai"
Five projects run. Expected output:
Solo MVP -> framework-free
Chat widget -> vercel-ai-sdk
Research agent -> langgraph
Newsroom sim -> crewai
Pair scripting tool -> framework-free
framework-free count: 2
this step needs the editor
on desktop today; in the app (coming soon). save your spot and we'll bring you back here when you're ready.