chrome-devtools-axi
The most agent-ergonomic browser automation
HTML is the new markdown. Lavish is the new editor for your HTML artifacts.
$ npx -y skills add kunchenguid/lavish-axi --agent claude-code
Repo: kunchenguid/lavish-axi
What's inside
HTML is the new markdown. Lavish is the new editor for your HTML artifacts.
Agents are good at producing rich HTML artifacts, but the human-agent collaboration loop on such artifacts is lacking and falls back into screenshots and long responses for “tell me what to change.” That loses the thing HTML is best at: interactivity.
Lavish Editor opens agent-generated HTML files in a local browser, lets you pinpoint elements and selected text, edit diagrams your agent authored as Mermaid whiteboards, and send feedback to the agent to address.
Lavish Editor is an AXI, which means -
Install the Lavish skill in the Agent Skills format with npx skills:
npx skills add kunchenguid/lavish-axi --skill lavish
That is the entire setup - no npm install needed.
The skill teaches your agent to run Lavish through npx -y lavish-axi, so the CLI comes along on demand.
It stays a short stub and sends the agent to npx -y lavish-axi --help, reply --help, design, and playbook for current instructions, so an installed copy cannot go stale against a newer CLI.
Its frontmatter also includes Hermes Agent metadata, so Hermes-compatible harnesses can categorize and surface it as a first-class productivity skill.
This installs the public lavish skill.
The repository also contains an internal lavish-design brand skill for maintainers; default npx skills add ... --list and skills.sh discovery hide it unless INSTALL_INTERNAL_SKILLS=1 is set.
Then, in agents that expose skills as slash commands (Claude Code, for example), invoke it directly:
/lavish let's discuss our plan here
Or just ask for anything that is easier to grasp visually - a plan, comparison, diagram, table, code view, or report - and the agent loads the skill on its own when it recognizes the task.
By default the skill lands in the current project's skills directory (.claude/skills/, for example); add -g to install it for all projects (~/.claude/skills/).
The skill is the recommended path, but it is not the only one.
Lavish is an AXI, so any capable agent can run the CLI directly with nothing installed at all. Just tell your agent:
Use `npx -y lavish-axi` to write a product or technical plan for what we discussed.
Want Lavish's ambient context - including your live open sessions - fed into every agent session instead of loading on demand? Install the CLI globally and opt into the hook:
npm install -g lavish-axi
lavish-axi setup hooks
This installs a SessionStart hook for Claude Code, Codex, OpenCode, and GitHub Copilot CLI that surfaces open sessions, visualization playbooks, and usage guidance at the start of each session.
Unlike the skill, the hook also shows your live open sessions, so a fresh agent session can resume an in-flight review.
Restart your agent session after running this so the new hook takes effect.
Lavish also ships as an Agent Plugin - the vendor-neutral packaging standard for skills and MCP servers - so clients that speak that format can load it directly.
No marketplace is involved. The installed npm package is the plugin: plugin.json sits at the package root next to the skills/ directory, so whatever npm install already put on disk is a complete, conformant plugin. Install the CLI, then register it:
npm install -g lavish-axi
lavish-axi setup plugin
That registers the installed package with every supported client it finds - VS Code, Cursor, and GitHub Copilot CLI - and reports which ones were absent. It is opt-in and idempotent, and it repairs the registered path after a reinstall or relocation. Reload each client afterward.
Each client is registered independently: one that cannot be registered is reported with what to do about it, and never blocks the others or fails the command.
To register by hand instead, point any client at the package directory (npm root -g/lavish-axi):
| Client | Register with |
|---|---|
| VS Code | "chat.pluginLocations": { "<package-dir>": true } in user settings |
| Cursor | link the package dir at ~/.cursor/plugins/local/lavish-axi (setup plugin handles Windows link compatibility) |
| GitHub Copilot CLI | copilot plugin install <package-dir> (or copilot plugin install kunchenguid/lavish-axi straight from the repo) |
Codex and ChatGPT install plugins only from marketplace sources, so Codex users should use the session hook above instead.
Lavish declares no MCP server - the CLI itself is the agent interface - so a plugin install brings the same lavish skill, and the skill and plugin are alternatives rather than a stack.
git clone https://github.com/kunchenguid/lavish-axi.git
cd lavish-axi
pnpm install --frozen-lockfile
pnpm run build
pnpm link
┌───────────────┐
│ Agent writes │
│ artifact.html │
└───────┬───────┘
▼
┌────────────────────────┐
│ lavish-axi <file_path> │
│ opens local browser UI │
└───────┬────────────────┘
▼
┌────────────────────────┐
│ Human annotates text │
│ or elements, sends │
│ chat, or queues layout │
│ issues from the inbox │
└───────┬────────────────┘
▼
┌────────────────────────┐
│ lavish-axi poll waits │
│ and returns prompts │
│ the user queued │
└────────────────────────┘
lavish-axi or directly in a browser.
Run lavish-axi design for the single source of agent-facing design guidance, including optional CDN snippets and the whiteboard (Mermaid) opt-in snippet.lavish-axi <html-file>, export, and share run a render-free check for artifacts missing an explicit page background and return a one-line self_paint_warning.
The check fails open - any stylesheet link, @import, Tailwind runtime script, color-scheme, or html/body/:root background signal suppresses it - and it never blocks the open.layout-warnings, that reaches the agent through the normal feedback path when they send.
Detection never returns lavish-axi poll and never wakes an agent; only the user queueing a fix does. The one exception is a fatal artifact_failures response, for failures that make the review itself unusable, such as the artifact document or one of its own local assets failing to load.The most agent-ergonomic browser automation
Talk to one agent. Ship with a crew.
FAQ
lavish-axi is a Claude Code plugin with 1 hand-picked skill for productivity work, indexed on Flowy. Install it with the command on its page. It includes lavish. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
Is this plugin yours?
Claim it with GitHubSubmit a pluginPromote it