openweb
About
OpenWeb provides typed JSON access to 90+ real websites for reading, searching, and interacting with content like products, posts, and stock data. It requires the `openweb` CLI and a managed Chrome session for some sites. Use this skill when your agent needs to programmatically fetch or interact with live data from major platforms.
Quick Install
Claude Code
Recommendednpx skills add openweb-org/openweb -a claude-code/plugin add https://github.com/openweb-org/openwebgit clone https://github.com/openweb-org/openweb.git ~/.claude/skills/openwebCopy and paste this command in Claude Code to install this skill
Documentation
OpenWeb
Agent-native way to access any website. Bridging agent CLI and web GUI through API.
Load Discipline
- Do not read every file in this folder.
- Start with SKILL.md. Follow one route at a time.
Use Existing Site
1. Find the site
openweb sites # list all available sites
If the site has no package, do NOT say "unsupported." Route to add-site/guide.md.
2. Check readiness
openweb <site> # transport, auth, operations list
Requires browser: yes— browser auto-starts when needed; no manual setup requiredRequires login: yes— user must be logged in via their browser session
3. Read site notes
Prefer site docs when they exist in your workspace:
- Source repo: read
src/sites/<site>/SKILL.mdfor workflows and intent mapping, thensrc/sites/<site>/DOC.mdfor internals. - Shipped/runtime package: only
DOC.md, specs, manifest, examples, and adapters are guaranteed. Per-siteSKILL.mdandPROGRESS.mdare source-tree docs and are not shipped into$OPENWEB_HOME/sites/<site>/.
If only the shipped package is available, rely on openweb <site>, openweb <site> <op>, examples, and DOC.md.
4. Inspect the operation
openweb <site> <op> # params, response shape, permission tier
openweb <site> <op> --example # real example params from fixtures
Check the operation's permission tier before executing:
| Tier | Default | Behavior |
|---|---|---|
read | allow | GET-like operations — execute freely |
write | prompt | Creates/updates — ask user before executing |
delete | prompt | Destructive — ask user before executing |
transact | deny | Financial/irreversible — always skip |
5. Execute
openweb <site> <op> '{"key":"value"}' # stdout=JSON, stderr=JSON error
Auto-spill: responses over 4096 bytes write to a temp file.
openweb <site> exec <op> '{...}' is equivalent — exec can be omitted when the third arg is JSON.
6. On failure
Errors on stderr include failureClass:
| failureClass | Action |
|---|---|
needs_browser | Browser auto-starts; if it fails, check Chrome installation. Fallback: openweb browser start |
needs_login | openweb login <site> then openweb browser restart |
needs_page | Open a tab to the site URL |
bot_blocked | openweb browser restart --no-headless, user solves CAPTCHA in visible browser, then retry. For persistent sites, set "browser": {"headless": false} in config |
permission_denied | Update permissions in $OPENWEB_HOME/config.json |
permission_required | Ask user for confirmation, then retry |
retriable | Wait a few seconds, retry (max 2) |
fatal | Don't retry — fix params or check site name |
If the table above doesn't resolve it, read references/troubleshooting.md.
7. Missing site or coverage
Site doesn't exist or lacks needed operations? Read add-site/guide.md.
Add / Expand / Upgrade Site
Read add-site/guide.md
Fix a Problem
Read references/troubleshooting.md
File Map
All paths relative to skills/openweb/.
add-site/ (workflow — load in sequence)
| File | Load when |
|---|---|
add-site/guide.md | Entry point for add/expand workflow |
add-site/probe.md | Probe step: CDP browser-side discovery |
add-site/capture.md | Capture step: recording browser traffic |
add-site/review.md | Review step: reading analysis-summary.json |
add-site/curate-operations.md | Curate: naming, noise, params, permissions |
add-site/curate-runtime.md | Curate: auth, transport, extraction |
add-site/curate-schemas.md | Curate: response schemas, examples, PII |
add-site/verify.md | Verify: runtime + spec + doc loop |
add-site/document.md | Document: per-site SKILL.md + DOC.md + PROGRESS.md, knowledge updates |
references/ (lookup — load independently)
| File | Load when |
|---|---|
references/cli.md | CLI command syntax, flags, stdout/stderr |
references/x-openweb.md | Full x-openweb field schema |
references/troubleshooting.md | Something broke — classify, diagnose, fix |
knowledge/ (patterns — load at decision points)
| File | Load when |
|---|---|
knowledge/archetypes.md | Expected operations by site category |
knowledge/auth-routing.md | Auth type unknown — signal-to-family lookup |
knowledge/auth-primitives.md | Configuring auth — config and gotchas |
knowledge/bot-detection.md | Transport/capture decisions |
knowledge/extraction.md | Extraction signals — SSR/DOM patterns |
knowledge/graphql.md | GraphQL — persisted queries, batching |
knowledge/ws.md | WebSocket — message/connection patterns |
knowledge/adapter-recipes.md | Adapter patterns, code templates, pitfalls |
knowledge/transport-upgrade.md | Transport tier decisions, node feasibility, API discovery |
GitHub Repository
Related Skills
executing-plans
DesignUse the executing-plans skill when you have a complete implementation plan to execute in controlled batches with review checkpoints. It loads and critically reviews the plan, then executes tasks in small batches (default 3 tasks) while reporting progress between each batch for architect review. This ensures systematic implementation with built-in quality control checkpoints.
requesting-code-review
DesignThis skill dispatches a code-reviewer subagent to analyze code changes against requirements before proceeding. It should be used after completing tasks, implementing major features, or before merging to main. The review helps catch issues early by comparing the current implementation with the original plan.
connect-mcp-server
DesignThis skill provides a comprehensive guide for developers to connect MCP servers to Claude Code using HTTP, stdio, or SSE transports. It covers installation, configuration, authentication, and security for integrating external services like GitHub, Notion, and custom APIs. Use it when setting up MCP integrations, configuring external tools, or working with Claude's Model Context Protocol.
web-cli-teleport
DesignThis skill helps developers choose between Claude Code Web and CLI interfaces based on task analysis, then enables seamless session teleportation between these environments. It optimizes workflow by managing session state and context when switching between web, CLI, or mobile. Use it for complex projects requiring different tools at various stages.
