myshell-tools 3.0.0 → 3.2.0
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/CHANGELOG.md +52 -1
- package/README.md +32 -21
- package/dist/cli.js +22 -6
- package/dist/cli.js.map +1 -1
- package/dist/commands/cost.js +44 -25
- package/dist/commands/cost.js.map +1 -1
- package/dist/commands/doctor.d.ts +17 -4
- package/dist/commands/doctor.js +56 -34
- package/dist/commands/doctor.js.map +1 -1
- package/dist/core/native-session.d.ts +57 -0
- package/dist/core/native-session.js +68 -0
- package/dist/core/native-session.js.map +1 -0
- package/dist/core/orchestrate.js +25 -4
- package/dist/core/orchestrate.js.map +1 -1
- package/dist/core/types.d.ts +26 -0
- package/dist/infra/config.d.ts +8 -0
- package/dist/infra/config.js.map +1 -1
- package/dist/infra/credentials.d.ts +35 -0
- package/dist/infra/credentials.js +59 -1
- package/dist/infra/credentials.js.map +1 -1
- package/dist/infra/health.d.ts +57 -0
- package/dist/infra/health.js +96 -0
- package/dist/infra/health.js.map +1 -0
- package/dist/infra/insights.d.ts +14 -0
- package/dist/infra/insights.js +31 -0
- package/dist/infra/insights.js.map +1 -1
- package/dist/interface/menu.d.ts +70 -5
- package/dist/interface/menu.js +195 -26
- package/dist/interface/menu.js.map +1 -1
- package/dist/interface/render.js +11 -8
- package/dist/interface/render.js.map +1 -1
- package/dist/providers/claude.d.ts +24 -8
- package/dist/providers/claude.js +65 -15
- package/dist/providers/claude.js.map +1 -1
- package/dist/providers/codex-parse.js +14 -2
- package/dist/providers/codex-parse.js.map +1 -1
- package/dist/providers/codex.d.ts +13 -1
- package/dist/providers/codex.js +19 -8
- package/dist/providers/codex.js.map +1 -1
- package/dist/providers/port.d.ts +15 -0
- package/dist/ui/help.d.ts +17 -0
- package/dist/ui/help.js +106 -0
- package/dist/ui/help.js.map +1 -0
- package/package.json +1 -1
package/dist/interface/menu.js
CHANGED
|
@@ -19,17 +19,19 @@ import readline from 'node:readline';
|
|
|
19
19
|
import { execa } from 'execa';
|
|
20
20
|
import { saveConfig } from '../infra/config.js';
|
|
21
21
|
import { readLedger } from '../infra/ledger.js';
|
|
22
|
-
import { summarizeSpend,
|
|
22
|
+
import { summarizeSpend, formatTokens } from '../infra/insights.js';
|
|
23
23
|
import { detectEnvironment, getInstallCommand } from '../providers/detect.js';
|
|
24
24
|
import { installProvider, installCommandFor } from '../providers/install.js';
|
|
25
25
|
import { listNativeSessions, importNativeSession } from '../providers/native-sessions.js';
|
|
26
26
|
import { DEFAULT_POLICY, POLICY_PRESETS } from '../core/policy.js';
|
|
27
|
+
import { planNativeSession } from '../core/native-session.js';
|
|
27
28
|
import { runTask } from './run.js';
|
|
28
29
|
import { runLogin } from '../commands/login.js';
|
|
29
30
|
import { runDoctor } from '../commands/doctor.js';
|
|
30
31
|
import { runCost } from '../commands/cost.js';
|
|
31
32
|
import { runInstall } from '../commands/install.js';
|
|
32
33
|
import { box, separator, menu, prompt } from '../ui/tui.js';
|
|
34
|
+
import { loadClaudeTokenCapturedAt, claudeTokenStatus } from '../infra/credentials.js';
|
|
33
35
|
// ---------------------------------------------------------------------------
|
|
34
36
|
// Pure helpers — exported for unit tests
|
|
35
37
|
// ---------------------------------------------------------------------------
|
|
@@ -130,6 +132,53 @@ export function relativeTime(thenMs, nowMs) {
|
|
|
130
132
|
const days = Math.floor(diffMs / (24 * 60 * 60 * 1000));
|
|
131
133
|
return `${days}d ago`;
|
|
132
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Build the short version-status suffix shown next to the version number in the
|
|
137
|
+
* header title — so the user always knows, at a glance, whether they are current.
|
|
138
|
+
*
|
|
139
|
+
* Pure — no I/O. Returns a leading-space string ready to append to the title:
|
|
140
|
+
* - update available + known latest → ` → 3.1.0 available`
|
|
141
|
+
* - up to date (latest known, no update) → ` (latest)`
|
|
142
|
+
* - check failed / offline (latest unknown) → `` (claim nothing)
|
|
143
|
+
*
|
|
144
|
+
* @param updateInfo - Result of the update check, or undefined when not run.
|
|
145
|
+
*/
|
|
146
|
+
export function versionStatusLabel(updateInfo) {
|
|
147
|
+
if (updateInfo === undefined)
|
|
148
|
+
return '';
|
|
149
|
+
if (updateInfo.updateAvailable && updateInfo.latest !== null) {
|
|
150
|
+
return ` → ${updateInfo.latest} available`;
|
|
151
|
+
}
|
|
152
|
+
if (updateInfo.latest !== null)
|
|
153
|
+
return ' (latest)';
|
|
154
|
+
return '';
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Detect whether myshell-tools is running via `npx` rather than a global install.
|
|
158
|
+
*
|
|
159
|
+
* Pure — takes the running script path (process.argv[1]) and the environment.
|
|
160
|
+
* npx executes packages from a cache directory containing a `_npx` segment
|
|
161
|
+
* (e.g. ~/.npm/_npx/<hash>/node_modules/myshell-tools/dist/cli.js), so the
|
|
162
|
+
* presence of that segment in the script path is the reliable signal. Handles
|
|
163
|
+
* both POSIX and Windows separators. Never throws.
|
|
164
|
+
*
|
|
165
|
+
* Why it matters: self-update runs `npm install -g`, which an npx invocation
|
|
166
|
+
* will ignore on the next run (npx re-serves its own cache). So under npx we
|
|
167
|
+
* skip silent auto-update and instead tell the user to install globally.
|
|
168
|
+
*
|
|
169
|
+
* @param scriptPath - The running script path (typically process.argv[1]).
|
|
170
|
+
* @param env - Environment to read npm_* hints from.
|
|
171
|
+
*/
|
|
172
|
+
export function isRunningUnderNpx(scriptPath, env) {
|
|
173
|
+
if (scriptPath !== undefined && (scriptPath.includes('/_npx/') || scriptPath.includes('\\_npx\\'))) {
|
|
174
|
+
return true;
|
|
175
|
+
}
|
|
176
|
+
const execpath = env['npm_execpath'];
|
|
177
|
+
if (execpath !== undefined && (execpath.includes('/_npx/') || execpath.includes('\\_npx\\'))) {
|
|
178
|
+
return true;
|
|
179
|
+
}
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
133
182
|
/**
|
|
134
183
|
* Build the header box lines (provider status) from real EnvironmentStatus.
|
|
135
184
|
* Returns string[] safe to pass as the `lines` arg to box().
|
|
@@ -139,8 +188,12 @@ export function relativeTime(thenMs, nowMs) {
|
|
|
139
188
|
* ⚠️ when ps.installed && !ps.authenticated (append " not signed in")
|
|
140
189
|
* ❌ when !ps.installed (append install command)
|
|
141
190
|
* Plan label appended when ps.plan is non-null (e.g. " (Max x5)").
|
|
191
|
+
*
|
|
192
|
+
* @param claudeToken - Optional pre-computed token lifetime status. When the token
|
|
193
|
+
* is near expiry or expired, ONE concise warning line is appended. Computed by
|
|
194
|
+
* the caller (startMenu) so this function stays pure and I/O-free.
|
|
142
195
|
*/
|
|
143
|
-
export function renderHeaderLines(env, _version) {
|
|
196
|
+
export function renderHeaderLines(env, _version, claudeToken) {
|
|
144
197
|
const lines = [];
|
|
145
198
|
for (const ps of [env.claude, env.codex]) {
|
|
146
199
|
const planSuffix = ps.plan != null ? ` (${ps.plan})` : '';
|
|
@@ -167,24 +220,39 @@ export function renderHeaderLines(env, _version) {
|
|
|
167
220
|
lines.push(`⚠️ ${ps.id}: not signed in${planSuffix}`);
|
|
168
221
|
}
|
|
169
222
|
}
|
|
223
|
+
// Token expiry warning — only when near-expiry or expired (not on every launch).
|
|
224
|
+
if (claudeToken != null && (claudeToken.expired || claudeToken.nearExpiry)) {
|
|
225
|
+
if (claudeToken.expired) {
|
|
226
|
+
lines.push(`⚠️ claude token EXPIRED — run: myshell-tools login claude --code`);
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
lines.push(`⚠️ claude token expires in ${claudeToken.daysLeft} days — run: myshell-tools login claude --code`);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
170
232
|
return lines;
|
|
171
233
|
}
|
|
172
234
|
/**
|
|
173
|
-
* Render the
|
|
235
|
+
* Render the activity status line shown beneath the provider header.
|
|
174
236
|
*
|
|
175
|
-
*
|
|
176
|
-
*
|
|
177
|
-
* shows
|
|
237
|
+
* This is a SUBSCRIPTION tool, not an API-key tool — per-token dollar figures
|
|
238
|
+
* don't map to flat subscription billing and read as misleading bloat, so the
|
|
239
|
+
* always-on line shows REAL, measured signals only: task count and tokens. The
|
|
240
|
+
* estimated-dollar view lives on-demand in `myshell-tools cost`, clearly
|
|
241
|
+
* captioned there as an API-equivalent (not your actual bill).
|
|
242
|
+
*
|
|
243
|
+
* Uses real numbers only — all values come from the SpendSummary derived from
|
|
244
|
+
* `readLedger`. No digit-% literals appear here.
|
|
178
245
|
*
|
|
179
246
|
* @param spend - Output of summarizeSpend() over real ledger entries.
|
|
180
247
|
* @param color - When false, no ANSI escape codes are emitted.
|
|
181
248
|
*/
|
|
182
249
|
export function renderBudgetLine(spend, _color) {
|
|
183
250
|
if (spend.calls === 0) {
|
|
184
|
-
return '
|
|
251
|
+
return 'No runs yet — press n to start';
|
|
185
252
|
}
|
|
186
|
-
const
|
|
187
|
-
const
|
|
253
|
+
const taskWord = spend.calls === 1 ? 'task' : 'tasks';
|
|
254
|
+
const todayPart = 'Today: ' + String(spend.calls) + ' ' + taskWord + ' · ' + formatTokens(spend.todayTokens) + ' tokens';
|
|
255
|
+
const totalPart = formatTokens(spend.totalTokens) + ' tokens all-time';
|
|
188
256
|
return todayPart + ' · ' + totalPart;
|
|
189
257
|
}
|
|
190
258
|
/**
|
|
@@ -449,6 +517,9 @@ async function runModeSelect(config, out, readLine) {
|
|
|
449
517
|
onboarded: config.onboarded,
|
|
450
518
|
setAsDefault: config.setAsDefault,
|
|
451
519
|
...(newMode !== undefined ? { mode: newMode } : {}),
|
|
520
|
+
// Preserve other prefs so changing mode doesn't silently reset them.
|
|
521
|
+
...(config.autoUpdate === false ? { autoUpdate: false } : {}),
|
|
522
|
+
...(config.nativeSessions === true ? { nativeSessions: true } : {}),
|
|
452
523
|
};
|
|
453
524
|
await saveConfig(updated);
|
|
454
525
|
out.write(`Mode set to: ${newMode ?? 'balanced'}\n`);
|
|
@@ -469,6 +540,9 @@ async function toggleDefaultShell(config, out) {
|
|
|
469
540
|
onboarded: config.onboarded,
|
|
470
541
|
setAsDefault,
|
|
471
542
|
...(config.mode !== undefined ? { mode: config.mode } : {}),
|
|
543
|
+
// Preserve other prefs so toggling default-shell doesn't silently reset them.
|
|
544
|
+
...(config.autoUpdate === false ? { autoUpdate: false } : {}),
|
|
545
|
+
...(config.nativeSessions === true ? { nativeSessions: true } : {}),
|
|
472
546
|
};
|
|
473
547
|
await saveConfig(updated);
|
|
474
548
|
return updated;
|
|
@@ -480,6 +554,7 @@ async function runSettings(_ctx, mutableCtx, out, readLine) {
|
|
|
480
554
|
` [1] Mode: ${cfg.mode ?? 'balanced'}`,
|
|
481
555
|
` [2] Set as default shell: ${cfg.setAsDefault ? 'on' : 'off'}`,
|
|
482
556
|
` [3] Auto-update: ${cfg.autoUpdate !== false ? 'on' : 'off'}`,
|
|
557
|
+
` [4] Native sessions (experimental): ${cfg.nativeSessions === true ? 'on' : 'off'}`,
|
|
483
558
|
'',
|
|
484
559
|
' [Enter] Back',
|
|
485
560
|
'',
|
|
@@ -499,6 +574,9 @@ async function runSettings(_ctx, mutableCtx, out, readLine) {
|
|
|
499
574
|
else if (key === '3') {
|
|
500
575
|
mutableCtx.config = await toggleAutoUpdate(mutableCtx.config, out);
|
|
501
576
|
}
|
|
577
|
+
else if (key === '4') {
|
|
578
|
+
mutableCtx.config = await toggleNativeSessions(mutableCtx.config, out);
|
|
579
|
+
}
|
|
502
580
|
// anything else → back
|
|
503
581
|
}
|
|
504
582
|
/**
|
|
@@ -518,11 +596,34 @@ async function toggleAutoUpdate(config, out) {
|
|
|
518
596
|
setAsDefault: config.setAsDefault,
|
|
519
597
|
...(config.mode !== undefined ? { mode: config.mode } : {}),
|
|
520
598
|
...(!enable ? { autoUpdate: false } : {}),
|
|
599
|
+
...(config.nativeSessions === true ? { nativeSessions: true } : {}),
|
|
521
600
|
};
|
|
522
601
|
await saveConfig(updated);
|
|
523
602
|
out.write(`Auto-update: ${enable ? 'on' : 'off'}\n`);
|
|
524
603
|
return updated;
|
|
525
604
|
}
|
|
605
|
+
/**
|
|
606
|
+
* Toggle the EXPERIMENTAL native-session preference and persist it.
|
|
607
|
+
*
|
|
608
|
+
* When on, conversations that stay on the same provider reuse that provider's
|
|
609
|
+
* native session (Claude `--session-id`/`--resume`) instead of replaying a
|
|
610
|
+
* compacted history block — better context fidelity and less re-sent context.
|
|
611
|
+
* Default OFF; live behavior should be verified with the gated integration test
|
|
612
|
+
* (`npm run test:integration`) before relying on it.
|
|
613
|
+
*/
|
|
614
|
+
async function toggleNativeSessions(config, out) {
|
|
615
|
+
const enable = config.nativeSessions !== true;
|
|
616
|
+
const updated = {
|
|
617
|
+
onboarded: config.onboarded,
|
|
618
|
+
setAsDefault: config.setAsDefault,
|
|
619
|
+
...(config.mode !== undefined ? { mode: config.mode } : {}),
|
|
620
|
+
...(config.autoUpdate === false ? { autoUpdate: false } : {}),
|
|
621
|
+
...(enable ? { nativeSessions: true } : {}),
|
|
622
|
+
};
|
|
623
|
+
await saveConfig(updated);
|
|
624
|
+
out.write(`Native sessions (experimental): ${enable ? 'on' : 'off'}\n`);
|
|
625
|
+
return updated;
|
|
626
|
+
}
|
|
526
627
|
// ---------------------------------------------------------------------------
|
|
527
628
|
// Manage conversations screen
|
|
528
629
|
// ---------------------------------------------------------------------------
|
|
@@ -605,9 +706,9 @@ async function runManage(ctx, out, readLine) {
|
|
|
605
706
|
if (!Number.isNaN(num) && num >= 1 && num <= metas.length) {
|
|
606
707
|
const conv = metas[num - 1];
|
|
607
708
|
if (conv !== undefined) {
|
|
608
|
-
out.write(`Delete "${conv.title}"? (y/
|
|
709
|
+
out.write(`Delete "${conv.title}"? (y/N) `);
|
|
609
710
|
const confirmAns = await readLine();
|
|
610
|
-
if ((confirmAns
|
|
711
|
+
if (parseYesNo(confirmAns, false)) {
|
|
611
712
|
await ctx.store.remove(conv.id);
|
|
612
713
|
out.write('Deleted.\n');
|
|
613
714
|
}
|
|
@@ -941,6 +1042,15 @@ async function runChatLoop(ctx, mutableCtx, convId, out, readLine, loginFn, dete
|
|
|
941
1042
|
authenticatedProviders.push('codex');
|
|
942
1043
|
if (mutableCtx.env.opencode.authenticated)
|
|
943
1044
|
authenticatedProviders.push('opencode');
|
|
1045
|
+
// EXPERIMENTAL native session plan (opt-in via config.nativeSessions).
|
|
1046
|
+
// Pure decision; null when disabled. When present, orchestrate uses the
|
|
1047
|
+
// provider's native session for matching tiers instead of replaying history.
|
|
1048
|
+
const nativeSession = planNativeSession({
|
|
1049
|
+
enabled: mutableCtx.config.nativeSessions === true,
|
|
1050
|
+
conversationId: convId,
|
|
1051
|
+
history: priorHistory,
|
|
1052
|
+
});
|
|
1053
|
+
// planNativeSession returns [] when disabled / no conversation id.
|
|
944
1054
|
return {
|
|
945
1055
|
clock: ctx.clock,
|
|
946
1056
|
session: ctx.store.writer(convId),
|
|
@@ -953,6 +1063,7 @@ async function runChatLoop(ctx, mutableCtx, convId, out, readLine, loginFn, dete
|
|
|
953
1063
|
...(priorHistory.length > 0 ? { history: priorHistory } : {}),
|
|
954
1064
|
...(Object.keys(availableModels).length > 0 ? { availableModels } : {}),
|
|
955
1065
|
...(authenticatedProviders.length > 0 ? { authenticatedProviders } : {}),
|
|
1066
|
+
...(nativeSession.length > 0 ? { nativeSession } : {}),
|
|
956
1067
|
};
|
|
957
1068
|
};
|
|
958
1069
|
const deps = buildDeps();
|
|
@@ -1017,18 +1128,40 @@ async function runChatLoop(ctx, mutableCtx, convId, out, readLine, loginFn, dete
|
|
|
1017
1128
|
// ---------------------------------------------------------------------------
|
|
1018
1129
|
// Main screen render
|
|
1019
1130
|
// ---------------------------------------------------------------------------
|
|
1020
|
-
async function renderMainScreen(ctx, mutableCtx, metas, out, updateInfo) {
|
|
1131
|
+
async function renderMainScreen(ctx, mutableCtx, metas, spend, out, updateInfo, claudeTokenInfo, runningUnderNpx = false, healthIssues = []) {
|
|
1021
1132
|
out.write('\n');
|
|
1022
|
-
// Header box — always box(), 🧠 emoji, real provider data
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1133
|
+
// Header box — always box(), 🧠 emoji, real provider data.
|
|
1134
|
+
// Title carries the live version status so the user always knows whether they
|
|
1135
|
+
// are current: "(latest)" when up to date, "→ X.Y.Z available" when not.
|
|
1136
|
+
const headerLines = renderHeaderLines(mutableCtx.env, ctx.version, claudeTokenInfo ?? undefined);
|
|
1137
|
+
const versionLabel = versionStatusLabel(updateInfo);
|
|
1138
|
+
out.write(box(`🧠 myshell-tools v${ctx.version}${versionLabel}`, headerLines) + '\n\n');
|
|
1139
|
+
// Update banner — only shown when a newer version is genuinely available.
|
|
1026
1140
|
if (updateInfo?.updateAvailable === true && updateInfo.latest !== null) {
|
|
1027
|
-
|
|
1141
|
+
if (runningUnderNpx) {
|
|
1142
|
+
// Self-update can't persist under npx (it re-serves its own cache next run).
|
|
1143
|
+
// Be honest and point to the durable fix instead of a no-op "press u".
|
|
1144
|
+
out.write(` ▲ Update available: ${updateInfo.current} → ${updateInfo.latest}\n` +
|
|
1145
|
+
` You're running via npx, so updates won't stick. Install globally to stay current:\n` +
|
|
1146
|
+
` npm install -g myshell-tools@latest\n\n`);
|
|
1147
|
+
}
|
|
1148
|
+
else {
|
|
1149
|
+
out.write(` ▲ Update available: ${updateInfo.current} → ${updateInfo.latest} (press u)\n\n`);
|
|
1150
|
+
}
|
|
1028
1151
|
}
|
|
1029
|
-
//
|
|
1030
|
-
|
|
1031
|
-
|
|
1152
|
+
// Health issues — surfaced automatically, only when something is actually
|
|
1153
|
+
// wrong (writable/Node/pricing). Silence means healthy; the user never runs a
|
|
1154
|
+
// diagnostic command. Errors get ✗, warnings get ⚠️.
|
|
1155
|
+
for (const issue of healthIssues) {
|
|
1156
|
+
const marker = issue.severity === 'error' ? '✗' : '⚠️ ';
|
|
1157
|
+
out.write(` ${marker} ${issue.message}\n`);
|
|
1158
|
+
}
|
|
1159
|
+
if (healthIssues.length > 0)
|
|
1160
|
+
out.write('\n');
|
|
1161
|
+
// Budget line — real ledger data, never fabricated. The SpendSummary is
|
|
1162
|
+
// computed by the caller and cached across keystrokes (the ledger only
|
|
1163
|
+
// changes when a task completes), so navigating the menu never re-parses the
|
|
1164
|
+
// unbounded ledger.jsonl on every keypress.
|
|
1032
1165
|
out.write(' ' + renderBudgetLine(spend, out.color) + '\n\n');
|
|
1033
1166
|
// Recent conversations — separator() then list
|
|
1034
1167
|
out.write(separator('Recent Conversations') + '\n');
|
|
@@ -1055,8 +1188,9 @@ async function renderMainScreen(ctx, mutableCtx, metas, out, updateInfo) {
|
|
|
1055
1188
|
{ key: 'k', label: 'Login Codex', section: 'Auth' },
|
|
1056
1189
|
{ key: 'o', label: opencodeLabel, section: 'Auth' },
|
|
1057
1190
|
];
|
|
1058
|
-
// [u] Update now — shown only when a newer version is actually available
|
|
1059
|
-
|
|
1191
|
+
// [u] Update now — shown only when a newer version is actually available AND
|
|
1192
|
+
// an in-place self-update can persist (not under npx, where it would be a no-op).
|
|
1193
|
+
const updateEntry = updateInfo?.updateAvailable === true && updateInfo.latest !== null && !runningUnderNpx
|
|
1060
1194
|
? [{ key: 'u', label: `Update now (→ ${updateInfo.latest})`, section: 'Options' }]
|
|
1061
1195
|
: [];
|
|
1062
1196
|
// Menu — sectioned via menu()
|
|
@@ -1102,6 +1236,10 @@ export async function startMenu(ctx, out) {
|
|
|
1102
1236
|
const checkForUpdateFn = ctx.checkForUpdate;
|
|
1103
1237
|
const updateSelfFn = ctx.updateSelf;
|
|
1104
1238
|
const relaunchFn = ctx.relaunch;
|
|
1239
|
+
// npx context: real detection from the running script path, or test override.
|
|
1240
|
+
const runningUnderNpx = ctx.runningUnderNpx !== undefined
|
|
1241
|
+
? ctx.runningUnderNpx
|
|
1242
|
+
: isRunningUnderNpx(process.argv[1], process.env);
|
|
1105
1243
|
// Build the readLine function — either injected (for tests) or backed by a
|
|
1106
1244
|
// real readline interface driven by the event-driven LineReader queue.
|
|
1107
1245
|
let readLine;
|
|
@@ -1149,7 +1287,11 @@ export async function startMenu(ctx, out) {
|
|
|
1149
1287
|
// ---- Auto-update at launch (default ON) ----------------------------------
|
|
1150
1288
|
// Guard: only runs once; requires both the update and relaunch seams to be wired.
|
|
1151
1289
|
// Disabled when MYSHELL_NO_UPDATE is set in the environment or autoUpdate===false.
|
|
1290
|
+
// Skipped under npx: `npm install -g` won't be picked up by the next npx run
|
|
1291
|
+
// (it re-serves its own cache), so silently installing globally would surprise
|
|
1292
|
+
// the user with no durable benefit. The main screen shows the install hint instead.
|
|
1152
1293
|
if (autoUpdateEnabled(mutableCtx.config, process.env) &&
|
|
1294
|
+
!runningUnderNpx &&
|
|
1153
1295
|
updateInfo?.updateAvailable === true &&
|
|
1154
1296
|
updateInfo.latest !== null &&
|
|
1155
1297
|
updateSelfFn !== undefined) {
|
|
@@ -1165,9 +1307,31 @@ export async function startMenu(ctx, out) {
|
|
|
1165
1307
|
out.write('Auto-update failed — continuing with current version.\n');
|
|
1166
1308
|
}
|
|
1167
1309
|
// ---- B. Main screen loop -------------------------------------------------
|
|
1310
|
+
// Compute Claude token lifetime once per launch (real disk read, or injected
|
|
1311
|
+
// value from ctx for tests). Passed to renderMainScreen so renderHeaderLines
|
|
1312
|
+
// stays pure.
|
|
1313
|
+
let claudeTokenInfo;
|
|
1314
|
+
if (ctx.claudeTokenInfo !== undefined) {
|
|
1315
|
+
// Injected by tests (including explicit null to suppress warning).
|
|
1316
|
+
claudeTokenInfo = ctx.claudeTokenInfo;
|
|
1317
|
+
}
|
|
1318
|
+
else {
|
|
1319
|
+
// Real path: load from disk. Never throws; null when no capture date stored.
|
|
1320
|
+
const capturedAt = await loadClaudeTokenCapturedAt().catch(() => undefined);
|
|
1321
|
+
claudeTokenInfo = claudeTokenStatus(capturedAt, Date.now());
|
|
1322
|
+
}
|
|
1323
|
+
// Spend summary is cached and only recomputed when the ledger may have
|
|
1324
|
+
// changed (after a task runs). Avoids re-reading the unbounded ledger.jsonl
|
|
1325
|
+
// on every keystroke — the menu hot path stays O(1) in ledger size.
|
|
1326
|
+
let spend = summarizeSpend(await readLedger(ctx.cwd), ctx.clock.isoNow());
|
|
1327
|
+
let spendDirty = false;
|
|
1168
1328
|
while (true) {
|
|
1329
|
+
if (spendDirty) {
|
|
1330
|
+
spend = summarizeSpend(await readLedger(ctx.cwd), ctx.clock.isoNow());
|
|
1331
|
+
spendDirty = false;
|
|
1332
|
+
}
|
|
1169
1333
|
const metas = await ctx.store.list();
|
|
1170
|
-
await renderMainScreen(ctx, mutableCtx, metas, out, updateInfo);
|
|
1334
|
+
await renderMainScreen(ctx, mutableCtx, metas, spend, out, updateInfo, claudeTokenInfo, runningUnderNpx, ctx.healthIssues ?? []);
|
|
1171
1335
|
out.write('> ');
|
|
1172
1336
|
const key = await readLine();
|
|
1173
1337
|
// ---- EOF / close — exit gracefully (FIX 1: no ERR_USE_AFTER_CLOSE) ----
|
|
@@ -1185,6 +1349,7 @@ export async function startMenu(ctx, out) {
|
|
|
1185
1349
|
if (firstMsg !== null && firstMsg.length > 0) {
|
|
1186
1350
|
const meta = await ctx.store.create(firstMsg);
|
|
1187
1351
|
const chatResult = await runChatLoop(ctx, mutableCtx, meta.id, out, readLine, loginFn, detectEnvironmentFn);
|
|
1352
|
+
spendDirty = true; // a task may have run — refresh the spend summary
|
|
1188
1353
|
if (chatResult === 'exit')
|
|
1189
1354
|
break;
|
|
1190
1355
|
}
|
|
@@ -1196,6 +1361,7 @@ export async function startMenu(ctx, out) {
|
|
|
1196
1361
|
const latest = all[0];
|
|
1197
1362
|
if (latest !== undefined) {
|
|
1198
1363
|
const chatResult = await runChatLoop(ctx, mutableCtx, latest.id, out, readLine, loginFn, detectEnvironmentFn);
|
|
1364
|
+
spendDirty = true; // a task may have run — refresh the spend summary
|
|
1199
1365
|
if (chatResult === 'exit')
|
|
1200
1366
|
break;
|
|
1201
1367
|
}
|
|
@@ -1210,6 +1376,7 @@ export async function startMenu(ctx, out) {
|
|
|
1210
1376
|
const target = metas[digit - 1];
|
|
1211
1377
|
if (target !== undefined) {
|
|
1212
1378
|
const chatResult = await runChatLoop(ctx, mutableCtx, target.id, out, readLine, loginFn, detectEnvironmentFn);
|
|
1379
|
+
spendDirty = true; // a task may have run — refresh the spend summary
|
|
1213
1380
|
if (chatResult === 'exit')
|
|
1214
1381
|
break;
|
|
1215
1382
|
}
|
|
@@ -1226,6 +1393,7 @@ export async function startMenu(ctx, out) {
|
|
|
1226
1393
|
// ---- [i] Import a native conversation -----------------------------------
|
|
1227
1394
|
if (key === 'i') {
|
|
1228
1395
|
const importResult = await runImportNative(ctx, mutableCtx, out, readLine, loginFn, detectEnvironmentFn);
|
|
1396
|
+
spendDirty = true; // an imported session may run a task — refresh spend
|
|
1229
1397
|
if (importResult === 'exit')
|
|
1230
1398
|
break;
|
|
1231
1399
|
continue;
|
|
@@ -1257,10 +1425,11 @@ export async function startMenu(ctx, out) {
|
|
|
1257
1425
|
// tests stay hermetic). If install succeeds, proceeds to sign in.
|
|
1258
1426
|
if (key === 'o') {
|
|
1259
1427
|
if (!mutableCtx.env.opencode.installed) {
|
|
1260
|
-
out.write(`Install opencode (${installCommandFor('opencode').replace('npm install -g ', '')})?
|
|
1261
|
-
out.write('> ');
|
|
1428
|
+
out.write(`Install opencode (${installCommandFor('opencode').replace('npm install -g ', '')})? (Y/n) `);
|
|
1262
1429
|
const ans = await readLine();
|
|
1263
|
-
|
|
1430
|
+
// EOF (null) means no interactive user — never auto-install on a closed
|
|
1431
|
+
// pipe. Otherwise honor the (Y/n) default-yes (Enter = install).
|
|
1432
|
+
const skip = ans === null || !parseYesNo(ans, true);
|
|
1264
1433
|
if (skip) {
|
|
1265
1434
|
out.write(`[2mSkipped. You can install it later: ${installCommandFor('opencode')}[0m\n`);
|
|
1266
1435
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/interface/menu.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/interface/menu.ts"],"names":[],"mappings":"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"}
|