luum-home/luum-cognitive-os/browser-task

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Use when an agent or operator needs to drive a real web browser - navigate

Install

npx vskill@latest install luum-home/luum-cognitive-os/browser-task

SKILL.md

Browser Task

Drive a real browser for navigation, extraction, and form-fill workflows.

Trigger

Use this skill when the work needs a live browser - not a plain HTTP fetch. Typical cases:

  • "Navigate to a URL and extract the price table."
  • "Fill out a form and record the confirmation page."
  • "Scrape a dashboard after logging in."

If a plain HTTP fetch (no JS, no auth, no interaction) suffices, prefer WebFetch - it is cheaper and faster.

Prerequisites

  1. The web-automation optional dependency must be installed via:

uv sync --extra web-automation.

  1. One of the supported LLM credentials must be available in env, OR the

hosted ChatBrowserUse endpoint will be used (pricing: $0.20 / $2.00 per million input / output tokens).

  1. The kill switch COS_DISABLE_WEB_AUTOMATION=1 MUST NOT be set. If it is,

the router will refuse and you must escalate to the operator.

How to invoke

From Python (a skill or sub-agent)
python
from cos_lib.web_automation_router import route, WebAutomationUnavailable
from cos_lib.dispatch_cost_predictor import predict_call_cost
try:
adapter = route(
"Navigate to the target URL and extract the headline.",
llm_provider="browser_use",
cost_predictor=predict_call_cost,
)
result = await adapter.run_task(
"Navigate to the target URL and extract the headline.",
max_steps=20,
headless=True,
)
except WebAutomationUnavailable as exc:
# Surface to operator; do NOT silently fall back to a non-browser tool.
raise
From a synchronous context
python
result = adapter.run_task_sync(task, max_steps=20)
Result shape

WebAutomationResult has:

  • success: bool
  • final_url: str
  • screenshots_paths: list[str]
  • extracted_data: dict
  • error: str (empty on success)
  • token_usage: {"input": int, "output": int}
  • cost_usd: float
  • steps: int

Kill switch

Set the env var COS_DISABLE_WEB_AUTOMATION=1.

When set, both cos_lib.web_automation_router.route() and cos_lib.browser_use_adapter.BrowserUseAdapter(...) raise WebAutomationUnavailable. This is the operator-level off switch - there is no silent fallback.

Cost model

  • Owned providers (anthropic, openai): cost flows through

cos_lib.dispatch_cost_predictor.predict_call_cost(provider, ...) exactly like any other LLM dispatch. The ADR-228 session budget gate sees web automation as a normal cost source.

  • `ChatBrowserUse` (hosted): $0.20 / $2.00 per million input / output

tokens, computed directly by the adapter.

A failed run still records the tokens it consumed. Partial cost is honest cost.

Defaults and limits

  • headless=True by default. Override only when an operator is watching.
  • max_steps=50 by default. Raise only after a cost prediction shows it is

worth it; a runaway loop is the most likely way to overspend.

  • Untrusted URLs: set COS_BROWSER_USE_TRUSTED_ONLY=1 and gate the URL at

the call site until the future dispatch-integration ADR lands sandbox preflight (ADR-232) for browser runs.

Troubleshooting

SymptomLikely causeFix
browser_use is not installedMissing optional extrauv sync --extra web-automation
Kill switch errorCOS_DISABLE_WEB_AUTOMATION=1 setUnset after operator approval
task does not match ...Router intent filterRe-invoke with force=True or rewrite the task
success=False with errorPage failed (timeout, captcha, blocked)Inspect screenshots; reduce scope; do not retry blindly

References

  • ADR-288 - Web-Automation Adapter for Dispatch.
  • Upstream: browser-use (MIT).
  • Cost flow: lib/dispatch_cost_predictor.py.
  • Event emission: packages/agent-coordination/lib/agent_bus.py::AgentPublisher.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/luum-home/luum-cognitive-os/browser-task/badge)](https://verified-skill.com/skills/luum-home/luum-cognitive-os/browser-task)

Something wrong with this skill or its page? Tell us.