@ekkos/cli 1.2.2 → 1.2.4

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.
@@ -877,10 +877,11 @@ function launchWithDashboard(options) {
877
877
  }
878
878
  }
879
879
  /**
880
- * Launch Claude Code in a new Windows Terminal pane, dashboard stays in current terminal.
881
- * Dashboard runs where the user typed the command; Claude opens alongside it.
880
+ * Launch dashboard in a new Windows Terminal pane to the right (40%).
881
+ * Claude Code continues in the current (left) pane (60%).
882
+ * Mirrors the macOS tmux layout: Claude left 60%, dashboard right 40%.
882
883
  */
883
- function launchWithWindowsTerminal(options) {
884
+ function launchWithWindowsTerminal() {
884
885
  const ekkosCmd = process.argv[1];
885
886
  const cwd = process.cwd();
886
887
  const launchTime = Date.now();
@@ -890,42 +891,19 @@ function launchWithWindowsTerminal(options) {
890
891
  fs.writeFileSync(markerPath, `${launchTime}\n${cwd}`);
891
892
  }
892
893
  catch { }
893
- // Build the ekkos run command WITHOUT --dashboard (prevent recursion)
894
- const runArgs = ['run'];
895
- if (options.session)
896
- runArgs.push('-s', options.session);
897
- if (options.bypass)
898
- runArgs.push('-b');
899
- if (options.verbose)
900
- runArgs.push('-v');
901
- if (options.doctor)
902
- runArgs.push('-d');
903
- if (options.research)
904
- runArgs.push('-r');
905
- if (options.noInject)
906
- runArgs.push('--skip-inject');
907
- if (options.noDna)
908
- runArgs.push('--skip-dna');
909
- if (options.noProxy)
910
- runArgs.push('--skip-proxy');
911
- const runCommand = `node "${ekkosCmd}" ${runArgs.join(' ')}`;
912
894
  try {
913
- // Launch Claude Code in a new pane (60% width), dashboard stays in current pane
914
- // -V = vertical split, -s 0.6 = 60% width for Claude
915
- (0, child_process_1.execSync)(`wt.exe -w 0 split-pane -V -s 0.6 -d "${cwd}" cmd /c "${runCommand}"`, { stdio: 'pipe' });
916
- console.log(chalk_1.default.cyan('\n Claude Code launched in right pane (60%)'));
895
+ // Spawn dashboard in a RIGHT pane (40%), Claude stays in current LEFT pane (60%)
896
+ // -V = vertical split, -s 0.4 = new pane gets 40% width
897
+ // Using -- separator: no cmd.exe wrapper, no command prompt flash
898
+ (0, child_process_1.execSync)(`wt.exe -w 0 split-pane -V -s 0.4 -d "${cwd}" -- node "${ekkosCmd}" dashboard --wait-for-new --refresh 2000`, { stdio: 'pipe' });
899
+ console.log(chalk_1.default.cyan('\n Dashboard launched in right pane (40%)'));
917
900
  console.log(chalk_1.default.gray(' Switch panes: Alt+Arrow keys\n'));
918
901
  }
919
902
  catch (err) {
920
903
  console.log(chalk_1.default.yellow(` Windows Terminal split failed: ${err.message}`));
921
904
  console.log(chalk_1.default.gray(' Run "ekkos dashboard --latest" in a separate terminal'));
922
- return;
923
905
  }
924
- // Dashboard runs in THIS terminal (the pane user launched from)
925
- // Use dynamic import to avoid circular dependency
926
- Promise.resolve().then(() => __importStar(require('./dashboard'))).then(({ dashboardCommand }) => {
927
- dashboardCommand.parseAsync(['--wait-for-new', '--refresh', '2000'], { from: 'user' });
928
- });
906
+ // Don't return run() continues to launch Claude in this (left) terminal
929
907
  }
930
908
  async function run(options) {
931
909
  // ══════════════════════════════════════════════════════════════════════════
@@ -961,11 +939,11 @@ async function run(options) {
961
939
  // ══════════════════════════════════════════════════════════════════════════
962
940
  if (options.dashboard) {
963
941
  if (isWindows) {
964
- // Windows: Claude opens in new pane, dashboard stays in this terminal
942
+ // Windows: dashboard opens in right pane, Claude continues in this (left) terminal
965
943
  try {
966
944
  (0, child_process_1.execSync)('where wt.exe', { encoding: 'utf-8', stdio: 'pipe' });
967
- launchWithWindowsTerminal(options);
968
- return; // Dashboard runs in this terminal, Claude is in the new pane
945
+ launchWithWindowsTerminal();
946
+ // Don't return fall through to launch Claude in this terminal
969
947
  }
970
948
  catch {
971
949
  console.log(chalk_1.default.yellow(' Windows Terminal (wt.exe) not found.'));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ekkos/cli",
3
- "version": "1.2.2",
3
+ "version": "1.2.4",
4
4
  "description": "Setup ekkOS memory for AI coding assistants (Claude Code, Cursor, Windsurf)",
5
5
  "main": "dist/index.js",
6
6
  "bin": {