helixmind 0.5.6 → 0.5.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/chat.ts"],"names":[],"mappings":"AAsFA,UAAU,WAAW;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAqND,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0iHrE"}
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/chat.ts"],"names":[],"mappings":"AAsFA,UAAU,WAAW;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAqND,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAqjHrE"}
@@ -392,7 +392,11 @@ export async function chatCommand(options) {
392
392
  let visionProcessor;
393
393
  // Terminal + Screen (replaces BottomChrome with framed input area)
394
394
  const terminal = new Terminal();
395
- const screen = new Screen(terminal);
395
+ // Live cursor getter — set once InputManager is created (after rl exists)
396
+ let _liveReadlineCursor = null;
397
+ const screen = new Screen(terminal, {
398
+ getLiveInputCursor: () => _liveReadlineCursor?.() ?? 0,
399
+ });
396
400
  // Alias for backward compat with code that references 'chrome'
397
401
  const chrome = screen;
398
402
  // Activity indicator (renders on chrome row 0 during agent work)
@@ -1927,6 +1931,8 @@ export async function chatCommand(options) {
1927
1931
  });
1928
1932
  // Expose readline for legacy code (PermissionManager, rl.question, etc.)
1929
1933
  const rl = inputMgr.readline;
1934
+ // Connect live cursor getter now that readline exists
1935
+ _liveReadlineCursor = () => inputMgr.cursorPos;
1930
1936
  // Load persistent prompt history into readline
1931
1937
  const promptHistory = new PromptHistory(configDir);
1932
1938
  const savedHistory = await promptHistory.load();
@@ -2478,11 +2484,12 @@ export async function chatCommand(options) {
2478
2484
  inputMgr.prompt();
2479
2485
  }
2480
2486
  else {
2481
- // Restore existing input, then set paste block
2487
+ // Restore existing input, then set paste block + re-render prompt
2482
2488
  if (existingInput)
2483
2489
  replaceReadlineInput(existingInput);
2484
2490
  inputMgr.setPasteBlock(trimmed);
2485
2491
  pendingPasteText = inputMgr.pendingPaste;
2492
+ inputMgr.prompt();
2486
2493
  }
2487
2494
  }
2488
2495
  // Build Jarvis identity context for system prompt injection (when daemon is active)
@@ -3432,9 +3439,12 @@ export async function chatCommand(options) {
3432
3439
  inputMgr.prompt();
3433
3440
  }
3434
3441
  else {
3435
- // Use InputManager's paste block system
3442
+ // Use InputManager's paste block system — restore prompt state first
3443
+ isAtPrompt = true;
3444
+ chrome.promptActive = true;
3436
3445
  inputMgr.setPasteBlock(assembled);
3437
3446
  pendingPasteText = inputMgr.pendingPaste;
3447
+ inputMgr.prompt();
3438
3448
  }
3439
3449
  }, PASTE_THRESHOLD_MS);
3440
3450
  return;