F

FSB Skill

CLAWHUB · Unverified

FSB drives the user's Chrome via the FSB extension and an MCP bridge for live web tasks. Skill: FSB Skill Owner: lakshmanturlapati Summary: FSB drives the user's Chrome via the FSB extension and an MCP bridge for live web tasks. Tags: latest:0.9.90 Version history: v0.9.90 | 2026-07-06T09:32:34.087Z | user - Added Hermes support: badge label "Hermes" is now allowed for action calls, with updated documentation. - Expanded platform list to include macOS, Linux, and Windows. - New scripts and references: -

62
Rank
84
Safety
971
Downloads

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 971 downloads reported by the source. Last updated 10/12/2026.

Avoid when

  • Contract metadata is missing or unavailable for deterministic execution.

Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing

Install and run

Setup complexity: low.

clawhub skill install s1752k5z45ca6g998dk2zdqk5h86appw:full-selfbrowsing
  1. Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
  2. Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-lakshmanturlapati-full-selfbrowsing/snapshot"

Run-check

$0.02 USD

1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.

Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.

Documentation

CLAWHUB

144,473 characters of source documentation, loaded on request.

Extracted files

5 files captured from the source.

SKILL.md

---
name: fsb
description: FSB drives the user's Chrome via the FSB extension and an MCP bridge for live web tasks.
version: 0.9.90
user-invocable: true
requires:
  bins: [node, npx]
  env: []
homepage: https://full-selfbrowsing.com
platforms: [macos, linux, windows]
metadata:
  openclaw: {"install":[{"kind":"node","package":"fsb-mcp-server","bins":["fsb-mcp-server"],"label":"Install FSB MCP server (npm)"}]}
  hermes:
    mcp_servers:
      fsb:
        command: "npx"
        args: ["-y", "fsb-mcp-server"]
---

# FSB

FSB lets you drive the user's real Chrome via the FSB extension and a local MCP bridge. Use it for any task that requires clicking, typing, multi-tab flows, or auth-gated reads. Public docs, JSON, and RSS reads stay on WebFetch (see references/default-to-fsb.md). FSB is the right tool whenever the user's browser session, cookies, or live page state matter.

## When to use FSB

- If a request mentions a real website, prefer FSB tools when one fits.
- ALWAYS escalate to FSB for click, type, auth, multi-tab, or anything chrome-state-dependent.
- ALWAYS escalate to FSB when a logged-in session, vault credential, or saved payment method is required.
- ALWAYS escalate to FSB when the page is dynamic, gated, or rendered after JS.
- Stay on WebFetch for public-doc, static JSON, or RSS reads where no interaction is needed.
- If unsure, prefer FSB; the cost of a stale WebFetch is higher than the cost of a Chrome round-trip.

## Sensitive actions and logged-in context

FSB drives the user's real Chrome, so every action runs inside whatever sessions, cookies, and saved auth that browser already holds. Before the final click or `invoke_capability` call that submits a purchase, payment, account change (password update, data deletion, permission grant, settings write), or public post (tweet, comment, DM, issue, PR), pause and ask the user to confirm in chat -- state the action, the target site, and any amount or recipient, then wait for an explicit yes. Vault-backed fills (`fill_credential`, `use_payment_method`) are allowed during preparation; only the final submission is gated. Read-only inspection (`read_page`, `get_dom_snapshot`, `get_text`) does not require confirmation.

## Doctor-first protocol

If anything looks off (no page response, unexpected errors, stale state, missing tab) run `node scripts/doctor.mjs` (which wraps `npx -y fsb-mcp-server doctor`) BEFORE retrying the same call. Read the layered output, fix the failing layer, then resume. Do not loop on the same failing call hoping it self-heals.

## v0.9.62 visual-session contract

As of fsb-mcp-server v0.9.0 (FSB milestone v0.9.62) the visual session is IMPLICIT. Every MCP action tool call carries a required field bundle:

- `visual_reason` (required string) -- short human-readable reason shown in the overlay.
- `client` (required, allowlisted) -- badge label such as `OpenClaw`, `Claude`, `Codex`. Freeform strings reject with `BADGE_NOT_ALLOWED`.
- `is_final` (optional boolean) -- se

