@mmmbuto/gemini-cli-termux 0.22.3-termux → 0.22.5-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 +14 -0
- package/bundle/gemini.js +75 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -126,6 +126,18 @@ This fork supports optional integration with Termux-API commands for Android
|
|
|
126
126
|
device access. Enable Gemini to interact with your device hardware and Android
|
|
127
127
|
features.
|
|
128
128
|
|
|
129
|
+
**Context memory + TTS note:**
|
|
130
|
+
|
|
131
|
+
- The Termux fork ships JSON context memory at
|
|
132
|
+
`~/.gemini/context_memory/{base.json,user.json,user.journal.jsonl}`. In
|
|
133
|
+
`/settings → Context Memory` you can toggle autoload, choose the primary
|
|
134
|
+
source, and (if needed) enable writes to `base.json` via
|
|
135
|
+
`Allow Base Memory Writes`.
|
|
136
|
+
- TTS notifications are controlled by
|
|
137
|
+
`/settings → Notifications → Enable TTS Notifications`. When disabled,
|
|
138
|
+
`termux-tts-speak` is blocked even if an agent asks for it. These behaviors
|
|
139
|
+
are merge-safe and confined to Termux patches.
|
|
140
|
+
|
|
129
141
|
### Quick Setup
|
|
130
142
|
|
|
131
143
|
```bash
|
|
@@ -171,6 +183,8 @@ See [docs/termux-api/](./docs/termux-api/) for complete documentation.
|
|
|
171
183
|
shell tool blocks TTS when disabled.
|
|
172
184
|
- **Termux-first shell**: non-interactive commands (`echo`, `pwd`, `ls`) work
|
|
173
185
|
without native PTY deps; optional natives removed for faster installs.
|
|
186
|
+
- **Termux-API tools**: discovery/call scripts under `scripts/termux-tools/`
|
|
187
|
+
expose Termux APIs as tools (battery, tts, camera, etc.).
|
|
174
188
|
|
|
175
189
|
See `docs/cli/context-memory.md` for the detailed memory layout and settings.
|
|
176
190
|
|
package/bundle/gemini.js
CHANGED
|
@@ -93738,7 +93738,7 @@ import { fileURLToPath as fileURLToPath4 } from "node:url";
|
|
|
93738
93738
|
import path12 from "node:path";
|
|
93739
93739
|
async function getVersion() {
|
|
93740
93740
|
const pkgJson = await getPackageJson(__dirname3);
|
|
93741
|
-
return "0.22.
|
|
93741
|
+
return "0.22.5-termux";
|
|
93742
93742
|
}
|
|
93743
93743
|
var __filename, __dirname3;
|
|
93744
93744
|
var init_version2 = __esm({
|
|
@@ -435391,6 +435391,15 @@ var SETTINGS_SCHEMA = {
|
|
|
435391
435391
|
description: "General application settings.",
|
|
435392
435392
|
showInDialog: false,
|
|
435393
435393
|
properties: {
|
|
435394
|
+
mobileSettings: {
|
|
435395
|
+
type: "boolean",
|
|
435396
|
+
label: "Mobile Settings Layout",
|
|
435397
|
+
category: "General",
|
|
435398
|
+
requiresRestart: false,
|
|
435399
|
+
default: true,
|
|
435400
|
+
description: "Use compact /settings layout for narrow terminals (auto-detected, can be turned off).",
|
|
435401
|
+
showInDialog: true
|
|
435402
|
+
},
|
|
435394
435403
|
previewFeatures: {
|
|
435395
435404
|
type: "boolean",
|
|
435396
435405
|
label: "Preview Features (e.g., models)",
|
|
@@ -436218,6 +436227,54 @@ var SETTINGS_SCHEMA = {
|
|
|
436218
436227
|
showInDialog: false
|
|
436219
436228
|
}
|
|
436220
436229
|
}
|
|
436230
|
+
},
|
|
436231
|
+
mcpImport: {
|
|
436232
|
+
type: "object",
|
|
436233
|
+
label: "MCP Import",
|
|
436234
|
+
category: "Context",
|
|
436235
|
+
requiresRestart: false,
|
|
436236
|
+
default: {},
|
|
436237
|
+
description: "Import remote MCP memory categories into local base.json (merge-safe).",
|
|
436238
|
+
showInDialog: false,
|
|
436239
|
+
properties: {
|
|
436240
|
+
enabled: {
|
|
436241
|
+
type: "boolean",
|
|
436242
|
+
label: "Enable MCP Import",
|
|
436243
|
+
category: "Context",
|
|
436244
|
+
requiresRestart: false,
|
|
436245
|
+
default: false,
|
|
436246
|
+
description: "Allow the MCP import tool to write remote memory into base.json (requires base write enabled).",
|
|
436247
|
+
showInDialog: true
|
|
436248
|
+
},
|
|
436249
|
+
categories: {
|
|
436250
|
+
type: "array",
|
|
436251
|
+
label: "Categories to Import",
|
|
436252
|
+
category: "Context",
|
|
436253
|
+
requiresRestart: false,
|
|
436254
|
+
default: [
|
|
436255
|
+
"identity",
|
|
436256
|
+
"infrastructure",
|
|
436257
|
+
"projects",
|
|
436258
|
+
"workflow",
|
|
436259
|
+
"base"
|
|
436260
|
+
],
|
|
436261
|
+
description: "MCP categories to pull into base.json.",
|
|
436262
|
+
showInDialog: true,
|
|
436263
|
+
items: {
|
|
436264
|
+
type: "string",
|
|
436265
|
+
description: "Category name"
|
|
436266
|
+
}
|
|
436267
|
+
},
|
|
436268
|
+
scope: {
|
|
436269
|
+
type: "string",
|
|
436270
|
+
label: "Import Scope",
|
|
436271
|
+
category: "Context",
|
|
436272
|
+
requiresRestart: false,
|
|
436273
|
+
default: "global",
|
|
436274
|
+
description: "Scope to apply to imported entries (e.g., global, host:<id>, project:<id>).",
|
|
436275
|
+
showInDialog: true
|
|
436276
|
+
}
|
|
436277
|
+
}
|
|
436221
436278
|
}
|
|
436222
436279
|
}
|
|
436223
436280
|
}
|
|
@@ -439227,7 +439284,7 @@ var WarningMessage = ({ text }) => {
|
|
|
439227
439284
|
};
|
|
439228
439285
|
|
|
439229
439286
|
// packages/cli/src/generated/git-commit.ts
|
|
439230
|
-
var GIT_COMMIT_INFO2 = "
|
|
439287
|
+
var GIT_COMMIT_INFO2 = "4e52a0117";
|
|
439231
439288
|
|
|
439232
439289
|
// packages/cli/src/ui/components/AboutBox.tsx
|
|
439233
439290
|
var import_jsx_runtime33 = __toESM(require_jsx_runtime(), 1);
|
|
@@ -445779,6 +445836,8 @@ function SettingsDialog({
|
|
|
445779
445836
|
availableTerminalHeight,
|
|
445780
445837
|
config: config2
|
|
445781
445838
|
}) {
|
|
445839
|
+
const columns = process.stdout.columns ?? 80;
|
|
445840
|
+
const mobileMode = (settings.merged.general?.mobileSettings ?? true) || columns < 80;
|
|
445782
445841
|
const { vimEnabled, toggleVimEnabled } = useVimMode();
|
|
445783
445842
|
const [focusSection, setFocusSection] = (0, import_react78.useState)(
|
|
445784
445843
|
"settings"
|
|
@@ -446468,7 +446527,7 @@ function SettingsDialog({
|
|
|
446468
446527
|
children: isActive ? "\u25CF" : ""
|
|
446469
446528
|
}
|
|
446470
446529
|
) }),
|
|
446471
|
-
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Box_default, { minWidth: 50, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
446530
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Box_default, { minWidth: mobileMode ? 24 : 50, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
446472
446531
|
Text,
|
|
446473
446532
|
{
|
|
446474
446533
|
color: isActive ? theme.status.success : theme.text.primary,
|
|
@@ -446485,8 +446544,9 @@ function SettingsDialog({
|
|
|
446485
446544
|
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
446486
446545
|
Text,
|
|
446487
446546
|
{
|
|
446547
|
+
wrap: "truncate",
|
|
446488
446548
|
color: isActive ? theme.status.success : shouldBeGreyedOut ? theme.text.secondary : theme.text.primary,
|
|
446489
|
-
children: displayValue
|
|
446549
|
+
children: mobileMode && typeof displayValue === "string" ? displayValue.length > columns - 30 ? displayValue.slice(0, columns - 33) + "\u2026" : displayValue : displayValue
|
|
446490
446550
|
}
|
|
446491
446551
|
)
|
|
446492
446552
|
] }),
|
|
@@ -476344,6 +476404,12 @@ function buildContextMemoryOptions(settings) {
|
|
|
476344
476404
|
const defaults3 = getDefaultContextMemoryOptions();
|
|
476345
476405
|
const userPaths = settings.context?.contextMemory?.paths || {};
|
|
476346
476406
|
const auto = settings.context?.contextMemory?.autoLoad || {};
|
|
476407
|
+
const mcpImport = settings.context?.contextMemory?.mcpImport;
|
|
476408
|
+
const defaultMcpImport = defaults3.mcpImport ?? {
|
|
476409
|
+
enabled: false,
|
|
476410
|
+
categories: [],
|
|
476411
|
+
scope: "global"
|
|
476412
|
+
};
|
|
476347
476413
|
const options2 = {
|
|
476348
476414
|
...defaults3,
|
|
476349
476415
|
enabled: settings.context?.contextMemory?.enabled ?? true,
|
|
@@ -476352,6 +476418,11 @@ function buildContextMemoryOptions(settings) {
|
|
|
476352
476418
|
autoLoadJsonBase: auto.jsonBase ?? true,
|
|
476353
476419
|
autoLoadJsonUser: auto.jsonUser ?? true,
|
|
476354
476420
|
allowBaseWrite: settings.context?.contextMemory?.allowBaseWrite ?? false,
|
|
476421
|
+
mcpImport: {
|
|
476422
|
+
enabled: mcpImport?.enabled ?? defaultMcpImport.enabled ?? false,
|
|
476423
|
+
categories: mcpImport?.categories ?? defaultMcpImport.categories ?? [],
|
|
476424
|
+
scope: mcpImport?.scope ?? defaultMcpImport.scope ?? "global"
|
|
476425
|
+
},
|
|
476355
476426
|
paths: {
|
|
476356
476427
|
base: userPaths.base || defaults3.paths.base,
|
|
476357
476428
|
user: userPaths.user || defaults3.paths.user,
|