AutoAgent Demo
Three specialized AI agents working in sequence — one routes the task, one browses live websites, one writes and runs Python — producing a real interactive dashboard with zero human intervention.
Browse, analyze, ship.
- The System Triage Agent reads your prompt and routes it to the right specialists — no manual configuration needed
- The Web Surfer Agent opens a real browser, navigates live websites, and extracts structured data in real time
- The Coding Agent writes Python from scratch, runs it, hits errors, self-corrects, and runs again until it works
- The final output is a self-contained interactive HTML dashboard — charts, filters, and all — saved to disk
Three agents, one pipeline.
-
Step 1 — System Triage Agent
Reads your natural language prompt and decides which specialist agent to call first. No routing rules to configure — the model figures it out from context.
-
Step 2 — Web Surfer Agent
Opens a real browser window, navigates to the target URL, scrolls to load all content, and extracts structured data — product names, upvote counts, descriptions, and tags. You can watch it happen live.
-
Step 3 — Coding Agent
Receives the scraped data, writes a Python script using pandas and plotly, runs it in a local conda environment, reads any errors, rewrites the script, and re-runs — until the output file is confirmed on disk.
-
Output — Interactive Dashboard
A single self-contained HTML file with a bar chart, donut chart, scatter plot, and sortable data table. Open it in any browser, no internet required.
See the full run live.
A full end-to-end run — agent handoffs, browser navigation, Python self-correction, and the final dashboard reveal. ~5 minutes, zero edits.
Running it on your machine.
-
1. Clone the repo
Download AutoAgent from the official HKU repo and install it:
git clone https://github.com/HKUDS/AutoAgent.git cd AutoAgent pip install -e .
-
2. Create a conda environment
AutoAgent runs Python code in a local conda environment called
auto. Create it with the packages the Coding Agent will need:conda create -n auto python=3.11 conda activate auto pip install requests beautifulsoup4 pandas plotly
-
3. Set your Anthropic API key
AutoAgent uses the Anthropic API via litellm. Add your key to your shell environment:
export ANTHROPIC_API_KEY=your-api-key-here
-
4. Run AutoAgent in user mode
From inside the AutoAgent directory, run with the model prefix shown below. Select user mode at the menu — not agent editor.
cd AutoAgent COMPLETION_MODEL=anthropic/claude-sonnet-4-6 auto main --local_env True
-
5. Paste the demo prompt
Once in user mode, paste this prompt to run the full Product Hunt → dashboard pipeline:
Go to Product Hunt's AI category at https://www.producthunt.com/topics/artificial-intelligence and extract every visible product — name, tagline, upvote count, comment count, and category tags. Scroll to capture at least 20 products. Then write and run a Python script using pandas and plotly to build a single self-contained HTML dashboard saved as ai_tools_dashboard.html that includes: a horizontal bar chart of top tools by upvotes, a donut chart of category breakdown, a scatter plot of upvotes vs. comments labeled by product name, a "Tools to Watch" callout for the top 3 by upvote-to-comment ratio, and a sortable data table. Use include_plotlyjs=True so the file works offline. Confirm the file was created and print the top 3 most upvoted tools.
Things I learned the hard way.
- Use User Mode — not Agent Editor. Agent editor tries to write custom tools from scratch and loops indefinitely, burning API credits. User mode routes directly to the built-in Web Surfer and Coding Agent, which already do everything you need.
- The model name requires the
anthropic/prefix. SetCOMPLETION_MODEL=anthropic/claude-sonnet-4-6, not justclaude-sonnet-4-6. Without the prefix, litellm fails silently. - Pydantic serializer warnings are harmless. You'll see a wall of
PydanticSerializationUnexpectedValuewarnings on every agent message. This is a version mismatch between litellm and pydantic — ignore it completely. - If you see
content=Nonerepeating — you're stuck. This means an agent is looping on a tool call that isn't resolving. Hit Ctrl+C and restart in user mode. - Watch your API credits. If agent editor loops before you kill it, it can burn through your Anthropic API balance fast. Check your usage at console.anthropic.com after any unexpected behavior.
- Path-with-spaces bug. If your AutoAgent directory path contains a space (e.g. an iCloud folder), the Coding Agent's
cdcommand will fail silently. Fix: inautoagent/environment/local_env.pyline 76, wrap{self.docker_workplace}in quotes.