App stops using the configured beta permissions set after the first prompt
Open 💬 2 comments Opened Jul 6, 2026 by deg-hrisser
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
What version of the Codex App are you using (From “About Codex” dialog)?
Version 26.623.101652 • Released Jul 3, 2026
What subscription do you have?
Business
What platform is your computer?
Darwin 25.5.0 arm64 arm
What issue are you seeing?
I have tried to play around with the beta permissions.
Some really great concepts here.
However, I noticed that as of my second prompt in a new thread,
the app falls back to "Asking for approval". This happens for both of my beta permission profiles. This does not happen on the CLI.
What steps can reproduce the bug?
Use beta permission profiles.
Start a new thread with that profile.
Send a message with that profile selected.
Send another message with that profile selected.
-> Here, the profile-selector will switch to "Ask for approval".
What is the expected behavior?
Codex should keep the chosen permission profile for the entire thread.
Additional information
For context, these are all of my broadly permission-specific settings from config.toml:
default_permissions = "workspace-only"
[permissions.workspace-write-read-all]
extends = ":workspace"
[permissions.workspace-write-read-all.filesystem]
":tmpdir" = "deny"
":slash_tmp" = "deny"
"~/.codex-cache" = "write"
[permissions.workspace-write-read-all.network]
enabled = true
[permissions.workspace-write-read-all.network.domains]
"*" = "allow"
[permissions.workspace-only.filesystem]
#":root" = "deny"
":minimal" = "read"
":tmpdir" = "deny"
":slash_tmp" = "deny"
"~/.codex-cache" = "write"
"~/.codex" = "read"
"/opt/homebrew" = "read"
"~/.asdf" = "read"
"~/Development/ceres" = "read"
"~/.ceres" = "read"
"/Library/Developer/CommandLineTools" = "read"
"~/.gitconfig" = "read"
"~/.npmrc" = "read"
[permissions.workspace-only.filesystem.":workspace_roots"]
"." = "write"
".codex" = "read"
".git" = "read"
"module/**" = "read"
"system.sh" = "read"
# "frontend/src" = "write"
# "frontend/src/server" = "write"
# "api/generator-config" = "write"
# "api/specs" = "write"
# "api/openapi-spec.yml" = "write"
# "e2e-test/src" = "write"
[permissions.workspace-only.network]
enabled = true
[permissions.workspace-only.network.domains]
"redacted_internal_domain1" = "allow"
"redacted_internal_domain2" = "deny"
[shell_environment_policy]
set = {
PATH = "/opt/homebrew/bin:/opt/homebrew/sbin:/Users/hrisser/.asdf/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin",
TMPDIR = "/Users/hrisser/.codex-cache/tmp",
TEMP = "/Users/hrisser/.codex-cache/tmp",
TMP = "/Users/hrisser/.codex-cache/tmp",
GRADLE_USER_HOME = "/Users/hrisser/.codex-cache/gradle",
GRADLE_OPTS = "-Dorg.gradle.daemon=false",
npm_config_cache = "/Users/hrisser/.codex-cache/npm-cache",
YARN_CACHE_FOLDER = "/Users/hrisser/.codex-cache/yarn-cache",
MAVEN_OPTS = "-Dmaven.repo.local=/Users/hrisser/.codex-cache/m2",
JAVA_TOOL_OPTIONS = "-Duser.home=/Users/hrisser/.codex-cache/home -Dmaven.repo.local=/Users/hrisser/.codex-cache/m2"
}
2 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
also see Desktop app alternates between configured default path and an explicit requestPermissionProfile=:workspace
Related to #30485: both involve mid-thread permission-profile replacement, but this issue reproduces during ordinary local follow-up turns without mobile or remote continuation. This may indicate a shared thread-settings hydration sink reached through different client paths.