Add Cursor Cloud specific instructions to AGENTS.md (#2081)

## What

Adds a `## Cursor Cloud specific instructions` section to `AGENTS.md` with development environment notes for cloud agents.

## Why

Future Cursor Cloud agents need non-obvious context about running the dev stack in the cloud VM environment, particularly:

- **Docker requirement**: Docker must be installed and running before `yarn dev` or integration/E2E tests
- **dash/bash incompatibility**: `yarn dev` uses `sh -c` to source `scripts/dev-env.sh` which contains bash-specific syntax (`BASH_SOURCE`). On Ubuntu where `/bin/sh` is `dash`, this fails. A bash workaround command is documented.
- **Port mapping**: The default `/workspace` directory produces slot 76, so services run on non-standard ports (App: 30276, API: 30176, etc.)
- **First-time registration**: Fresh MongoDB means the app shows a registration page with no external auth needed

## Evidence

Full dev stack running with all services operational:

[hyperdx_register_and_search_demo.mp4](https://cursor.com/agents/bc-b3139182-3221-4ea1-9a02-ac2df5e9b062/artifacts?path=%2Fopt%2Fcursor%2Fartifacts%2Fhyperdx_register_and_search_demo.mp4)

[HyperDX logged in search page](https://cursor.com/agents/bc-b3139182-3221-4ea1-9a02-ac2df5e9b062/artifacts?path=%2Fopt%2Fcursor%2Fartifacts%2Fhyperdx_logged_in_search.webp)

[HyperDX search query executed](https://cursor.com/agents/bc-b3139182-3221-4ea1-9a02-ac2df5e9b062/artifacts?path=%2Fopt%2Fcursor%2Fartifacts%2Fhyperdx_search_query.webp)

<sub>To show artifacts inline, <a href="https://cursor.com/dashboard/cloud-agents#team-pull-requests">enable</a> in settings.</sub>


<div><a href="https://cursor.com/agents/bc-b3139182-3221-4ea1-9a02-ac2df5e9b062"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/background-agent?bcId=bc-b3139182-3221-4ea1-9a02-ac2df5e9b062"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a>&nbsp;</div>



Co-authored-by: Cursor Agent <199161495+cursoragent@users.noreply.github.com>
This commit is contained in:
Drew Davis 2026-04-10 10:54:52 -04:00 committed by GitHub
parent 4ef63cc434
commit 587819b63e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -206,6 +206,49 @@ formatting checks pass. Fix any issues before creating the commit.
manual intervention rather than guessing. A wrong guess silently breaks manual intervention rather than guessing. A wrong guess silently breaks
things; asking is always cheaper than debugging later. things; asking is always cheaper than debugging later.
## Cursor Cloud specific instructions
### Docker requirement
Docker must be installed and running before starting the dev stack or running
integration/E2E tests. The VM update script handles `yarn install` and
`yarn build:common-utils`, but Docker daemon startup is a prerequisite that must
already be available.
### Starting the dev stack
`yarn dev` uses `sh -c` to source `scripts/dev-env.sh`, which contains
bash-specific syntax (`BASH_SOURCE`). On systems where `/bin/sh` is `dash`
(e.g. Ubuntu), this fails with "Bad substitution". Work around it by running
with bash directly:
```bash
bash -c 'export PATH="/workspace/node_modules/.bin:$PATH" && source ./scripts/dev-env.sh && yarn build:common-utils && dotenvx run --convention=nextjs -- docker compose -p "$HDX_DEV_PROJECT" -f docker-compose.dev.yml up -d && yarn app:dev'
```
Port isolation assigns a slot based on the worktree directory name. In the
default `/workspace` directory, the slot is **76**, so services are at:
- **App**: http://localhost:30276
- **API**: http://localhost:30176
- **ClickHouse**: http://localhost:30576
- **MongoDB**: localhost:30476
### Key commands reference
See `AGENTS.md` above and `agent_docs/development.md` for the full command
reference. Quick summary:
- `make ci-lint` — lint + TypeScript type check
- `make ci-unit` — unit tests (all packages)
- `make dev-int FILE=<name>` — integration tests (spins up Docker services)
- `make dev-e2e FILE=<name>` — E2E tests (Playwright)
### First-time registration
When the dev stack starts fresh (empty MongoDB), the app shows a registration
page. Create any account to get started — no external auth provider is needed.
--- ---
_Need more details? Check the `agent_docs/` directory or ask which documentation _Need more details? Check the `agent_docs/` directory or ask which documentation