Client guide · two distinct profiles
Set up TRW for Cursor
Choose the interactive IDE profile, the terminal-oriented CLI profile, or both. They use the same TRW method, but write different Cursor-native files.
Pick the surface you actually run
Full profile
Cursor IDE
Editor-first setup with rules, MCP registration, agents, commands, skills, and supported Cursor hooks.
--ide cursor-ideLight profile
Cursor CLI
Terminal and CI setup centered on AGENTS.md, explicit permissions, MCP registration, and a smaller CLI-safe hook set.
--ide cursor-cliInstall the selected profile
curl -fsSL https://trwframework.com/install.sh | bashIn the client prompt, select cursor-ide, cursor-cli, or both. For a non-interactive install, pass the same identifiers with --ide. Re-run the installer after upgrading TRW to refresh managed client files.
Inspect what was written
Cursor IDE
.cursor/rules/trw-ceremony.mdc— the primary Cursor rule carrying TRW instructions..cursor/mcp.json— TRW MCP server registration, merged with existing servers..cursor/agents/and.cursor/commands/— Cursor-native helpers..cursor/skills/— compatible workflow packages..cursor/hooks/plushooks.json— adapters for supported IDE events.
Cursor CLI
AGENTS.md— the primary portable instruction surface..cursor/cli.json— the managed CLI permission baseline and MCP settings..cursor/hooks.json— a five-event CLI-oriented hook subset..cursor/mcp.json— shared MCP registration.
The installer is fail-open for individual Cursor artifact writers: read its warnings and verify the files you depend on instead of treating a completed command as proof that every optional adapter was written.
Verify the first session
Cursor IDE
Open the repository in Cursor, confirm the TRW MCP server is available, and ask the agent to call trw_session_start(). Check the returned run state and learnings; do not infer success merely from the presence of a rule or hook file.
Cursor CLI
Start cursor-agent from the repository root. Confirm it reads AGENTS.md, can reach the TRW MCP server, and can call trw_session_start(). A non-interactive job must also have every required tool permission; the generated baseline may need a deliberate project-specific extension.