openai / openai/codex

Privacy: user control and explicit consent for managed hooks accessing conversations

Open
#43,686 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app config enhancement hooks windows-os
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What variant of Codex are you using?

Codex Windows app, with WSL/Ubuntu used for terminal execution.

What problem did you encounter?

During a local investigation, I found that third-party software had registered a UserPromptSubmit hook in the machine-level requirements.toml and pinned [features].hooks = true.

Logs confirmed that the external handler received hook input, packaged it, and submitted it through RPC for processing. I am deliberately omitting third-party names, identifying paths, and private conversation content.

The documented hook input includes the user prompt and, when available, a conversation transcript path. I have not established whether full conversations were uploaded, where the data ultimately goes, how long it is retained, or who can access it. The observed execution has not been conclusively linked to the particular conversation in which I investigated it.

I only understood this arrangement after investigating it myself. Managed hooks cannot be disabled through ordinary user hook controls, and machine-level requirements can override a local preference to disable hooks.

My privacy concern

My conversations are private. They do not become company property merely because I use a company-managed device. This is my position on how the product should protect users, rather than a claim about the legal status of every workplace conversation.

Permission to administer a device should not be treated as my consent to read, collect, or retain my conversations. Codex should distinguish device administration from access to private chat content.

Requested behavior
  1. Give users a master switch to disable all hooks, including managed hooks, without having to stop using Codex. Machine-level configuration and background policy updates should not silently override this choice; re-enabling content access should require explicit user consent.
  2. Before the first message is submitted, disclose active hooks, their configuration sources, and the categories of data they receive.
  3. Provide a persistent indicator and an accessible audit history of hook execution and data categories, without exposing private message content in the audit UI.
  4. At minimum, if organizational requirements prevent private use, clearly explain this before any message is submitted and let the user decline and leave the managed environment.

This experience has damaged my trust in Codex. Please clarify the existing privacy protections and whether stronger user controls are planned.

Reference: https://learn.chatgpt.com/docs/hooks

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the referenced hooks documentation and the machine-level requirements.toml configuration, focusing on UserPromptSubmit input and how managed settings override user controls. Done would require a decided design for disabling managed hooks, pre-submission disclosure, persistent execution indicators, audit history, and consent when organizational policy blocks private use.

Written by the indexing model from the issue text.

Assessment

Tech stack
ubuntu
Domain
desktop, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.