openai / openai/codex

After updating Codex Desktop, configured writable roots are ignored

Open
#41,355 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

What version of the Codex App are you using (From “About Codex” dialog)?

26.825.4187.0

What subscription do you have?

ChatGPT Plus

What platform is your computer?

Windows 11, Codex Desktop

What issue are you seeing?

After updating Codex Desktop, an existing task lost write access to an external folder that had previously been configured as a writable root.

Environment:

  • OS: Windows
  • Codex Desktop version: 26.825.4187.0
  • Workspace: C:\Users\meng4\Documents\日常
  • External writable folder: E:\music

My config.toml still contains:

[sandbox_workspace_write]
writable_roots = ["E:\music"]

However, the task only receives write access to the workspace directory and does not receive write access to E:\music. The folder remains readable, but all write operations are rejected, and no permission/approval prompt is shown.

I also noticed that the configuration currently contains:

[shell_environment_policy.set]
NODE_REPL_TRUSTED_BROWSER_CLIENT_SHA256S = "..."

sandbox_mode = "workspace-write"

Because sandbox_mode appears after [shell_environment_policy.set], TOML may parse it as part of that table instead of as a top-level setting. This placement may have been introduced or preserved incorrectly during an app update or configuration migration.

What steps can reproduce the bug?
  1. Add E:\music to sandbox_workspace_write.writable_roots.
  2. Confirm that an existing Codex task can write to E:\music.
  3. Update or restart Codex Desktop.
  4. Reopen the same task.
  5. Ask Codex to create or modify a file under E:\music.
    Actual result:
  • E:\music is readable but not writable.
  • The configured writable root is not included in the task's effective writable roots.
  • No approval dialog is shown, so access cannot be restored from the task.
What is the expected behavior?
  • User-configured writable roots should persist across application updates and restarts.
  • Existing tasks should load the configured writable roots correctly.
  • If access cannot be restored automatically, Codex should show a permission prompt or provide a UI option to re-authorize the folder.
Additional information

No response

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 by reproducing the Windows Codex Desktop update/restart scenario with config.toml, focusing on sandbox_workspace_write.writable_roots and the placement of sandbox_mode relative to shell_environment_policy.set. Trace how the existing task loads effective writable roots and configuration after reopening. Done means E:\music remains writable for the task, or a permission prompt or reauthorization option appears when it cannot.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.