agentleFS
LocalKinAILocalKinAI/kinclaw/skills/browser_session/SKILL.md

browser_session

Skill9 starsChanged 6 months agoApache-2.0View on GitHub

Multi-step browser automation via browser-use — the open-source framework for autonomous browser navigation (91K+ stars, MIT). Use INSTEAD of `web` when the task spans more than a single page fetch:

  • Reads credentials
  • Installs packages

The file

We split this skill into the rules it gives an agent

1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If browser-use ships a new version, we re-run setup.sh — the SKILL.md interface stays the same.

    line 126

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

browser_session — multi-step browser automation

A web claw on steroids. While web is a one-shot Playwright wrapper good for "fetch this page and read it", browser_session hands the entire interaction loop to browser-use — a framework that keeps a persistent browser, decorates the DOM with numbered element IDs, and has its own LLM-driven planning loop to execute multi-step tasks.

When to use which

NeedToolWhy
Read one page's contentwebCheap (~3s cold start), trivial
Run one JS expressionwebSame
Take one screenshotwebSame
Click + type oncewebSame — click= + type_text=
Login + then do stuffbrowser_sessionPersistent session
5+ page navigationbrowser_sessionNo cold-start per step
Form + multi-page wizardbrowser_sessionFramework handles state
Anything where a CSS selector won't survivebrowser_sessionElement-index targeting

Why a super-skill

browser_session is the first member of LocalKin's super-skill pattern: skills that wrap a battle-tested third-party OSS framework (here, browser-use's 91K-star codebase) inside a thin SKILL.md adapter. The kinclaw kernel doesn't care that there's an entire LLM-driven planning agent inside; it just sees one tool call going in, one result coming out.

This is "thin soul, fat skill" pushed to its useful extreme:

  • We don't reinvent browser-use. We host it.
  • Other LocalKin souls (researcher / marketer / curator) can also enable browser_session and get the same capability.
  • If browser-use ships a new version, we re-run setup.sh — the SKILL.md interface stays the same.

Setup details

./setup.sh:

  1. Picks a Python ≥3.11 (homebrew, pyenv, or system) — browser-use doesn't support 3.10
  2. Creates ./.venv/ (per-skill venv, isolated)
  3. pip install browser-use playwright
  4. playwright install chromium (~92 MB Chrome Headless Shell)
  5. Verifies the imports work

The venv lives in ./.venv/. Add .venv/ to .gitignore so the ~500 MB of dependencies don't get committed.

LLM selection

The framework drives a real LLM internally. Pick one with vision support — browser-use feeds screenshots to the LLM for visual reasoning. Recommended (in descending preference):

  1. claude-sonnet-4.5 via ANTHROPIC_API_KEY — current SOTA for browser-use's WebVoyager benchmark
  2. gpt-4o via OPENAI_API_KEY — second-best, cheaper
  3. Local Ollama with a vision model (e.g. qwen2.5-vl:7b) via OLLAMA_BASE_URL=http://localhost:11434 — free but ~3-5x slower per step; good for long batch runs you don't want to pay for

Set BROWSER_USE_MODEL=<name> to override the default for the selected provider.

Returns

stdout: the agent's final answer (a string — could be markdown if the task asked for structured output).

stderr: errors, warnings, the playwright/chromium boot noise.

Non-zero exit: agent failed or reported errors. The kernel will surface this as a tool error to the calling soul.

Costs

A typical 5-step task with Claude Sonnet:

  • ~30-60 seconds wall-clock
  • ~$0.05-0.15 in API tokens (browser-use sends DOM + screenshot at every step)

For dev/test use the local Ollama path; for production runs use Anthropic.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.