@vantagesec/socc 0.1.9 → 0.1.11

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 (2) hide show
  1. package/dist/cli.mjs +45 -26
  2. package/package.json +2 -2
package/dist/cli.mjs CHANGED
@@ -51883,11 +51883,21 @@ var init_env = __esm(() => {
51883
51883
  init_fsOperations();
51884
51884
  init_which();
51885
51885
  getGlobalClaudeFile = memoize_default(() => {
51886
- if (getFsImplementation().existsSync(join19(getClaudeConfigHomeDir(), ".config.json"))) {
51887
- return join19(getClaudeConfigHomeDir(), ".config.json");
51886
+ const configHome = getClaudeConfigHomeDir();
51887
+ const suffix = fileSuffixForOauthConfig();
51888
+ const primaryConfig = join19(configHome, suffix ? `.config${suffix}.json` : ".config.json");
51889
+ if (getFsImplementation().existsSync(primaryConfig)) {
51890
+ return primaryConfig;
51888
51891
  }
51889
- const filename = `.claude${fileSuffixForOauthConfig()}.json`;
51890
- return join19(process.env.CLAUDE_CONFIG_DIR || homedir9(), filename);
51892
+ if (configHome === join19(homedir9(), ".socc")) {
51893
+ return primaryConfig;
51894
+ }
51895
+ const legacyFilename = `.claude${suffix}.json`;
51896
+ const legacyConfig = join19(process.env.CLAUDE_CONFIG_DIR || homedir9(), legacyFilename);
51897
+ if (getFsImplementation().existsSync(legacyConfig)) {
51898
+ return legacyConfig;
51899
+ }
51900
+ return primaryConfig;
51891
51901
  });
51892
51902
  hasInternetAccess = memoize_default(async () => {
51893
51903
  try {
@@ -110008,6 +110018,10 @@ function getContextWindowForModel(model, betas) {
110008
110018
  if (openaiWindow !== undefined) {
110009
110019
  return openaiWindow;
110010
110020
  }
110021
+ if (isLocalProviderUrl(process.env.OPENAI_BASE_URL)) {
110022
+ console.warn(`[context] Warning: local OpenAI-compatible model "${model}" not in context window table — using 128k fallback. ` + "Add it to src/utils/model/openaiContextWindows.ts for more accurate compaction.");
110023
+ return 128000;
110024
+ }
110011
110025
  console.error(`[context] Warning: model "${model}" not in context window table — using conservative 8k default. ` + "Add it to src/utils/model/openaiContextWindows.ts for accurate compaction.");
110012
110026
  return 8000;
110013
110027
  }
@@ -110072,6 +110086,9 @@ function getModelMaxOutputTokens(model) {
110072
110086
  if (openaiMax !== undefined) {
110073
110087
  return { default: openaiMax, upperLimit: openaiMax };
110074
110088
  }
110089
+ if (isLocalProviderUrl(process.env.OPENAI_BASE_URL)) {
110090
+ return { default: 8192, upperLimit: 8192 };
110091
+ }
110075
110092
  }
110076
110093
  const m = getCanonicalName(model);
110077
110094
  if (m.includes("opus-4-6")) {
@@ -110118,6 +110135,7 @@ function getMaxThinkingTokensForModel(model) {
110118
110135
  var MODEL_CONTEXT_WINDOW_DEFAULT = 200000, COMPACT_MAX_OUTPUT_TOKENS = 20000, MAX_OUTPUT_TOKENS_DEFAULT = 32000, MAX_OUTPUT_TOKENS_UPPER_LIMIT = 64000, CAPPED_DEFAULT_MAX_TOKENS = 8000, ESCALATED_MAX_TOKENS = 64000;
110119
110136
  var init_context = __esm(() => {
110120
110137
  init_betas();
110138
+ init_providerConfig();
110121
110139
  init_config();
110122
110140
  init_envUtils();
110123
110141
  init_model();
@@ -112870,7 +112888,7 @@ function printStartupScreen() {
112870
112888
  const sLen = ` ● ${sL} Ready — type /help to begin`.length;
112871
112889
  out.push(boxRow(sRow, W2, sLen));
112872
112890
  out.push(`${rgb(...BORDER)}╚${"═".repeat(W2 - 2)}╝${RESET}`);
112873
- out.push(` ${DIM}${rgb(...DIMCOL)}socc ${RESET}${rgb(...ACCENT)}v${"0.1.9"}${RESET}`);
112891
+ out.push(` ${DIM}${rgb(...DIMCOL)}socc ${RESET}${rgb(...ACCENT)}v${"0.1.11"}${RESET}`);
112874
112892
  out.push("");
112875
112893
  process.stdout.write(out.join(`
112876
112894
  `) + `
@@ -112895,12 +112913,12 @@ var init_StartupScreen = __esm(() => {
112895
112913
  DIMCOL = [96, 118, 154];
112896
112914
  BORDER = [59, 89, 138];
112897
112915
  LOGO_SOCC = [
112898
- ` ██████ ██████ ██████ ██████ `,
112899
- ` ██ ██ ██ ██ ██ `,
112900
- ` ╚█████ ██ ██ ██ ██ `,
112901
- ` ██ ██ ██ ██ ██ `,
112902
- ` ██████ ╚██████╝ ╚██████ ╚██████ `,
112903
- ` ╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ `
112916
+ " ███████╗ ██████═╗ ███████╗ ███████╗",
112917
+ "██ ╔════╝ ██╔═══██║ ██╔═════╝ ██╔═════╝",
112918
+ " ██████═╗ ██║ ██║ ██║ ██║ ",
112919
+ " ╚════██║ ██║ ██║ ██║ ██║ ",
112920
+ "███████ ██████ ███████╗ ███████╗",
112921
+ " ╚══════╝ ╚══════╝ ╚══════╝ ╚══════╝"
112904
112922
  ];
112905
112923
  });
112906
112924
 
@@ -373635,7 +373653,7 @@ function getAnthropicEnvMetadata() {
373635
373653
  function getBuildAgeMinutes() {
373636
373654
  if (false)
373637
373655
  ;
373638
- const buildTime = new Date("2026-04-11T20:09:18.254Z").getTime();
373656
+ const buildTime = new Date("2026-04-12T14:37:46.133Z").getTime();
373639
373657
  if (isNaN(buildTime))
373640
373658
  return;
373641
373659
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -376080,8 +376098,8 @@ var init_sessionMemoryCompact = __esm(() => {
376080
376098
 
376081
376099
  // src/services/compact/autoCompact.ts
376082
376100
  function getEffectiveContextWindowSize(model) {
376083
- const reservedTokensForSummary = Math.min(getMaxOutputTokensForModel(model), MAX_OUTPUT_TOKENS_FOR_SUMMARY);
376084
376101
  let contextWindow = getContextWindowForModel(model, getSdkBetas());
376102
+ const maxOutputTokens = Math.min(getMaxOutputTokensForModel(model), MAX_OUTPUT_TOKENS_FOR_SUMMARY);
376085
376103
  const autoCompactWindow = process.env.CLAUDE_CODE_AUTO_COMPACT_WINDOW;
376086
376104
  if (autoCompactWindow) {
376087
376105
  const parsed = parseInt(autoCompactWindow, 10);
@@ -376089,7 +376107,8 @@ function getEffectiveContextWindowSize(model) {
376089
376107
  contextWindow = Math.min(contextWindow, parsed);
376090
376108
  }
376091
376109
  }
376092
- return contextWindow - reservedTokensForSummary;
376110
+ const reservedTokensForSummary = Math.min(maxOutputTokens, Math.max(1024, Math.floor(contextWindow * 0.25)));
376111
+ return Math.max(1024, contextWindow - reservedTokensForSummary);
376093
376112
  }
376094
376113
  function getAutoCompactThreshold(model) {
376095
376114
  const effectiveContextWindow = getEffectiveContextWindowSize(model);
@@ -400550,7 +400569,7 @@ function buildPrimarySection() {
400550
400569
  }, undefined, false, undefined, this);
400551
400570
  return [{
400552
400571
  label: "Version",
400553
- value: "0.1.9"
400572
+ value: "0.1.11"
400554
400573
  }, {
400555
400574
  label: "Session name",
400556
400575
  value: nameValue
@@ -466820,7 +466839,7 @@ var init_bridge_kick = __esm(() => {
466820
466839
  var call59 = async () => {
466821
466840
  return {
466822
466841
  type: "text",
466823
- value: `${"99.0.0"} (built ${"2026-04-11T20:09:18.254Z"})`
466842
+ value: `${"99.0.0"} (built ${"2026-04-12T14:37:46.133Z"})`
466824
466843
  };
466825
466844
  }, version2, version_default;
466826
466845
  var init_version = __esm(() => {
@@ -541084,7 +541103,7 @@ function WelcomeV2() {
541084
541103
  " ",
541085
541104
  /* @__PURE__ */ jsx_dev_runtime469.jsxDEV(ThemedText, {
541086
541105
  dimColor: true,
541087
- children: `v${"0.1.9"}`
541106
+ children: `v${"0.1.11"}`
541088
541107
  }, undefined, false, undefined, this)
541089
541108
  ]
541090
541109
  }, undefined, true, undefined, this),
@@ -541111,12 +541130,12 @@ var init_WelcomeV2 = __esm(() => {
541111
541130
  init_ink2();
541112
541131
  jsx_dev_runtime469 = __toESM(require_jsx_dev_runtime(), 1);
541113
541132
  WORDMARK_LINES = [
541114
- "██████╗ █████╗ █████╗ █████╗ ",
541115
- "██╔════╝ ██╔══██╗ ██╔══██╗ ██╔══██╗",
541116
- "██║ ██║ ╚═╝ ██║ ╚═╝ ██║ ╚═╝",
541117
- "██║ ██║ ██║ ██║ ",
541118
- "╚██████╗ ╚█████╔╝ ╚█████╔╝ ╚█████╔╝",
541119
- " ╚═════╝ ╚════╝ ╚════╝ ╚════╝ "
541133
+ "╔███████╗ ██████═╗ ╔███████╗ ╔███████╗",
541134
+ "██╔═════╝ ██╔═══██║ ██╔═════╝ ██╔═════╝",
541135
+ "║██████═╗ ██║ ██║ ██║ ██║ ",
541136
+ "╚════╗██║ ██║ ██║ ██║ ██║ ",
541137
+ "███████ ║██████ ║ ║███████╗ ║███████╗",
541138
+ "╚═══════╝ ╚═══════╝ ╚═══════╝ ╚═══════╝"
541120
541139
  ];
541121
541140
  });
541122
541141
 
@@ -560751,7 +560770,7 @@ Usage: socc --remote "your task description"`, () => gracefulShutdown(1));
560751
560770
  pendingHookMessages
560752
560771
  }, renderAndRun);
560753
560772
  }
560754
- }).version("0.1.9 (SOCC)", "-v, --version", "Output the version number");
560773
+ }).version("0.1.11 (SOCC)", "-v, --version", "Output the version number");
560755
560774
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
560756
560775
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
560757
560776
  if (canUserConfigureAdvisor()) {
@@ -561388,7 +561407,7 @@ if (false) {}
561388
561407
  async function main2() {
561389
561408
  const args = process.argv.slice(2);
561390
561409
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
561391
- console.log(`${"0.1.9"} (SOCC)`);
561410
+ console.log(`${"0.1.11"} (SOCC)`);
561392
561411
  return;
561393
561412
  }
561394
561413
  if (args.includes("--provider")) {
@@ -561512,4 +561531,4 @@ async function main2() {
561512
561531
  }
561513
561532
  main2();
561514
561533
 
561515
- //# debugId=38E747F82E2E60E364756E2164756E21
561534
+ //# debugId=262F18555880631064756E2164756E21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vantagesec/socc",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Security operations copiloto for threat intelligence, incident response, and agentic investigation",
5
5
  "type": "module",
6
6
  "bin": {
@@ -168,4 +168,4 @@
168
168
  "overrides": {
169
169
  "lodash-es": "4.18.1"
170
170
  }
171
- }
171
+ }