← Back to Skills Marketplace
yumyumtum

yumweb

by TommyYanPS · GitHub ↗ · v0.1.0 · MIT-0
cross-platform ⚠ pending
36
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install yumweb
Description
Use an already-logged-in Edge/Chrome/Chromium browser as the agent's hands. A persistent logged-in browser bridge for OpenClaw, Copilot CLI, Claude Code, Her...
README (SKILL.md)

yumweb — logged-in browser bridge for AI agents

Platform: Windows / macOS / Linux, with any Chromium-based browser (Microsoft Edge preferred; Chrome / Chromium also auto-detected). Python: 64-bit only — Playwright's greenlet dependency has no 32-bit Windows wheel.

A dedicated Chromium-based browser instance with Chrome DevTools Protocol (CDP) enabled, running on port 9333 with its own user-data directory — separate from your everyday browser by default. Cookies persist across runs, so you log in once (e.g. to x.com, Gmail, Outlook, Amazon, LinkedIn, Facebook, Instagram, or WeChat Web) and stay logged in for later agent sessions.

When multiple tabs are open, yumweb persists the last explicitly activated tab (tab-switch, tab-new, goto, x-read, etc.) so follow-up commands like read, click, and type target the intended page more reliably.

This skill exposes a single Python script (scripts/yumweb.py, Playwright backend) that any AI agent (OpenClaw, Copilot CLI, Claude Code, Hermes, etc.) can shell out to in order to: open URLs, read page contents as text or markdown, click & type, take screenshots, run JavaScript, and operate inside real logged-in websites.

Why this skill exists

Most browser tools focus on controlling a browser.

yumweb focuses on preserving a persistent, logged-in browser world that an agent can come back to later.

That makes it useful for personal-assistant style tasks like:

  • checking X / LinkedIn / Facebook feeds
  • reading Gmail / Outlook inboxes
  • opening Amazon product pages or carts
  • revisiting WeChat Web / other already-authenticated sites

Why a separate browser?

  • No collision with whatever browser instance your day-to-day work uses.
  • Persistent profile in ./profile/ next to this skill — log in once, keep cookies across runs (treat that directory like credentials; the bundled .gitignore excludes it from git).
  • Headed by default so you can see what's happening and log in manually.
  • One-shot CLI — every command attaches, does its job, exits.
  • Multi-agent / cross-browser — works well with OpenClaw, Copilot CLI, Claude Code, Hermes, and Chromium-based browsers like Edge and Chrome.

Setup

See README.md for full installation. Quick version:

python -m pip install playwright html2text requests
python scripts\yumweb.py start
# Manually log in to x.com (or any site you want cached cookies for).

start is idempotent — running it again is a no-op if Edge is already up.

Commands

Command Description
start Launch Edge with --remote-debugging-port=9333 + dedicated profile. Detached.
stop Kill the Edge instance (only the one on port 9333)
status Show whether Edge is up, current URL, list of tabs
goto \x3Curl> Navigate active tab to URL (waits for load)
read [--mode text|md|html] [--selector CSS] [--max N] Get page text/markdown/HTML. Default: text, body, max 8000 chars
fetch \x3Curl> Shortcut: goto \x3Curl> && read --mode md
click \x3Cselector> Click first element matching CSS
type \x3Cselector> \x3Ctext> [--enter] Focus selector, type text (optionally press Enter)
screenshot \x3Cpath> Save PNG screenshot of viewport
eval \x3Cjs> Run JS in active tab, print JSON result
tabs List all open tabs (idx, title, url)
tab-new \x3Curl> Open new tab
tab-switch \x3Cidx> Switch active tab
tab-close \x3Cidx> Close tab
x-read [--user \x3Chandle>] [--n 20] Read tweets from home timeline or user profile
x-post \x3Ctext> Post a new tweet (requires prior login)

All commands print to stdout. Errors go to stderr with non-zero exit.

Examples

:: Quick read of any URL (markdown form, good for LLMs)
python scripts\yumweb.py fetch https://example.com

:: Read your home timeline
python scripts\yumweb.py x-read --n 10

:: Read someone's tweets
python scripts\yumweb.py x-read --user satyanadella --n 5

:: Post a tweet
python scripts\yumweb.py x-post "Hello from CLI"

:: Click a button by CSS
python scripts\yumweb.py click "button[data-testid='login']"

:: Search box: type and press enter
python scripts\yumweb.py type "input[name=q]" "GB200 firmware" --enter

How AI tools should use this skill

When the user asks to "check what's on X about XYZ", "go look at this URL", "post a tweet about Y", or anything web-browsing related:

  1. Run ./scripts/run.sh status (or python scripts\yumweb.py status on Windows) — start if not running.
  2. Use fetch \x3Curl> for quick reads (LLM-friendly markdown output).
  3. Use x-read / x-post for X.
  4. Use tab-switch \x3Cidx> before read / click / type when multiple tabs are open.
  5. Use eval for anything custom (return must be JSON-serializable).
  6. Output is plain text, ready to summarize back to the user.

Files

  • scripts/yumweb.py — main script (Playwright backend)
  • scripts/config.json — port, profile dir, edge.exe path (paths blank → auto-resolve next to this skill)
  • profile/ — Edge user-data dir (created on first start, gitignored)
  • logs/yumweb.log — stderr from launched Edge (gitignored)
  • logs/active_tab.json — last active tab metadata used to make follow-up commands target the intended page

Dependencies

  • 64-bit Python 3.10+
  • playwright (>= 1.40) — attaches to existing browser via CDP; no bundled browser needed
  • psutil (>= 5.9) — cross-platform process management for stop
  • requests
  • html2text (auto-installed on first read --mode md if missing)

Security notes

  • Cookies live in profile/ — treat that directory like a credential. The bundled .gitignore excludes it. Don't commit it.
  • eval runs arbitrary JS — only invoke with trusted strings.
  • Default port 9333 is localhost-only. Do not expose externally.
Capability Tags
cryptoposts-externally
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install yumweb
  3. After installation, invoke the skill by name or use /yumweb
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
Initial positioning release: logged-in browser bridge for AI agents; multi-agent, cross-browser, local-first.
Metadata
Slug yumweb
Version 0.1.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is yumweb?

Use an already-logged-in Edge/Chrome/Chromium browser as the agent's hands. A persistent logged-in browser bridge for OpenClaw, Copilot CLI, Claude Code, Her... It is an AI Agent Skill for Claude Code / OpenClaw, with 36 downloads so far.

How do I install yumweb?

Run "/install yumweb" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is yumweb free?

Yes, yumweb is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does yumweb support?

yumweb is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created yumweb?

It is built and maintained by TommyYanPS (@yumyumtum); the current version is v0.1.0.

💬 Comments