Skip to content
A

AdLoop

Self-learning ad engine with a truth layer

Created on 8th August 2026

A

AdLoop

Self-learning ad engine with a truth layer

What is the problem your project solves?

An Indian D2C brand loses money on its first sale (median: −₹320 per new customer; 78% of 6,000+ brands are unprofitable on order one). Survival means finding the ad that works before the money runs out — and creative drives 56% of sales ROI, more than targeting or placement. But an ad fatigues in 3–6 weeks, agencies bill ₹40–80K/month and deliver 2–4 creatives, and ~4,000 brands sit below the ₹1L ad-spend floor agencies won't touch.

Existing AI ad tools are fast and structurally broken. We captured a competitor's full pipeline live before building: it invents claims — a "100% SATISFACTION GUARANTEE" seal for a brand with no guarantee, "Loved By 10,000+" with zero reviews scraped; roughly 40% of its claims wouldn't survive an audit. Its 30-ad batches collapse into ~1 real message tested, and it has no memory — every run is day one, every brand gets the same scene skeletons.

A founder doesn't need 30 pictures. They need to find the one message that works — without their ad account making legal claims their brand never made. We sell the search, not the assets.

How you are solving it?

AdLoop is a self-learning ad creative engine. Give it a brand URL; it researches the brand, writes art-direction briefs, renders finished ads, verifies its own output by reading the pixels back, and learns from every batch and every founder edit.

  • Truth layer: every fact is captured with its source URL into a number bank with an explicit FORBIDDEN list. Every ad carries facts_used[]; any numeral not traceable to the bank can't ship. A vision pass reads the finished image and diffs every number on canvas against the facts.
  • Probes, not pictures: each ad is a distinct hypothesis keyed by angle × SKU × persona. Three ads test three things.
  • The ledger that learns: every shipped ad is logged by cell and status. Winners repeat deliberately in new scenes; unproven cells never duplicate; every batch keeps an exploration slot. Founder edits become permanent brand rules (one edit = signal, two = rule).

The loop closed live during the event, on godesi.in — receipts are tracked in the repo:

  1. Batch 2 shipped; the founder made two edits asking for "festival mela energy" (brands/godesi.in/batches/002/edit-*/).
  2. The engine generalized both into one promoted rule in brands/godesi.in/memory.md — including which brand color the bunting takes per ground.
  3. Batch 3 applied the rule with zero new instructions — all three briefs carry the mela-flag layout line (batches/003/briefs.json).
  4. The verify pass then FAILED all three batch-3 renders — the image model had hallucinated numerals into the scene (sticky notes reading "Client call 3:30 PM") and the truth layer caught every one (batches/003/verdicts.json). Refusing to ship them IS the product.

The repo README maps every claim above to the exact file that proves it: https://github.com/DV0x/adloop

Prior-work disclosure: the prompt-grammar research (capturing a competitor pipeline, extracting its structure) and validation scripts predate the event window. Built during the hackathon: the full engine on Claude Managed Agents (capture/batch/edit stages, pinned schemas, ledger + memory promotion), the live canvas UI, and three live batches end to end (~$0.17/image, ~5 min warm).

How Did You Use Claude?

Claude is the entire intelligence layer, on Claude Managed Agents (CMA) as the runtime:

  • One CMA session = one pipeline stage (brand capture / batch / founder edit), each driven by a structured runbook. Our validated render + assembly scripts execute inside the CMA sandbox; the KIE render key lives in a vault and is substituted at egress, so the model never sees it. Per-session budget caps with pause/resume.
  • Memory stores as the product's moat: the per-brand ledger and learned-rules files live in a CMA memory store, mounted read-write into every session — that's what makes the engine self-learning across sessions.
  • Multiagent roster (depth-1): cold-start capture fans three research lanes (facts, design guide, personas) out to parallel copies of the agent; the correctness QA gate is never delegated.
  • claude-opus-5 writes the art-direction briefs (structured tool calls against a pinned 8-slot schema) and runs the vision verify pass — reading rendered pixels and diffing every numeral on canvas against the fact bank.
  • Claude Code built the whole thing today, including this submission via the Devfolio MCP.

What is the deployed URL for this project?

https://github.com/DV0x/adloop (local-first: python3 -m engine canvas godesi.in serves the live canvas on localhost:8787)

Discussion

Builders also viewed

See more projects on Devfolio