Back to projects
FeaturedSep 2026

Loom Agent

A multi-model AI agent platform with agentic tool use, streaming chat, and a visual workflow builder, delivered as a web app, terminal UI, and VS Code extension, all backed by one API.

PythonFastAPIReactTypeScriptGoPostgreSQL
Loom Agent

What it is

Loom is a single FastAPI backend that turns any of 400+ LLMs (via OpenRouter) into a tool-using agent: one that searches the web, scrapes pages, and runs calculations autonomously in a streaming, multi-step loop. On top of that agent sits a visual workflow builder: a drag-and-drop canvas where tool calls become nodes in a DAG, so multi-step automations can be built without writing code.

The same backend powers three different clients, proving out one API across three very different runtimes: a React + TypeScript + Vite web app, a Go + Bubble Tea terminal UI, and a VS Code extension.

Architecture

Rendering diagram…

Highlights

  • Agentic tool-calling loop: the model decides when to search, scrape, or calculate, reconstructing streamed tool-call deltas server-side and looping until it's done (up to 15 iterations).
  • Visual workflow builder: a React Flow canvas plus a Python topological-sort executor that lets you chain tools into a pipeline with node-to-node data references ({{node_1.result}}), like a lightweight Zapier for your own tools.
  • Auto-discovering tool registry: drop a decorated Python function into backend/tools/, and it's live for the agent on next restart. No registration step.
  • 400+ models, one interface: GPT, Claude, Gemini, Llama, Mistral, and image-generation models, all through a single OpenRouter integration with automatic model-type detection.
  • Persistent history: every conversation, message, and tool call is stored in PostgreSQL with full analytics (execution time, status, tags).
  • One backend, three clients: the web app, TUI, and VS Code extension all talk to the same /api/chat SSE stream.

Screenshots

Workflow builder canvasWorkflow builder canvas

Visual workflow builder: chain tools into a DAG, wire node outputs into downstream inputs with {{node_id.field}} references, and execute the whole pipeline in one click.

Chat with live tool callsChat with live tool calls

Agentic chat: the model calls web_search and scrape_webpage on its own, streaming each tool call and its output inline.

Chat with syntax-highlighted code explanationChat with syntax-highlighted code explanation

Streamed code explanations: full syntax highlighting and structured, numbered breakdowns for code walkthroughs.

Tech stack

LayerTechnology
BackendPython 3.11+, FastAPI
Web frontendReact 18, TypeScript, Vite
Terminal UIGo 1.21+, Bubble Tea
Editor integrationVS Code extension (TS host + React webview)
DatabasePostgreSQL
Models400+ via OpenRouter

More Projects