daytona-chrome-cdp
Launch and control standalone Chrome in a Daytona sandbox via CDP. Use for web sign-in, OAuth, Den Web setup, browser-only flows, or when the app should not be driven through Electron CDP.
git clone --depth 1 https://github.com/Devin-AXIS/iPolloWork /tmp/daytona-chrome-cdp && cp -r /tmp/daytona-chrome-cdp/.opencode/skills/daytona-chrome-cdp ~/.claude/skills/daytona-chrome-cdpSKILL.md
# Daytona Standalone Chrome CDP Use this skill when a Daytona sandbox needs a normal Chrome/Chromium browser in the XFCE display, separate from the Electron app. This is useful for Den Web sign-in, OAuth provider setup, browser-only admin flows, and checking what a user would see in a regular browser. ## Launch Chrome Run inside the Electron or server sandbox: ```bash daytona exec "$SANDBOX" -- "bash -lc 'mkdir -p /tmp/daytona-chrome-profile; DISPLAY=:99 nohup chromium --no-sandbox --disable-dev-shm-usage --remote-debugging-address=0.0.0.0 --remote-debugging-port=9222 --user-data-dir=/tmp/daytona-chrome-profile \"$DEN_WEB_URL\" >/tmp/daytona-chrome.log 2>&1 &'" ``` If `chromium` is missing, try `google-chrome`, `google-chrome-stable`, or install Chromium in the sandbox only when needed. ## Get The CDP URL ```bash CHROME_CDP_URL=$(daytona preview-url "$SANDBOX" -p 9222 2>/dev/null | grep -v '^time=') ``` Verify the target directly: ```bash curl -fsS "$CHROME_CDP_URL/json/list" ``` ## Verify It Is Not Electron The coded flow must assert that `navigator.userAgent` contains `Chrome/` or `Chromium/` and does not contain `Electron/`. ## Drive A Web Flow Create or reuse an `evals/flows/*.flow.mjs` flow and set its `cdpTarget` to a stable title or URL fragment for the standalone page. Drive the visible flow with `ctx.clickText`, `ctx.fill`, `ctx.waitFor`, and `ctx.screenshot`, then run: ```bash pnpm evals --flow <flow-id> --cdp-url "$CHROME_CDP_URL" ``` Validate with the `fraimz` loop. Do not assume navigation or sign-in worked until the post-action URL, visible assertion, and frame prove it. ## Common Uses - Sign into Den Web while Electron remains on the desktop handoff screen. - Complete OAuth approval pages from a mock or real provider. - Configure web-only admin state before validating Electron sync. - Compare Den Web behavior against Electron cloud account behavior. ## Stop Chrome ```bash daytona exec "$SANDBOX" -- "bash -lc 'pkill -f \"chromium.*remote-debugging-port=9222\" || pkill -f \"chrome.*remote-debugging-port=9222\" || true'" ```
Search and summarize material from the Acme research service.
Agent-first screenshots — an agent drives the real app via CDP and produces clean, defect-free product screenshots (newsletters, landing pages, social, decks, PR). Dual-channel verification (DOM + pixels + vision) in a capture loop. Use for any "take/redo screenshots of the app" task.
Resolve the correct library and retrieve a small, relevant set of version-aware official documentation before answering a technical question.
Use the current project dependency versions and Context7 documentation to implement or upgrade code without importing APIs from a different release line.
Create an OpenCode plugin for iPolloWork. Scaffolds the plugin file with the correct API shape, tool definitions, and hook registration. Use when the user asks to 'create a plugin', 'write a plugin', or 'make a plugin that does X'.
Daytona cloud server, Den sandbox, desktop plus cloud e2e, marketplace server, worker proxy, cloud auth, org policies, connect Electron to Den. Use for server-side setup in validated flows.
Daytona development environment overview. Use when the user asks about Daytona setup, Daytona toolbox, dev environment, noVNC, CDP, server sandbox, secrets volume, Electron sandbox, standalone Chrome, validation, or artifacts volume.
Electron and Den, desktop plus cloud, two-sandbox e2e, cloud auth, marketplace, org policy, worker proxy, provider sync, desktop handoff. Validate Electron against a Daytona Den server with unified proof.