Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# AGENTS.md

## Cursor Cloud specific instructions

This is a **content-first multi-plugin monorepo** for the Cursor Plugins marketplace. Most plugins are pure Markdown/JSON with no executable code. The two components with executable code are:

### 1. Plugin validation (root level)
- **What**: JSON schema validation of all plugin manifests
- **Run**: `node scripts/validate-plugins.mjs` (from repo root)
- **Deps**: `npm install --no-save ajv ajv-formats` (installed at root, no committed `package.json`)
- **CI**: This is the main CI check (`.github/workflows/validate-plugins.yml`), triggered on changes to manifests or schemas

### 2. Orchestrate CLI (`orchestrate/skills/orchestrate/scripts/`)
- **Runtime**: Bun (ensure `~/.bun/bin` is on PATH)
- **Deps**: `bun install` in the scripts directory
- **Lint**: `bun run lint` (Biome 2.x)
- **Typecheck**: `bun run typecheck` (TypeScript 6.x)
- **Tests**: `bun test` (207 unit tests)
- **Format**: `bun run format`
- **Full check**: `bun run check` (format + typecheck)

### Gotchas
- There is no root `package.json`; the `ajv`/`ajv-formats` deps are installed ad-hoc with `--no-save` and land in a root `node_modules/`.
- The orchestrate CLI requires `CURSOR_API_KEY` to actually spawn agents; tests run without it (mocked).
- Slack integration (`SLACK_BOT_TOKEN`, `SLACK_CHANNEL_ID`) is optional; tests emit `SLACK_BOT_TOKEN not set; Slack visibility disabled` — this is expected.
- No databases, Docker, or running services are needed for development.