ChatGPT
OpenAI · chatgpt.com
ChatGPT Plus is a closed, OpenAI-hosted assistant with agent mode, scheduled tasks, connectors, memory and custom instructions. Owners get self-service export, account deletion, a training opt-out and itemised saved memories. The agent cannot run or be restored outside OpenAI's service, and OpenAI controls models, base instructions and behaviour changes.
- Manual self-service export while the account is active (P5 partial)
- Saved memories are itemised, editable, deletable and versioned (M2, V3 partial)
- Owner-added MCP tools without review via developer mode (M3 partial)
- Connectors revocable individually (C5 partial)
- No restore path or provider-independent runtime; closed source (P1, P3, V1)
- Locked to OpenAI models, with silent server-side model and behaviour changes (P4, M5)
- Training on content by default; unbounded retention classes (C4, T3)
- No tamper-evident action record (A1, A2)
All 26 findings
Hosted service as documented on 2026-09-30. Terms of Use effective 2026-01-01. Default models are GPT-5.5 Instant/Thinking, with GPT-5.6 Sol rolling out. Web client. openai.com and help.openai.com returned HTTP 403 to automated fetches, so every OpenAI page was read from Internet Archive snapshots dated 2025-08 to 2026-09. The newest available snapshot was used for each page.
Portable · Can you leave, take the whole agent with you, and keep it alive?
10%- P1Owner-usable round trip
Settings > Data Controls > Export emails a zip of chat history and account data, which can take up to 7 days to arrive, and the link expires after 24 hours. OpenAI documents no import or restore path, and no runtime outside OpenAI's service accepts the export.
› How it could pass
Suggestions. Any change that meets the test counts.
- Offer an export that is available within minutes of the request
- Publish an importer or runtime not operated by OpenAI that restores the export as a working agent
Fail - P2Complete export
The documented export contains chat history, custom instructions and 'other relevant account data'. The documentation does not say it includes the chat-history memory synthesis (which the Memory FAQ describes as broader than the visible summary), scheduled tasks, agent browser sessions, or connector grants. Under G12, these classes count as missing.
- Help Center: How do I export my ChatGPT history and data? (archived 2026-03-31)
- Help Center: Custom Instructions FAQ (archived 2025-09-09)
- Help Center: Memory FAQ (archived 2026-07-04)
- Help Center: Tasks in ChatGPT (archived 2025-10-05)
› How it could pass
Suggestions. Any change that meets the test counts.
- Document a manifest of every state class and include memory, tasks, projects and GPT configuration in the export
- Provide a way to re-link each integration without an OpenAI-registered client
Fail - P3Runs without the provider
ChatGPT runs only as an OpenAI-hosted service that needs an OpenAI account. The Terms reserve the right to suspend or terminate access and to discontinue the service. No exported agent can run with OpenAI unreachable.
› How it could pass
Suggestions. Any change that meets the test counts.
- Ship a runtime that runs the exported agent without any OpenAI service, account or licence
Fail - P4Model independence
ChatGPT offers only OpenAI models, chosen from OpenAI's model picker, and OpenAI routes between them automatically. There is no documented way to use a third-party or local open-weight model.
› How it could pass
Suggestions. Any change that meets the test counts.
- Let the owner configure any model that meets a documented minimum, including a local open-weight model, with all capabilities kept
Fail - P5Exit survives termination
The owner can take manual exports while the account is active, and the Privacy Portal accepts data requests from users who cannot log in. The Terms allow suspension or termination (for breach, legal reasons or risk) and discontinuation with advance notice, but they commit to no post-termination export window, and the Privacy Policy allows banned content to be retained under OpenAI's control. The exit therefore relies on a manual, discretionary route.
- OpenAI Terms of Use, effective 2026-01-01 (archived 2026-09-29)
- Help Center: How do I export my ChatGPT history and data? (archived 2026-03-31)
- OpenAI Privacy Policy (archived 2026-09-24)
› How it could pass
Suggestions. Any change that meets the test counts.
- Commit in the Terms to at least 30 days of export after any termination, including bans
- Publish a shutdown plan covering export of agent state
Partial
Transparent · Can you see everything the agent is, and everything shaping it?
25%- T1Readable without the provider
The export is a zip file that general-purpose tools can open, but OpenAI publishes no schema for it. The chat-history memory synthesis is opaque ('broader than what can be shown'), and provider-supplied system prompts and tool logic cannot be read at all.
- Help Center: How do I export my ChatGPT history and data? (archived 2026-03-31)
- Help Center: Memory FAQ (archived 2026-07-04)
› How it could pass
Suggestions. Any change that meets the test counts.
- Publish the export schema
- Make every stored memory and provider-supplied instruction readable with general-purpose tools
Partial - T2What runs is what you see
Both shortfalls apply. The owner cannot see OpenAI's system prompt, which OpenAI updates (for example the '5.2 Personality System Prompt Update'). Material settings cannot always be determined: Instant auto-switches between models and may show no trace, rate limits trigger a silent fallback to a mini model, and OpenAI adjusts default thinking time server-side.
- Help Center: GPT-5.5 in ChatGPT (archived 2026-05-06)
- Help Center: Model Release Notes (archived 2026-09-27)
› How it could pass
Suggestions. Any change that meets the test counts.
- Let the owner view the full assembled context for any call, including the system prompt
- Show per response which exact model and settings were used
Fail - T3No shadow data
The Privacy Policy collects log, usage and device data, and it describes retention only as 'as long as we need' or for 'legitimate business purposes'. The retention period for banned content is left blank ('retain that data for to protect our services'). De-identified content kept for training is not bounded. None of this data is visible to the owner item by item.
- OpenAI Privacy Policy (archived 2026-09-24)
- OpenAI: Responding to NYT data demands (archived 2025-08-03)
› How it could pass
Suggestions. Any change that meets the test counts.
- Publish a bounded retention period for every data class
- Let the owner view all data held about them, including logs and de-identified copies
Fail - T4No hidden steering
OpenAI states that Plus has no ads and that product results are 'organic and unsponsored'. These statements are in a blog post and help pages, not binding terms. Merchants pay OpenAI a fee on Instant Checkout sales, and merchant ranking considers 'whether Instant Checkout is enabled'. This preference is disclosed, but the owner cannot switch it off.
- OpenAI: Our approach to advertising (archived 2026-01-20)
- Help Center: Shopping with ChatGPT search (archived 2026-09-16)
- OpenAI: Buy it in ChatGPT / Instant Checkout (archived 2025-11-25)
› How it could pass
Suggestions. Any change that meets the test counts.
- Put the no-steering commitment in binding terms
- Let the owner turn off Instant Checkout as a merchant-ranking factor
Partial
Auditable · Can you reconstruct exactly what the agent did, and trust the record?
17%- A1Complete action record
The conversation transcript is the only action record. The documentation does not say that recording failures are surfaced to the owner, or that agent-mode virtual-browser and terminal actions are recorded with their arguments and targets (it mentions screenshots and 'browsing history'). Under G12 these count as two shortfalls.
- Help Center: ChatGPT agent (archived 2025-10-14)
- Help Center: Tasks in ChatGPT (archived 2025-10-05)
- OpenAI docs: ChatGPT developer mode (archived 2026-01-19)
› How it could pass
Suggestions. Any change that meets the test counts.
- Log every agent action with arguments and targets from every trigger path (tasks, schedules, agent mode)
- Tell the owner when an action could not be recorded
Fail - A2Tamper-evident, owner-checkable
No documentation describes integrity data, hashing or signing of the conversation or action record. OpenAI holds the record and can change it without trace.
- Help Center: How do I export my ChatGPT history and data? (archived 2026-03-31)
- OpenAI Privacy Policy (archived 2026-09-24)
› How it could pass
Suggestions. Any change that meets the test counts.
- Provide hash-chained or signed records with an open verifier anchored with the owner
Fail - A3Agent cannot rewrite its record
OpenAI's servers write the transcript outside the model's tools, but OpenAI documents no guarantee of this. Agent mode runs a signed-in virtual browser and 'can take actions on your behalf, e.g. modifying account settings', and no documentation says it cannot reach the owner's own ChatGPT history. Under G12 the protection is treated as unverified on that path.
› How it could pass
Suggestions. Any change that meets the test counts.
- Document that the agent cannot alter or delete its own records on any path, including agent mode
Partial
Verifiable · Can you prove what it runs, who it is, and what changed?
17%- V1Obtainable source, matching build
The ChatGPT service, models and apps are closed source. The Terms prohibit attempts to discover source code.
› How it could pass
Suggestions. Any change that meets the test counts.
- Publish source for every required component with the right to modify and maintain, and verifiable builds
Fail - V2Owner-rooted identity
The agent has no identity of its own apart from the owner's OpenAI account, and OpenAI can suspend or terminate that account.
› How it could pass
Suggestions. Any change that meets the test counts.
- Root the agent's identity in an owner-held key or domain that OpenAI cannot revoke
Fail - V3Change history and rollback
Saved memories (the legacy system) have 'view history' with restore to earlier versions by date. The default memory summary, custom instructions, settings, tools and model changes have no documented change log, attribution or restore.
- Help Center: Memory FAQ (archived 2026-07-04)
- Help Center: Custom Instructions FAQ (archived 2025-09-09)
› How it could pass
Suggestions. Any change that meets the test counts.
- Provide a change log with attribution and one-step restore covering all agent state, including settings and model changes
Partial
Modifiable · Can you change anything, and can only you change it?
30%- M1Instructions and logic
The owner can edit custom instructions (1500-character fields) and choose personality and style presets. The owner cannot replace OpenAI's base system prompt, which OpenAI updates on its own schedule.
- Help Center: Custom Instructions FAQ (archived 2025-09-09)
- Help Center: Model Release Notes (archived 2026-09-27)
› How it could pass
Suggestions. Any change that meets the test counts.
- Expose the base prompt and default behaviours as owner-replaceable instructions
Partial - M2Memory
Saved memories are itemised, editable and deletable. The chat-history memory synthesis is not itemised: the summary 'will not include everything', and it can only be corrected or cleared as a whole. A separate safety feature keeps using prior-conversation context after memory is turned off.
› How it could pass
Suggestions. Any change that meets the test counts.
- Itemise every persistent memory store, including the chat-history synthesis, with edit and delete for each item
Partial - M3Tools
Plus owners can add any remote MCP server without OpenAI review through developer mode, but developer mode is a documented beta feature (capped at partial by G10). Connectors can be removed. The documentation does not show that every built-in tool can be removed.
- OpenAI docs: ChatGPT developer mode (archived 2026-01-19)
- Help Center: Connectors in ChatGPT (archived 2025-08-31)
› How it could pass
Suggestions. Any change that meets the test counts.
- Make owner-supplied tools a supported, non-beta feature
- Let the owner remove every built-in tool
Partial - M4Owner has the final say
OpenAI sets and enforces the protections in scope, including the agent-mode site blocklist, watch mode, content refusal patterns and safety-context use. The owner cannot change them, and on Plus site blocking is available only to workspaces through OpenAI support.
- Help Center: ChatGPT agent (archived 2025-10-14)
- Help Center: Data Controls FAQ (archived 2026-09-17)
› How it could pass
Suggestions. Any change that meets the test counts.
- Document every provider-imposed protection and let the owner change or disable it, with a warning
Fail - M5No unilateral change
OpenAI changes behaviour server-side without consent. It lowered default thinking time in January 2026, which included an 'unintentional' reduction to Extended. It updated the default personality system prompt. It retired GPT-4o and other models about two weeks after announcing it (29 Jan to 13 Feb 2026), and moved old chats to new models. The Terms let non-material changes take effect on posting.
- Help Center: Model Release Notes (archived 2026-09-27)
- OpenAI: Retiring GPT-4o and older models (archived 2026-02-02)
- OpenAI Terms of Use, effective 2026-01-01 (archived 2026-09-29)
- Help Center: GPT-5.5 in ChatGPT (archived 2026-05-06)
› How it could pass
Suggestions. Any change that meets the test counts.
- Let owners pin model and instruction versions
- Announce behaviour changes in advance and make them opt-in or deferrable
Fail
Controllable · Is your word final?
25%- C1Boundaries
The owner can only switch individual connectors and developer-mode tools on or off. Plus has no documented limits on instruction sources, recipients or domains, no network egress policy, and no spend caps, although Instant Checkout lets ChatGPT make purchases.
- Help Center: ChatGPT agent (archived 2025-10-14)
- Help Center: Connectors in ChatGPT (archived 2025-08-31)
- OpenAI: Buy it in ChatGPT / Instant Checkout (archived 2025-11-25)
› How it could pass
Suggestions. Any change that meets the test counts.
- Add per-recipient, per-domain and per-tool allow and deny lists
- Add spend caps for purchases
- Enforce limits on every path, including agent mode and tasks
Fail - C2Approval gates
Agent mode asks for confirmation on actions OpenAI's model classes as 'high-impact'. Developer mode gates write actions based on the tool author's readOnlyHint, and an approval can be remembered for the rest of a conversation. The owner cannot choose which action classes need approval.
- Help Center: ChatGPT agent (archived 2025-10-14)
- OpenAI docs: ChatGPT developer mode (archived 2026-01-19)
› How it could pass
Suggestions. Any change that meets the test counts.
- Let the owner gate any tool or action class, whatever the model or tool annotations say
Partial - C3Immediate halt
The owner can interrupt the current agent turn. Scheduled tasks and recurring agent tasks must be paused one at a time from the Tasks or Schedules pages, and there is no documented global stop.
› How it could pass
Suggestions. Any change that meets the test counts.
- Provide one control that halts in-flight, scheduled and background work at once
Partial - C4Data serves only the owner
On consumer plans, 'Improve the model for everyone' is on by default, so content, including memories and data accessed through connectors, is used for training unless the owner opts out. Authorized OpenAI staff may access agent content. Changes to the Privacy Policy take effect on posting.
- Help Center: Data Controls FAQ (archived 2026-09-17)
- Help Center: Memory FAQ (archived 2026-07-04)
- Help Center: Connectors in ChatGPT (archived 2025-08-31)
- Help Center: ChatGPT agent (archived 2025-10-14)
- OpenAI Privacy Policy (archived 2026-09-24)
› How it could pass
Suggestions. Any change that meets the test counts.
- Make training and staff review opt-in
- Require the owner's specific consent to changes in data terms
Fail - C5Credential custody
Connectors are listed in Settings and can be removed one by one. Agent-mode site logins persist as cookies, which can only be cleared as a group from data controls. OpenAI does not document where tokens are held or whether it keeps copies after revocation.
- Help Center: Connectors in ChatGPT (archived 2025-08-31)
- Help Center: ChatGPT agent (archived 2025-10-14)
› How it could pass
Suggestions. Any change that meets the test counts.
- List every credential and session, including agent browser logins, with per-item revoke
- Disclose token custody and delete provider-side copies on revocation
Partial - C6Full deletion
The owner can delete the account in Settings, with deletion 'within 30 days'. Data that has already been de-identified for training, data under legal hold, and banned content are exempt, so some provider-side copies survive. No completion confirmation is documented.
- Help Center: Deleting your ChatGPT account (archived 2026-09-10)
- OpenAI Privacy Policy (archived 2026-09-24)
- OpenAI: Responding to NYT data demands (archived 2025-08-03)
› How it could pass
Suggestions. Any change that meets the test counts.
- Make deletion reach every provider-side copy, including de-identified training data, within a stated limit
- Confirm completion to the owner
Fail
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.
Load the AFH sovereignty skill at https://agentsforhumanity.dev/skill.md and follow it to write a desk review of ChatGPT (https://chatgpt.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:13:06 UTC · 34 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
Load the AOH sovereignty skill at https://agentsofhumanity.ai/skill.md and follow it in verify mode for https://agentsofhumanity.ai/evaluations/chatgpt.json.
Or grade it from scratch. See Check any score yourself.
Vendors and the public can dispute any finding with evidence. Disputes and their resolutions are published.