@ekkos/cli 1.0.29 → 1.0.30

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.
@@ -350,9 +350,8 @@ function getEkkosEnv() {
350
350
  // Let Claude Code use its own default max_tokens (don't override)
351
351
  };
352
352
  /* eslint-enable no-restricted-syntax */
353
- // Check if proxy is disabled via env var or options
354
- // eslint-disable-next-line no-restricted-syntax -- Feature flag, not API key
355
- const proxyDisabled = process.env.EKKOS_DISABLE_PROXY === '1' || !proxyModeEnabled;
353
+ // Check if proxy is disabled (proxyModeEnabled already includes CLI + env decisions)
354
+ const proxyDisabled = !proxyModeEnabled;
356
355
  if (!proxyDisabled) {
357
356
  env.EKKOS_PROXY_MODE = '1';
358
357
  // Enable ultra-minimal mode by default (30%→20% eviction for constant-cost infinite context)
@@ -393,6 +392,8 @@ function getEkkosEnv() {
393
392
  const projectPathEncoded = Buffer.from(projectPath).toString('base64url');
394
393
  const proxyUrl = `${EKKOS_PROXY_URL}/proxy/${encodeURIComponent(userId)}/${encodeURIComponent(cliSessionName)}?project=${projectPathEncoded}`;
395
394
  env.ANTHROPIC_BASE_URL = proxyUrl;
395
+ // Newer Claude Code internals also read this key for API/file routes.
396
+ env.CLAUDE_CODE_API_BASE_URL = proxyUrl;
396
397
  // Proxy URL contains userId + project path — don't leak to terminal
397
398
  }
398
399
  else {
@@ -884,13 +885,18 @@ async function run(options) {
884
885
  const verbose = options.verbose || false;
885
886
  const bypass = options.bypass || false;
886
887
  const noInject = options.noInject || false;
887
- // Set proxy mode based on options (used by getEkkosEnv)
888
- proxyModeEnabled = !(options.noProxy || false);
888
+ // Set proxy mode based on options + env gate (used by getEkkosEnv)
889
+ const proxyDisabledByEnv = process.env.EKKOS_DISABLE_PROXY === '1';
890
+ proxyModeEnabled = !(options.noProxy || false || proxyDisabledByEnv);
889
891
  if (proxyModeEnabled) {
890
892
  console.log(chalk_1.default.cyan(' 🧠 ekkOS_Continuum Loaded!'));
891
893
  }
894
+ else if (proxyDisabledByEnv) {
895
+ console.log(chalk_1.default.yellow(' ⏭️ API proxy disabled by EKKOS_DISABLE_PROXY=1'));
896
+ console.log(chalk_1.default.gray(' Unset EKKOS_DISABLE_PROXY to re-enable proxy routing.'));
897
+ }
892
898
  else if (verbose) {
893
- console.log(chalk_1.default.yellow(' ⏭️ API proxy disabled (--no-proxy)'));
899
+ console.log(chalk_1.default.yellow(' ⏭️ API proxy disabled (--skip-proxy)'));
894
900
  }
895
901
  // ══════════════════════════════════════════════════════════════════════════
896
902
  // DASHBOARD MODE: tmux (Mac/Linux) or Windows Terminal (Windows)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ekkos/cli",
3
- "version": "1.0.29",
3
+ "version": "1.0.30",
4
4
  "description": "Setup ekkOS memory for AI coding assistants (Claude Code, Cursor, Windsurf)",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -38,15 +38,13 @@ function Load-SessionWords {
38
38
  }
39
39
 
40
40
  if (-not (Test-Path $wordsFile)) {
41
- Write-Error "No session-words.json found. Run 'ekkos hooks install --global' to fix."
42
- exit 1
41
+ return $null
43
42
  }
44
43
 
45
44
  try {
46
45
  $script:SessionWords = Get-Content $wordsFile -Raw | ConvertFrom-Json
47
46
  } catch {
48
- Write-Error "Failed to parse $wordsFile. Check JSON syntax: $_"
49
- exit 1
47
+ return $null
50
48
  }
51
49
  }
52
50