PawWork_ZhuaZhua is a free, open source ai development platforms project written in JavaScript and released under MIT. It has 2,768 GitHub stars, 10 forks and 0 open issues, and was last pushed 4 hours ago. On this registry it ranks #129 of 139 tracked projects in AI Development Platforms, with 5 head-to-head comparisons available.

What is PawWork_ZhuaZhua?

PawWork_ZhuaZhua (爪爪) is a selection-first Chrome MV3 web agent for people who want to turn text selected on a live, already-logged-in page into an editable office file without routing anything through a hosted service.

What it is

PawWork_ZhuaZhua is an unpacked Chrome extension that runs a side-panel agent capable of driving the current tab, executing guest JavaScript against the browser, and holding sheet, Univer document, and site HTML artifacts for the duration of a session. It lives in the Chrome extension ecosystem but is deliberately outside the Chrome Web Store: it is loaded unpacked, and there is no hosted model behind it. The user supplies an OpenAI-compatible API key, which is stored in chrome.storage.local.

The concrete problem it solves is that browser automation normally ends in a transcript, a screenshot, or a JSON blob, and the user still has to rebuild the result by hand. PawWork_ZhuaZhua replaces that manual reassembly step: you select content on the live page, describe the outcome you want, and take away an editable office file. It treats the already-logged-in Chrome as a programmable computer, so the agent works against the session the user already has rather than a re-authenticated copy.

Key capabilities

  • Selection-first workflow: content is selected on the live page, an outcome is described, and the deliverable is an editable office file.
  • action lets the side-panel agent drive the current tab directly.
  • sys runs inside run to execute guest JavaScript against the browser, with sys.eval for evaluation and sys.cdp for Chrome DevTools Protocol access.
  • Session artifacts persist as sheet files, Univer documents, and site HTML, with pptx, tldraw, and univer covered among the project topics.
  • BYOK model access: the API key goes into chrome.storage.local, and no hosted model is involved.
  • No build step and no package.json; the repository is loaded directly as an unpacked extension with manifest.json at the folder root.
  • Runtime verification ships in-tree via node --test tests/runtime-regression.test.mjs for pure Node and node tests/browser-smoke.cjs to load the real extension.
  • Release packaging is scripted with python scripts/pack_extension.py --zip dist/pawwork.zip.

Who uses it and how

  • Individual developers and analysts who already have an authenticated session open in Chrome and need an office file out of it, rather than a scripted replay of the login flow.
  • Users with their own OpenAI-compatible key who want model traffic to stay on their own account and are willing to accept manual extension loading in exchange.
  • Extension and agent developers who need real-browser regression checks and can run tests/browser-smoke.cjs against a loaded build.
  • Teams working across sheet, Univer document, and HTML artifact types inside a single agent session, where the side panel to service worker to offscreen SessionWorkspaceService to AI SDK ToolLoopAgent pipeline is documented in AGENTS.md and the nested AGENTS.md files under src/.

Getting started

Clone the repository or download a Release zip, then open chrome://extensions, enable Developer mode, choose Load unpacked, and select the folder containing manifest.json. Open the side panel, paste an OpenAI-compatible API key, and send a task from a normal http(s) page.

How it compares

No comparable tools are named in the facts provided, so PawWork_ZhuaZhua stands alone in this registry. Its distinguishing position as documented is structural rather than competitive: it is distributed as an unpacked extension rather than through the Chrome Web Store, and it runs without a hosted model by requiring the user's own key.

When to use it — and when not to

Self-hosting here means operating your own model credentials and your own Chrome environment, since there is no server, database, or SMTP component to run. Chrome 135 or newer is required, Chrome 138 or newer needs Allow User Scripts enabled on the extension details page for sys.eval or page-identity fetch, and DevTools must be closed on the target tab before using sys.cdp or the call returns CDP_BUSY. Restricted pages such as chrome:// and the Web Store return NEED_PAGE, and anyone who wants automatic updates or store-managed installation should not pick this project, because loading is manual and files must be reloaded by hand after edits.

project readme (upstream, from github) — read inline

爪爪 · PawWork

license Chrome MV3 unpacked

Treat the already-logged-in Chrome as a programmable computer. 爪爪 is the agent on that machine.

爪爪 · 完全解放版 (PawWork_ZhuaZhua) is a Chrome MV3 unpacked extension. It runs a side-panel agent that can drive the current tab (action), execute guest JS against the browser (sys inside run), and keep sheet / Univer doc / site HTML artifacts in the session.

Not on the Chrome Web Store. No hosted model — bring your own key.

Load it

  1. Clone this repo, or download a Release zip
  2. Chrome → chrome://extensions → Developer mode → Load unpacked → select the folder (manifest.json is at its root)
  3. Open the side panel → paste an OpenAI-compatible API key (BYOK; stored in chrome.storage.local) → send a task on a normal http(s) page

After editing files, click 重新加载 on the extension card. There is no package.json and no build step.

Needs Chrome 135+. On Chrome 138+, enable Allow User Scripts on the extension details page if you want sys.eval or page-identity fetch. Close DevTools on the target tab before using sys.cdp (otherwise CDP_BUSY). Restricted pages such as chrome:// and the Web Store return NEED_PAGE.

Tests

node --test tests/runtime-regression.test.mjs      # pure Node, no browser
node tests/browser-smoke.cjs <path-to-playwright>  # loads the real extension

Architecture

Side panel → service worker → offscreen SessionWorkspaceService → AI SDK ToolLoopAgent. Process layering, domain objects, tool contracts, and the unimplemented boundaries are documented in AGENTS.md and the nested AGENTS.md files under src/.

Release packaging: python scripts/pack_extension.py --zip dist/pawwork.zip.

License

MIT. Third-party components: THIRD_PARTY_NOTICES.md.

Frequently asked questions

Is PawWork_ZhuaZhua free to use?

PawWork_ZhuaZhua is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does PawWork_ZhuaZhua do?

Paw Work - selection-first web agent for Chrome: select on the live page, describe the outcome, take away an editable office file. BYOK, sandboxed, no server.

What is PawWork_ZhuaZhua written in?

PawWork_ZhuaZhua is primarily written in JavaScript. Its source is publicly available at https://github.com/Player-YN/PawWork_ZhuaZhua, and it has 2,768 GitHub stars.