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.
npx skills add https://github.com/Devin-AXIS/iPolloWork --skill daytona-electron-den
Use this skill for full-stack cloud behavior: one Daytona sandbox runs Den, and a
separate Daytona sandbox runs the real Electron app pointed at that Den server.
Use the server skill first:
bash .devcontainer/test-server-on-daytona.sh <branch-or-commit>
Record the printed values:
SERVER_SANDBOXDEN_WEB_URLDEN_API_URLDEN_WORKER_PROXY_URLValidate server health:
curl -sf "$DEN_WEB_URL/api/den/health"
curl -sf "$DEN_API_URL/health"
bash .devcontainer/test-on-daytona.sh <branch-or-commit> \
--den-base-url "$DEN_WEB_URL" \
--den-api-base-url "$DEN_API_URL" \
--artifacts-volume
Add --require-signin when the expected behavior must be signed-out until cloud
auth completes. Add --record-video --recording-name <name> when PR evidence is
needed.
Before testing cloud behavior, prove Electron is using the Daytona Den server:
JSON.stringify({ hash: location.hash, text: document.body.innerText.slice(0, 1000) })
Then inspect the desktop bootstrap file:
daytona exec "$SANDBOX" -- 'cat /workspace/.ipollowork-daytona/desktop-bootstrap.json'
Expected: baseUrl is DEN_WEB_URL and apiBaseUrl is DEN_API_URL, not
production.
For seeded/demo auth, create the handoff URL from the Den API, then paste it into
Electron's Cloud Account sign-in code field. Do not rely on browser navigation
alone as proof that desktop auth completed.
Validate all of these:
/v1/me/orgs.For each cloud feature, use the daytona-flow-validator loop:
Minimum assertions:
Report both server and Electron proof:
/tmp/den-*.log snippets.Take devin-axis/daytona-electron-den from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.