jet-browser
Verifies or integrates Jet Browser for isolated browser sessions. Useful for automated testing and reproducible runtime checks.
What it does
Jet Browser is a program that creates a safe and isolated environment to run websites. It allows you to test how a website works in a clean browser, take 'pictures' of pages, and interact with elements as if you were a real user, all in a controlled manner.
When to use it
- ✓When you need to test a website in a clean and isolated environment.
- ✓To take 'pictures' (screenshots) of web pages automatically.
- ✓To automate repetitive tasks on websites, such as filling out forms.
Example of what to ask your AI
“I want to test how website X works in an isolated browser and take a screenshot of the main page.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
It works by creating a 'container' (an isolated box) where a special browser (WebKit) runs. You send commands to it, like 'go to this page' or 'click here', and it returns the result, such as an image or information about the page.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add sickn33/agentic-awesome-skills --skill jet-browserOr download just the file:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/jet-browser/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Jet Browser
Overview
Use Jet Browser as a replaceable browser-runtime boundary for an agent or deterministic test runner. It runs one isolated WPE WebKit session per container and exposes ordered JSONL commands for navigation, native input, semantic inspection, screenshots, and cleanup.
Keep model selection, reasoning, credentials, and orchestration in the calling project. Jet Browser is a browser runtime, not an agent framework, hosted proxy network, anti-bot service, or bridge to a user's personal Chrome profile.
When to Use This Skill
- Use when a project needs a self-hosted browser process with an explicit container lifecycle.
- Use when a harness needs framework-neutral, ordered JSONL instead of a bundled agent loop.
- Use when native pointer, keyboard, touch, DOM, and screenshot evidence should share one runtime.
- Use when a repository needs a reproducible offline smoke test or GitHub Actions browser-runtime check.
- Do not use this skill to control an already-running personal Chrome or reuse its logged-in state; use the environment's permission-approved CDP workflow for that.
Safe Setup and Verification
1. Establish the boundary before downloading
Confirm that the user wants a separate Jet Browser container rather than their daily browser. Check for Docker and Node.js 24+, and report a missing requirement instead of claiming the runtime was verified.
For a new checkout or upgrade, identify an immutable release or full commit, inspect the repository's package.json, lifecycle scripts, lockfile, Dockerfiles, executable files, symlinks, network access, and credential handling, and summarize what will run. Obtain explicit approval before downloading and again before installing dependencies, building images, or starting containers. A Git commit pin provides reproducibility, not proof of trust.
The v0.9.0 source commit reviewed for this catalog entry is:
b0867303260212eaeb427970b9a7fc6f8eed2fe1
Review a newer source tree independently before changing that pin.
2. Run the standalone acceptance flow
After the approvals above, install the pinned source's exact lockfile dependencies and run its standalone check:
npm ci
npm run standalone
Treat the command's observed JSON result as the acceptance check. A passing run must start the local page, verify the JavaScript marker, type through the native input path, capture a PNG, keep the smoke browser's outbound network disabled, and shut the container down cleanly.
For source changes, also run:
npm test
cargo test --all-targets
Never report a pass when Docker, Node.js, the image build, browser startup, native input, DOM verification, screenshot capture, or cleanup did not actually complete.
3. Integrate the documented contract
Read docs/demo.md for the container lifecycle and docs/agent-tools.md for model-facing declarations. Prefer the versioned declarations exported by sdk/tools.mjs; do not invent tool names, input fields, or response shapes.
Send one JSON command per line and consume one JSON response per line. Preserve ordering, bound inputs and outputs in the calling harness, and close the session in guaranteed cleanup. Keep one container per mutually untrusted session, mount profile or download paths explicitly, and never pass unrelated host credentials into the container.
Use semantic evidence for target selection and screenshots for visual verification when both are available. Treat evaluation, imported profiles, downloads, and outbound network access as privileged capabilities that require the calling application to define its own authorization and policy gates.
Examples
Example 1: Verify a pinned source checkout
After inspecting the pinned source and receiving the required approvals:
git clone --filter=blob:none --no-checkout https://github.com/masakaai/jet-browser.git
git -C jet-browser checkout --detach b0867303260212eaeb427970b9a7fc6f8eed2fe1
cd jet-browser
npm ci
npm run standalone
Report the exact command result and which acceptance assertions ran. Do not translate a partial build or startup log into a successful verification.
Example 2: Verify Jet Browser in GitHub Actions
Pin the Action to the reviewed full commit rather than a moving branch or tag:
permissions:
contents: read
jobs:
verify-browser-runtime:
runs-on: ubuntu-latest
steps:
- name: Verify Jet Browser
…
FAQ
Do I need to have Chrome installed?
No, Jet Browser uses a different browser version called WebKit, which runs within its own isolated environment.
Can I use my logged-in accounts from my regular Chrome?
No, Jet Browser is completely separate from your personal browser. It does not access your accounts or history.
Is it safe to use?
Yes, it is designed to be safe as it runs in an isolated environment and does not share information with your main browser. It's important to always verify the program's source before use.
Details
Original description by the author
Verify or integrate Jet Browser when a project needs isolated WPE WebKit sessions, native input, screenshots, ordered JSONL automation, or reproducible runtime checks.
Popularity
- GitHub stars
- 48k
- Ranking position
- #3375
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
00-andruia-consultant
Helps your agent start or improve AI projects. It analyzes code, suggests tools, and creates action plans in Spanish.
sickn33/agentic-awesome-skills
007
Lets your agent perform security audits and threat modeling. It's useful for protecting projects against attacks and vulnerabilities.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Helps your agent create or improve AI tools. It defines how tools work, writes documentation, and validates the structure.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Lets your agent create a summary about a specific industry. It's useful for understanding the context, rules, usage patterns, and risks of a project, using reliable sources.
sickn33/agentic-awesome-skills
Similar skills
dashboard-builder
Helps your agent create useful monitoring dashboards. It turns data into charts that answer important system questions.
affaan-m/ECC
dev-team
Simulates a collaborative development team where different roles respond to a problem together. It's useful for getting multiple perspectives without manually switching agents.
affaan-m/ECC
ecc-council
Has your agent convene a four-voice council for difficult decisions. It's useful when there are multiple good options and debate is needed before choosing.
affaan-m/ECC