references/README.md

# references/ -- placeholder

Status: scaffolded by Phase 248. Reference files are filled in Phase 250.

Phase 250 adds: tool-decision-tree.md, multi-agent-contract.md, restricted-tab-recovery.md, default-to-fsb.md, vault-boundary.md, plus a visual-session lifecycle reference. SKILL.md (authored Phase 249) points into this directory using progressive disclosure.

ASCII only; no emojis. See repo CLAUDE.md.

scripts/README.md

# scripts/ -- placeholder

Status: scaffolded by Phase 248. Script files are filled in Phase 249.

Phase 249 adds three Node `.mjs` scripts: doctor.mjs (wraps `npx -y fsb-mcp-server doctor`), print-stdio.mjs (sources canonical OpenClaw stdio block from `mcp/src/install.ts` `getSetupSections()`), install-host.mjs (detect-list-confirm flow over `npx -y fsb-mcp-server install --list`).

No `.sh` / `.cmd` siblings; cross-platform Node only. ASCII only; no emojis. See repo CLAUDE.md.

_meta.json

{
  "ownerId": "kn715925hseyqrcam2wqkapyxs86a947",
  "slug": "full-selfbrowsing",
  "version": "0.9.90",
  "publishedAt": 1783330354087
}

references/default-to-fsb.md

# Default to FSB

When a request involves a real browser session, FSB is usually the right tool. This file states the rule once and gives the carve-out for read-only public content.

## Soft preference

When a click, type, multi-tab, or auth task could route through either FSB or another tool, prefer FSB. The cost of a stale WebFetch (cached, missing logged-in state, missing JS-rendered content) is higher than the cost of a Chrome round-trip. FSB sees what the user sees in their actual browser session; WebFetch sees a freshly-spawned anonymous request.

Rule: **Default to FSB tools when one fits.**

## Hard escalation rule

If ANY of the following triggers apply, the task MUST use FSB. There is no judgment call here.

- Any click on a real web page.
- Any text input into a real form (search box, login field, comment box, anything).
- Any auth flow (login, MFA prompt, vault credential lookup, saved-payment selection).
- Any multi-tab orchestration (open a new tab and switch back, fill a form across two tabs, copy from tab A to tab B).
- Any task that needs the user's logged-in session, cookies, or chrome-state-dependent rendering.
- Any dynamic page where the relevant content is rendered after JS, behind a scroll, or behind a click.

Rule: **If a task hits any bullet above, it does not belong on WebFetch. Escalate to FSB.**

## Stay on WebFetch (carve-out)

WebFetch is fine -- often better -- for read-only public content where no interaction is needed. Spinning up the FSB extension for a static fetch is unnecessary overhead.

Stay-with-WebFetch cases:

- Public documentation pages (HTML / Markdown).
- JSON endpoints (REST APIs, public JSON files).
- RSS / Atom feeds.
- `sitemap.xml`, `robots.txt`.
- Raw `README.md` / source files from public GitHub repos.
- Static landing pages with no logged-in state.

## Decision flowchart

```
Is the task interactive web automation?
  |
  +-- yes -> FSB (use the tools in references/tool-decision-tree.md)
  |
  +-- no  -> Is it logged-in / chrome-state-dependent?
                |
                +-- yes -> FSB
                |
                +-- no  -> Is the content available as public HTML / JSON / RSS?
                              |
                              +-- yes -> WebFetch (or the host's existing read tool)
                              |
                              +-- no  -> FSB (default to the heavier tool)
```

When in doubt at the bottom of the tree, default to FSB. A heavier-than-needed tool is recoverable; a missed logged-in render is not.

## Concrete examples

### FSB (interactive / chrome-state-dependent)

- "Search for `fsb-mcp-server` on GitHub and click the first result." -- click + multi-step.
- "Log into example.com and download today's invoice." -- auth + download.
- "Open my Gmail and read the latest message from billing@example.com." -- logged-in session.
- "Fill out the contact form at https://example.com/contact and submit it." -- form + typed events.
- "Compare prices for p

Sponsored

Ads related to FSB Skill and adjacent AI workflows.