diy-creator / README.md
BonusLockSMith's picture
add demo gif to README
0a2f66d verified
|
Raw History Blame Contribute Delete
3.24 kB
metadata
title: DIY Creator
emoji: πŸ› οΈ
colorFrom: gray
colorTo: red
sdk: docker
app_port: 7860
pinned: false

DIY Creator πŸ› οΈ β€” a multi-agent team you can watch work

Name something you want to build. A team of three agents hands off to each other to produce a vetted, step-by-step build guide β€” and you watch them do it in real time.

Project #17 of the "30 AI Projects in 15 Days" challenge. Focus: multi-agent orchestration.

Demo: the Researcher gathers a brief, the Writer drafts a guide, the Critic scores it and sends it back to revise

Above (local model): πŸ” Researcher gathers the brief β†’ ✍️ Writer drafts a guide β†’ 🧐 Critic scores it 5/10 and sends it back with concrete fixes β†’ Writer revises β†’ the guide ships (honestly noting any minor items that remain). On a stronger backend it converges to a clean pass.

The team

Agent Role
πŸ” Researcher Gathers a practical brief: materials (with quantities), tools, techniques, safety hazards, common mistakes, and honest difficulty/time/cost.
✍️ Writer Turns the brief into a clear, start-to-finish guide a beginner could actually follow.
🧐 Critic An independent reviewer β€” scores the draft, flags issues by severity, and sends it back. The writer revises; the critic re-checks. The loop runs until the guide passes (or hits the round cap).

The lesson: roles, handoffs, and an honest gate

A multi-agent "team" is three things done well:

  1. Role-specialized agents β€” each one has a single job and a prompt tuned for it.
  2. Explicit handoffs β€” the researcher's brief feeds the writer; the writer's draft feeds the critic.
  3. A critique β†’ revise loop β€” nobody ships their own first draft.

Two design choices worth calling out:

  • The critic is independent (the "diamond"). It reviews the writer's work, ideally as a different model, so the review isn't the author grading itself. Set DIY_CRITIC_MODEL to a second local model for a sharper, more independent review.
  • The gate is honest-by-construction. The critic finds issues (what LLMs are good at), but the pass/revise decision is made in code from issue severity β€” a guide passes only when no high- or medium-severity issues remain. The model can't rubber-stamp its own work.

Run it

pip install -r requirements.txt
python app.py            # http://127.0.0.1:7860
# Local Ollama by default (free/private). For the cloud model instead:
#   DIY_LLM_BACKEND=claude ANTHROPIC_API_KEY=sk-... python app.py

Config (env): DIY_LLM_BACKEND (ollama|claude) Β· DIY_OLLAMA_URL Β· DIY_OLLAMA_MODEL (default qwen2.5:7b) Β· DIY_CRITIC_MODEL (optional independent critic) Β· ANTHROPIC_API_KEY / ANTHROPIC_MODEL for the Claude backend.

Note on models: a small local model self-critiquing is genuinely noisy β€” it will sometimes ship "after review, minor notes remain" rather than a clean pass. That's honest. A stronger model (or a DIY_CRITIC_MODEL diamond) converges to a clean pass more often.


Built by Robert Lucyk Β· GritAI Solutions Β· part of the 30-in-15 challenge.