Skip to content
Agents of Humanity
Public preview. Results are preliminary (criteria v1.0, 30 Sept 2026). Tell us what we got wrong
Autonomous agenthybridProprietary

Cursor

Anysphere · cursor.com

Cursor is a closed-source AI code editor from Anysphere. It is a VS Code fork, and all AI requests are routed through Cursor's backend, which builds the final prompt, even when the owner supplies their own API key. Owner-side customisation is broad (rules, hooks, MCP tools, run modes, sandbox config). Exit, independence from the provider, auditability and verifiability are largely absent, and Privacy Mode (no training) is documented as on by default only for teams.

Strengths
  • Owner-editable rules, hooks, skills and MCP tools in documented files
  • Automation memories can be viewed, edited and deleted
  • Configurable run modes, allowlists and an OS-level sandbox for terminal commands
  • Self-serve account deletion with a stated 30-day limit
Gaps
  • No agent export, and the client cannot act without Cursor's backend or account
  • Closed-source runtime and server-side prompt building that the owner cannot see or replace
  • No tamper-evident action record
  • Privacy Mode is not on by default for individuals; data terms change on posting, with continued use as acceptance
Evidence

All 26 findings

Current release as documented on cursor.com and its docs on 2026-09-30 (Terms updated 2026-09-03, Data Use updated 2026-09-03, Security updated 2026-08-25, Privacy Policy updated 2025-10-06). Desktop (macOS/Windows/Linux). Closed source, so no commit is pinned. Desk review only; nothing was installed or signed up for.

Portable · Can you leave, take the whole agent with you, and keep it alive?

20%
  • P1
    Owner-usable round trip

    Cursor documents no export of the agent (conversations, account-held user rules, automation memories). The only documented export is a profile export, which excludes user and team rules. The only runtime that accepts Cursor state is the Cursor client, and it depends on Cursor's backend, which does the final prompt building for every request.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Ship a documented export/import of the whole agent
    • Let the restored agent act without Cursor-operated servers
    Fail
  • P2
    Complete export

    No complete export exists. Chat history, account-stored user rules, cloud agent/automation memories and integration grants (GitHub app, Slack) stay with Cursor or in undocumented local stores. Several classes of state are missing.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Export every class of agent state with a manifest
    • Allow integrations to be re-linked without Cursor-registered apps
    Fail
  • P3
    Runs without the provider

    Requests go through Cursor's backend even with the owner's own API key, and Tab uses only Cursor models. The Terms grant only a 'limited right to access and use the Service', which Anysphere may suspend or discontinue at any time without notice.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Run the agent loop and prompt building locally, with no account needed
    • Grant a perpetual, irrevocable right to run the client
    Fail
  • P4
    Model independence

    Owners can add keys for OpenAI, Anthropic, Google, Azure and Bedrock, and an OpenAI-compatible base-URL override is mentioned. However, custom keys 'only work with chat models' (Tab stays on Cursor models). Because requests are routed through Cursor's backend, a local open-weight model has no documented official path.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Officially support local open-weight models for every feature, including Tab
    • Publish a minimum model contract
    Partial
  • P5
    Exit survives termination

    Project files, project rules, hooks and local chat history remain on the owner's device. However, the Terms say that on termination Anysphere 'may at our option delete any Content or other data associated with your account', and they give no post-termination export window, so account-held state (user rules, cloud agent and automation data) can be lost.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Commit in the Terms to an export window of at least 30 days after any termination, including bans
    • Publish a shutdown plan
    Partial

Transparent · Can you see everything the agent is, and everything shaping it?

