You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/SECURITY.md
+7-3Lines changed: 7 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,10 +20,14 @@ These are required for Chromium to function and are standard across Playwright,
20
20
21
21
| Mode | Default? | What it means |
22
22
|------|----------|--------------|
23
-
|`allowEdits`|**Yes**| Claude can edit files freely, asks before running shell commands |
24
-
|`bypassPermissions`| No |Claude runs any command without confirmation |
23
+
|`acceptEdits`|**Yes**| Claude Code can edit files freely, with shell commands still following Claude Code's current prompt behavior|
24
+
|`bypassPermissions`| No |The agent runs commands without confirmation |
25
25
26
-
The default `allowEdits` mode is safe for most users. `bypassPermissions` is documented for power users who understand the implications.
26
+
The default `acceptEdits` mode is right for most users. `bypassPermissions` is documented for power users who understand the implications.
27
+
28
+
Codex support uses configurable near-parity modes, not identical security. `HOLYCLAUDE_CODEX_CHAT_PERMISSION_MODE` controls CloudCLI Codex chat at runtime, while `HOLYCLAUDE_CODEX_CLI_PERMISSION_MODE` only seeds a new raw `codex` CLI `~/.codex/config.toml` on first boot. Valid values are `default`, `acceptEdits`, and `bypassPermissions`; `acceptEdits` is recommended.
29
+
30
+
Do not expose CloudCLI directly to the public internet, especially with any bypass mode enabled. Docker limits access to the container and mounted volumes, but CloudCLI still exposes an interactive coding environment with credentials and mounted workspace files.
|`HOLYCLAUDE_CODEX_CLI_PERMISSION_MODE`|`default`| Raw `codex` CLI first-boot mode for new `~/.codex/config.toml` only. Valid: `default`, `acceptEdits`, `bypassPermissions`|
477
488
478
489
<palign="right">
479
490
<ahref="#top">↑ back to top</a>
@@ -821,6 +832,19 @@ This is how I personally run it. Edit `./data/claude/settings.json` on your host
821
832
822
833
> **Bypass mode means Claude executes commands without confirmation.** It is powerful, but it can also run destructive commands quickly. Keep the shipped `acceptEdits` default unless you trust the workspace and every prompt you run.
823
834
835
+
### Codex Permission Modes
836
+
837
+
HolyClaude also ships configurable near-parity permission modes for Codex, with separate controls for CloudCLI Codex chat and the raw `codex` CLI.
838
+
839
+
| Setting | Applies to | Default | When it is read |
| `HOLYCLAUDE_CODEX_CHAT_PERMISSION_MODE` | CloudCLI Codex chat in the browser | `acceptEdits` | Runtime container config, read by the CloudCLI Codex provider |
842
+
| `HOLYCLAUDE_CODEX_CLI_PERMISSION_MODE` | Raw `codex` CLI config at `~/.codex/config.toml` | `default` | First boot only, when the file does not already exist |
843
+
844
+
Valid values for both are `default`, `acceptEdits`, and `bypassPermissions`. `acceptEdits` is recommended. For CloudCLI Codex chat, the value is runtime container configuration, so changing it and recreating the container changes future chat runs. For the raw `codex` CLI, the value only seeds a new `~/.codex/config.toml`; existing configs are not overwritten, and the generated value persists until you edit that file yourself.
845
+
846
+
`bypassPermissions`maps Codex to full access with no approval. Inside Docker, that still runs within the container and mounted volumes, but it can read and change anything reachable through those mounts, especially `/workspace` and persisted config under `/home/claude`. Use it only for trusted local workspaces, and don't expose CloudCLI directly to the public internet.
Copy file name to clipboardExpand all lines: config/claude-memory-full.md
+6-1Lines changed: 6 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -73,7 +73,7 @@ The `--break-system-packages` flag is required (no venv in container context).
73
73
|-----|---------|-------|
74
74
|**Claude Code**|`claude`| Primary — you are running inside this |
75
75
|**Gemini CLI**|`gemini`| Requires `GEMINI_API_KEY` env var. Config persists across rebuilds. Notifications via Apprise. |
76
-
|**OpenAI Codex**|`codex`|`OPENAI_API_KEY` or ChatGPT subscription (`codex login --device-auth`). Pre-configured with on-request approval. Auth persists across rebuilds. Notifications via Apprise. |
76
+
|**OpenAI Codex**|`codex`|`OPENAI_API_KEY` or ChatGPT subscription (`codex login --device-auth`). Raw CLI config is seeded on first boot. Auth persists across rebuilds. Notifications via Apprise. |
77
77
|**Cursor**|`cursor`| Requires `CURSOR_API_KEY` env var. Config persists across rebuilds. |
78
78
|**TaskMaster AI**|`task-master`| Task planning and management |
79
79
|**Junie**|`junie`| JetBrains AI coding agent (requires JetBrains account) |
@@ -149,6 +149,11 @@ Claude Code runs in `acceptEdits` mode by default:
149
149
- Shell commands: follow Claude Code's current permission prompt behavior
150
150
- To enable full bypass: change `acceptEdits` to `bypassPermissions` in `~/.claude/settings.json`
151
151
152
+
Codex has separate configurable near-parity controls:
153
+
- CloudCLI Codex chat: `HOLYCLAUDE_CODEX_CHAT_PERMISSION_MODE`, read at runtime by CloudCLI. Valid values: `default`, `acceptEdits`, `bypassPermissions`. Recommended: `acceptEdits`.
154
+
- Raw `codex` CLI: `HOLYCLAUDE_CODEX_CLI_PERMISSION_MODE`, used only when creating a new `~/.codex/config.toml` on first boot. Existing configs are not overwritten, and the generated value persists until you edit it.
155
+
-`bypassPermissions` gives full access with no approval inside the Docker container and mounted volumes. Use it only for trusted local workspaces.
|**OpenAI Codex**|`codex`|`OPENAI_API_KEY`or ChatGPT subscription (`codex login --device-auth`). Raw CLI config is seeded on first boot.|
116
116
|**Cursor**|`cursor`| Requires `CURSOR_API_KEY` env var |
117
117
|**TaskMaster AI**|`task-master`| Task planning and management |
118
118
@@ -181,6 +181,11 @@ Claude Code runs in `acceptEdits` mode by default:
181
181
- Shell commands: follow Claude Code's current permission prompt behavior
182
182
- To enable full bypass: change `acceptEdits` to `bypassPermissions` in `~/.claude/settings.json`
183
183
184
+
Codex has separate configurable near-parity controls:
185
+
- CloudCLI Codex chat: `HOLYCLAUDE_CODEX_CHAT_PERMISSION_MODE`, read at runtime by CloudCLI. Valid values: `default`, `acceptEdits`, `bypassPermissions`. Recommended: `acceptEdits`.
186
+
- Raw `codex` CLI: `HOLYCLAUDE_CODEX_CLI_PERMISSION_MODE`, used only when creating a new `~/.codex/config.toml` on first boot. Existing configs are not overwritten, and the generated value persists until you edit it.
187
+
-`bypassPermissions` gives full access with no approval inside the Docker container and mounted volumes. Use it only for trusted local workspaces.
Copy file name to clipboardExpand all lines: docs/configuration.md
+12Lines changed: 12 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -94,6 +94,17 @@ Claude Code can authenticate via web UI (OAuth) or `ANTHROPIC_API_KEY`. Other AI
94
94
|`OPENAI_API_KEY`| (unset) | OpenAI API key |
95
95
|`CURSOR_API_KEY`| (unset) | Cursor API key |
96
96
97
+
### Codex Permission Modes
98
+
99
+
HolyClaude provides configurable near-parity permission modes for Codex. These settings are intentionally split because CloudCLI Codex chat and the raw `codex` CLI read configuration through different paths.
|`HOLYCLAUDE_CODEX_CHAT_PERMISSION_MODE`|`acceptEdits`|`default`, `acceptEdits`, `bypassPermissions`| CloudCLI Codex chat | Runtime container config read by the CloudCLI Codex provider. Recreate the container after changing it. |
104
+
|`HOLYCLAUDE_CODEX_CLI_PERMISSION_MODE`|`default`|`default`, `acceptEdits`, `bypassPermissions`| Raw `codex` CLI | First-boot-only seed for new `~/.codex/config.toml`. Existing configs are not overwritten, and the generated value persists until you edit the file. |
105
+
106
+
`acceptEdits` is the recommended value for both settings. `bypassPermissions` gives Codex full access with no approval. Docker still limits access to the container and mounted volumes, but anything reachable through `/workspace`, `/home/claude`, and other mounts can be read or changed. Use bypass only for trusted local workspaces.
107
+
97
108
---
98
109
99
110
## Volumes
@@ -110,6 +121,7 @@ Claude Code can authenticate via web UI (OAuth) or `ANTHROPIC_API_KEY`. Other AI
110
121
|`settings.json`| Claude Code settings (permissions, hooks, model) |
111
122
|`CLAUDE.md`| Claude's global memory — customize with your preferences |
112
123
|`.credentials.json`| Anthropic API authentication (auto-created) |
124
+
|`.codex/config.toml`| Raw Codex CLI config, created on first boot if missing |
113
125
|`.holyclaude-bootstrapped`| Sentinel file — delete to re-run first-boot setup |
0 commit comments