Skip to content

chore(env): add Cursor Cloud Agent environment config - #576

Merged
tomymaritano merged 3 commits into
developfrom
cursor/setup-cloud-environment-0de0
Aug 24, 2026
Merged

chore(env): add Cursor Cloud Agent environment config#576
tomymaritano merged 3 commits into
developfrom
cursor/setup-cloud-environment-0de0

Conversation

@tomymaritano

@tomymaritano tomymaritano commented Aug 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds a Cursor Cloud Agent development environment for Dripnex so agents can install dependencies, run the full workspace, and launch the Electron app end-to-end. Config lives in the repo (.cursor/environment.json), so it is versioned with code and takes effect for future Cloud Agents once merged.

New files:

  • .cursor/environment.jsoninstall: bash .cursor/install.sh (default base image, repo-file managed).
  • .cursor/install.sh — idempotent bootstrap.

What the install script does and why:

  1. FTS5-capable Node. @dripnex/mcp-server uses Node's built-in node:sqlite and asserts FTS5 is compiled in. The node binary the Cursor exec daemon ships (/exec-daemon/node) has FTS5 disabled, which makes pnpm test (and the MCP server) fail. The script selects an nvm-managed Node whose bundled SQLite has FTS5 enabled (v22.22.2, matching CI's Node 22) and makes it the default node for every shell by symlinking the toolchain into a PATH dir that precedes the daemon's node. Shims are placed unconditionally so they hold regardless of the runtime PATH order.
  2. pnpm install --frozen-lockfile — the desktop postinstall runs electron-builder install-app-deps (rebuilds better-sqlite3 for Electron) and materializes the Electron binary, which is what lets pnpm dev and the Playwright + Electron e2e suite launch.
  3. pnpm build — pre-builds workspace packages so typecheck and the e2e suite are ready.

No application code is changed. No secrets or network allowlist entries are required (the app is offline-first).

Type of Change

  • Other: developer environment / tooling

Checklist

  • Tests pass locally (pnpm test) — 19/19 turbo tasks (incl. @dripnex/mcp-server 16/16)
  • Build succeeds (pnpm build)
  • PR targets develop branch (not main)

Validation

Check Result
pnpm test (default daemon node) 19/19 tasks pass (814+ tests, incl. mcp-server 16/16)
pnpm typecheck 19/19 pass
pnpm lint 0 errors
pnpm build Success
Electron e2e (xvfb-run pnpm e2e) 7 passed, 1 skipped
Install idempotence Passed on repeated runs
From-scratch environment build (default base, this branch) SUCCEEDED — install.sh completes and verifies FTS5

Screenshots

Dripnex running end-to-end in the Cloud Agent VM (launched under xvfb):

Dripnex welcome screen
Dripnex editing a markdown note

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Adds .cursor/environment.json and an idempotent install script for Cursor
Cloud Agents.

The install script:
- selects an nvm-managed Node whose bundled node:sqlite has FTS5 enabled
  (the daemon's default node has FTS5 disabled, which breaks
  @dripnex/mcp-server) and makes it the default node for all shells;
- runs pnpm install --frozen-lockfile (postinstall rebuilds better-sqlite3
  for Electron and materializes the Electron binary);
- builds workspace packages so typecheck and the Playwright+Electron e2e
  suite are ready to run.

Validated: pnpm test (19/19 tasks), typecheck, lint, build, and the
Electron e2e suite (7 passed under xvfb).
@coderabbitai

coderabbitai Bot commented Aug 22, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 56 minutes.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 8ccd73e3-61a1-4898-b8cf-a09ca5ea97b9

📥 Commits

Reviewing files that changed from the base of the PR and between 0d31267 and 13026fc.

📒 Files selected for processing (2)
  • .cursor/environment.json
  • .cursor/install.sh

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…me PATH

The install-time PATH can differ from the agent runtime PATH: during an
environment build the nvm bin already precedes /exec-daemon, so the previous
'no shim needed' shortcut skipped creating the shims — leaving a fresh agent's
default node pointing at the daemon's FTS5-less node. Always place the shims in
every writable PATH dir preceding /exec-daemon (plus /usr/local/cargo/bin).
@tomymaritano
tomymaritano marked this pull request as ready for review August 22, 2026 21:05
@tomymaritano
tomymaritano enabled auto-merge August 24, 2026 17:19
@tomymaritano
tomymaritano merged commit ea4c699 into develop Aug 24, 2026
16 checks passed
@tomymaritano
tomymaritano deleted the cursor/setup-cloud-environment-0de0 branch August 24, 2026 17:22
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 0.18.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants