AgentUI is a lightweight Chrome extension for capturing UI feedback directly on a live page. The current baseline focuses on the in-page annotation flow: load the extension, turn on feedback mode, click an element, and save a tagged note that can later be exported into compact plain text for terminal or AI-assisted iteration workflows.
What is working on this branch:
- Manifest V3 extension built with Plasmo, TypeScript, and React
- Content-script overlay injected on HTTP and HTTPS pages
- Floating toolbar with feedback mode toggle and live note count
- Hover outline for candidate elements while feedback mode is on
- Annotation popover for adding a tag and feedback text to the selected element
- Compact and detailed export formatters in
src/export/*
What is not wired into the visible UI yet:
- Persisted annotations across page reloads
- Export buttons / clipboard actions in the toolbar
- Annotation list, markers, delete, and reorder controls
- Keyboard shortcuts beyond
Escape
That means the best way to understand the product today is:
- run the extension locally,
- load it in Chrome,
- capture feedback on a localhost page,
- use the README export examples as the current serializer reference.
- Node.js and npm
- Google Chrome or another Chromium-based browser
- A local web page to test against, for example
http://localhost:3000
This repo does not currently pin a Node version. The commands below were verified with:
- Node
v22.22.2 - npm
11.12.1
git clone git@github.com:tisanmoreno/agentui.git
cd agentui
npm installStart the extension dev build:
npm run devplasmo dev watches for changes and writes the unpacked development build to:
build/chrome-mv3-dev
In a separate terminal, run any local frontend you want to annotate. This repository does not include a demo app, so testing is done against an external local app such as:
http://localhost:3000
- Start the dev build with
npm run dev. - Open
chrome://extensions. - Turn on Developer mode.
- Click Load unpacked.
- Select
build/chrome-mv3-dev. - Confirm the AgentUI extension card appears without manifest errors.
- Open your local page, such as
http://localhost:3000. - Confirm the AgentUI overlay is hidden by default.
- Click the pinned AgentUI extension button to show or hide the overlay on the current tab.
After code changes:
- wait for
npm run devto rebuild, - click Reload on the AgentUI extension card,
- refresh the page you are testing.
Click the pinned AgentUI extension button to show the overlay on the current tab. Then click Start annotating in the toolbar.
Move your pointer over the page. AgentUI highlights the current candidate element with a blue outline.
Click the highlighted element to open the popover, then:
- optionally choose a tag,
- enter feedback text,
- click Save.
The toolbar note count increments after saving.
- Click Stop annotating to leave feedback mode.
- Press
Escapeto close the popover. - Press
Escapeagain while feedback mode is active to exit feedback mode.
The current branch already includes compact and detailed serializers in src/export/formatCompact.ts and src/export/formatDetailed.ts, but the export action is not exposed in the toolbar yet. Use these examples as the reference output for future UI wiring and manual checks.
Frontend feedback
Page: http://localhost:3000/settings
1. [width] Settings hero section
Context: "Simple pricing for modern teams"
Feedback: Make this section wider on large screens.
2. [spacing] Save settings button
Context: "Save changes"
Feedback: Rename this to "Save settings" and add more space above it.
Frontend feedback
Page: http://localhost:3000/settings
1. [width] Settings hero section
Target: Settings hero section
Selector: main section.hero
Context: "Simple pricing for modern teams"
Feedback: Make this section wider on large screens.
2. [spacing] Save settings button
Target: Save settings button
Selector: form button[type="submit"]
Context: "Save changes"
Feedback: Rename this to "Save settings" and add more space above it.
npm run dev— start the Plasmo development build in watch modenpm run build— create a production build inbuild/chrome-mv3-prodnpm run package— createbuild/chrome-mv3-prod.zipnpm run check-types— run TypeScript type checks
Use docs/manual-qa.md before merging UI changes or updating the onboarding flow.
- No toolbar on the page: AgentUI starts hidden by default. Click the pinned AgentUI extension button first. If it still does not appear, make sure the extension is loaded from
build/chrome-mv3-dev, then reload the extension card and refresh the page. - Wrong folder selected in Chrome: choose the generated build folder, not the repo root.
- No local page to test with: start any frontend separately and use its localhost URL.
- Clicking the page does nothing: make sure feedback mode is on before selecting a target.
- Expected export buttons are missing: that is the current baseline; only the formatter utilities exist on this branch.