Agent skill · Audited from source
agent-browser
skill · 101-skills/skillsLicence not declaredAudited 20 Oct 2026 · source 4599ef28a2a7
Is it safe? Yes — SAFE, grade B (89/100). We read this skill's source at commit 4599ef28a2a7 and found no filesystem, network or shell access and no hard-coded secrets. What it does: Browser automation for AI agents via inference.sh. Navigate web pages, interact with elements using @e refs, take screenshots, record video. Capabilities: web scraping, form filling, clicking, typing, drag-drop, file…
Cite
Cite this page
ModelsAtlas. “agent-browser (101-skills/skills)”. Retrieved 20 Oct 2026. https://modelsatlas.com/skills/101-skills/agent-browser
18 skills are called “agent-browser”. You are viewing 101-skills/skills. 1 of them is BLOCK.
- 101-skills/skills★ 773✓SAFE
- code-yeongyu/oh-my-opencode★ 70k!CAUTION
- shanraisshan/claude-code-best-practice★ 68k✓SAFE
- vercel-labs/agent-browser★ 44k✓SAFE
- emdash-cms/emdash★ 13k!CAUTION
and 13 more with this name.
Trust audit
Audit 0.4.1 · source read 20 Oct 2026
SAFE means nothing in the source contradicts what the skill says it does. Grade B is shared by 13,985 of 14,816 audited skills.
What the source does
- FilesystemNone observedNo reads or writes in the source
- NetworkNone observedNo outbound calls in the source
- ShellNone observedNo commands run in the source
- DependenciesPinnedNothing floats
- SecretsNone foundNo keys in source
Five audit layers
| Layer | What we check | Result | Findings |
|---|---|---|---|
L0 Provenance | Repo owner, licence, archive status, activity | PASS | 1 |
L1 Static source | Secrets, path traversal, supply chain, hidden code | PASS | 0 |
L2 Instructions | Prompt injection, authority framing, hidden directives | PASS | 2 |
L3 Inventory | The files and declarations match the source | PASS | 0 |
L4 Sandbox | Run in isolation and watch behaviour | SKIPPED why | 0 |
Gates applied: no behavioural pass, no license.
Findings (3)
LOWInventory / provenanceinv.no_license
- Why
- no LICENSE file and no repo licence
- Fix
- add a licence
LOWPrompt injectionprompt.credential_read · references/authentication.md:243
export PASSWORD=$(cat /path/to/secure/password)
- Why
- asks the agent to read credentials
- Fix
- —
LOWPrompt injectionprompt.credential_read · references/authentication.md:246
export PASSWORD=$(vault read -field=password secret/app)
- Why
- asks the agent to read credentials
- Fix
- —
Audit 0.4.1 · source sha 4599ef28a2a7 · 20 Oct 2026Report an issue or request a re-scan
Provenance
Who published it, and what the verdict is pinned to
- Publisher101-skills GitHub organizationOwner of the repository this skill is read from
- Source folder101-skills/skills/tools/utilities/agent-browserThe exact folder we audited
- LicenceNot declaredAs the repository states it
- Commit pinned for this verdict4599ef28a2a7A new audit runs when the source changes
- Repository statusNot archivedLast push 5 days ago
- Sandboxed runNot runSkills are read, not executed; layer L4 is skipped
What it tells the agent
Full source on GitHub ↗Its description: Browser automation for AI agents via inference.sh. Navigate web pages, interact with elements using @e refs, take screenshots, record video. Capabilities: web scraping, form filling, clicking, typing, drag-drop, file…
---
name: agent-browser
description: "Browser automation for AI agents via inference.sh. Navigate web pages, interact with elements using @e refs, take screenshots, record video. Capabilities: web scraping, form filling, clicking, typing, drag-drop, file upload, JavaScript execution. Use for: web automation, data extraction, testing, agent browsing, research. Triggers: browser, web automation, scrape, navigate, click, fill form, screenshot, browse web, playwright, headless browser, web agent, surf internet, record video"
allowed-tools: Bash(belt *)
---
> **Install the belt CLI skill:** `npx skills add belt-sh/cli`
# Agentic Browser
Browser automation for AI agents via [inference.sh](https://inference.sh). Uses Playwright under the hood with a simple `@e` ref system for element interaction.

## Quick Start
> Requires inference.sh CLI (`belt`). [Install instructions](https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md)
```bash
belt login
# Open a page and get interactive elements
belt app run agent-browser --function open --input '{"url": "https://example.com"}' --session new
```
## Core Workflow
Every browser automation follows this pattern:
1. **Open** - Navigate to URL, get `@e` refs for elements
2. **Interact** - Use refs to click, fill, drag, etc.
3. **Re-snapshot** - After navigation/changes, get fresh refs
4. **Close** - End session (returns video if recording)
```bash
# 1. Start session
RESULT=$(belt app run agent-browser --function open --session new --input '{
"url": "https://example.com/login"
}')
SESSION_ID=$(echo $RESULT | jq -r '.session_id')
# Elements: @e1 [input] "Email", @e2 [input] "Password", @e3 [button] "Sign In"
# 2. Fill and submit
belt app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "fill", "ref": "@e1", "text": "[email protected]"
}'
belt app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "fill", "ref": "@e2", "text": "password123"
}'
belt app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "click", "ref": "@e3"
}'
# 3. Re-snapshot after navigation
belt app run agent-browser --function snapshot --session $SESSION_ID --input '{}'
# 4. Close when done
belt app run agent-browser --function close --session $SESSION_ID --input '{}'
```
## Functions
| Function | Description |
|----------|-------------|
| `open` | Navigate to URL, configure browser (viewport, proxy, video recording) |
| `snapshot` | Re-fetch page state with `@e` refs after DOM changes |
| `interact` | Perform actions using `@e` refs (click, fill, drag, upload, etc.) |
| `screenshot` | Take page screenshot (viewport or full page) |
| `execute` | Run JavaScript code on the page |
| `close` | Close session, returns video if recording was enabled |
## Interact Actions
| Action | Description | Required Fields |
|--------|-------------|-----------------|
| `click` | Click element | `ref` |
| `dblclick` | Double-click element | `ref` |
| `fill` | Clear and type text | `ref`, `text` |
| `type` | Type text (no clear) | `text` |
| `press` | Press key (Enter, Tab, etc.) | `text` |
| `select` | Select dropdown option | `ref`, `text` |
| `hover` | Hover over element | `ref` |
| `check` | Check checkbox | `ref` |
| `uncheck` | Uncheck checkbox | `ref` |
| `drag` | Drag and drop | `ref`, `target_ref` |
| `upload` | Upload file(s) | `ref`, `file_paths` |
| `scroll` | Scroll page | `direction` (up/down/left/right), `scroll_amount` |
| `back` | Go back in history | - |
| `wait` | Wait milliseconds | `wait_ms` |
| `goto` | Navigate to URL | `url` |
## Element Refs
Elements are returned with `@e` refs:
```
@e1 [a] "Home" href="/"
@e2 [input type="text"] placeholder="Search"
@e3 [button] "Submit"
@e4 [select] "Choose option"
@e5 [input type="checkbox"] name="agree"
```
**Important:** Refs are invalidated after navigation. Always re-snapshot after:
- Clicking links/buttons that navigate
- Form submissions
- Dynamic content loading
## Features
### Video Recording
Record browser sessions for debugging or documentation:
```bash
# Start with recording enabled (optionally show cursor indicator)
SESSION=$(belt app run agent-browser --function open --session new --input '{
"url": "https://example.com",
"record_video": true,
"show_cursor": true
}' | jq -r '.session_id')
# ... perform actions ...
# Close to get the video file
belt app run agent-browser --function close --session $SESSION --input '{}'
# Returns: {"success": true, "video": <File>}
```
### Cursor Indicator
Show a visible cursor in screenshots and video (useful for demos):
```bash
belt app run agent-browser --function open --session new --input '{
"url": "https://example.com",
"show_cursor": true,
"record_video": true
}'
```
The cursor appears as a red dot that follows mouse movements and shows click feedback.
### Proxy Support
Route traffic through a proxy server:
```bash
belt app run agent-browser --function open --session new --input '{
"url": "https://example.com",
"proxy_url": "http://proxy.example.com:8080",
"proxy_username": "user",
"proxy_password": "pass"
}'
```
### File Upload
Upload files to file inputs:
```bash
belt app run agent-browser --function interact --session $SESSION --input '{
"action": "upload",
"ref": "@e5",
"file_paths": ["/path/to/file.pdf"]
}'
```
### Drag and Drop
Drag elements to targets:
```bash
belt app run agent-browser --function interact --session $SESSION --input '{
"action": "drag",
"ref": "@e1",
"target_ref": "@e2"
}'
```
### JavaScript Execution
Run custom JavaScript:
```bash
belt app run agent-browser --function execute --session $SESSION --input '{
"code": "document.querySelectorAll(\"h2\").length"
}'
# Returns: {"result": "5", "screenshot": <File>}
```
## Deep-Dive Documentation
| Reference | DeExcerpt, first 6,000 characters of SKILL.md, verbatim from the audited commit. It is text from someone else’s repository, quoted so you can judge it before your agent reads it.
Install
Pinned to the audited commit 4599ef2
npx skills add inference-sh/skills@web-search npx skills add inference-sh/skills@llm-models
git clone https://github.com/101-skills/skills git -C skills checkout 4599ef28a2a7
Commands as the repository documents them: shown, never run by us. Our verdict covers commit 4599ef28a2a7 only.
Works in which agents?
What its own text says, not a test
| Agent | Status | More |
|---|---|---|
| Cursor | Mentioned in its text, not tested | Skills for Cursor · About Cursor |
Audit history
Every audit, every source change
- ✓SAFE B 89 / 100
first audit · source
4599ef28a2a7
README badge
For maintainers · shows the latest audit
[](https://modelsatlas.com/skills/101-skills/agent-browser/)
The badge shows our verdict and grade for this skill, and links back to this page. It changes when the audit does.
Similar skills
obra/superpowers
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions…
obra/superpowers
Use when you have a spec or requirements for a multi-step task, before touching code
obra/superpowers
Use when starting any conversation - establishes how to find and use skills, requiring skill invocation before ANY response including clarifying questions
Add this badge to your README
[](https://modelsatlas.com/skills/101-skills/agent-browser/)
<a href="https://modelsatlas.com/skills/101-skills/agent-browser/"><img src="https://modelsatlas.com/skills/101-skills/agent-browser/badge.svg" alt="ModelsAtlas: SAFE B"></a>
Questions about agent-browser
What does the agent-browser skill do?
Is agent-browser safe to install?
What can agent-browser access on my machine?
Which assistants does agent-browser work with?
How current is this page?
Sources
- github.com/101-skills/skills/tree/main/tools/utilities/agent-bro — the audited source at commit 4599ef28a2a7 and every finding aboveObserved · 20 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What does the agent-browser skill do?
- Is agent-browser safe to install?
- What can agent-browser access on my machine?