Cursor Developer-Surface Mastery
Be a top-1% power user of the thing you advocate
The product surface, end to end
After this you can name and place every developer-facing Cursor capability.
A DX Engineer is the person developers expect to know every corner of the product cold. If a candidate fumbles the difference between ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan. and a Cloud Agent, the room concludes they don't actually live in the tool they'd be paid to teach.
Your job is to teach what developers can build with Cursor's API, SDK, Plugins, Automations, CLI and coding agents. You cannot teach a surface you can't place. Before any interview, you should be able to draw the whole map from memory and say, for any teaching scenario, which surface you'd reach for and why.
Group the surface into three layers. The editor is where most developers meet Cursor, the headless layer is where it runs without a human watching and the programmable layer is where you call the same harness from your own code.
Compile 2026 adds three adjacent surfaces a DX Engineer should be able to place without overclaiming: Origin as source hosting and review infrastructure, larger from-scratch model training as roadmap context and Cursor Mobile as away-from-desk agent supervision. They do not replace the core three-layer product map; they explain where the map is expanding.
Three layers of the developer surfacethe whole map
Interactive diagram. Tab through its regions; each focused region shows its detail in the panel below.
Top to bottom: where a developer meets Cursor, down to the harness you call from code.
Agent mode, ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan. and Tab inside the desktop app, plus the mobile app.
Where a developer feels the product first: Tab predicts the next edit, Agent does multi-file work, ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan. drives a task in plain language.
The CLI agent for the terminal and Background / Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop. that run in isolated cloud VMs with terminal and browser access.
No editor window required. This is where agents run in CI, in chat ops or unattended on long-horizon work.
The Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud. (TypeScript) creates agents from your own scripts, CI/CDContinuous Integration / Continuous Delivery. The automated pipeline that builds, tests and ships code so changes reach production safely and often. or products.
You get the full Cursor harnessCursor's hosted layer around each model (context selection, caching, retries) that makes the same model run better and cheaper than calling it directly. behind an API instead of a UI: indexing, models, tools, the agent loop.
Extensibility cuts across all three
Every layer can be extended with the same primitives, which is what makes the system coherent rather than a pile of features.
- Primitive
- MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers
- What it adds
- External tools and data the agent can call.
- Where it applies
- Editor, CLI, SDK, Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop.
- Primitive
- Rules / AGENTS.md
- What it adds
- Standing context and conventions the agent follows.
- Where it applies
- Editor, CLI, SDK
- Primitive
- Skills
- What it adds
- Packaged, reusable how-to a SKILL.md teaches the agent.
- Where it applies
- Editor, CLI
- Primitive
- Hooks
- What it adds
- Code that runs at lifecycle points in the agent loop.
- Where it applies
- Editor, CLI
- Primitive
- Subagents
- What it adds
- Scoped helper agents the main agent delegates to.
- Where it applies
- Editor, CLI
- Primitive
- Plugins
- What it adds
- A bundle of subagents, skills, hooks and rules for distribution.
- Where it applies
- Editor + CLI
| Primitive | What it adds | Where it applies |
|---|---|---|
| MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers | External tools and data the agent can call. | Editor, CLI, SDK, Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop. |
| Rules / AGENTS.md | Standing context and conventions the agent follows. | Editor, CLI, SDK |
| Skills | Packaged, reusable how-to a SKILL.md teaches the agent. | Editor, CLI |
| Hooks | Code that runs at lifecycle points in the agent loop. | Editor, CLI |
| Subagents | Scoped helper agents the main agent delegates to. | Editor, CLI |
| Plugins | A bundle of subagents, skills, hooks and rules for distribution. | Editor + CLI |
The same primitives layer onto whichever surface you teach. Master them once, reuse them everywhere.
The mapping itself is a DX skill. When a developer asks how to do something, picking the right surface is half the answer.
- Quick refactor while coding
- Editor: Agent mode or ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan., with Tab carrying the small edits.
- Lint or fix on every PR
- Headless: CLI agent in CI, reading the same rules and mcp.json as the editor.
- Agent inside your own product
- Programmable: the Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud., so you ship the harness, not a chat window.
- Multi-hour autonomous task
- Background / Cloud Agent in an isolated VM, triggered from chat or CI.
- Compile announcement question
- Place Origin, mobile and model work on the map, then separate available-now facts from waitlists, betas and roadmap language.
Reach for the smallest surface that fits the job, then teach why.
Cursor 3 ('Glass'): the agent window is the default surfaceoutput to outcome
The framing that dates a candidate fastest: a year ago Cursor's core was three things - Tab, indexing and chat. The current product is an end-to-end SDLC control plane, and the most-recent top-level surface is Cursor 3Cursor's agent-forward interface (also called the agent window or Glass), built to run and supervise many agents at once rather than edit one file. (called Glass, or the agent's window), shipped roughly a month before the 2026 workshops. It is one abstraction level above the editor: it shows every workspace across local and cloud environments, multiple repos and archived/active agents, and it was redesigned ground-up to manage many parallel agents rather than to edit one file. You can still toggle back to the classic editor view (file tree left, code center, terminal bottom, agent pane right). The design rationale is the line worth memorizing: as models improved, attention shifted from the model's output (the exact code) to its outcome.
The mode dropdown (Agent, Plan, Debug, Ask) changes the tools available to the same underlying model - not the model itself. Agent (default) does everything: writes code, runs the terminal, makes plans and to-dos. Plan researches the whole indexed codebase and outputs only an editable plan, making no edits until you switch to Agent. Debug adds instrumentation and walks you through reproduction. Ask is read-only Q&A over the codebase - a smaller toolset, output stays in chat - ideal for onboarding to a legacy codebase or for non-engineers. Saying "changing the mode changes the toolset, not the model" out loud is a fast credibility signal.
When asked what Cursor can do, don't list features. Open with the framing - "a year ago this was Tab, indexing and chat; now it's an SDLC control plane" - then draw the three layers and place each capability, then pick one scenario and walk the surface you'd choose. That structure shows you think in terms of jobs and surfaces, which is exactly how a DX Engineer reasons about what to teach.
Takeaway. Hold the surface as three layers - editor (Agent, ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan., Tab), headless (CLI, Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop.) and programmable (Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud.) - with MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs., rules, skills, hooks, subagents and plugins cutting across all of them; then pick the smallest surface that fits the scenario.
Self-check
QA developer wants a coding agent to run on every pull request to catch convention violations, with no editor window involved. Which Cursor surface fits and what keeps its behavior consistent with how the team's editor behaves?
Rules, AGENTS.md and context configuration
After this you can configure agent context the way a power user would and teach it.
The single most common support question a DX Engineer fields is some version of "why isn't my rule firing?" Answering it cold, with the precedence and scoping in your head, is a fast credibility test.
Context configuration is how a developer teaches the agent their stack, conventions and constraints. Modern rules live in .cursor/rules/*.mdc: markdown bodies with a YAML frontmatter that controls when each rule applies. Version-controlled, file-scoped and conditional, they replace the older single-file approach.
The .mdc frontmatter that controls firingwhere rules go right or wrong
- description
- A short summary the agent uses to decide whether an auto-attached rule is relevant to the current task.
- globs
- File patterns that scope the rule. The rule attaches when the agent touches a matching file.
- alwaysApply
- When true, the rule is always in context regardless of globs or description. Use sparingly to keep context lean.
A rule that never fires is almost always a globs or alwaysApply problem, not a content problem.
--- description: Conventions for files under src/api globs: - "src/api/**/*.ts" alwaysApply: false --- # API conventions - All handlers return a typed Result, never throw across the boundary. - Validate input with the zod schema colocated next to the handler. - Log with the request id from context, not a fresh one.
Cursor also reads fallback files so a repo can stay portable across tools. The legacy .cursorrules file still works and AGENTS.md is the cross-IDE standard rule file Cursor reads when present.
- File
- .cursor/rules/*.mdcMarkdown-Cursor rule file. The file format for a Cursor rule; set always_apply to false and scope it so the rule only fires on the files that need it instead of burning context every request.
- Status
- Modern, preferred
- Scope
- Conditional, file-scoped, multi-rule
- File
- .cursorrules
- Status
- Legacy, still honored
- Scope
- Single file, repo-wide
- File
- AGENTS.md
- Status
- Cross-IDE standard
- Scope
- Repo-wide, portable across agents
| File | Status | Scope |
|---|---|---|
| .cursor/rules/*.mdcMarkdown-Cursor rule file. The file format for a Cursor rule; set always_apply to false and scope it so the rule only fires on the files that need it instead of burning context every request. | Modern, preferred | Conditional, file-scoped, multi-rule |
| .cursorrules | Legacy, still honored | Single file, repo-wide |
| AGENTS.md | Cross-IDE standard | Repo-wide, portable across agents |
Teach the .mdc form first; mention the fallbacks so a developer's existing setup isn't broken.
The 2026 config stack
Rules are one of several context inputs that stack and can conflict. A power user knows the order and can debug a clash.
- 1Custom instructions. Your personal, account-level preferences that ride along on every project.
- 2Skills (SKILL.md). Packaged how-to the agent pulls in when a task matches.
- 3MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers. External tools and data sources the agent can call mid-task.
- 4Rules / .cursorrules. Project conventions, scoped by globs or applied always.
- 5AGENTS.md. The portable fallback rule file read across IDEs.
Loading everything with alwaysApply: true is the classic anti-pattern. It bloats context, dilutes the signal and makes the agent slower and less precise. Scope rules with globs so each one rides along only when it's relevant and reserve always-apply for the two or three conventions that genuinely hold everywhere.
Your rule has a description and no globs, so it's auto-attach: the agent only pulls it in when it judges the rule relevant to the task. If you want it to fire whenever you edit an API handler, add a glob like src/api/*/.ts. If it must always be present, set alwaysApply: true, but keep that list short or you'll drown the real signal.
Takeaway. Modern rules are .cursor/rules/*.mdc with description, globs and alwaysApply frontmatter; .cursorrules and AGENTS.md are fallbacks; and most "my rule won't fire" bugs come down to missing globs or an over-broad alwaysApply.
Self-check
The Agent SDK and CLI in anger
After this you can build a real headless automation with the SDK/CLI.
Reading about the SDK is worth nothing in a work-trial. You need one small automation you actually shipped, so you can speak from the friction of having built it.
The Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud., announced in April 2026, exposes the same runtime, harness and models that power Cursor, callable from TypeScript. You write code that drives an agent instead of clicking around an editor. Agents created this way get the full harness: codebase indexing, MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers, skills, hooks and subagents.
SDK vs. CLI: when to teach eachtwo doors to the same harness
Interactive diagram. Tab through its regions; each focused region shows its detail in the panel below.
Same models and harness underneath; pick the door that fits the developer's workflow.
- Shape
- Agent SDK (TypeScript)
- A library you import and call
- CLI agent
- A binary you invoke from a shell
- Best for
- Agent SDK (TypeScript)
- Embedding an agent in your product, scripts or CI logic
- CLI agent
- Drop-in terminal and CI tasks, scripting with pipes
- Config
- Agent SDK (TypeScript)
- Full harness from code; same indexing, MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs., skills
- CLI agent
- Respects mcp.json and .cursor/rules automatically
- Teaching angle
- Agent SDK (TypeScript)
- "Put a coding agent inside your own software"
- CLI agent
- "Run the agent anywhere a shell runs"
| Agent SDK (TypeScript) | CLI agent | |
|---|---|---|
| Shape | A library you import and call | A binary you invoke from a shell |
| Best for | Embedding an agent in your product, scripts or CI logic | Drop-in terminal and CI tasks, scripting with pipes |
| Config | Full harness from code; same indexing, MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs., skills | Respects mcp.json and .cursor/rules automatically |
| Teaching angle | "Put a coding agent inside your own software" | "Run the agent anywhere a shell runs" |
Same models and harness underneath; you pick the door that fits the developer's workflow.
The CLI agent respects mcp.json and the .cursor/rules system, so editor and CLI behavior stay consistent. A developer's local conventions follow them into the terminal and into CI without re-specifying anything.
Ship one automation before the loop
The canonical DX use case is wiring a coding agent into CI/CDContinuous Integration / Continuous Delivery. The automated pipeline that builds, tests and ships code so changes reach production safely and often. or a script, then turning it into a reference automation with a write-up. Here is a minimal, honest path to one.
Interactive diagram. Tab through its regions; each focused region shows its detail in the panel below.
The write-up - not the run - is the artifact a DX Engineer is hired to produce.
- 1Pick a chore you actually do. Generating a changelog from merged PRs, triaging a failing test or drafting docs from a diff. Small and real beats clever and fake.
- 2Wire the agent in. Call the SDK from a script or invoke the CLI agent in a CI job, pointing it at your repo so it indexes and reads your rules.
- 3Constrain it. Give it a tight task, the relevant rules and any MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers it needs. Verify the output before trusting it on the next run.
- 4Write it up. Show the trigger, the prompt, the harness config, one failure you hit and the fix. The write-up is the artifact a DX Engineer is hired to produce.
- name: Draft changelog from merged PRs
run: |
cursor-agent run \
--prompt "Summarize the PRs merged since the last tag into a CHANGELOG entry. Follow .cursor/rules/changelog.mdc." \
--output CHANGELOG_DRAFT.md
# Reads mcp.json + .cursor/rules from the repo automatically.The three invocation patterns and the runtime-agnostic interfacethe part candidates skip
The SDK is a single, runtime-agnostic interface: one set of code targets local, Cursor Cloud and self-hosted-cloud runtimes - you pass the runtime you want and the rest is identical. There are three core concepts (the agent object, the prompt interface and message/stream handling) and three invocation patterns worth naming explicitly because they map to different jobs.
- Pattern
- agent.prompt
- Shape
- Fire-and-forget one-shot
- Use it when
- A single discrete task: summarize a diff, run a check, draft a changelog entry.
- Pattern
- Durable agent
- Shape
- Back-and-forth conversation
- Use it when
- Multi-turn work where you keep talking to the same agent across steps.
- Pattern
- agent.resume
- Shape
- Pick up an existing agent
- Use it when
- Preserve context across surfaces - resume a run started elsewhere instead of rebuilding state.
| Pattern | Shape | Use it when |
|---|---|---|
| agent.prompt | Fire-and-forget one-shot | A single discrete task: summarize a diff, run a check, draft a changelog entry. |
| Durable agent | Back-and-forth conversation | Multi-turn work where you keep talking to the same agent across steps. |
| agent.resume | Pick up an existing agent | Preserve context across surfaces - resume a run started elsewhere instead of rebuilding state. |
Same harness behind all three; the choice is one-shot vs. conversation vs. resuming an existing run.
It has full model neutrality (specify any model per agent), supports subagents (passed into agent.create) for context and token reuse, and lets you inject MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers, skills and hooks at runtime. It is TypeScript-first today, with Python on the roadmap; the fastest start is the built-in /sdk skill, which scaffolds working code, plus the SDK cookbook repo. A REST API exists as an alternative.
The clean teaching line: a skill or slash command only works inside a Cursor surface; the SDK brings the same agent anywhere - any TypeScript service, CI pipeline or backend - so it is a superset of a skill. A vivid proof point: Cursor's field team built a security-questionnaire app on the SDK - upload a questionnaire doc and it spawns a cloud agent that does a first pass against the trust-center docs, privacy policies and security documentation. SDK use cases span finance, legal, support and design, not just coding.
You don't need an enterprise license or even a seat to use the Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud. - anyone, personal or enterprise, can generate a Cursor API key, which is what you embed to run an SDK agent. For an enterprise team it depends on the contract but it generally draws from the team's pooled usage; confirm the specifics with your account manager. That answer unblocks the most common procurement objection on SDK adoption.
Exact flag names and SDK signatures move between releases. Before you write a tutorial or claim a capability in an interview, check the docs or read the SDK types in node_modules to confirm the current shape. "I'd verify the exact flag against the docs" is a stronger answer than confidently quoting an API that changed last month.
Bring a real automation to the loop and offer to walk it. Name the chore, show the harness config and tell the story of the failure mode you hit and how you constrained the agent to fix it. That narrative proves you can both build and teach, which is the whole job.
Takeaway. The Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud. (TypeScript, Apr 2026) and the CLI agent both expose Cursor's full harness (indexing, MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs., skills, hooks, subagents) and the CLI honors mcp.json and .cursor/rules, so ship one small CI/CDContinuous Integration / Continuous Delivery. The automated pipeline that builds, tests and ships code so changes reach production safely and often. automation with a write-up before you ever interview.
Self-check
MCP, Plugins and extending the agent
After this you can connect a coding agent to real external context and tools.
Anyone can describe MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. from the docs. A DX Engineer has set one up, watched it break and can name the pitfall a developer will hit on their first try.
The Model Context Protocol lets agents reach external tools and data beyond the codebase: a database, an issue tracker, internal APIs, a docs source. The CLI auto-detects and respects mcp.json, so a server configured once is available to the agent without per-run setup.
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["-y", "@some/linear-mcp-server"],
"env": { "LINEAR_API_KEY": "${LINEAR_API_KEY}" }
}
}
}MCP vs. rule vs. skill: the judgment callthe teachable distinction
Developers conflate these constantly. Knowing which one fits a need is a judgment call you'll teach often, so make the distinction crisp.
- You need...
- The agent to call an external system
- Reach for
- MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. server
- Because
- MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. is the bridge to tools and data outside the repo.
- You need...
- The agent to follow your conventions
- Reach for
- Rule (.mdcMarkdown-Cursor rule file. The file format for a Cursor rule; set always_apply to false and scope it so the rule only fires on the files that need it instead of burning context every request.)
- Because
- Rules are standing context, not an action the agent takes.
- You need...
- The agent to know a repeatable procedure
- Reach for
- Skill (SKILL.md)
- Because
- A skill packages how-to the agent loads when the task matches.
| You need... | Reach for | Because |
|---|---|---|
| The agent to call an external system | MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. server | MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. is the bridge to tools and data outside the repo. |
| The agent to follow your conventions | Rule (.mdcMarkdown-Cursor rule file. The file format for a Cursor rule; set always_apply to false and scope it so the rule only fires on the files that need it instead of burning context every request.) | Rules are standing context, not an action the agent takes. |
| The agent to know a repeatable procedure | Skill (SKILL.md) | A skill packages how-to the agent loads when the task matches. |
MCP is a capability; a rule is a constraint; a skill is a procedure. Different jobs, different primitives.
Software development is shifting from writing code yourself to orchestrating a team of AIs, with Cursor as the teammate. The three primitives sort cleanly: rules are your standards, the things the agent must always follow. Skills are a playbook or workflow, an on-demand procedure either you or the agent can invoke. Sub-agents are your specialists - a back-end specialist, a front-end specialist, a database specialist. On the autonomy axis, a sub-agentA child agent a main agent spawns to work in parallel with its own context window, handing results back so the parent's context stays clean. has the most autonomy and the least direct control: it can oversee and call skills, and it still follows the rules you wrote.
Plugins package the rest for distribution
A pluginA Cursor marketplace package that bundles MCP servers and skills (sometimes sub-agents and hooks); one click installs all of it into your Cursor instance. bundles subagents, skills, hooks and rules into one installable unit that works across both the IDE and the CLI. It is how a team ships a shared agent setup instead of asking everyone to hand-copy config.
- Bundle: a single pluginA Cursor marketplace package that bundles MCP servers and skills (sometimes sub-agents and hooks); one click installs all of it into your Cursor instance. can carry all six primitives at once - rules, skills, sub-agents, commands, MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. servers AND hooks - from multiple providers, so one install brings many capabilities.
- Portable: the same pluginA Cursor marketplace package that bundles MCP servers and skills (sometimes sub-agents and hooks); one click installs all of it into your Cursor instance. applies in the editor and the CLI, so workflows stay identical across surfaces.
- Distributable: a team installs once and inherits the conventions, tools and procedures the author baked in; orgs can publish private team marketplaces from a manifest.
- Readable to learn: everything in a pluginA Cursor marketplace package that bundles MCP servers and skills (sometimes sub-agents and hooks); one click installs all of it into your Cursor instance. except the MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. server is visible, so browsing the marketplace is a great way to study well-written skills, sub-agents and hooks.
Hooks: the deterministic guardrail layerthe enterprise differentiator
Hooks are the one primitive that is not probabilistic: they are actual code that executes in the shell at lifecycle trigger points across the IDE and the CLI - roughly a dozen of them. They originated from enterprise customers' bespoke requirements (Cursor was perpetually catching up building everyone's features, so hooks let any user extend Cursor themselves), they are shareable across the team and agent types, and they also run in cloud agents.
- Trigger point
- Prompt submit
- Fires when
- Before a prompt reaches the model
- Canonical use
- Scan for PIIPersonally Identifiable Information. Data that can identify a person (names, emails, SSNs); regulated and sensitive. / API keys / secrets and halt the prompt, returning a custom error.
- Trigger point
- Agent reads a file
- Fires when
- The agent opens a file
- Canonical use
- Audit or block access to sensitive paths.
- Trigger point
- Agent writes a file
- Fires when
- Before/after an edit
- Canonical use
- Enforce "no private keys" before any change lands.
- Trigger point
- MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. tool call
- Fires when
- An MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. tool is invoked
- Canonical use
- Gate or log external tool access.
- Trigger point
- Terminal tool call
- Fires when
- A shell command runs
- Canonical use
- Block or record dangerous commands.
- Trigger point
- Stop hook
- Fires when
- An agent run finishes
- Canonical use
- Log every prompt to a database; mine the run for durable facts.
| Trigger point | Fires when | Canonical use |
|---|---|---|
| Prompt submit | Before a prompt reaches the model | Scan for PIIPersonally Identifiable Information. Data that can identify a person (names, emails, SSNs); regulated and sensitive. / API keys / secrets and halt the prompt, returning a custom error. |
| Agent reads a file | The agent opens a file | Audit or block access to sensitive paths. |
| Agent writes a file | Before/after an edit | Enforce "no private keys" before any change lands. |
| MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. tool call | An MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. tool is invoked | Gate or log external tool access. |
| Terminal tool call | A shell command runs | Block or record dangerous commands. |
| Stop hook | An agent run finishes | Log every prompt to a database; mine the run for durable facts. |
Truly deterministic: a prompt-submit hook that finds a secret halts before the model ever sees it. This DLP/compliance layer is what regulated enterprises buy.
The canonical real skill to cite is Cursor's internal de-slop skill/command, published on the public marketplace. It evaluates model-written code and strips typical AI slop - generic variable and function names, verbose comments, overengineering and unnecessary abstraction, bad boilerplate - and standardizes style. Cursor's own engineers run it consistently at generation time, before code reaches a PR. It is the concrete example that makes "skills" land, and it ties straight to the broader theme that code quality and review, not generation, is the new bottleneck.
The first MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. server a developer builds usually fails on auth or transport, not logic. Secrets that aren't passed through env, a server that exits immediately or a command path the agent can't resolve. Build at least one integration yourself so you can document these setup pitfalls credibly instead of waving at "check your configuration."
If they hand you a vague "connect the agent to our database" task, narrate the decision: MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. server for the live connection, a rule for the query conventions and a skill if there's a repeatable migration procedure. Choosing among the three out loud is exactly the teachable judgment the role is graded on.
Takeaway. MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. is the bridge to external tools and data (the CLI honors mcp.json), a rule is standing convention and a skill is a packaged procedure; plugins bundle subagents, skills, hooks and rules to distribute one setup across IDE and CLI - build one MCP integration so you can teach its real pitfalls.
Self-check
QA team wants their agent to (1) query their production read replica, (2) always use their internal logging helper and (3) know their standard data-migration steps. Map each need to the right extension primitive.
Background / Cloud Agents and longer-horizon work
After this you can use and explain cloud-only autonomous agents.
Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop. are the part of the surface that most reads as "the future of software engineering," which makes them the part an interviewer most wants to hear you reason about honestly.
Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop. run in isolated cloud VMs with terminal and browser access and the June 2026 update added guided environment setup, reusable snapshots, .cursor/environment.json, /in-cloud subagents, /babysit and local/cloud handoff. They don't need your laptop open, but they still need a reviewable task and a checkable handoff.
What they enablethe longer horizon
Work that takes minutes to hours: a large refactor, a dependency upgrade across a monorepo, a slow test loop.
The VM keeps going while you do something else.
Fan out several agents on independent slices at once instead of waiting on one editor session.
Each runs in its own sandbox, so they don't trample each other.
Kick an agent off from a chat command or a CI event, not just from the editor.
Chat ops becomes a real workflow: "@agent, fix the failing build on main."
The VM can drive a browser to reproduce a bug or check a deployed page.
Tasks that need a real environment, not just a file tree, become possible.
The mechanic, the proof, and grind modesay these precisely
Three facts make the Cloud Agent story credible instead of hand-wavy. First, the mechanic: a cloud agent spins up a Cursor-managed VM with its own desktop and terminal, checks out the repo from connected source control, implements the work and opens a PR - then the VM is torn down, so the codebase doesn't persist long-term. It uses the same models and harness as the desktop (same quality), and it doesn't touch your local RAM or disk, so you can run as many as you want.
The single biggest adoption unlock (early 2026) was artifacts: the cloud agent navigates its own virtual desktop (it has its own mouse), makes a change, spins up a browser, tests it, records a video and screenshots and self-corrects on console errors - change, film, process, repeat. On completion it returns the walk-through video plus screenshots, type-checks and test results, and can upload the video straight to the PR. The decision rule falls right out of this: if output is reviewable via an artifact, push it async; if it's fuzzier, stay foreground.
Third, grind-until-done (a.k.a. grind mode, in beta) is a toggle on long-running tasks that lets a cloud agent grind for hours - or as long as needed - on the very hardest work. The guardrail matters as much as the feature: most tasks don't need it; just toggling cloud on and asking "implement this feature" already does a very good job. Reserve grind mode for big migrations or building from scratch - real war stories include migrating Poetry to uv and a SQL v4-to-v5 upgrade, and a researcher building a Chrome-level browser across thousands of commits. Async cloud agents can run minutes, hours, days, or in some cases weeks on a long-horizon harness.
Teach the tradeoffs, not just the magic
The interesting DX conversation is where the human stays in the loop. More autonomy buys throughput and costs oversight and a credible teacher names that tension instead of selling pure automation.
Interactive diagram. Tab through its regions; each focused region shows its detail in the panel below.
The decision isn't trusting the agent more - it's choosing tasks where verification is cheap.
- Dimension
- Throughput
- More autonomy buys you
- Work proceeds without you babysitting it.
- And costs you
- You see less of how it got there.
- Dimension
- Oversight
- More autonomy buys you
- Fewer interruptions mid-task.
- And costs you
- Mistakes can compound before you catch them.
- Dimension
- Cost
- More autonomy buys you
- Parallelism and unattended hours.
- And costs you
- Real compute spend on VMs that run long.
- Dimension
- Sandboxing
- More autonomy buys you
- Isolation contains a misbehaving agent.
- And costs you
- Setup and access scoping take real care.
| Dimension | More autonomy buys you | And costs you |
|---|---|---|
| Throughput | Work proceeds without you babysitting it. | You see less of how it got there. |
| Oversight | Fewer interruptions mid-task. | Mistakes can compound before you catch them. |
| Cost | Parallelism and unattended hours. | Real compute spend on VMs that run long. |
| Sandboxing | Isolation contains a misbehaving agent. | Setup and access scoping take real care. |
Where the human stays in the loop is the judgment call. Review gates and scoped access are how you keep it.
Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop. are exactly the "fringe of coding agents" a DX Engineer is hired to probe and explain. The high-value artifact isn't "look, it ran unattended." It's a clear-eyed account of when you'd hand a task to a Cloud Agent, what review gate you'd keep and where you decided the autonomy wasn't worth the loss of oversight.
I'd hand a Cloud Agent the dependency upgrade because it's long, mechanical and easy to verify with the test suite as the gate. I'd keep the human in the loop on anything touching auth or migrations, where a wrong autonomous step is expensive to unwind. The skill isn't trusting the agent more; it's choosing tasks where verification is cheap.
Takeaway. Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop. run in isolated VMs with guided setup, reusable environments, terminal/browser access, /in-cloud subagents and /babysit for long-running or parallel work; teach them by naming the autonomy-vs-oversight tradeoff and the review gate that keeps a human in the loop.
Self-check
Self-audit: are you actually a power user?
After this you can find and close your own gaps on the surface.
The fastest way to fail a DX loop is to advocate a surface you've read about but never shipped on. This section turns that risk into a study plan.
Cursor's bar is that you're judged first as a serious engineer who is an elite power user of the product. Run an honest inventory against the surface before the loop and treat every gap as homework rather than something to bluff past.
The shipped-it checklisthave you actually built with each?
For each surface you've touched, the deeper test is whether you can explain its failure modes to a confused developer. Reach for the language fast or it's not yet yours.
- Rules
- "Your rule won't fire because the glob doesn't match the files you're editing."
- MCP
- "The server exits because the API key isn't passed through env in mcp.json."
- CLI
- "Behavior differs from your editor because you're running outside the repo, so it can't read .cursor/rules."
- Cloud Agent
- "It went off the rails because the task wasn't verifiable and there was no review gate."
If you can diagnose the common break for each surface, you can teach it. If you can't, that's a gap.
Power-user yardsticks you can measure yourself againstnot vibes - numbers
"Elite power user" is fuzzy until you attach real yardsticks. Two from Cursor's own practitioners are concrete enough to self-grade against.
- Context discipline
- Do you keep the context window under ~50-65%? Output quality drops steeply as it fills, and exceeding the limit triggers compaction - which behaves like not having the context at all while you still pay for every token. Watch the bottom-right indicator and start a fresh agent per new topic.
- Plan-then-execute
- Do you plan with a frontier/thinking modelA reasoning model (shown with a brain icon in Cursor's picker) that spends extra compute before answering; reach for it on complex, nuanced work and a standard model for fast, simple tasks. in Plan modeA mode that makes no edits: it researches the codebase and produces an editable plan you review before any code changes., then hand the to-dos to a cheaper, faster model (ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan.) to execute? Letting an expensive reasoning model write all the code burns the budget; once the plan exists you don't need it. This is the core token-efficient loop.
If you can't honestly say yes to both, that's the first gap to close - they show up directly in how the room reads your craft.
The discipline behind the context-window habit has a name worth borrowing. Treat every chat as a task-by-task agent: don't run a whole project end to end in one session unless it's genuinely small. Break the work into logical beats - build the foundational architecture in one agent, open a fresh chat for the landing page, another for a tab or feature - so each context window holds essentially one topic. The fresh chat discards the prior history, which is to your benefit, and the moment you switch tasks is also the natural moment to switch models. Stay modular and stay lightweight.
I think of it as a kind of task-by-task agent. Open new chats as soon as you're done a specific task so that each subsequent task can be focused on a specific topic.
Plan with a deeper reasoning model, then change the model to something purpose-built for code generation to actually ship the plan. The reasoning model is slower and smarter; once the plan exists you don't need it, and a fast code-gen model executes the to-dos for a fraction of the budget. That split is what keeps a live demo snappy instead of watching an expensive model write every line.
I can use a deeper reasoning, maybe slower running, smarter model to build out a plan. And then I can change the model to something that's purpose-built for generating code and very fast to actually deploy that plan.
Interactive widget. Tab through its controls; the result updates in the panel below as you change them.
Plan with a thinker, execute with a fast model.
There's no single right answer - model choice is closer to a t-shirt-color preference than a rule. Try them all, then keep a personal cheat sheet.
- Planning / high reasoning
- A frontier reasoning model - Opus 4.x or GPT-5.x - in Plan modeA mode that makes no edits: it researches the codebase and produces an editable plan you review before any code changes., where the smartest plan pays for itself.
- Doc writing
- Gemini, favored for clean prose; a faster Gemini variant handles routine documentation.
- Medium-to-low edits (under ~5 files)
- Cursor's in-house ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan. (the fast variant) all the time - it's the quickest path once the plan exists.
- Auditing a plan or hunting bugs
- A GPT model - they push back the most, which is exactly what you want from a reviewer, and they score highest on terminal bench.
- Cheap automations
- A small, low-cost model for high-volume, low-stakes runs where the budget matters more than depth.
- Not sure
- Auto modeA router that reads your prompt and picks a model for you, defaulting to Composer; you steer it with cues like "quickly" or "carefully". routes the model per task; let it pick when the call isn't obvious.
Memorize the shape, not the exact model names - the roster moves. The point a DX Engineer teaches is the routing logic, not a fixed list.
There's no right answer here - it's almost a t-shirt-color preference, so try them all. My own picks: a frontier reasoning model for planning, Gemini for docs, the fast in-house ComposerCursor's own fast coding model, tuned for the editor and priced well below frontier models; the recommended day-to-day model for executing a plan. for any task editing fewer than about five files, and a GPT model whenever I want to audit a plan or find bugs because it pushes back the most. When I genuinely don't know, I let Auto route it.
Both rest on dynamic context discoveryThe agent pulling only the relevant parts of files, tools and MCP servers into context as needed, instead of loading everything up front. - the agent pulls only what it deems relevant rather than loading every file and tool - which, combined with caching, is how the harness cuts agent tokens by roughly 47% even on other companies' models. Knowing why the yardsticks work is the difference between reciting them and teaching them.
The automation the JD literally asks for
The role asks you to build creative ways to automate your own work with agents and showcase them. One personal automation, shipped and written up, is the single most impactful thing you can carry into the loop.
- Pick a chore you genuinely repeat, then point an agent at it via the SDK or CLI.
- Write it up the way you'd publish it: trigger, harness config, one failure, the fix.
- Make it reproducible, so a developer reading along could run it. That reproducibility is the DX signal.
Any pillar you couldn't honestly check becomes this week's work. Haven't built an MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs. server? Build a trivial one and break it on purpose. Never ran a Cloud Agent? Hand it a real upgrade and watch where it struggles. The gaps you close by shipping are the stories you'll tell in the loop and lived friction beats a memorized feature tour every time.
Don't hide a gap; convert it into evidence of how you learn. "I hadn't used the Agent SDKA programmatic interface for running Cursor agents from your own scripts, services or CI, locally or in the cloud. in production, so last week I wired it into my changelog flow, hit a context-window limit and scoped the prompt to fix it" tells the room you close gaps by shipping. That's the truth-seeking, bias-to-ship signal Cursor selects for.
Takeaway. Audit yourself against the surface (SDK, CLI, MCPModel Context Protocol. A standard that lets an AI agent pull in context from outside the repo, like Jira tickets or internal docs., .mdcMarkdown-Cursor rule file. The file format for a Cursor rule; set always_apply to false and scope it so the rule only fires on the files that need it instead of burning context every request. rules, Cloud AgentsAgents that run in a Cursor-managed virtual machine, check out the repo, do the work and open a pull request, then shut down, with no load on your laptop., plugins) and for each, prove you can explain its failure mode; turn every gap into a shipped automation you can narrate, because lived friction beats a memorized tour.