browser-automation

Solid

Local iPolloWork Electron browser automation with CDP. Use when driving a local Electron dev app, browser_list, browser_snapshot, browser_eval, composer automation, or local UI smoke tests.

AI & Automation 6,691 stars 1288 forks Updated yesterday NOASSERTION

Install

View on GitHub

Quality Score: 83/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Browser Automation ## What I Do - Attach OpenCode browser tools to the iPolloWork Electron app during local development. - Drive the app UI through Electron's Chrome DevTools Protocol endpoint. - Send a task/session from the composer and confirm the response in the UI. ## Local Dev Setup `pnpm dev` enables Electron CDP by default: ```sh IPOLLOWORK_ELECTRON_REMOTE_DEBUG_PORT=${IPOLLOWORK_ELECTRON_REMOTE_DEBUG_PORT:-9823} ``` The default browser URL for OpenCode browser tools is: ```text http://127.0.0.1:9823 ``` The app UI normally loads at: ```text http://localhost:5173/ ``` To use a different CDP port, launch with an override: ```sh IPOLLOWORK_ELECTRON_REMOTE_DEBUG_PORT=9830 pnpm dev ``` To disable Electron CDP for a run: ```sh IPOLLOWORK_ELECTRON_REMOTE_DEBUG_PORT=0 pnpm dev ``` ## Background Launch Use a detached launch when the user wants the app running in the background: ```sh nohup pnpm dev > /var/folders/d9/xqhkvsp94rg0n0n523snqztm0000gn/T/opencode/ipollowork-dev.log 2>&1 & ``` Then wait for the CDP port: ```sh lsof -nP -iTCP:9823 -sTCP:LISTEN ``` ## Browser Tool Flow 1. List targets with `browser_list` using `browser_url: "http://127.0.0.1:9823"`. 2. Select the `iPolloWork` target ID. 3. Read state with `browser_eval` or `browser_snapshot`. 4. Fill the Lexical composer by targeting `[contenteditable="true"][data-lexical-editor="true"]`. 5. Click the `Run task` button. 6. Confirm the session response by checking `document.body.innerText` or the c...

Details

Author
Devin-AXIS
Repository
Devin-AXIS/iPolloWork
Created
1 years ago
Last Updated
yesterday
Language
TypeScript
License
NOASSERTION

Similar Skills

Semantically similar based on skill content — not just same category