Libretto: Deterministic Browser Automation Generation for AI Coding Agents

Libretto is a toolkit for building robust web integrations that gives your coding agent a live browser and a token-efficient CLI. It shifts from runtime AI agents that operate as black boxes to "development-time AI" where scripts are generated ahead of time as actual code you can read, modify, version, and debug.
Key Features and Approach
Libretto takes a hybrid approach combining Playwright UI automation with direct network/API requests within the browser session for better reliability and bot detection evasion. This addresses limitations of runtime AI tools that rely on custom DOM parsing, which can be unreliable on older or complicated websites like healthcare systems.
The tool was built after a year of maintaining browser automations for EHR and payer portal integrations at a healthcare startup, where debugging failed automations was time-consuming. It addresses four main issues with runtime AI tools:
- Reliance on custom DOM parsing that's unreliable on complex websites
- High costs due to many AI calls and inability to cache actions reliably
- Lack of interpretability at runtime
- Limited help with generating new automations or debugging failures
Practical Usage
Installation is via npm: npm install libretto. First-time setup requires: npx libretto setup which installs the skill, downloads Chromium, and pins the default snapshot model. You can check workspace readiness with npx libretto status and manually change the snapshot analysis model with npx libretto ai configure <openai | anthropic | gemini | vertex>.
Libretto is designed to be used as a skill through your coding agent with example prompts including:
- One-shot script generation: "Use the Libretto skill. Go on LinkedIn and scrape the first 10 posts for content, who posted it, the number of reactions, the first 25 comments, and the first 25 reposts."
- Interactive script building: "I'm gonna show you a workflow in the eclinicalworks EHR to get a patient's primary insurance ID. Use libretto skill to turn it into a playwright script that takes patient name and dob as input to get back the insurance ID."
- Convert browser automation to network requests: "We have a browser script at ./integration.ts that automates going to Hacker News and getting the first 10 posts. Convert it to direct network scripts instead."
- Fix broken integrations: "We have a browser script at ./integration.ts that is supposed to go to Availity and perform an eligibility check for a patient. But I'm getting a broken selector error when I run it. Fix it."
The CLI can also be used directly with commands like npx libretto open <url> to launch sessions. All commands accept --session <name> to target specific sessions.
Additional features include recording manual user actions to help agents generate and update scripts, step-through debugging, optional read-only mode to prevent agents from accidentally submitting or modifying data, and generating code that follows existing abstractions and conventions in your coding repository.
📖 Read the full source: HN AI Agents
👀 See Also

Infracost cuts Claude token usage 79% by redesigning CLI for AI agents
Infracost redesigned its CLI for AI agent callers, cutting Claude output tokens by 79% and API cost by 67% vs a bare-Claude baseline. Key moves: predicate pushdown into the CLI and a token-efficient output format.

Design Studio Plugin for Claude Code Adds Virtual Design Team with 9 Roles and 16 Commands
A new Claude Code plugin called Design Studio simulates a full design team with 9 specialist roles, 16 slash commands, and 5 agents. It auto-detects tech stacks and includes over 8,000 lines of design knowledge across reference files.

Browser Harness: Giving LLMs raw CDP access to self-correct browser tasks
Browser Harness strips away browser frameworks, giving LLMs direct CDP websocket access and letting them write missing tools mid-task. Demonstrated by self-inventing an upload_file() function.

OpenClaw developer builds Kumiho cognitive memory plugin for persistent agent collaboration
A developer created Kumiho, an AI cognitive memory system backed by a knowledge graph, to address OpenClaw's lack of memory across sessions. The openclaw-kumiho plugin hooks into conversations to recall context, capture structured summaries, and maintain versioned creative outputs.