@glbgpt/cli 0.2.1 → 0.2.3

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 (61) hide show
  1. package/README.md +21 -4
  2. package/dist/src/commands/configCommand.js +14 -1
  3. package/dist/src/commands/configCommand.js.map +1 -1
  4. package/dist/src/config/configFile.d.ts +4 -0
  5. package/dist/src/config/configFile.js +4 -0
  6. package/dist/src/config/configFile.js.map +1 -1
  7. package/dist/src/core/contextPrune.d.ts +18 -6
  8. package/dist/src/core/contextPrune.js +108 -20
  9. package/dist/src/core/contextPrune.js.map +1 -1
  10. package/dist/src/core/runChat.d.ts +1 -1
  11. package/dist/src/core/runChat.js +8 -5
  12. package/dist/src/core/runChat.js.map +1 -1
  13. package/dist/src/core/tools/askUserTool.d.ts +3 -0
  14. package/dist/src/core/tools/askUserTool.js +61 -0
  15. package/dist/src/core/tools/askUserTool.js.map +1 -0
  16. package/dist/src/core/tools/planTool.d.ts +15 -0
  17. package/dist/src/core/tools/planTool.js +58 -0
  18. package/dist/src/core/tools/planTool.js.map +1 -0
  19. package/dist/src/core/turnLimits.d.ts +5 -0
  20. package/dist/src/core/turnLimits.js +28 -0
  21. package/dist/src/core/turnLimits.js.map +1 -0
  22. package/dist/src/core/turnLoop.d.ts +1 -1
  23. package/dist/src/core/turnLoop.js +124 -57
  24. package/dist/src/core/turnLoop.js.map +1 -1
  25. package/dist/src/core/types.d.ts +3 -1
  26. package/dist/src/exec/output.d.ts +1 -1
  27. package/dist/src/exec/output.js +3 -2
  28. package/dist/src/exec/output.js.map +1 -1
  29. package/dist/src/index.js +4 -0
  30. package/dist/src/index.js.map +1 -1
  31. package/dist/src/mcp/mediaTools.d.ts +2 -2
  32. package/dist/src/mcp/mediaTools.js +24 -5
  33. package/dist/src/mcp/mediaTools.js.map +1 -1
  34. package/dist/src/mcp/server.js +30 -1
  35. package/dist/src/mcp/server.js.map +1 -1
  36. package/dist/src/media/taskLedger.d.ts +21 -1
  37. package/dist/src/media/taskLedger.js +27 -0
  38. package/dist/src/media/taskLedger.js.map +1 -1
  39. package/dist/src/tui/App.d.ts +3 -1
  40. package/dist/src/tui/App.js +78 -14
  41. package/dist/src/tui/App.js.map +1 -1
  42. package/dist/src/tui/chatController.d.ts +16 -2
  43. package/dist/src/tui/chatController.js +106 -31
  44. package/dist/src/tui/chatController.js.map +1 -1
  45. package/dist/src/tui/commands.js +2 -0
  46. package/dist/src/tui/commands.js.map +1 -1
  47. package/dist/src/tui/questionBridge.d.ts +24 -0
  48. package/dist/src/tui/questionBridge.js +33 -0
  49. package/dist/src/tui/questionBridge.js.map +1 -0
  50. package/dist/src/tui/run.js +9 -1
  51. package/dist/src/tui/run.js.map +1 -1
  52. package/dist/src/tui/staticSplit.d.ts +17 -0
  53. package/dist/src/tui/staticSplit.js +34 -0
  54. package/dist/src/tui/staticSplit.js.map +1 -0
  55. package/dist/src/web/index.d.ts +3 -1
  56. package/dist/src/web/index.js +1 -1
  57. package/dist/src/web/index.js.map +1 -1
  58. package/dist/src/web/webFetchTool.d.ts +5 -0
  59. package/dist/src/web/webFetchTool.js +1 -1
  60. package/dist/src/web/webFetchTool.js.map +1 -1
  61. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/tui/App.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/tui/App.tsx"],"names":[],"mappings":"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"}
@@ -43,6 +43,12 @@ export type TimelineItem = {
43
43
  text: string;
44
44
  };
45
45
  export interface ViewState {
46
+ /** Timeline index of the assistant bubble currently streaming (-1 = none). Lets the
47
+ * App keep everything BEFORE the live tail in the print-and-forget Static region, so
48
+ * the composer stays pinned at the bottom during long turns (Claude Code behavior). */
49
+ streamingIndex: number;
50
+ /** Model-maintained task checklist (update_plan tool); null until the first call. */
51
+ plan: import('../core/tools/planTool.js').PlanStep[] | null;
46
52
  model: string;
47
53
  items: TimelineItem[];
48
54
  /** True while a turn is in flight (input disabled, spinner shown). */
@@ -56,6 +62,8 @@ export interface ViewState {
56
62
  sessionUsage: SessionUsage;
57
63
  /** Tool calls dispatched so far THIS turn (reset to 0 at each turn start); drives the footer counter. */
58
64
  toolCallsUsed: number;
65
+ /** Tool budget resolved once at the start of the current turn. */
66
+ toolCallsLimit: number;
59
67
  /** The LAST model call's prompt size (context occupancy for the footer gauge). */
60
68
  lastPromptTokens: number;
61
69
  }
@@ -208,6 +216,12 @@ export declare class ChatController {
208
216
  logout(): Promise<void>;
209
217
  /** `/resume`: swap in a previously saved session and rebuild the timeline. */
210
218
  replaceSession(session: Session, persistedTimeline?: unknown[]): void;
219
+ /** update_plan tool sink: replace the visible checklist wholesale. */
220
+ setPlan(steps: import('../core/tools/planTool.js').PlanStep[]): void;
221
+ /** `/diff`: working-tree diff vs HEAD, plus untracked files (Codex parity). */
222
+ showDiff(): Promise<void>;
223
+ /** `/export`: write the visible conversation to a markdown file in the cwd. */
224
+ exportConversation(): Promise<void>;
211
225
  note(text: string): void;
212
226
  /** A loud one-line warning (yellow) — for things that must not blend into gray notes. */
213
227
  warn(text: string): void;
@@ -233,8 +247,8 @@ export declare class ChatController {
233
247
  /** Run one turn whose attachments are already resolved. Caller owns the busy flag. */
234
248
  /**
235
249
  * Trigger-based microcompact (spec 2026-07-19-context-pruning-design.md): runs
236
- * only at turn boundaries, only when the last model call's prompt size crossed
237
- * the threshold. Batch-clears in one event so the request prefix stays
250
+ * at turn boundaries, with the same policy the engine uses within tool rounds.
251
+ * Batch-clears when context crosses the threshold so the request prefix stays
238
252
  * byte-stable between triggers (upstream prompt-cache friendliness).
239
253
  */
240
254
  private maybePruneContext;
@@ -3,15 +3,13 @@ import { parseSlashMedia } from './slashMedia.js';
3
3
  import { availableModels } from '../media/manifest.js';
4
4
  import { getChatModels, modelContextWindow, modelDescription, modelSupportsTools } from './models.js';
5
5
  import { compactionTriggerTokens, estimateMessageTokens, isContextOverflowError, leadingSystemCount, planCompaction, summarizeForCompaction, } from '../core/compaction.js';
6
- import { applyPruning } from '../core/contextPrune.js';
6
+ import { applyPruning, pruneSessionContext } from '../core/contextPrune.js';
7
7
  import { SLASH_COMMANDS } from './commands.js';
8
8
  import { Session } from '../core/session.js';
9
+ import { resolveMaxToolCalls } from '../core/turnLimits.js';
9
10
  import { HttpChatBackend } from '../core/httpChatBackend.js';
10
11
  import { newId } from '../core/id.js';
11
- import { selectPrunable } from '../core/contextPrune.js';
12
12
  import { MAX_TOOL_CALLS_PER_TURN } from '../fs/index.js';
13
- import { PRUNE_TRIGGER_TOKENS } from '../fs/limits.js';
14
- import { getConfigValueSync } from '../config/configFile.js';
15
13
  import path from 'node:path';
16
14
  import os from 'node:os';
17
15
  /** A saved media path is a video when its extension is a known video container. */
@@ -77,6 +75,8 @@ export class ChatController {
77
75
  this.state = {
78
76
  model: session.model,
79
77
  items: [],
78
+ plan: null,
79
+ streamingIndex: -1,
80
80
  busy: false,
81
81
  runningTasks: [],
82
82
  queued: [],
@@ -88,6 +88,7 @@ export class ChatController {
88
88
  mediaSubmits: 0,
89
89
  },
90
90
  toolCallsUsed: 0,
91
+ toolCallsLimit: MAX_TOOL_CALLS_PER_TURN,
91
92
  lastPromptTokens: 0,
92
93
  };
93
94
  }
@@ -193,7 +194,7 @@ export class ChatController {
193
194
  if (backend instanceof HttpChatBackend) {
194
195
  backend.rotateConversationId();
195
196
  }
196
- this.setState({ items: [], lastPromptTokens: 0 });
197
+ this.setState({ items: [], plan: null, streamingIndex: -1, lastPromptTokens: 0 });
197
198
  }
198
199
  showHelp() {
199
200
  this.rich(HELP_LINES);
@@ -466,6 +467,84 @@ export class ChatController {
466
467
  this.hydrateFromSession(persistedTimeline);
467
468
  this.note(`Resumed conversation ${session.id}.`);
468
469
  }
470
+ /** update_plan tool sink: replace the visible checklist wholesale. */
471
+ setPlan(steps) {
472
+ this.setState({ plan: steps });
473
+ }
474
+ /** `/diff`: working-tree diff vs HEAD, plus untracked files (Codex parity). */
475
+ async showDiff() {
476
+ const { execFile } = await import('node:child_process');
477
+ const run = (args) => new Promise((resolve) => {
478
+ execFile('git', args, { maxBuffer: 4 * 1024 * 1024 }, (err, stdout) => resolve(err && !stdout ? '' : stdout));
479
+ });
480
+ const inRepo = (await run(['rev-parse', '--is-inside-work-tree'])).trim() === 'true';
481
+ if (!inRepo) {
482
+ this.note('Not a git repository.');
483
+ return;
484
+ }
485
+ const MAX_DIFF_LINES = 400;
486
+ const diff = await run(['diff', 'HEAD']);
487
+ const untracked = (await run(['ls-files', '--others', '--exclude-standard'])).split('\n').filter(Boolean);
488
+ if (!diff.trim() && untracked.length === 0) {
489
+ this.note('Working tree clean — no changes.');
490
+ return;
491
+ }
492
+ const lines = [];
493
+ const diffLines = diff.split('\n');
494
+ for (const l of diffLines.slice(0, MAX_DIFF_LINES)) {
495
+ const style = l.startsWith('+++') || l.startsWith('---') || l.startsWith('diff ') || l.startsWith('index ')
496
+ ? 'header'
497
+ : l.startsWith('+')
498
+ ? 'accent'
499
+ : l.startsWith('-')
500
+ ? 'warn'
501
+ : 'dim';
502
+ lines.push([{ text: l, style }]);
503
+ }
504
+ if (diffLines.length > MAX_DIFF_LINES) {
505
+ lines.push([
506
+ {
507
+ text: `… (+${diffLines.length - MAX_DIFF_LINES} more lines — use git diff for the rest)`,
508
+ style: 'dim',
509
+ },
510
+ ]);
511
+ }
512
+ if (untracked.length > 0) {
513
+ lines.push([]);
514
+ lines.push([{ text: `Untracked (${untracked.length}):`, style: 'header' }]);
515
+ for (const f of untracked.slice(0, 30))
516
+ lines.push([{ text: ` ${f}`, style: 'accent' }]);
517
+ if (untracked.length > 30)
518
+ lines.push([{ text: ` … +${untracked.length - 30} more`, style: 'dim' }]);
519
+ }
520
+ this.rich(lines);
521
+ }
522
+ /** `/export`: write the visible conversation to a markdown file in the cwd. */
523
+ async exportConversation() {
524
+ const { promises: fs } = await import('node:fs');
525
+ const stamp = new Date().toISOString().replace(/[:T]/g, '-').slice(0, 16);
526
+ const file = `glbgpt-conversation-${stamp}.md`;
527
+ const out = [`# GlobalGPT conversation — ${this.session.id}`, ''];
528
+ for (const item of this.getPersistableItems()) {
529
+ if (item.kind === 'user')
530
+ out.push(`## You`, '', item.text, '');
531
+ else if (item.kind === 'assistant')
532
+ out.push(`## Assistant`, '', item.text, '');
533
+ else if (item.kind === 'tool')
534
+ out.push(`> tool: ${item.name}`, '');
535
+ else if (item.kind === 'note')
536
+ out.push(`> ${item.text}`, '');
537
+ else if (item.kind === 'error')
538
+ out.push(`> error: ${item.text}`, '');
539
+ }
540
+ try {
541
+ await fs.writeFile(file, out.join('\n'), { encoding: 'utf8', flag: 'wx' });
542
+ this.note(`Exported to ${file}`);
543
+ }
544
+ catch (err) {
545
+ this.note(`Export failed: ${err instanceof Error ? err.message : String(err)}`);
546
+ }
547
+ }
469
548
  note(text) {
470
549
  this.addItem({ kind: 'note', text });
471
550
  }
@@ -563,32 +642,19 @@ export class ChatController {
563
642
  /** Run one turn whose attachments are already resolved. Caller owns the busy flag. */
564
643
  /**
565
644
  * Trigger-based microcompact (spec 2026-07-19-context-pruning-design.md): runs
566
- * only at turn boundaries, only when the last model call's prompt size crossed
567
- * the threshold. Batch-clears in one event so the request prefix stays
645
+ * at turn boundaries, with the same policy the engine uses within tool rounds.
646
+ * Batch-clears when context crosses the threshold so the request prefix stays
568
647
  * byte-stable between triggers (upstream prompt-cache friendliness).
569
648
  */
570
649
  maybePruneContext() {
571
- // Cheapest checks first: the in-memory threshold gate skips the sync config
572
- // read (a disk hit) on every under-threshold turn — the common case.
573
- if (this.lastPromptTokens <= PRUNE_TRIGGER_TOKENS)
574
- return;
575
- if (process.env.GLBGPT_CONTEXT_PRUNING === 'false')
576
- return;
577
- if (getConfigValueSync('context-pruning') === 'false')
578
- return;
579
- const ids = selectPrunable(this.session.messages, this.session.prunedToolCallIds);
580
- if (ids.length === 0)
650
+ const pruned = pruneSessionContext(this.session, this.lastPromptTokens);
651
+ if (!pruned)
581
652
  return;
582
- const idSet = new Set(ids);
583
- const clearedBytes = this.session.messages
584
- .filter((m) => m.role === 'tool' && m.tool_call_id && idSet.has(m.tool_call_id))
585
- .reduce((sum, m) => sum + (typeof m.content === 'string' ? Buffer.byteLength(m.content, 'utf8') : 0), 0);
586
- for (const id of ids)
587
- this.session.prunedToolCallIds.add(id);
653
+ const { ids, clearedBytes } = pruned;
588
654
  const savedTokens = Math.round(clearedBytes / 4 / 1000);
589
655
  this.addItem({
590
656
  kind: 'note',
591
- text: `⚙ Context trimmed: cleared ${ids.length} old tool result${ids.length === 1 ? '' : 's'} (~${savedTokens}k tokens). Re-run tools if that content is needed again.`,
657
+ text: `⚙ Context trimmed: cleared ${ids.length} old tool result${ids.length === 1 ? '' : 's'} (~${savedTokens}k tokens). Full results remain in local history.`,
592
658
  });
593
659
  }
594
660
  /**
@@ -658,27 +724,31 @@ export class ChatController {
658
724
  async runResolvedTurn(msg) {
659
725
  // A same-message generate_* call auto-uses these when the model gives no explicit reference.
660
726
  this.pendingReferenceImages = msg.refs ?? [];
661
- this.maybePruneContext();
662
- await this.maybeCompactContext();
663
727
  try {
728
+ const maxToolCalls = resolveMaxToolCalls();
729
+ this.maybePruneContext();
730
+ await this.maybeCompactContext();
664
731
  this.addItem({ kind: 'user', text: msg.display });
665
732
  this.openAssistant = -1;
666
733
  this.turnAbort = new AbortController();
667
- this.state = { ...this.state, toolCallsUsed: 0 };
668
- // One reactive retry: a provider context-overflow error triggers a compaction
669
- // and re-runs the SAME turn once (runTurn rolled the failed attempt back).
734
+ this.state = { ...this.state, toolCallsUsed: 0, toolCallsLimit: maxToolCalls };
735
+ const checkpoint = this.session.messageCount();
736
+ // Retry only a rejected first request that the engine rolled back. Once a tool
737
+ // round completed, preserve its results and never restart the user's task.
670
738
  for (let attempt = 0;; attempt++) {
671
739
  try {
672
740
  await this.turnLoop.runTurn(this.session, msg.content, (event) => this.onEvent(event), {
673
741
  signal: this.turnAbort.signal,
674
742
  includeGatedTools: modelSupportsTools(this.session.model),
743
+ maxToolCalls,
675
744
  takeSteering: () => this.drainQueuedForSteering(),
676
745
  });
677
746
  break;
678
747
  }
679
748
  catch (err) {
680
749
  const text = err instanceof Error ? err.message : String(err);
681
- if (attempt === 0 && isContextOverflowError(text) && (await this.compactNow('overflow'))) {
750
+ if (attempt === 0 && this.session.messageCount() === checkpoint &&
751
+ isContextOverflowError(text) && (await this.compactNow('overflow'))) {
682
752
  continue;
683
753
  }
684
754
  throw err;
@@ -763,6 +833,7 @@ export class ChatController {
763
833
  if (this.openAssistant < 0) {
764
834
  this.addItem({ kind: 'assistant', text: event.text });
765
835
  this.openAssistant = this.state.items.length - 1;
836
+ this.setState({ streamingIndex: this.openAssistant });
766
837
  }
767
838
  else {
768
839
  this.replaceItem(this.openAssistant, (item) => item.kind === 'assistant' ? { ...item, text: item.text + event.text } : item);
@@ -772,12 +843,13 @@ export class ChatController {
772
843
  case 'tool_call_begin': {
773
844
  // Close any open assistant bubble so post-tool text starts a fresh one.
774
845
  this.openAssistant = -1;
846
+ this.setState({ streamingIndex: -1 });
775
847
  // Past the turn's budget, TurnLoop still emits begin/end for stub calls (it feeds the
776
848
  // model a budget-exhausted error instead of dispatching) — clamp so the footer never
777
849
  // shows more than the cap it displays (e.g. "18/15").
778
850
  this.state = {
779
851
  ...this.state,
780
- toolCallsUsed: Math.min(this.state.toolCallsUsed + 1, MAX_TOOL_CALLS_PER_TURN),
852
+ toolCallsUsed: Math.min(this.state.toolCallsUsed + 1, this.state.toolCallsLimit),
781
853
  };
782
854
  this.addItem({ kind: 'tool', id: event.id, name: event.name, status: 'running', args: event.args });
783
855
  break;
@@ -806,17 +878,20 @@ export class ChatController {
806
878
  case 'turn_complete': {
807
879
  this.openAssistant = -1;
808
880
  this.setState({
881
+ streamingIndex: -1,
809
882
  sessionUsage: { ...this.state.sessionUsage, turns: this.state.sessionUsage.turns + 1 },
810
883
  });
811
884
  break;
812
885
  }
813
886
  case 'turn_interrupted': {
814
887
  this.openAssistant = -1;
888
+ this.setState({ streamingIndex: -1 });
815
889
  this.addItem({ kind: 'note', text: 'Interrupted (Esc).' });
816
890
  break;
817
891
  }
818
892
  case 'error': {
819
893
  this.openAssistant = -1;
894
+ this.setState({ streamingIndex: -1 });
820
895
  this.addItem({ kind: 'error', text: event.message });
821
896
  break;
822
897
  }