# Browser Skill

Use injected bsk_* tools with the user's logged-in Chromium to read pages, fill forms...

- Repository: https://github.com/Tencent/BrowserSkill (9877 stars)
- Category: Design
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add Tencent/BrowserSkill --skill browser-skill -g -a claude-code -y`
Codex: `npx skills add Tencent/BrowserSkill --skill browser-skill -g -a codex -y`
Cursor: `npx skills add Tencent/BrowserSkill --skill browser-skill -g -a cursor -y`
Gemini CLI: `npx skills add Tencent/BrowserSkill --skill browser-skill -g -a gemini-cli -y`

## Description

Use injected bsk_* tools with the user's logged-in Chromium to read pages, fill forms, manage tabs, debug websites, or test UIs.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# browser-skill for DeepSeek Harness

All browser work must use the injected tools directly, in an Agent Window with existing logins.
Never control the browser through another process. Follow the loaded action schemas.
Never extract credentials, cookies, tokens, or other secrets.

## Before acting

Human collaboration is automatic. Read [cooperation](references/cooperation.md) before acting; no enable/share call is needed.

If a browser profile is required, read [tabs and profiles](references/tabs-and-profiles.md)
before starting. Verify its instance mapping and bind every new session explicitly.
Never omit `browser` or substitute another instance to recover.
Borrow confirmation and human help follow the extension's Automation settings;
never change them or switch backends to bypass a prompt.
For remote setup/pairing, follow the [remote guide](https://github.com/Tencent/BrowserSkill/blob/main/docs/remote-extension-connection.md).

## Mandatory workflow

1. Define success. Start a session and retain `sessionId`. Include the verified `browser`
   when a profile is required. For debugging or requested video, read the matching
   reference below and start capture before navigation. Leave capture off otherwise.
   For a new page:

   ```text
   bsk_session({ action: "start" })
   bsk_page({ action: "navigate", session: "<id>", url: "https://example.com" })
   bsk_session({ action: "sync", session: "<id>" })
   ```

The rest: https://github.com/Tencent/BrowserSkill/blob/HEAD/packages/dsh-plugin-browserskill/skill/SKILL.md
