@mmmbuto/codex-cli-termux 0.78.0-termux → 0.80.0-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.
- package/README.md +101 -55
- package/bin/codex +0 -0
- package/bin/codex-exec +0 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# 🤖 Codex CLI - Termux Edition
|
|
2
2
|
|
|
3
|
-
> **
|
|
3
|
+
> **Built from upstream OpenAI Codex source, compiled for Android Termux (ARM64)**
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@mmmbuto/codex-cli-termux)
|
|
6
6
|
[](https://www.npmjs.com/package/@mmmbuto/codex-cli-termux)
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
## What This Is
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
Built from upstream OpenAI Codex source, compiled for Android Termux. Since Termux is not officially supported by upstream, we apply minimal patches only for critical compatibility issues.
|
|
14
14
|
|
|
15
15
|
### What We Do:
|
|
16
16
|
✅ **Use official OpenAI Codex source** (https://github.com/openai/codex)
|
|
@@ -31,10 +31,10 @@ We only apply patches for issues that:
|
|
|
31
31
|
- **Are not addressed by upstream** (Termux is not officially supported)
|
|
32
32
|
- **Are minimal and well-documented**
|
|
33
33
|
|
|
34
|
-
**Current patches**: See [patches/](
|
|
34
|
+
**Current patches**: See [patches/](./patches/) directory for full documentation.
|
|
35
35
|
|
|
36
36
|
Need help debugging upgrade alerts? See
|
|
37
|
-
[docs/termux-upgrade-checks.md](
|
|
37
|
+
[docs/termux-upgrade-checks.md](./docs/termux-upgrade-checks.md) for known causes
|
|
38
38
|
and fix strategies.
|
|
39
39
|
|
|
40
40
|
**Found an issue?** Well-documented bug reports with reproduction steps are welcome! Open an [issue](https://github.com/DioNanos/codex-termux/issues).
|
|
@@ -51,14 +51,14 @@ pkg update && pkg upgrade -y
|
|
|
51
51
|
pkg install nodejs-lts -y
|
|
52
52
|
|
|
53
53
|
# Verify
|
|
54
|
-
node --version #
|
|
54
|
+
node --version # v18+ (recommended v22+)
|
|
55
55
|
npm --version # v6+
|
|
56
56
|
```
|
|
57
57
|
|
|
58
58
|
**Requirements:**
|
|
59
59
|
- Android 7+ (Termux)
|
|
60
60
|
- ARM64 architecture
|
|
61
|
-
- Node.js
|
|
61
|
+
- Node.js >=18 (recommended >=22)
|
|
62
62
|
- ~50MB storage
|
|
63
63
|
|
|
64
64
|
---
|
|
@@ -75,7 +75,7 @@ npm install -g @mmmbuto/codex-cli-termux
|
|
|
75
75
|
|
|
76
76
|
```bash
|
|
77
77
|
codex --version
|
|
78
|
-
# Output: codex-cli 0.
|
|
78
|
+
# Output: codex-cli 0.80.0-termux
|
|
79
79
|
|
|
80
80
|
codex login
|
|
81
81
|
# Opens browser for authentication
|
|
@@ -99,11 +99,39 @@ codex login
|
|
|
99
99
|
codex
|
|
100
100
|
```
|
|
101
101
|
|
|
102
|
-
### Path 2 —
|
|
103
|
-
|
|
104
|
-
|
|
102
|
+
### Path 2 — GLM-4.7 (Zhipu ZAI) / GLM-4.7 (智谱 ZAI)
|
|
103
|
+
Use Zhipu's GLM-4.7 model optimized for coding scenarios.
|
|
104
|
+
使用智谱的 GLM-4.7 模型(专为编程场景优化)。
|
|
105
105
|
|
|
106
|
+
**Quick setup / 快速配置:**
|
|
106
107
|
```bash
|
|
108
|
+
# 1. Add API key to ~/.zshrc (bash users: use ~/.bashrc)
|
|
109
|
+
echo 'export ZAI_API_KEY="your-zai-api-key"' >> ~/.zshrc
|
|
110
|
+
|
|
111
|
+
# 2. Add alias for GLM-4.7
|
|
112
|
+
cat >> ~/.zshrc << 'ALIAS_EOF'
|
|
113
|
+
|
|
114
|
+
# Codex CLI with GLM-4.7 (Coding Plan - dedicated endpoint)
|
|
115
|
+
alias codex-glm='OPENAI_API_KEY="$ZAI_API_KEY" codex -m "GLM-4.7" -c model_provider="zai"'
|
|
116
|
+
ALIAS_EOF
|
|
117
|
+
|
|
118
|
+
# 3. Reload shell and test
|
|
119
|
+
source ~/.zshrc
|
|
120
|
+
codex-glm "Say hello in Chinese"
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
If your ZAI setup requires a base URL, export `OPENAI_BASE_URL=...` — see [docs/GLM4.7-quickstart.md](./docs/GLM4.7-quickstart.md).
|
|
124
|
+
|
|
125
|
+
**Full docs / 完整文档:** [docs/GLM4.7-quickstart.md](./docs/GLM4.7-quickstart.md)
|
|
126
|
+
|
|
127
|
+
### Path 3 — OpenRouter & gateways / OpenRouter 与兼容网关
|
|
128
|
+
For OpenRouter or other OpenAI-compatible providers.
|
|
129
|
+
适用于 OpenRouter 或其他 OpenAI 兼容的提供商。
|
|
130
|
+
|
|
131
|
+
See [docs/openrouter-quickstart.md](./docs/openrouter-quickstart.md) for detailed configuration.
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
# Quick example (see docs for full setup)
|
|
107
135
|
source ~/.codex/.env
|
|
108
136
|
codex --profile or-fast
|
|
109
137
|
```
|
|
@@ -111,12 +139,20 @@ codex --profile or-fast
|
|
|
111
139
|
Caution: model slugs/names can change on providers—verify the current model list first.
|
|
112
140
|
注意:模型名称可能变化,请以提供商模型列表为准。
|
|
113
141
|
|
|
142
|
+
---
|
|
143
|
+
|
|
114
144
|
## 🧭 OpenRouter & gateways note / 🧭 OpenRouter 与兼容网关说明
|
|
115
145
|
This Termux port only adds Android compatibility; it does not change Codex behavior.
|
|
116
146
|
本 Termux 版本仅提供 Android 兼容性,不改变 Codex 行为。
|
|
117
147
|
Providers/models are determined by your own config and backend.
|
|
118
148
|
提供商与模型由你的配置与后端决定。
|
|
119
149
|
|
|
150
|
+
For detailed setup guides, see:
|
|
151
|
+
- **GLM-4.7**: [docs/GLM4.7-quickstart.md](./docs/GLM4.7-quickstart.md)
|
|
152
|
+
- **OpenRouter**: [docs/openrouter-quickstart.md](./docs/openrouter-quickstart.md)
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
120
156
|
## 🚀 Usage
|
|
121
157
|
|
|
122
158
|
Same as official Codex CLI:
|
|
@@ -139,7 +175,7 @@ For full documentation, see [OpenAI Codex docs](https://developers.openai.com/co
|
|
|
139
175
|
The `codex` binary is a multitool that includes the `exec` subcommand for automation and scripting:
|
|
140
176
|
|
|
141
177
|
```bash
|
|
142
|
-
# Enable web search tool
|
|
178
|
+
# Enable web search tool (⚠️ avoid pasting secrets; be mindful of prompt injection from untrusted content)
|
|
143
179
|
codex --search
|
|
144
180
|
|
|
145
181
|
# Run non-interactively with JSON output
|
|
@@ -163,33 +199,35 @@ codex exec --json -o output.json "describe this project"
|
|
|
163
199
|
|
|
164
200
|
### Execpolicy
|
|
165
201
|
|
|
166
|
-
See the [Execpolicy quickstart](
|
|
202
|
+
See the [Execpolicy quickstart](./docs/execpolicy.md) to set up rules that govern what commands Codex can execute.
|
|
203
|
+
|
|
204
|
+
---
|
|
167
205
|
|
|
168
206
|
## 🔧 Troubleshooting (Termux) / 🔧 故障排查(Termux)
|
|
169
207
|
Common Termux issues and the fastest places to check.
|
|
170
208
|
常见 Termux 问题与最快排查入口。
|
|
171
209
|
|
|
172
|
-
- Upgrade alerts or shared library errors: see [docs/termux-upgrade-checks.md](
|
|
173
|
-
- Basic usage/setup: see [docs/getting-started.md](
|
|
174
|
-
- Authentication/login problems: see [docs/authentication.md](
|
|
210
|
+
- Upgrade alerts or shared library errors: see [docs/termux-upgrade-checks.md](./docs/termux-upgrade-checks.md)
|
|
211
|
+
- Basic usage/setup: see [docs/getting-started.md](./docs/getting-started.md)
|
|
212
|
+
- Authentication/login problems: see [docs/authentication.md](./docs/authentication.md)
|
|
213
|
+
- GLM-4.7 setup: see [docs/GLM4.7-quickstart.md](./docs/GLM4.7-quickstart.md)
|
|
175
214
|
- Still stuck? Open an issue with repro steps: [GitHub Issues](https://github.com/DioNanos/codex-termux/issues)
|
|
176
215
|
|
|
216
|
+
---
|
|
217
|
+
|
|
177
218
|
## 🧪 Testing & Validation
|
|
178
219
|
|
|
179
|
-
Latest validation (2026-01-
|
|
220
|
+
Latest validation (2026-01-10): 49 passed / 0 failed / 0 skipped — see [CODEX_TEST_REPORT_v0.80.0.md](./CODEX_TEST_REPORT_v0.80.0.md).
|
|
180
221
|
|
|
181
222
|
<details>
|
|
182
223
|
<summary>Details: automated test suite, coverage, and sample report</summary>
|
|
183
224
|
|
|
184
225
|
### Automated Test Suite
|
|
185
|
-
|
|
186
|
-
This project includes a comprehensive test suite specifically designed for Termux validation:
|
|
187
|
-
|
|
188
|
-
**Test Suite**: [`CODEX_TEST_SUITE.md`](../CODEX_TEST_SUITE.md)
|
|
226
|
+
[CODEX_TEST_SUITE.md](./CODEX_TEST_SUITE.md) - Universal test suite compatible with all Codex versions
|
|
189
227
|
|
|
190
228
|
**Coverage**:
|
|
191
229
|
- ✅ **82 automated tests** across 12 categories (including prep/cleanup)
|
|
192
|
-
- ✅ **10 Termux-specific tests** validating all
|
|
230
|
+
- ✅ **10 Termux-specific tests** validating all active compatibility patches (#1-#6, #9)
|
|
193
231
|
- ✅ **8 Package & Binary tests** for npm installation verification
|
|
194
232
|
- ✅ File operations, shell execution, environment detection
|
|
195
233
|
- ✅ Android permissions, library paths, package manager
|
|
@@ -238,20 +276,23 @@ Codex will automatically:
|
|
|
238
276
|
- ✅ Browser opener availability (Patch #1 validation)
|
|
239
277
|
- ✅ Architecture detection (aarch64/ARM64)
|
|
240
278
|
|
|
241
|
-
**Suite size**: 82 tests defined (includes optional/manual). Automated run on Termux executes 49 applicable tests; last run (2026-01-
|
|
279
|
+
**Suite size**: 82 tests defined (includes optional/manual). Automated run on Termux executes 49 applicable tests; last run (2026-01-10) completed with 47 ✅ / 0 ❌ / 2 ⚠️ skipped (WebSearch unavailable, git info skipped in non-repo workspace).
|
|
242
280
|
|
|
243
281
|
**Success Criteria**:
|
|
244
282
|
- All System, Files, Shell, and Termux tests must pass
|
|
245
283
|
- At least 80% overall pass rate
|
|
246
284
|
- No critical crashes
|
|
247
285
|
|
|
248
|
-
**Example Report** (v0.
|
|
286
|
+
**Example Report** (v0.80.0-termux, 2026-01-10):
|
|
249
287
|
```
|
|
250
288
|
CODEX CLI TEST SUITE - FINAL REPORT
|
|
251
289
|
====================================
|
|
252
|
-
Platform: Android Termux ARM64
|
|
253
|
-
Codex Version: 0.
|
|
290
|
+
Platform: Android Termux ARM64
|
|
291
|
+
Codex Version: 0.80.0-termux
|
|
254
292
|
Total Tests: 49
|
|
293
|
+
✅ Passed: 49
|
|
294
|
+
❌ Failed: 0
|
|
295
|
+
⚠️ Skipped: 0
|
|
255
296
|
✅ Passed: 47
|
|
256
297
|
❌ Failed: 0
|
|
257
298
|
⚠️ Skipped: 2 (WebSearch unavailable, git info skipped in non-repo workspace)
|
|
@@ -261,39 +302,44 @@ Package & Binary: 8/8 passed ✅
|
|
|
261
302
|
|
|
262
303
|
VERDICT: ✅ PASS
|
|
263
304
|
```
|
|
264
|
-
- [**Getting started**](../docs/getting-started.md)
|
|
265
|
-
- [CLI usage](../docs/getting-started.md#cli-usage)
|
|
266
|
-
- [Slash Commands](../docs/slash_commands.md)
|
|
267
|
-
- [Running with a prompt as input](../docs/getting-started.md#running-with-a-prompt-as-input)
|
|
268
|
-
- [Example prompts](../docs/getting-started.md#example-prompts)
|
|
269
|
-
- [Custom prompts](../docs/prompts.md)
|
|
270
|
-
- [Memory with AGENTS.md](../docs/getting-started.md#memory-with-agentsmd)
|
|
271
|
-
- [**Configuration**](../docs/config.md)
|
|
272
|
-
- [Example config](../docs/example-config.md)
|
|
273
|
-
- [**Sandbox & approvals**](../docs/sandbox.md)
|
|
274
|
-
- [**Execpolicy quickstart**](../docs/execpolicy.md)
|
|
275
|
-
- [**Authentication**](../docs/authentication.md)
|
|
276
|
-
- [Auth methods](../docs/authentication.md#forcing-a-specific-auth-method-advanced)
|
|
277
|
-
- [Login on a "Headless" machine](../docs/authentication.md#connecting-on-a-headless-machine)
|
|
278
|
-
- **Automating Codex**
|
|
279
|
-
- [GitHub Action](https://github.com/openai/codex-action)
|
|
280
|
-
- [TypeScript SDK](../sdk/typescript/README.md)
|
|
281
|
-
- [Non-interactive mode (`codex exec`)](../docs/exec.md)
|
|
282
|
-
- [**Skills**](../docs/skills.md)
|
|
283
|
-
- [**Installing & building**](../docs/install.md)
|
|
284
|
-
- [System Requirements](../docs/install.md#system-requirements)
|
|
285
|
-
- [DotSlash](../docs/install.md#dotslash)
|
|
286
|
-
- [Build from source](../docs/install.md#build-from-source)
|
|
287
|
-
- [**Contributing**](../docs/contributing.md)
|
|
288
|
-
- [**Open source fund**](../docs/open-source-fund.md)
|
|
289
305
|
|
|
290
306
|
</details>
|
|
291
307
|
|
|
292
308
|
---
|
|
293
309
|
|
|
310
|
+
## 📚 Documentation
|
|
311
|
+
|
|
312
|
+
- [**Getting started**](./docs/getting-started.md)
|
|
313
|
+
- [CLI usage](./docs/getting-started.md#cli-usage)
|
|
314
|
+
- [Slash Commands](./docs/slash_commands.md)
|
|
315
|
+
- [Running with a prompt as input](./docs/getting-started.md#running-with-a-prompt-as-input)
|
|
316
|
+
- [Example prompts](./docs/getting-started.md#example-prompts)
|
|
317
|
+
- [Custom prompts](./docs/prompts.md)
|
|
318
|
+
- [Memory with AGENTS.md](./docs/getting-started.md#memory-with-agentsmd)
|
|
319
|
+
- [**Configuration**](./docs/config.md)
|
|
320
|
+
- [Example config](./docs/example-config.md)
|
|
321
|
+
- [**Sandbox & approvals**](./docs/sandbox.md)
|
|
322
|
+
- [**Execpolicy quickstart**](./docs/execpolicy.md)
|
|
323
|
+
- [**Authentication**](./docs/authentication.md)
|
|
324
|
+
- [Auth methods](./docs/authentication.md#forcing-a-specific-auth-method-advanced)
|
|
325
|
+
- [Login on a "Headless" machine](./docs/authentication.md#connecting-on-a-headless-machine)
|
|
326
|
+
- **Automating Codex**
|
|
327
|
+
- [GitHub Action](https://github.com/openai/codex-action)
|
|
328
|
+
- [TypeScript SDK](./sdk/typescript/README.md)
|
|
329
|
+
- [Non-interactive mode (`codex exec`)](./docs/exec.md)
|
|
330
|
+
- [**Skills**](./docs/skills.md)
|
|
331
|
+
- [**Installing & building**](./docs/install.md)
|
|
332
|
+
- [System Requirements](./docs/install.md#system-requirements)
|
|
333
|
+
- [DotSlash](./docs/install.md#dotslash)
|
|
334
|
+
- [Build from source](./docs/install.md#build-from-source)
|
|
335
|
+
- [**Contributing**](./docs/contributing.md)
|
|
336
|
+
- [**Open source fund**](./docs/open-source-fund.md)
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
294
340
|
## 🔨 Building from Source
|
|
295
341
|
|
|
296
|
-
See [BUILDING.md](
|
|
342
|
+
See [BUILDING.md](./BUILDING.md) for compilation instructions.
|
|
297
343
|
|
|
298
344
|
---
|
|
299
345
|
|
|
@@ -321,7 +367,7 @@ This project maintains full compliance with the Apache 2.0 license from OpenAI C
|
|
|
321
367
|
**Original work**: Copyright OpenAI (https://github.com/openai/codex)
|
|
322
368
|
**Termux port**: Minimal patches for Android compatibility
|
|
323
369
|
|
|
324
|
-
See [LICENSE](
|
|
370
|
+
See [LICENSE](./LICENSE) file for details.
|
|
325
371
|
|
|
326
372
|
---
|
|
327
373
|
|
|
@@ -333,7 +379,7 @@ See [LICENSE](../LICENSE) file for details.
|
|
|
333
379
|
|
|
334
380
|
---
|
|
335
381
|
|
|
336
|
-
**Version**: Based on OpenAI Codex main (
|
|
382
|
+
**Version**: Based on OpenAI Codex main (rust-v0.80.0) with Termux compatibility patches
|
|
337
383
|
**Platform**: Android Termux ARM64
|
|
338
384
|
**Maintained**: Community-driven, not affiliated with OpenAI
|
|
339
385
|
|
|
@@ -343,8 +389,8 @@ See [LICENSE](../LICENSE) file for details.
|
|
|
343
389
|
|
|
344
390
|
Upstream Codex releases: https://github.com/openai/codex/releases
|
|
345
391
|
|
|
346
|
-
Termux-specific changes: see [CHANGELOG.md](
|
|
392
|
+
Termux-specific changes: see [CHANGELOG.md](./CHANGELOG.md).
|
|
347
393
|
|
|
348
394
|
---
|
|
349
395
|
|
|
350
|
-
**Testing**: Comprehensive test suite v1.2 with 82 tests (incl. Termux + Package) in [`CODEX_TEST_SUITE.md`](
|
|
396
|
+
**Testing**: Comprehensive test suite v1.2 with 82 tests (incl. Termux + Package) in [`CODEX_TEST_SUITE.md`](./CODEX_TEST_SUITE.md)
|
package/bin/codex
CHANGED
|
Binary file
|
package/bin/codex-exec
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mmmbuto/codex-cli-termux",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "OpenAI Codex CLI (upstream main, post rust-v0.
|
|
3
|
+
"version": "0.80.0-termux",
|
|
4
|
+
"description": "OpenAI Codex CLI (upstream main, post rust-v0.80.0) packaged as 0.80.0-termux – TUI + automation for Android Termux (ARM64). Use 'codex' for TUI, 'codex exec --json' for automation.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "bin/codex.js",
|
|
7
7
|
"bin": {
|