Skip to content

feat: add openbrowser skill for AI-driven testing workflows#16

Open
digi4care wants to merge 1 commit intoJasonHonKL:mainfrom
digi4care:upstream-skill
Open

feat: add openbrowser skill for AI-driven testing workflows#16
digi4care wants to merge 1 commit intoJasonHonKL:mainfrom
digi4care:upstream-skill

Conversation

@digi4care
Copy link
Copy Markdown

Summary

This PR adds a complete openbrowser skill that helps AI coding agents use open-browser as a lightweight alternative to Playwright for semantic testing and browsing workflows.

What is a "skill"?

A skill is a structured knowledge pack that AI agents (like Pi, Cursor, Copilot, Claude, etc.) can load to understand when and how to use a tool. It provides decision matrices, workflow patterns, and reference documentation — so the AI agent makes good choices without guessing.

What's included

File Content
skills/openbrowser/SKILL.md Main reference — when to use, when NOT to use, command matrix, 6 workflow patterns, error handling
skills/openbrowser/references/cli-reference.md All 7 subcommands with flags and examples
skills/openbrowser/references/testing-patterns.md Playwright → open-browser translation table, assertion recipes
skills/openbrowser/references/examples.md 10 end-to-end examples (login flows, form testing, site mapping, etc.)
skills/openbrowser/references/repl-and-cdp.md REPL commands and CDP WebSocket server for automation
skills/openbrowser/references/knowledge-graph.md Site mapping, BFS crawler, state fingerprinting
skills/openbrowser/references/semantic-roles.md HTML element → ARIA role/action mapping table
skills/openbrowser/references/programmatic-usage.md Rust Browser API documentation
skills/openbrowser/references/installation.md Build from source, Arch Linux specifics, Docker
skills/openbrowser/references/troubleshooting.md Build/runtime issues with fixes
skills/openbrowser/references/registry.json Machine-readable index of all references

Key design decisions

  1. Decision matrices over feature lists — the skill tells AI agents when to pick open-browser vs Playwright, not just what open-browser does
  2. 6 workflow patterns — page verification, form interaction, navigation flows, site mapping, network debugging, session persistence
  3. Playwright translation table — helps agents migrate existing Playwright test patterns to open-browser equivalents
  4. Honest limitations section — clearly documents what open-browser cannot do (no JS rendering, no screenshots, no cross-browser)

Testing

  • SKILL.md audit score: 101/100 PASS
  • All CLI examples tested against current open-browser CLI
  • Arch Linux build requirements verified (cmake, clang, LIBCLANG_PATH)

Why this is useful for the project

Users who discover open-browser through AI coding tools (increasingly common) will have immediate access to structured guidance. The skill makes it trivial for any AI agent to:

  • Understand open-browser's capabilities and limitations
  • Choose the right subcommand for the task
  • Follow proven workflow patterns
  • Troubleshoot common build and runtime issues

This lowers the adoption barrier significantly for AI-assisted development workflows.

Adds a complete openbrowser Pi skill that helps AI agents use open-browser
as a lightweight alternative to Playwright for semantic testing workflows.

The skill includes:
- Decision matrices for when to use open-browser vs Playwright
- 6 workflow patterns (page verification, form testing, navigation flows,
  site mapping, network debugging, session persistence)
- CLI command reference with all 7 subcommands
- 10 end-to-end examples for common testing scenarios
- Troubleshooting guide with Arch Linux build requirements
- REPL and CDP server documentation for advanced automation
- Knowledge graph and site mapping documentation

Structure:
- skills/openbrowser/SKILL.md — Main reference
- skills/openbrowser/references/ — 9 reference documents
- skills/openbrowser/references/registry.json — Index of all references

Tested: SKILL.md audit score 101/100 PASS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant