From e30e629b718d0afe27391dcada0e3eecf3111ec7 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 16 Jul 2026 00:35:03 +0000 Subject: [PATCH] Update Cursor Cloud instructions for Linux Tuist availability The Linux Tuist binary now installs and runs (mise install / tuist version work), so the prior note that 'mise install tuist fails: unsupported env' and that ./swiftformat fails is outdated. Correct the Cursor Cloud section: - ./swiftformat --lint and mise install work on Linux - iOS project generation/build/test/run still require macOS + Xcode (no xcodebuild/xcrun); ./ide fails at the 'tuist generate' step because the Linux binary's generate is a server-side command group. --- AGENTS.md | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 84b4604d..af8dcbb4 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -375,27 +375,32 @@ prefix even when the comment is short or factual. ## Cursor Cloud specific instructions Cloud agent VMs run **Linux**, not macOS. This repo targets **iOS 26** with -**Xcode 26+** and **Tuist** (macOS-only). Treat Linux as a partial dev -environment: formatting and agent sync work; builds, tests, and running the -**Where** app require macOS (as in CI on `macos-26`). +**Xcode 26+** and **Tuist**. Treat Linux as a partial dev environment: +formatting and agent sync work; **generating the Xcode project, building, +testing, and running the Where app require macOS** (as in CI on `macos-26`) — +there is no `xcodebuild`/`xcrun` toolchain on Linux. + +The startup update script pre-installs `mise` (in `~/.local/bin`, activated in +`~/.bashrc`), the pinned tools from `.mise.toml` (`mise install`), and Ruby, so +these commands are ready without any manual install. ### What works on Linux | Check | Command | |-------|---------| -| Trust mise config | `mise trust` (once per clone) | -| Install SwiftFormat | `mise install swiftformat@0.60.1` | -| Format lint (CI `format` job equivalent) | `mise exec swiftformat -- swiftformat --lint .` | -| Agent file sync | `./sync-agents` or `./sync-agents --install` | +| Format lint (CI `format` job equivalent) | `mise exec swiftformat -- swiftformat --lint .` — or `./swiftformat --lint` | +| Agent file sync | `./sync-agents` (generate CLAUDE.md) / `./sync-agents --install` (fetch external skills) | | Git hooks path | `git config core.hooksPath .githooks` (also done by `./ide`) | -Install **Ruby** if missing (`apt-get install ruby`) — required by `sync-agents`. - ### What does not work on Linux -- **Tuist** (`mise install` / `mise install tuist` fails: `unsupported env: linux/amd64`) -- `./ide`, `./swiftformat`, and the pre-commit hook — they call `mise exec -- …`, which tries to install **all** tools from `.mise.toml` including Tuist -- `tuist test`, `tuist build`, iOS Simulator, and running the **Where** app +- The Linux **Tuist** binary installs and runs (`mise install`, `tuist version` + work), but it is the server-oriented CLI: `tuist generate` is a + generation-*inspection* command group, **not** local Xcode-project + generation. So `./ide` / `./ide --no-open` fail at the `tuist generate` step + (`Unknown option '--no-open'`). +- `tuist generate` (project), `tuist build`, `tuist test`, the iOS Simulator, + and running the **Where** app — all need macOS + Xcode, which the VM lacks. ### Full build & test (macOS only)