Most AI workflow tools keep an LLM in the loop on every run: trigger → reason → tool → reason → result. That works for one-offs, but it is expensive, slow, and non-deterministic for repeated jobs like scraping the same site every day.

Agentic Workflow Compiler flips the model: agents design the automation once; frozen TypeScript runs it forever.

What we built (hackathon MVP)

A Blender-inspired node editor where you:

  1. Paste public URLs (we ship Cannes Film Festival film pages as the default demo).
  2. Press Play on Discover — a browser agent (agent-browser) inspects live pages (accessibility tree, JSON-LD, repeated DOM patterns) and suggests semantic output types (Document vs Collection).
  3. Autonomous build loop — the system generates a typed extractor, runs it in-process, tests against live URLs, and repairs failures without manual intervention.
  4. Freeze a Spider node — a reusable, deterministic workflow artefact you can re-run without calling an LLM.

Two output paths ship today:

  • Document — Tavily Extract turns pages into clean Markdown (great when structure is article-like).
  • Collection — Gemini (or a Cursor agent via @cursor/sdk) writes a plain JS run(input) extractor, tested and repaired across your URL set.

The UI shows live agent activity, build vs run traces, and preview panes for Tavily documents and collection grids.

Why we built it

We wanted multi-agent autonomy on the open web without paying model tokens every time the same pipeline runs. The hackathon brief — act on real-time data, operate without constant manual intervention — maps directly to: discover → compile → test → repair → freeze.

How we built it

  • Next.js 16 + React Flow node canvas
  • agent-browser (Vercel Labs) for Stage 1 structural discovery
  • Tavily Extract for Document path Markdown
  • Google Gemini for schema inference, codegen, and repair fallback
  • Cursor Agent SDK (composer-2.5) for the primary Stage 2 build/repair loop when CURSOR_API_KEY is set
  • ClickHouse client wired as an optional trace sink (local JSONL always works; cloud sink is scaffolded, not demo-critical)

What we learned

  • Separating discovery (what exists on the page?) from compilation (how do we extract it reliably?) makes repair loops much easier to reason about.
  • Browser accessibility snapshots are token-efficient for agents compared to raw HTML.
  • Keeping extractors as plain functions with automated cross-URL tests catches brittle selectors early.

Challenges

  • JS-rendered pages need headless Chrome; we degrade gracefully to HTTP quick-check when Chrome is unavailable.
  • Agent codegen sometimes wraps code in fences or drifts from the schema — the repair loop and Cursor session context help, but it is not perfect in 8 hours.
  • ClickHouse tracing is integrated at the API layer but not yet a user-facing feature — we focused the demo on the compile pipeline instead.

What is not in this MVP (on purpose)

  • Media extraction and transferable browser sessions (visible but disabled in UI)
  • Cloud worker execution, scheduling, marketplace
  • Full ClickHouse-backed chat history / analytics UI

These are post-hackathon roadmap items documented in our repo.

Built With

  • agent-browser
  • clickhouse-client
  • cursor-agent-sdk-(@cursor/sdk)
  • google-gemini-(ai-sdk)
  • next.js-16
  • node.js
  • react-19
  • react-flow-(@xyflow/react)
  • shadcn/ui
  • tailwind-css-v4
  • tavily-api
  • typescript
Share this project:

Updates

Submission history