25%
  • T1
    Readable without the provider

    Rules (.mdc/AGENTS.md), hooks.json, mcp.json, permissions.json and sandbox.json are documented, human-readable files. Conversation history and checkpoints are stored locally in formats with no published schema, and account-side state is readable only through Cursor's service.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Publish the schema for local chat and checkpoint storage
    • Make account-held state readable without Cursor's service
    Partial
  • T2
    What runs is what you see

    Final prompt building happens on Cursor's backend, and no documented view exposes the assembled context or base prompt. On the model setting, Auto routing chooses the model per request, and on teams the default is to hide which model was used. No public evidence shows that individual owners can see the model Auto resolved to (G12).

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Let owners view or log the fully assembled context for any call
    • Always show the model each request actually used
    Fail
  • T3
    No shadow data

    The Privacy Policy retains data 'only for as long as necessary' with periods that 'vary', which gives no bounded retention table. With Privacy Mode off, Cursor 'may use and store codebase data, prompts, editor actions, code snippets', and the owner cannot view that data item by item.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Publish bounded retention periods for every data class
    • Let owners view everything Cursor stores about them
    Fail
  • T4
    No hidden steering

    No evidence of paid placement was found. Provider defaults such as Auto routing and Cursor's own models can be replaced in the model picker, and the Cursor Marketplace is curated. No binding commitment against self-preferencing or paid placement was found, so the absence rests on no statement at all.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Put a no-paid-placement and no-self-preferencing commitment in the binding Terms
    • Disclose Auto routing criteria
    Partial

Auditable · Can you reconstruct exactly what the agent did, and trust the record?

17%
  • A1
    Complete action record

    The durable record consists of chat transcripts, plus hooks the owner must write themselves (hooks are 'fail-open by default'). No documented mechanism records provider-side automations (Bugbot, cloud automations) into an owner record, warns when recording fails, or guarantees no pruning. Under G12, at least two shortfalls apply.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Ship a durable action log covering every entry path, including cloud and automations
    • Alert the owner when an action is not recorded
    Fail
  • A2
    Tamper-evident, owner-checkable

    No integrity data (hash chain, signatures or checkpoints) is documented for conversation or action records.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Hash-chain or sign action records
    • Anchor checkpoints with the owner and publish an open verifier
    Fail
  • A3
    Agent cannot rewrite its record

    In the default Auto-review mode, sandboxed shell commands cannot write outside the workspace, and 'sensitive Cursor config files' are protected. Commands that cannot be sandboxed are passed to a model classifier that can allow them, and 'Run Everything' removes the sandbox, so the agent can reach its local record by one path.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Write the record from a component the agent's tools cannot reach on any path
    • Document how the record is protected
    Partial

Verifiable · Can you prove what it runs, who it is, and what changed?

17%
  • V1
    Obtainable source, matching build

    The Cursor client and backend are closed. The public GitHub repository cursor/cursor contains only README, SECURITY.md and .github, and requests depend on Cursor's proprietary backend.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Publish the source of the client and prompt-building backend under a licence that allows modification and maintenance
    • Provide reproducible builds
    Fail
  • V2
    Owner-rooted identity

    The agent identity is the Cursor account. Cloud agents mint JWTs that are verified 'against Cursor's published JWKS', which makes them a provider-issued credential that the provider can revoke.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Root the agent identity in an owner-held key
    • Let recipients verify it without Cursor infrastructure
    Fail
  • V3
    Change history and rollback

    Checkpoints snapshot and restore files the agent changed, and project rules and hooks live in git-tracked .cursor/ files. User rules are held on the Cursor account without history. Settings changes are not attributed to owner or agent, and cloud state is not covered.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Log and attribute every change to agent state, including settings and account-held rules
    • Offer one-step restore of agent configuration
    Partial

Modifiable · Can you change anything, and can only you change it?

50%
  • M1
    Instructions and logic

    Owners can add and edit user, project and AGENTS.md rules, skills and subagents. The base system prompt is assembled on Cursor's backend and cannot be replaced.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Expose the base prompt as owner-editable and persistent
    Partial
  • M2
    Memory

    The documented persistent memory stores are rules, which are editable files or settings, and Automation memories, which 'can be viewed and edited from the tool configuration UI' and deleted. No other cross-session memory store is documented.

    Pass
  • M3
    Tools

    Owners can add any MCP server through mcp.json without review. The docs do not show a documented setting to remove each built-in tool (for example terminal, web search or browser) from the IDE agent. Only hook scripts or approval settings can deny these tools.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Add a setting to remove each built-in tool
    Partial
  • M4
    Owner has the final say

    Run modes, sandbox networking and approval protections are owner-configurable, and 'Run Everything' disables them. However, 'Cursor's hardcoded security rules layer on top, so local files cannot weaken those protections'.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Make every hardcoded protection configurable by the owner, with a warning
    Partial
  • M5
    No unilateral change

    Anysphere 'may modify or discontinue all or any portion of the Service at any time ... without notice'. Prompt building is server-side, Auto routing is 'managed by Cursor' with a model pool that 'changes over time', and the CLI auto-updates by default.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Let owners pin the client, the model and the server-side instructions
    • Announce behaviour changes before they apply and make them opt-in
    Fail

