Skip to content

Set up Cursor Cloud dev environment (web + Android toolchain)#3755

Draft
t3dotgg wants to merge 3 commits into
mainfrom
cursor/setup-dev-environment-a566
Draft

Set up Cursor Cloud dev environment (web + Android toolchain)#3755
t3dotgg wants to merge 3 commits into
mainfrom
cursor/setup-dev-environment-a566

Conversation

@t3dotgg

@t3dotgg t3dotgg commented Jul 7, 2026

Copy link
Copy Markdown
Member

Summary

Sets up the Cursor Cloud development environment for T3 Code and records durable, non-obvious notes for future Cursor agents.

  • Web/server toolchain: Node 24.13.1 (nvm, matches engines.node: ^24.13.1), the global vp (Vite+) CLI + bundled pnpm, wired into login shells; deps installed via vp i.
  • Cursor-specific notes now live in .cursor/rules/cursor-cloud.mdc (not the shared AGENTS.md), since T3 Code is developed in many editors — AGENTS.md no longer carries a Cursor Cloud section.
  • Android toolchain for apps/mobile: OpenJDK 17, Android SDK (platforms;android-36, build-tools;36.0.0, platform-tools, ndk;27.1.12297006, cmake;3.22.1), env wired into login shells; expo prebuild + Gradle verified.

Repo changes here are docs-only (AGENTS.md, .cursor/rules/cursor-cloud.mdc). Toolchain installs live in the VM environment; the startup update script stays minimal (vp i).

Verification

Web/server:

  • vp run typecheck — passes (0 errors).
  • vp check — passes (0 errors; formatter clean).
  • vp test — 4473 passed / 2 pre-existing flakes, unrelated to setup.
  • End-to-end: paired the browser, added a project, and had the Claude agent create a file and reply DONE.

Android:

  • expo prebuild --platform android generates the native project successfully.
  • Toolchain proven end-to-end: ./gradlew :react-native-worklets:assembleDebugBUILD SUCCESSFUL, compiling Kotlin + C++ (NDK/CMake) into an AAR + 18 .so libs for arm64-v8a.
  • Full-app :app:assembleDebug is blocked by a pre-existing app-level issue (not the environment): patches/react-native-screens@4.25.2.patch adds new codegen props (subtitle, largeSubtitle, navigationItemStyle, headerCenterBarButtonItems, headerToolbarItems) with no Android Kotlin setters, so :react-native-screens:compileDebugKotlin fails. The mobile README documents only iOS for local builds and routes Android through EAS. No emulator is possible in this VM (no /dev/kvm).

Hello-world demo (Claude agent creating a file via T3 Code UI)

t3code_claude_agent_hello_world.mp4

Android toolchain evidence

android_toolchain_summary.txt

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Note

Document Cursor Cloud dev environment setup in AGENTS.md

Adds a new 'Cursor Cloud specific instructions' section to AGENTS.md covering the pre-configured toolchain and development workflow.

  • Documents the pre-installed toolchain: Node 24 via nvm and a vp CLI with bundled pnpm, including PATH/node version precedence notes for non-login shells
  • Provides dev commands for running the full app and individual subsystems, with port auto-offset details
  • Describes the authentication/pairing flow, including server-printed URL and shared T3CODE_HOME
  • Documents external agent provider CLI discovery behavior and requirements (e.g. Claude Code via ANTHROPIC_API_KEY)
  • Notes two known flaky tests to help avoid false-positive CI failures
📊 Macroscope summarized cc99928. 1 file reviewed, 0 issues evaluated, 0 issues filtered, 0 comments posted

🗂️ Filtered Issues

No issues evaluated.

Co-authored-by: Theo Browne <t3dotgg@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Jul 7, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 7d306002-33bb-4bee-abf8-db786c1088ac

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/setup-dev-environment-a566

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

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:S 10-29 changed lines (additions + deletions). labels Jul 7, 2026
cursoragent and others added 2 commits July 7, 2026 00:46
Co-authored-by: Theo Browne <t3dotgg@users.noreply.github.com>
…oolchain

Co-authored-by: Theo Browne <t3dotgg@users.noreply.github.com>
@github-actions github-actions Bot added size:M 30-99 changed lines (additions + deletions). and removed size:S 10-29 changed lines (additions + deletions). labels Jul 7, 2026
@cursor cursor Bot changed the title Set up Cursor Cloud dev environment + document in AGENTS.md Set up Cursor Cloud dev environment (web + Android toolchain) Jul 7, 2026
@@ -0,0 +1,72 @@
---
description: Cursor Cloud environment setup and run notes for T3 Code (Cursor-specific; not for other editors/CI)
alwaysApply: true

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Medium rules/cursor-cloud.mdc:3

alwaysApply: true injects these Cursor Cloud–specific environment assumptions into every chat session for every clone of the repo, not just Cursor Cloud. Local Cursor users/agents will be told that Node 24, the Android SDK/NDK, and an unauthenticated pairing server are pre-provisioned, which is false outside the Cloud VM and causes agents to skip local setup steps. The file description already scopes it to Cursor Cloud, so this should be opt-in — set alwaysApply: false (or use globs/description-based matching) so the rule only attaches when explicitly relevant.

Suggested change
alwaysApply: true
alwaysApply: false
🚀 Reply "fix it for me" or copy this AI Prompt for your agent:
In file @.cursor/rules/cursor-cloud.mdc around line 3:

`alwaysApply: true` injects these Cursor Cloud–specific environment assumptions into every chat session for every clone of the repo, not just Cursor Cloud. Local Cursor users/agents will be told that Node 24, the Android SDK/NDK, and an unauthenticated pairing server are pre-provisioned, which is false outside the Cloud VM and causes agents to skip local setup steps. The file description already scopes it to Cursor Cloud, so this should be opt-in — set `alwaysApply: false` (or use `globs`/`description`-based matching) so the rule only attaches when explicitly relevant.

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

Labels

size:M 30-99 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants