@mmmbuto/gemini-cli-termux 0.24.6-termux → 0.24.8-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 CHANGED
@@ -169,3 +169,20 @@ See [docs/termux-api/](./docs/termux-api/) for complete documentation.
169
169
  ## License
170
170
 
171
171
  Apache 2.0 (same as upstream). See LICENSE.
172
+
173
+ ## PTY Support (Shared Library)
174
+
175
+ This project uses `@mmmbuto/pty-termux-utils` as a shared library for PTY
176
+ management across all Termux CLI projects (Gemini, Qwen, Nexus).
177
+
178
+ - **Native PTY:** Uses `@mmmbuto/node-pty-android-arm64@~1.1.0` when available
179
+ - **Linux ARM64:** Uses `@lydell/node-pty-linux-arm64@~1.2.0-beta.2` when
180
+ available
181
+ - **Fallback:** Gracefully degrades to `child_process` adapter
182
+ - **Debug Logging:** Enable with `PTY_DEBUG=1` environment variable
183
+ - **Architecture:** See `@mmmbuto/pty-termux-utils` documentation
184
+
185
+ ```bash
186
+ # Enable PTY debug logging
187
+ PTY_DEBUG=1 gemini "your prompt"
188
+ ```
@@ -50,8 +50,7 @@ node bundle/gemini.js --version
50
50
  ## Update
51
51
 
52
52
  - npm: `npm install -g @mmmbuto/gemini-cli-termux@latest`
53
- - source:
54
- `git pull && npm install && npm run build && npm run bundle`
53
+ - source: `git pull && npm install && npm run build && npm run bundle`
55
54
 
56
55
  ## Termux-API Support (Optional)
57
56
 
@@ -8,8 +8,8 @@ it updated whenever a new patch is added or removed.
8
8
 
9
9
  1. **Clipboard (TERMUX\_\_PREFIX)** – On Termux set `TERMUX__PREFIX` from
10
10
  `$PREFIX` so clipboardy detects Termux correctly.
11
- 2. **Android PTY prebuild** – Use `@mmmbuto/node-pty-android-arm64` for
12
- Termux; remove `@lydell/node-pty-*` and generic `node-pty`.
11
+ 2. **Android PTY prebuild** – Use `@mmmbuto/node-pty-android-arm64` for Termux;
12
+ remove `@lydell/node-pty-*` and generic `node-pty`.
13
13
  3. **Prepare script** – `prepare` is a no-op on Termux to avoid unnecessary
14
14
  bundle/husky work during installs.
15
15
  4. **Core exports** – `packages/core/src/index.ts` re-exports stdio utilities,
@@ -22,8 +22,8 @@ it updated whenever a new patch is added or removed.
22
22
  8. **Termux detection** – `packages/core/src/utils/termux-detect.ts` utility.
23
23
  9. **Postinstall message** – Clear success message on Termux install.
24
24
  10. **Context memory + Memory Mode** – JSON memories (base/user/journal) plus
25
- presets: `default`, `jit`, `jit+json`. Auto-load toggles, primary selector,
26
- and MCP import tool (disabled by default; base writes still gated).
25
+ presets: `default`, `jit`, `jit+json`. Auto-load toggles, primary selector,
26
+ and MCP import tool (disabled by default; base writes still gated).
27
27
  11. **Mobile-first settings** – Compact `/settings` rendering by default on
28
28
  Termux; TTS toggle exposed (opt-in).
29
29
  12. **Shell parser fix** – Base64 polyfill in bundle banner to support
@@ -34,8 +34,8 @@ it updated whenever a new patch is added or removed.
34
34
 
35
35
  ## Expected Warnings
36
36
 
37
- - No node-pty warnings expected on Termux. If PTY fails to load, the CLI
38
- falls back to `child_process`.
37
+ - No node-pty warnings expected on Termux. If PTY fails to load, the CLI falls
38
+ back to `child_process`.
39
39
 
40
40
  ## Scope
41
41
 
@@ -86,7 +86,10 @@ Likely conflict files:
86
86
  - `packages/core/src/services/contextManager.ts` - Keep JIT + JSON wiring
87
87
  - `packages/core/src/utils/contextMemory.ts` - Keep JSON memory logic
88
88
  - `packages/core/src/tools/shell.ts` - Keep TTS guard
89
- - `packages/core/package.json` - Keep `@mmmbuto/node-pty-android-arm64` and remove `@lydell/node-pty-*`/`node-pty`
89
+ - `packages/core/package.json` - Keep `@mmmbuto/node-pty-android-arm64` and
90
+ remove `@lydell/node-pty-*`/`node-pty`
91
+ - `packages/core/src/types/pty-shim.d.ts` - Keep Termux PTY typings shim
92
+ - `packages/core/src/types/mcp-sdk-shims.d.ts` - Keep MCP SDK typings shim
90
93
  - `scripts/prepare-termux.cjs` - Keep Termux prepare no-op
91
94
 
92
95
  ### Step 4: Verify patches intact
@@ -98,6 +101,8 @@ ls -la packages/core/src/utils/contextMemory.ts
98
101
  ls -la scripts/postinstall.cjs
99
102
  ls -la scripts/termux-setup.sh
100
103
  ls -la scripts/termux-tools/
104
+ ls -la packages/core/src/types/pty-shim.d.ts
105
+ ls -la packages/core/src/types/mcp-sdk-shims.d.ts
101
106
 
102
107
  # Check that modifications are present
103
108
  grep "TERMUX PATCH" esbuild.config.js
@@ -71,7 +71,7 @@ export default isInCi;
71
71
 
72
72
  ```json
73
73
  {
74
- "optionalDependencies": {
74
+ "optionalDependencies": {
75
75
  "@mmmbuto/node-pty-android-arm64": "1.1.0"
76
76
  }
77
77
  }
@@ -101,9 +101,7 @@ export default isInCi;
101
101
  **File**: `esbuild.config.js`
102
102
 
103
103
  ```javascript
104
- const external = [
105
- '@mmmbuto/node-pty-android-arm64',
106
- ];
104
+ const external = ['@mmmbuto/node-pty-android-arm64'];
107
105
  ```
108
106
 
109
107
  **Purpose**: Excludes native modules from the bundle.
@@ -125,7 +123,8 @@ npm warn notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for @lydell/n
125
123
 
126
124
  **Current Status**:
127
125
 
128
- With `@mmmbuto/node-pty-android-arm64`, installs on Termux should be clean and avoid node-gyp.
126
+ With `@mmmbuto/node-pty-android-arm64`, installs on Termux should be clean and
127
+ avoid node-gyp.
129
128
 
130
129
  **Legacy Proposed Solution**:
131
130
 
package/bundle/gemini.js CHANGED
@@ -106968,7 +106968,7 @@ import { fileURLToPath as fileURLToPath4 } from "node:url";
106968
106968
  import path12 from "node:path";
106969
106969
  async function getVersion() {
106970
106970
  const pkgJson = await getPackageJson(__dirname3);
106971
- return "0.24.6-termux";
106971
+ return "0.24.8-termux";
106972
106972
  }
106973
106973
  var __filename, __dirname3;
106974
106974
  var init_version2 = __esm({
@@ -445951,7 +445951,7 @@ var WarningMessage = ({ text }) => {
445951
445951
  };
445952
445952
 
445953
445953
  // packages/cli/src/generated/git-commit.ts
445954
- var GIT_COMMIT_INFO2 = "6db122206";
445954
+ var GIT_COMMIT_INFO2 = "f16b1daad";
445955
445955
 
445956
445956
  // packages/cli/src/ui/components/AboutBox.tsx
445957
445957
  var import_jsx_runtime33 = __toESM(require_jsx_runtime(), 1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmmbuto/gemini-cli-termux",
3
- "version": "0.24.6-termux",
3
+ "version": "0.24.8-termux",
4
4
  "engines": {
5
5
  "node": ">=20.0.0"
6
6
  },
@@ -14,7 +14,7 @@
14
14
  "url": "https://github.com/DioNanos/gemini-cli-termux.git"
15
15
  },
16
16
  "config": {
17
- "sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.24.6-termux"
17
+ "sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.24.8-termux"
18
18
  },
19
19
  "scripts": {
20
20
  "start": "crossenv NODE_ENV=development node scripts/start.js",