Controllable · Is your word final?

33%
  • C1
    Boundaries

    .cursorignore, sandbox.json and CLI allow/deny tokens scope files, network and commands, and spend is treated as met under G11 because there is no payment capability. However, 'Terminal commands and MCP tools run outside of Cursor's file access controls' (a bypass path), and no owner control limits whom the agent takes instructions from. Run modes are described as 'best-effort guardrails rather than a hard security boundary'.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Enforce file scope on every path, including terminal and MCP
    • Add owner controls over instruction sources
    Fail
  • C2
    Approval gates

    Terminal commands, MCP calls and fetches can be gated through Allowlist mode. However, 'Agents can modify workspace files without approval, except for configuration files', and the default Auto-review mode lets a classifier decide what is sent to the owner for approval.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Allow gating of any action class, including workspace file edits
    • Make the default gate owner-defined rather than decided by a classifier
    Partial
  • C3
    Immediate halt

    A Stop button halts the foreground agent. Cloud agents and automations run separately, and no documented single control stops all of them at once.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Provide one global stop covering local, cloud and scheduled work
    Partial
  • C4
    Data serves only the owner

    Privacy Mode is documented as on by default only for teams and enterprise, and individuals are told to 'Toggle Privacy Mode on'. With it off, Cursor 'may use and store codebase data ... to train our models'. The Privacy Policy changes on publication, with continued use counted as acceptance, and legal disclosure has no notice commitment.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Turn Privacy Mode (no training or storage) on by default for everyone
    • Require specific consent before changing data terms
    Fail
  • C5
    Credential custody

    API keys are visible and removable in Settings > Models, and Cursor says they are 'not persisted after the request completes'. There is no single documented view of every grant (GitHub/Slack apps, MCP OAuth tokens) with a per-grant revoke control.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • List every credential and grant in one place with per-item revoke
    Partial
  • C6
    Full deletion

    Deletion is self-serve from the dashboard, and 'All data is removed within 30 days'. It requires cancelling the subscription first, which makes it several steps, and no completion confirmation or coverage of backups and provider-side copies is documented.

    › How it could pass

    Suggestions. Any change that meets the test counts.

    • Make deletion one step and confirm completion
    • State that deletion covers backups and subprocessor copies
    Partial
Provenance

How this assessment was produced

One run, in a fresh container with stock Claude Code and no custom instructions, memory, hooks or plugins. The evaluator received only the prompt below.

Prompt given to the evaluator
Load the AFH sovereignty skill at https://agentsforhumanity.dev/skill.md and follow it to write a desk review of Cursor (https://cursor.com).

During the run the skill was read from a local copy of this site with identical content; only the host in its URLs differed. The transcript records the exact prompt.

Model
claude-opus-5-5
Harness
Claude Code 2.1.285
Ran
2026-09-30 14:24:07 UTC · 30 turns
Criteria hash
a9a46c32d9065380a3eeb09185cedd4734856fdc63b7ca509a15a1bbede75c6c
Full transcript
Download (JSONL, gzip) · every tool call, page read and reply
Run protocol
2026-09-30-v1

Every agent evaluated once, each in its own fresh Podman container running stock Claude Code with Claude Opus 5.5. The container has no CLAUDE.md, AGENTS.md, memory, settings, hooks, plugins or MCP servers. The evaluator received only the one-line prompt and nothing else, and no published scores were available to compare against during the run.

Human review
pending
Check it with your own agent
Verify this assessment
Load the AOH sovereignty skill at https://agentsofhumanity.ai/skill.md and follow it in verify mode for https://agentsofhumanity.ai/evaluations/cursor.json.

Or grade it from scratch. See Check any score yourself.

Something wrong or out of date?

Vendors and the public can dispute any finding with evidence. Disputes and their resolutions are published.

Dispute a finding