ork-assess
Assess a code change, design, architecture, workflow, or competing options against explicit criteria and evidence. Use when a request asks to assess, rate,…
Security wrapper over the upstream agent-browser skill, adding URL blocklisting, rate limiting, robots.txt enforcement, and scraping guardrails. Use when automating browser workflows that need safety limits.
$ npx -y skills add yonatangross/orchestkit --skill browser-tools --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/browser-toolsContext preview
The summary Claude sees to decide when to auto-load this skill.
Security wrapper over the upstream agent-browser skill, adding URL blocklisting, rate limiting, robots.txt enforcement, and scraping guardrails. Use when automating browser workflows that need safety limits.
name: browser-tools license: MIT compatibility: "Claude Code 2.1.251+. Requires network access." description: Security wrapper over the upstream agent-browser skill, adding URL blocklisting, rate limiting, robots.txt enforcement, and scraping guardrails. Use when automating browser workflows that need safety limits. tags: [browser, automation, security, rate-limiting, scraping-ethics] context: fork agent: web-research-analyst version: 6.0.0 author: OrchestKit user-invocable: false complexity: medium persuasion-type: discipline metadata: category: mcp-enhancement upstream-skill: agent-browser upstream-version-tested: "0.36.0" allowed-tools: - Read - Glob - Grep - WebFetch - WebSearch
OrchestKit security wrapper for `agent-browser`. **For command reference and usage patterns, use the upstream `agent-browser` skill directly.** This skill adds safety guardrails only.
> **Command docs**: Refer to the upstream `agent-browser` skill for the full command reference (50+ commands: interaction, wait, capture, extraction, storage, semantic locators, tabs, debug, mobile, network, cookies, state, vault).
These topics belong to the vendor. Read them at the source; do not copy them back into this skill.
| Topic | First-party source | |-------|--------------------| | CLI command reference, snapshot and ref loop, waits, auth options, eval, config file | `agent-browser` skill · https://github.com/vercel-labs/agent-browser/blob/main/skills/agent-browser/SKILL.md | | Electron and desktop-app automation over CDP (`connect`, `--cdp`, webviews, tabs) | https://github.com/vercel-labs/agent-browser/blob/main/skill-data/electron/SKILL.md | | Slack workspace navigation and extraction recipes | https://github.com/vercel-labs/agent-browser/blob/main/skill-data/slack/SKILL.md | | Running headless in a Vercel Sandbox microVM (deps, snapshots, cron) | `vercel:vercel-sandbox` skill · https://github.com/vercel-labs/agent-browser/blob/main/skill-data/vercel-sandbox/SKILL.md | | Exploratory QA sweep with repro evidence (issue taxonomy, report template) | `dogfood` skill · https://github.com/vercel-labs/agent-browser/blob/main/skill-data/dogfood/SKILL.md | | Named `.localhost` dev URLs | `ork:portless` skill · https://github.com/vercel-labs/portless |
**Our delta over all of the above**: `references/ork-delta.md`, covering where the safety hook does and does not apply, the shared rate-limit budget, and the local-URL policy.
# Fallback decision tree for web content # 1. Try WebFetch first (fast, no browser overhead) # 2. If empty/partial -> Try Tavily extract/crawl # 3. If SPA or interactive -> use agent-browser # 4. If login required -> authentication flow + state save # 5. If dynamic -> wait @element or wait --text
Use **Portless** (`npm i -g portless`) for stable local dev URLs instead of guessing ports. When Portless is running, navigate to `myapp.localhost` instead of `localhost:3000`. Our safety hook already allows `*.localhost` subdomains via `ORCHESTKIT_AGENT_BROWSER_ALLOW_LOCALHOST`.
# With Portless: stable, named URLs agent-browser open "https://myapp.localhost" # Without: fragile port guessing agent-browser open "http://localhost:3000" # which app is this?
**0.36.0** (2026-09-01, from the release notes, not yet exercised here): experimental WebMCP support for discovering and invoking tools the current page exposes (frame-aware selection, detached results, cancellation, bounded metadata and output), plus a WebMCP generation skill for turning page workflows into validated page tools. Drops the obsolete Lightpanda session-timeout launch argument.
**0.35.1:** `diff snapshot` ref numbering resets per diff, refs are invalidated across navigations, and the previous refs survive a failed diff. The streaming `url` event narrowed to the active tab's main frame: it now emits for full-document, History API and fragment navigation, rebinds after an active-tab change, and ignores child-frame and background-tab navigation.
**0.35.0:** `--ca-cert <path>` (also `AGENT_BROWSER_CA_CERT`, and `caCert` in config/MCP) imports a PEM bundle or DER certificate into an isolated NSS trust store, the targeted alternative to `--ignore-https-errors` behind an SSL-inspecting proxy: hostname, validity and unrelated-authority checks stay on. The CA persists across commands in a session and `--no-ca-cert` clears it. Linux-only, needs `certutil`, and is rejected with `--profile`, `--cdp`, `--auto-connect`, providers, Lightpanda or `--ignore-https-errors`. Also adds the bundled `protected-vercel-deployments` skill for reaching SSO-protected Vercel deployments via short-lived Trusted Sources OIDC tokens instead of a static bypass secret.
**0.34.0:** persistent session-to-tab binding for shared Chrome sessions. Named `--cdp`/`--auto-connect` sessions remember their CDP target across daemon restarts, CDP target ids work as tab refs, and `--pin-tab` makes the binding strict so an externally closed tab returns a stable `tab_gone` error instead of silently retargeting. JSON output gains `data.targetId` and optional `data.lastUrl`. Also fixes parallel sessions hijacking each other's tabs.
> Corrected 2026-08-28. This section previously credited 0.34.0 with `pushstate`, > `removeinitscript`, `--enable react-devtools`, `profiler`, `plugin add|list|show|run`, > `confirm`/`deny`, `--webgpu` and the MCP `--tools` surface. Checked against the upstream > CHANGELOG, `pushstate` and `--init-script` landed in 0.27.0, the plugin system and the > MCP `--tools <profiles>` surface in 0.28.0, and `--webgpu` in 0.31.2; `removeinitscript` > and `confirm`/`deny` appear nowhere in it. Only `--pin-tab`/`--no-pin-tab` was actually > 0.34.0. The rest of this file already dated `pushstate` to v0.27 in two other places, > so the file contradicted it
The Complete AI Development Toolkit for Claude Code. 106 skills, 36 agents, 171 hooks. Install `ork` for stable (v9.x), or `ork-alpha` for the v10 line, which ships daily.
Repo: yonatangross/orchestkit
Assess a code change, design, architecture, workflow, or competing options against explicit criteria and evidence. Use when a request asks to assess, rate,…
Compare plausible implementation, architecture, product, or operational approaches before committing to one. Use when a request asks to brainstorm, think…
Map an unfamiliar codebase, feature, architecture, data flow, or operational path with file-backed evidence. Use when a request asks how a system works, where…
Make an approved, scoped change and prove the affected behavior. Use when a request asks to implement, build, add, or land a feature that already has an agreed…
Review a pull request or branch for correctness, regressions, security, operational risk, and missing evidence. Use when a request asks to review a PR, review…
Verify that existing work is ready to merge, release, or hand off using an explicit evidence contract. Use when a request asks to verify, validate, prove,…