Build an AI agent, test it on your own computer, and publish it so others can find it.

Agent Web is a desktop app for building, testing, publishing and discovering AI agents. This page is the follow-up to the job fair demo: what you saw, how it is built, and where it stands.

Where it stands

The demo

A four-line login function looks fine at a glance. The Code Reviewer agent, running on a local model, is asked to review it before it is merged.

Input
def login(conn, username, password):
    query = f"SELECT id FROM users WHERE username = '{username}' AND password = '{password}'"
    row = conn.execute(query).fetchone()
    return row is not None
Verdict
Do not merge.
Finding
Critical: SQL injection on line 2. Typing ' OR '1'='1' -- as the username comments out the password check, so it logs in without a password.
Fix
query = "SELECT id FROM users WHERE username = ? AND password = ?"
row = conn.execute(query, (username, password)).fetchone()

This is what the review found, written out cleanly. The agent's own wording varies from run to run, and the attack string above is the working form of the one it suggests. Then the agent is published to a registry and found again by searching for it. The model is Qwen2.5-Coder 7B running through Ollama on the same laptop, so the review is free and the code never leaves the machine.

How it is built

Agent Web architecture The desktop app talks to a local background service. The service runs agents on a local model, holds the identity keys, and publishes to and searches a registry. Desktop app React, TypeScript, Tauri Background service Rust: runs agents, keys, permissions, signed receipts Local model Ollama, Qwen2.5-Coder 7B Registry Go: publish and search agents .agw agent file Language, parser, checker

What I built

Get in touch

Email jackdonahoo@gmail.com GitHub profile