·
Last changedVersion:
This version passed the hardening gate. Hardening updated the skill content and independently checked the resulting changes. Classified findings before hardening: 11. Classified findings closed: 4. Classified findings remaining: 7. Unclassified scanner findings remaining: 0. Review findings closed: 6. Review findings remaining: 14.
1
2
8
7
Expand | File | Group | Subtype | Severity | Status |
|---|---|---|---|---|---|
SKILL.md | Excessive Agency & Rogue Autonomy | — | High | Closed | |
templates/authenticated-session.sh | Sensitive Data & Secret Exposure | Hardcoded secret | Medium | Closed | |
SKILL.md | Supply Chain & Install-Time Trust | — | Medium | Closed | |
references/authentication.md | Tool & MCP Manipulation | MCP configuration abuse | Low | Open | |
SKILL.md | Tool & MCP Manipulation | MCP configuration abuse | Low | Closed | |
SKILL.md | Prompt Injection | Third-party content as instructions | Low | Open | |
references/proxy-support.md | Tool & MCP Manipulation | MCP configuration abuse | Low | Open | |
SKILL.md | Malicious Code & Command Execution | Command injection | Low | Open |
11 findings
Browser automation for AI agents via inference.sh. Uses Playwright under the hood with a simple @e ref system for element interaction.
Every browser automation follows this pattern:
@e refs for elements| Function | Description |
|---|---|
| Navigate to URL, configure browser (viewport, proxy, video recording) |
| Re-fetch page state with |
| Perform actions using |
| Take page screenshot (viewport or full page) |
| Run JavaScript code on the page |
| Close session, returns video if recording was enabled |
| Action | Description | Required Fields |
|---|---|---|
| Click element |
|
| Double-click element |
|
| Clear and type text |
|
| Type text (no clear) |
|
| Press key (Enter, Tab, etc.) |
|
| Select dropdown option |
|
| Hover over element |
|
| Check checkbox |
|
| Uncheck checkbox |
|
| Drag and drop |
|
| Upload file(s) |
|
| Scroll page |
|
| Go back in history | - |
| Wait milliseconds |
|
| Navigate to URL |
|
Elements are returned with @e refs:
Important: Refs are invalidated after navigation. Always re-snapshot after:
Record browser sessions for debugging or documentation:
Show a visible cursor in screenshots and video (useful for demos):
The cursor appears as a red dot that follows mouse movements and shows click feedback.
Route traffic through a proxy server:
Upload files to file inputs:
Drag elements to targets:
Run custom JavaScript:
| Reference | Description |
|---|---|
Full function reference with all options | |
Ref lifecycle, invalidation rules, troubleshooting | |
Session persistence, parallel sessions | |
Login flows, OAuth, 2FA handling | |
Recording workflows for debugging | |
Proxy configuration, geo-testing |
| Template | Description |
|---|---|
Form filling with validation | |
Login once, reuse session | |
Content extraction with screenshots |
Browser state persists within a session. Always:
--session new on first callsession_id for subsequent callsGet started with chainctlchainctl skill install public/qu-skills/agent-browser:latest
Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.
skills.cgr.dev/public/github.com/qu-skills/tools/utilities/agent-browser:latest
MIT
HARDENING.md
SKILL.md
references/authentication.md
references/commands.md
references/proxy-support.md
references/session-management.md
references/snapshot-refs.md
references/video-recording.md
templates/authenticated-session.sh
templates/capture-workflow.sh
templates/form-automation.sh