@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.
- package/dist/commands/run.js +13 -35
- package/package.json +1 -1
package/dist/commands/run.js
CHANGED
|
@@ -877,10 +877,11 @@ function launchWithDashboard(options) {
|
|
|
877
877
|
}
|
|
878
878
|
}
|
|
879
879
|
/**
|
|
880
|
-
* Launch
|
|
881
|
-
*
|
|
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(
|
|
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
|
-
//
|
|
914
|
-
// -V = vertical split, -s 0.
|
|
915
|
-
|
|
916
|
-
|
|
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
|
-
//
|
|
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:
|
|
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(
|
|
968
|
-
return
|
|
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.'));
|