@mmmbuto/codex-cli-termux 0.60.1-termux โ†’ 0.61.1-termux

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +77 -36
  2. package/bin/codex +0 -0
  3. package/package.json +2 -2
package/README.md CHANGED
@@ -6,8 +6,6 @@
6
6
  [![downloads](https://img.shields.io/npm/dt/@mmmbuto/codex-cli-termux?style=flat-square)](https://www.npmjs.com/package/@mmmbuto/codex-cli-termux)
7
7
  [![ko-fi](https://img.shields.io/badge/โ˜•_Support-Ko--fi-FF5E5B?style=flat-square&logo=ko-fi)](https://ko-fi.com/dionanos)
8
8
 
9
- ---
10
- > ๐Ÿ’ก Like CLI tools? Check out my next project, **NexusCLI** โ€” an open, developer-focused AI terminal cockpit: https://github.com/DioNanos/NexusCLI
11
9
  ---
12
10
 
13
11
  ## What This Is
@@ -80,7 +78,7 @@ npm install -g @mmmbuto/codex-cli-termux
80
78
 
81
79
  ```bash
82
80
  codex --version
83
- # Output: codex-tui 0.60.1
81
+ # Output: codex-tui 0.61.0
84
82
 
85
83
  codex login
86
84
  # Opens browser for authentication
@@ -110,6 +108,37 @@ codex --help
110
108
 
111
109
  For full documentation, see [OpenAI Codex docs](https://github.com/openai/codex).
112
110
 
111
+ ### Execpolicy Quickstart
112
+
113
+ Codex can enforce your own rules-based execution policy before it runs shell commands.
114
+
115
+ 1. Create a policy directory: `mkdir -p ~/.codex/policy`.
116
+ 2. Create one or more `.codexpolicy` files in that folder. Codex automatically loads every `.codexpolicy` file in there on startup.
117
+ 3. Write `prefix_rule` entries to describe the commands you want to allow, prompt, or block:
118
+
119
+ ```starlark
120
+ prefix_rule(
121
+ pattern = ["git", ["push", "fetch"]],
122
+ decision = "prompt", # allow | prompt | forbidden
123
+ match = [["git", "push", "origin", "main"]], # examples that must match
124
+ not_match = [["git", "status"]], # examples that must not match
125
+ )
126
+ ```
127
+
128
+ - `pattern` is a list of shell tokens, evaluated from left to right; wrap tokens in a nested list to express alternatives (e.g., match both `push` and `fetch`).
129
+ - `decision` sets the severity; Codex picks the strictest decision when multiple rules match (forbidden > prompt > allow).
130
+ - `match` and `not_match` act as (optional) unit tests. Codex validates them when it loads your policy, so you get feedback if an example has unexpected behavior.
131
+
132
+ In this example rule, if Codex wants to run commands with the prefix `git push` or `git fetch`, it will first ask for user approval.
133
+
134
+ Use [`execpolicy2` CLI](./codex-rs/execpolicy2/README.md) to preview decisions for policy files:
135
+
136
+ ```shell
137
+ cargo run -p codex-execpolicy2 -- check --policy ~/.codex/policy/default.codexpolicy git push origin main
138
+ ```
139
+
140
+ Pass multiple `--policy` flags to test how several files combine. See the [`codex-rs/execpolicy2` README](./codex-rs/execpolicy2/README.md) for a more detailed walkthrough of the available syntax.
141
+
113
142
  ---
114
143
 
115
144
  ## ๐Ÿงช Testing & Validation
@@ -174,18 +203,20 @@ Codex will automatically:
174
203
  - At least 80% overall pass rate
175
204
  - No critical crashes
176
205
 
177
- **Example Report**:
206
+ **Example Report** (v0.61.0):
178
207
  ```
179
208
  CODEX CLI TEST SUITE - FINAL REPORT
180
209
  ====================================
181
- Total Tests: 74
182
- โœ… Passed: 71
183
- โŒ Failed: 1
210
+ Platform: Android Termux ARM64
211
+ Codex Version: 0.61.0
212
+ Total Tests: 42
213
+ โœ… Passed: 40
214
+ โŒ Failed: 0
184
215
  โš ๏ธ Skipped: 2 (WebSearch, Git - optional)
185
216
 
186
217
  Termux-Specific: 10/10 passed โœ…
187
218
 
188
- VERDICT: โœ… PASS
219
+ VERDICT: โš ๏ธ PASS WITH WARNINGS
189
220
  ```
190
221
 
191
222
  ---
@@ -204,7 +235,7 @@ See [BUILDING.md](./BUILDING.md) for compilation instructions.
204
235
  - ๐Ÿ”จ **ARM64 compilation** - Building native binaries for each upstream release (~18min per build)
205
236
  - ๐Ÿ”„ **Upstream synchronization** - Tracking OpenAI Codex updates and merging changes
206
237
  - ๐Ÿ› **Compatibility patches** - Maintaining Android-specific fixes for Termux environment
207
- - ๐Ÿ“ฑ **Device testing** - Verification on real ARM64 hardware (Pixel 9 Pro, other devices)
238
+ - ๐Ÿ“ฑ **Device testing** - Verification on real ARM64 hardware (ARM64 flagship device, other devices)
208
239
  - ๐Ÿ“š **Documentation & support** - Maintaining docs, responding to GitHub issues
209
240
 
210
241
  **Time investment:** Approximately 20 hours per month for project upkeep.
@@ -232,7 +263,7 @@ See [LICENSE](./LICENSE) file for details.
232
263
 
233
264
  ---
234
265
 
235
- **Version**: Based on OpenAI Codex 0.60.1 (includes GPT-5.1 MAX support)
266
+ **Version**: Based on OpenAI Codex 0.61.0 (includes GPT-5.1 MAX support)
236
267
  **Platform**: Android Termux ARM64
237
268
  **Maintained**: Community-driven, not affiliated with OpenAI
238
269
 
@@ -240,6 +271,42 @@ See [LICENSE](./LICENSE) file for details.
240
271
 
241
272
  ## ๐Ÿ“œ Changelog
242
273
 
274
+ ### v0.61.0-termux (2025-11-20)
275
+
276
+ **Update**: Synced with upstream OpenAI Codex rust-v0.61.0 (13 commits from v0.60.1)
277
+
278
+ **Upstream Features**:
279
+ - ๐Ÿš€ **Single Pass Truncation**: Improved performance for context management
280
+ - ๐Ÿ” **execpolicy2 Integration**: Enhanced security with new execution policy system
281
+ - ๐Ÿš **Shell Fallback Improvements**: Better shell detection with automatic fallbacks (bash โ†’ zsh)
282
+ - ๐ŸŽจ **Model Migration UX**: Stop showing migration screen after first time
283
+ - ๐ŸชŸ **World-Writable Warnings**: Reduced false positives on Android
284
+
285
+ **Termux-Specific**:
286
+ - โœ… **All 8 patches preserved and verified**
287
+ - โœ… **Shell fallback compatible**: Android `$SHELL` detection enhanced with upstream fallbacks
288
+ - โœ… **Build optimized for 8GB RAM**: Compiled successfully on ROG Phone 3 (9m 06s)
289
+ - โœ… **Binary size**: 42MB (+13% vs 0.60.1 due to execpolicy2)
290
+ - โœ… **Test Suite**: 40/42 tests PASSED (95.2%), 10/10 Termux-specific tests
291
+
292
+ **Patches Validated**:
293
+ 1. โœ… Browser login (`termux-open-url`)
294
+ 2. โœ… RAM optimizations (`lto=false`, `codegen-units=16`)
295
+ 3. โœ… Android shell detection (`$SHELL` env var)
296
+ 4. โœ… Android sandbox disabled
297
+ 5. โœ… LD_* environment variables preserved
298
+ 6. โœ… Auto-update URL (`DioNanos/codex-termux`)
299
+ 7. โœ… Version parser (`-termux` suffix support)
300
+ 8. โœ… NPM package name (`@mmmbuto/codex-cli-termux`)
301
+
302
+ **Breaking Changes**: None - fully backward compatible
303
+
304
+ **Testing**: Comprehensive test suite with 74 tests available at [`CODEX_TEST_SUITE.md`](./CODEX_TEST_SUITE.md)
305
+
306
+ Full upstream changelog: https://github.com/openai/codex/compare/rust-v0.60.1...rust-v0.61.0
307
+
308
+ ---
309
+
243
310
  ### v0.60.1-termux (2025-11-20)
244
311
 
245
312
  **Major Update**: Synced with upstream OpenAI Codex rust-v0.60.1 (250+ commits)
@@ -273,29 +340,3 @@ See [LICENSE](./LICENSE) file for details.
273
340
  **Testing**: Comprehensive test suite with 74 tests available at [`CODEX_TEST_SUITE.md`](./CODEX_TEST_SUITE.md)
274
341
 
275
342
  Full upstream changelog: https://github.com/openai/codex/compare/rust-v0.58.0...rust-v0.60.1
276
-
277
- ---
278
-
279
- ### v0.58.4-termux (2025-11-14)
280
-
281
- **Critical bugfix**: Auto-update detection now working
282
-
283
- **Fixes:**
284
- - ๐Ÿ› **Auto-update detection restored** - Fixed version parser losing `-termux` suffix support after upstream merge
285
- - ๐Ÿ› **Tag parsing fixed** - `extract_version_from_latest_tag` now supports both `rust-v*` (upstream) and `v*-termux` (fork) formats
286
- - ๐Ÿ”ง **Test coverage added** - New test for Termux tag format validation
287
-
288
- **Technical details:**
289
- - **Root cause**: v0.58.0 upstream merge overwrote previous `-termux` suffix fix in `parse_version()`
290
- - **Additional issue**: New upstream code only accepted `rust-v` prefix, rejecting our `v0.58.0-termux` tags
291
- - **Impact**: `~/.config/codex/version.json` was never created, preventing "Update available" banner
292
- - **Solution**: Re-applied `-termux` suffix support + added `v*` prefix support in tag parser
293
-
294
- **Affected versions**: v0.58.0 through v0.58.3 had broken auto-update detection.
295
-
296
- **Termux patches (4 total):**
297
- - โœ… **Patch #1**: Browser login fix (`termux-open-url`)
298
- - โœ… **Patch #2**: RAM optimizations (`lto=false`, `codegen-units=16`)
299
- - โœ… **Patch #3**: Auto-update URL (`@mmmbuto/codex-cli-termux`)
300
- - โœ… **Patch #4**: Auto-update detection (this release)
301
-
package/bin/codex CHANGED
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mmmbuto/codex-cli-termux",
3
- "version": "0.60.1-termux",
4
- "description": "OpenAI Codex CLI v0.60.1 with GPT-5.1 MAX support, pre-compiled for Android Termux (ARM64)",
3
+ "version": "0.61.1-termux",
4
+ "description": "OpenAI Codex CLI v0.61.1 with GPT-5.1 MAX support, pre-compiled for Android Termux (ARM64)",
5
5
  "type": "module",
6
6
  "main": "bin/codex.js",
7
7
  "bin": {