stratagem-x7 0.3.53 → 0.3.55

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 +165 -91
  2. package/package.json +2 -2
package/dist/cli.mjs CHANGED
@@ -174856,7 +174856,7 @@ Workers can read and write here without permission prompts. Use this for durable
174856
174856
  }
174857
174857
  function getCoordinatorSystemPrompt() {
174858
174858
  const workerCapabilities = isEnvTruthy(process.env.CLAUDE_CODE_SIMPLE) ? "Workers have access to Bash, Read, and Edit tools, plus MCP tools from configured MCP servers." : "Workers have access to standard tools, MCP tools from configured MCP servers, and project skills via the Skill tool. Delegate skill invocations (e.g. /commit or project workflow skills) to workers.";
174859
- return `You are Claude Code, an AI assistant that orchestrates software engineering tasks across multiple workers.
174859
+ return `You are STRATAGEM X7, an AI assistant that orchestrates software engineering tasks across multiple workers.
174860
174860
 
174861
174861
  ## 1. Your Role
174862
174862
 
@@ -292897,7 +292897,7 @@ function CodexOAuthSetup({
292897
292897
  const handleAuthenticated = React29.useCallback(async (tokens, persistCredentials) => {
292898
292898
  await onConfigured(tokens, persistCredentials);
292899
292899
  }, [onConfigured]);
292900
- useKeybinding("confirm:no", onBack, [onBack]);
292900
+ useKeybinding("confirm:no", onBack);
292901
292901
  const status = useCodexOAuthFlow({
292902
292902
  onAuthenticated: handleAuthenticated
292903
292903
  });
@@ -350519,7 +350519,7 @@ function getAnthropicEnvMetadata() {
350519
350519
  function getBuildAgeMinutes() {
350520
350520
  if (false)
350521
350521
  ;
350522
- const buildTime = new Date("2026-05-07T15:10:48.598Z").getTime();
350522
+ const buildTime = new Date("2026-05-07T15:45:19.535Z").getTime();
350523
350523
  if (isNaN(buildTime))
350524
350524
  return;
350525
350525
  return Math.floor((Date.now() - buildTime) / 60000);
@@ -408499,7 +408499,7 @@ async function computeSimpleEnvInfo(modelId, additionalWorkingDirectories) {
408499
408499
  `OS Version: ${unameSR}`,
408500
408500
  modelDescription,
408501
408501
  knowledgeCutoffMessage,
408502
- process.env.USER_TYPE === "ant" && isUndercover() ? null : `The most recent Claude model family is Claude 4.5/4.6. Model IDs — Opus 4.6: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.opus}', Sonnet 4.6: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.sonnet}', Haiku 4.5: '${CLAUDE_4_5_OR_4_6_MODEL_IDS.haiku}'. When building AI applications, default to the latest and most capable Claude models.`,
408502
+ process.env.USER_TYPE === "ant" && isUndercover() ? null : `The most recent Claude model family is Claude 4.6/4.7. Model IDs — Opus 4.7: '${CLAUDE_LATEST_MODEL_IDS.opus}', Sonnet 4.6: '${CLAUDE_LATEST_MODEL_IDS.sonnet}', Haiku 4.5: '${CLAUDE_LATEST_MODEL_IDS.haiku}'. When building AI applications, default to the latest and most capable Claude models.`,
408503
408503
  process.env.USER_TYPE === "ant" && isUndercover() ? null : `STRATAGEM X7 is available as a CLI in the terminal and can be used across local development environments and IDE workflows.`,
408504
408504
  process.env.USER_TYPE === "ant" && isUndercover() ? null : `Fast mode for STRATAGEM X7 uses the same ${FRONTIER_MODEL_NAME} model with faster output. It does NOT switch to a different model. It can be toggled with /fast.`
408505
408505
  ].filter((item) => item !== null);
@@ -408588,7 +408588,7 @@ function getFunctionResultClearingSection(model) {
408588
408588
 
408589
408589
  Old tool results will be automatically cleared from context to free up space. The ${config2.keepRecent} most recent results are always kept.`;
408590
408590
  }
408591
- var getCachedMCConfigForFRC = null, DISCOVER_SKILLS_TOOL_NAME = null, SYSTEM_PROMPT_DYNAMIC_BOUNDARY = "__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__", FRONTIER_MODEL_NAME = "Claude Opus 4.6", CLAUDE_4_5_OR_4_6_MODEL_IDS, DEFAULT_AGENT_PROMPT = `You are an agent for STRATAGEM X7, an open-source coding agent and CLI. Given the user's message, you should use the tools available to complete the task. Complete the task fully—don't gold-plate, but don't leave it half-done. When you complete the task, respond with a concise report covering what was done and any key findings — the caller will relay this to the user, so it only needs the essentials.`, SUMMARIZE_TOOL_RESULTS_SECTION = `When working with tool results, write down any important information you might need later in your response, as the original tool result may be cleared later.`;
408591
+ var getCachedMCConfigForFRC = null, DISCOVER_SKILLS_TOOL_NAME = null, SYSTEM_PROMPT_DYNAMIC_BOUNDARY = "__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__", FRONTIER_MODEL_NAME = "Claude Opus 4.7", CLAUDE_LATEST_MODEL_IDS, DEFAULT_AGENT_PROMPT = `You are an agent for STRATAGEM X7, an open-source coding agent and CLI. Given the user's message, you should use the tools available to complete the task. Complete the task fully—don't gold-plate, but don't leave it half-done. When you complete the task, respond with a concise report covering what was done and any key findings — the caller will relay this to the user, so it only needs the essentials.`, SUMMARIZE_TOOL_RESULTS_SECTION = `When working with tool results, write down any important information you might need later in your response, as the original tool result may be cleared later.`;
408592
408592
  var init_prompts3 = __esm(() => {
408593
408593
  init_env();
408594
408594
  init_git();
@@ -408620,8 +408620,8 @@ var init_prompts3 = __esm(() => {
408620
408620
  init_debug();
408621
408621
  init_memdir();
408622
408622
  init_mcpInstructionsDelta();
408623
- CLAUDE_4_5_OR_4_6_MODEL_IDS = {
408624
- opus: "claude-opus-4-6",
408623
+ CLAUDE_LATEST_MODEL_IDS = {
408624
+ opus: "claude-opus-4-7",
408625
408625
  sonnet: "claude-sonnet-4-6",
408626
408626
  haiku: "claude-haiku-4-5-20251001"
408627
408627
  };
@@ -417159,7 +417159,7 @@ var init_copy2 = __esm(() => {
417159
417159
  copy = {
417160
417160
  type: "local-jsx",
417161
417161
  name: "copy",
417162
- description: "Copy Claude's last response to clipboard (or /copy N for the Nth-latest)",
417162
+ description: "Copy Stratagem's last response to clipboard (or /copy N for the Nth-latest)",
417163
417163
  load: () => Promise.resolve().then(() => (init_copy(), exports_copy))
417164
417164
  };
417165
417165
  copy_default = copy;
@@ -418331,7 +418331,7 @@ function buildPrimarySection() {
418331
418331
  }, undefined, false, undefined, this);
418332
418332
  return [{
418333
418333
  label: "Version",
418334
- value: "0.3.53"
418334
+ value: "0.3.55"
418335
418335
  }, {
418336
418336
  label: "Session name",
418337
418337
  value: nameValue
@@ -458025,7 +458025,7 @@ function getStartupLines(termWidth) {
458025
458025
  const sLen = ` ● ${sL} buffer ready — /help for breach controls`.length;
458026
458026
  out.push(centerAnsiLine(boxRow(sRow, W2, sLen), tw));
458027
458027
  out.push(centerAnsiLine(`${rgb3(...BORDER)}└${"─".repeat(W2 - 2)}┘${RESET2}`, tw));
458028
- out.push(centerAnsiLine(`${rgb3(...DIMCOL)}STRATAGEM X7${RESET2} ${rgb3(...ACCENT)}v${"0.3.53"}${RESET2} ${rgb3(...CYAN)}// breach link stable${RESET2}`, tw));
458028
+ out.push(centerAnsiLine(`${rgb3(...DIMCOL)}STRATAGEM X7${RESET2} ${rgb3(...ACCENT)}v${"0.3.55"}${RESET2} ${rgb3(...CYAN)}// breach link stable${RESET2}`, tw));
458029
458029
  out.push("");
458030
458030
  return out;
458031
458031
  }
@@ -471301,10 +471301,82 @@ var init_usage3 = __esm(() => {
471301
471301
  };
471302
471302
  });
471303
471303
 
471304
+ // src/commands/whoami/whoami.ts
471305
+ var exports_whoami = {};
471306
+ __export(exports_whoami, {
471307
+ call: () => call41
471308
+ });
471309
+ function pad(label, width) {
471310
+ return label.length >= width ? label : label + " ".repeat(width - label.length);
471311
+ }
471312
+ function describeAnthropicAuth() {
471313
+ const oauth = getClaudeAIOAuthTokens();
471314
+ if (oauth?.accessToken) {
471315
+ const tier = oauth.subscriptionType ?? "unknown tier";
471316
+ return `OAuth signed in · ${tier}`;
471317
+ }
471318
+ const { source, hasToken } = getAnthropicApiKeyWithSource();
471319
+ if (hasToken) {
471320
+ return `API key (${source})`;
471321
+ }
471322
+ if (isClaudeAISubscriber()) {
471323
+ return "subscriber, no token in this session";
471324
+ }
471325
+ return "not logged in";
471326
+ }
471327
+ var call41 = async () => {
471328
+ const profile = getActiveProviderProfile();
471329
+ const apiProvider = getAPIProvider();
471330
+ const model = getDefaultMainLoopModel();
471331
+ const marketingName = getMarketingNameForModel(model);
471332
+ const lines = [];
471333
+ lines.push(`STRATAGEM X7 v${"99.0.0"}`);
471334
+ lines.push("");
471335
+ const w = 13;
471336
+ if (profile) {
471337
+ lines.push(`${pad("Provider:", w)}${profile.name} (${profile.provider})`);
471338
+ lines.push(`${pad(" Base URL:", w)}${profile.baseUrl}`);
471339
+ } else {
471340
+ lines.push(`${pad("Provider:", w)}${apiProvider} (no active profile)`);
471341
+ }
471342
+ lines.push("");
471343
+ if (marketingName) {
471344
+ lines.push(`${pad("Model:", w)}${marketingName}`);
471345
+ lines.push(`${pad(" ID:", w)}${model}`);
471346
+ } else {
471347
+ lines.push(`${pad("Model:", w)}${model}`);
471348
+ }
471349
+ lines.push("");
471350
+ lines.push(`${pad("Anthropic:", w)}${describeAnthropicAuth()}`);
471351
+ lines.push(`${pad("CWD:", w)}${getCwd()}`);
471352
+ return { type: "text", value: lines.join(`
471353
+ `) };
471354
+ };
471355
+ var init_whoami = __esm(() => {
471356
+ init_providerProfiles();
471357
+ init_auth();
471358
+ init_cwd2();
471359
+ init_model();
471360
+ init_providers();
471361
+ });
471362
+
471363
+ // src/commands/whoami/index.ts
471364
+ var whoami, whoami_default;
471365
+ var init_whoami2 = __esm(() => {
471366
+ whoami = {
471367
+ type: "local",
471368
+ name: "whoami",
471369
+ description: "Show active provider, model, auth state, and working directory",
471370
+ supportsNonInteractive: true,
471371
+ load: () => Promise.resolve().then(() => (init_whoami(), exports_whoami))
471372
+ };
471373
+ whoami_default = whoami;
471374
+ });
471375
+
471304
471376
  // src/commands/theme/theme.tsx
471305
471377
  var exports_theme = {};
471306
471378
  __export(exports_theme, {
471307
- call: () => call41
471379
+ call: () => call42
471308
471380
  });
471309
471381
  function ThemePickerCommand(t0) {
471310
471382
  const $2 = import_react_compiler_runtime216.c(8);
@@ -471354,7 +471426,7 @@ function ThemePickerCommand(t0) {
471354
471426
  }
471355
471427
  return t3;
471356
471428
  }
471357
- var import_react_compiler_runtime216, jsx_dev_runtime288, call41 = async (onDone, _context) => {
471429
+ var import_react_compiler_runtime216, jsx_dev_runtime288, call42 = async (onDone, _context) => {
471358
471430
  return /* @__PURE__ */ jsx_dev_runtime288.jsxDEV(ThemePickerCommand, {
471359
471431
  onDone
471360
471432
  }, undefined, false, undefined, this);
@@ -471382,9 +471454,9 @@ var init_theme3 = __esm(() => {
471382
471454
  // src/commands/vim/vim.ts
471383
471455
  var exports_vim = {};
471384
471456
  __export(exports_vim, {
471385
- call: () => call42
471457
+ call: () => call43
471386
471458
  });
471387
- var call42 = async () => {
471459
+ var call43 = async () => {
471388
471460
  const config3 = getGlobalConfig();
471389
471461
  let currentMode = config3.editorMode || "normal";
471390
471462
  if (currentMode === "emacs") {
@@ -471425,7 +471497,7 @@ var init_vim2 = __esm(() => {
471425
471497
  var exports_thinkback = {};
471426
471498
  __export(exports_thinkback, {
471427
471499
  playAnimation: () => playAnimation,
471428
- call: () => call43
471500
+ call: () => call44
471429
471501
  });
471430
471502
  import { readFile as readFile43 } from "fs/promises";
471431
471503
  import { join as join123 } from "path";
@@ -471962,7 +472034,7 @@ function ThinkbackFlow(t0) {
471962
472034
  }
471963
472035
  return t8;
471964
472036
  }
471965
- async function call43(onDone) {
472037
+ async function call44(onDone) {
471966
472038
  return /* @__PURE__ */ jsx_dev_runtime289.jsxDEV(ThinkbackFlow, {
471967
472039
  onDone
471968
472040
  }, undefined, false, undefined, this);
@@ -472010,14 +472082,14 @@ var init_thinkback2 = __esm(() => {
472010
472082
  // src/commands/thinkback-play/thinkback-play.ts
472011
472083
  var exports_thinkback_play = {};
472012
472084
  __export(exports_thinkback_play, {
472013
- call: () => call44
472085
+ call: () => call45
472014
472086
  });
472015
472087
  import { join as join124 } from "path";
472016
472088
  function getPluginId2() {
472017
472089
  const marketplaceName = process.env.USER_TYPE === "ant" ? INTERNAL_MARKETPLACE_NAME : OFFICIAL_MARKETPLACE_NAME;
472018
472090
  return `thinkback@${marketplaceName}`;
472019
472091
  }
472020
- async function call44() {
472092
+ async function call45() {
472021
472093
  const v2Data = loadInstalledPluginsV2();
472022
472094
  const pluginId = getPluginId2();
472023
472095
  const installations = v2Data.plugins[pluginId];
@@ -474513,9 +474585,9 @@ var init_PermissionRuleList = __esm(() => {
474513
474585
  // src/commands/permissions/permissions.tsx
474514
474586
  var exports_permissions = {};
474515
474587
  __export(exports_permissions, {
474516
- call: () => call45
474588
+ call: () => call46
474517
474589
  });
474518
- var jsx_dev_runtime297, call45 = async (onDone, context6) => {
474590
+ var jsx_dev_runtime297, call46 = async (onDone, context6) => {
474519
474591
  return /* @__PURE__ */ jsx_dev_runtime297.jsxDEV(PermissionRuleList, {
474520
474592
  onExit: onDone,
474521
474593
  onRetryDenials: (commands) => {
@@ -474545,7 +474617,7 @@ var init_permissions4 = __esm(() => {
474545
474617
  // src/commands/plan/plan.tsx
474546
474618
  var exports_plan = {};
474547
474619
  __export(exports_plan, {
474548
- call: () => call46
474620
+ call: () => call47
474549
474621
  });
474550
474622
  function PlanDisplay(t0) {
474551
474623
  const $2 = import_react_compiler_runtime225.c(11);
@@ -474633,7 +474705,7 @@ function PlanDisplay(t0) {
474633
474705
  }
474634
474706
  return t5;
474635
474707
  }
474636
- async function call46(onDone, context6, args) {
474708
+ async function call47(onDone, context6, args) {
474637
474709
  const {
474638
474710
  getAppState,
474639
474711
  setAppState
@@ -474779,7 +474851,7 @@ var init_FastIcon = __esm(() => {
474779
474851
  // src/commands/fast/fast.tsx
474780
474852
  var exports_fast = {};
474781
474853
  __export(exports_fast, {
474782
- call: () => call47,
474854
+ call: () => call48,
474783
474855
  FastModePicker: () => FastModePicker
474784
474856
  });
474785
474857
  function applyFastMode(enable, setAppState) {
@@ -475094,7 +475166,7 @@ async function handleFastModeShortcut(enable, getAppState, setAppState) {
475094
475166
  return `Fast mode OFF`;
475095
475167
  }
475096
475168
  }
475097
- async function call47(onDone, context6, args) {
475169
+ async function call48(onDone, context6, args) {
475098
475170
  if (!isFastModeEnabled()) {
475099
475171
  return null;
475100
475172
  }
@@ -475580,9 +475652,9 @@ var init_Passes = __esm(() => {
475580
475652
  // src/commands/passes/passes.tsx
475581
475653
  var exports_passes = {};
475582
475654
  __export(exports_passes, {
475583
- call: () => call48
475655
+ call: () => call49
475584
475656
  });
475585
- async function call48(onDone) {
475657
+ async function call49(onDone) {
475586
475658
  const config3 = getGlobalConfig();
475587
475659
  const isFirstVisit = !config3.hasVisitedPasses;
475588
475660
  if (isFirstVisit) {
@@ -476352,9 +476424,9 @@ var init_Grove = __esm(() => {
476352
476424
  // src/commands/privacy-settings/privacy-settings.tsx
476353
476425
  var exports_privacy_settings = {};
476354
476426
  __export(exports_privacy_settings, {
476355
- call: () => call49
476427
+ call: () => call50
476356
476428
  });
476357
- async function call49(onDone) {
476429
+ async function call50(onDone) {
476358
476430
  const qualified = await isQualifiedForGrove();
476359
476431
  if (!qualified) {
476360
476432
  onDone(FALLBACK_MESSAGE);
@@ -476434,7 +476506,7 @@ var init_privacy_settings2 = __esm(() => {
476434
476506
  var exports_provider = {};
476435
476507
  __export(exports_provider, {
476436
476508
  getProviderWizardDefaults: () => getProviderWizardDefaults,
476437
- call: () => call50,
476509
+ call: () => call51,
476438
476510
  buildProfileSaveMessage: () => buildProfileSaveMessage,
476439
476511
  buildCurrentProviderSummary: () => buildCurrentProviderSummary,
476440
476512
  buildCodexOAuthProfileEnv: () => buildCodexOAuthProfileEnv2,
@@ -477648,7 +477720,7 @@ function ProviderWizard({
477648
477720
  }, undefined, false, undefined, this);
477649
477721
  }
477650
477722
  }
477651
- var React102, jsx_dev_runtime305, call50 = async (onDone, _context, args) => {
477723
+ var React102, jsx_dev_runtime305, call51 = async (onDone, _context, args) => {
477652
477724
  const trimmedArgs = args?.trim().toLowerCase() ?? "";
477653
477725
  if (COMMON_HELP_ARGS.includes(trimmedArgs) || COMMON_INFO_ARGS.includes(trimmedArgs) || trimmedArgs === "help" || trimmedArgs === "--help" || trimmedArgs === "-h") {
477654
477726
  onDone("Run /provider to add, edit, delete, or activate provider profiles. The active provider controls base URL, model, and API key.", { display: "system" });
@@ -479464,9 +479536,9 @@ var init_HooksConfigMenu = __esm(() => {
479464
479536
  // src/commands/hooks/hooks.tsx
479465
479537
  var exports_hooks2 = {};
479466
479538
  __export(exports_hooks2, {
479467
- call: () => call51
479539
+ call: () => call52
479468
479540
  });
479469
- var jsx_dev_runtime311, call51 = async (onDone, context6) => {
479541
+ var jsx_dev_runtime311, call52 = async (onDone, context6) => {
479470
479542
  logEvent("tengu_hooks_command", {});
479471
479543
  const appState = context6.getAppState();
479472
479544
  const permissionContext = appState.toolPermissionContext;
@@ -479498,10 +479570,10 @@ var init_hooks5 = __esm(() => {
479498
479570
  // src/commands/files/files.ts
479499
479571
  var exports_files2 = {};
479500
479572
  __export(exports_files2, {
479501
- call: () => call52
479573
+ call: () => call53
479502
479574
  });
479503
479575
  import { relative as relative26 } from "path";
479504
- async function call52(_args, context6) {
479576
+ async function call53(_args, context6) {
479505
479577
  const files = context6.readFileState ? cacheKeys(context6.readFileState) : [];
479506
479578
  if (files.length === 0) {
479507
479579
  return { type: "text", value: "No files in context" };
@@ -479534,7 +479606,7 @@ var init_files4 = __esm(() => {
479534
479606
  var exports_branch = {};
479535
479607
  __export(exports_branch, {
479536
479608
  deriveFirstPrompt: () => deriveFirstPrompt,
479537
- call: () => call53
479609
+ call: () => call54
479538
479610
  });
479539
479611
  import { randomUUID as randomUUID29 } from "crypto";
479540
479612
  import { mkdir as mkdir36, readFile as readFile44, writeFile as writeFile37 } from "fs/promises";
@@ -479640,7 +479712,7 @@ async function getUniqueForkName(baseName) {
479640
479712
  }
479641
479713
  return `${baseName} (Branch ${nextNumber})`;
479642
479714
  }
479643
- async function call53(onDone, context6, args) {
479715
+ async function call54(onDone, context6, args) {
479644
479716
  const customTitle = args?.trim() || undefined;
479645
479717
  const originalSessionId = getSessionId();
479646
479718
  try {
@@ -485697,9 +485769,9 @@ var init_AgentsMenu = __esm(() => {
485697
485769
  // src/commands/agents/agents.tsx
485698
485770
  var exports_agents = {};
485699
485771
  __export(exports_agents, {
485700
- call: () => call54
485772
+ call: () => call55
485701
485773
  });
485702
- async function call54(onDone, context6) {
485774
+ async function call55(onDone, context6) {
485703
485775
  const appState = context6.getAppState();
485704
485776
  const permissionContext = appState.toolPermissionContext;
485705
485777
  const tools = getTools(permissionContext);
@@ -485768,9 +485840,9 @@ var init_auto_fix = __esm(() => {
485768
485840
  // src/commands/plugin/plugin.tsx
485769
485841
  var exports_plugin = {};
485770
485842
  __export(exports_plugin, {
485771
- call: () => call55
485843
+ call: () => call56
485772
485844
  });
485773
- async function call55(onDone, _context, args) {
485845
+ async function call56(onDone, _context, args) {
485774
485846
  return /* @__PURE__ */ jsx_dev_runtime337.jsxDEV(PluginSettings, {
485775
485847
  onComplete: onDone,
485776
485848
  args
@@ -485948,12 +486020,12 @@ var init_refresh = __esm(() => {
485948
486020
  // src/commands/reload-plugins/reload-plugins.ts
485949
486021
  var exports_reload_plugins = {};
485950
486022
  __export(exports_reload_plugins, {
485951
- call: () => call56
486023
+ call: () => call57
485952
486024
  });
485953
486025
  function n2(count4, noun) {
485954
486026
  return `${count4} ${plural(count4, noun)}`;
485955
486027
  }
485956
- var call56 = async (_args, context6) => {
486028
+ var call57 = async (_args, context6) => {
485957
486029
  if (false) {}
485958
486030
  const r = await refreshActivePlugins(context6.setAppState);
485959
486031
  const parts = [
@@ -485996,9 +486068,9 @@ var init_reload_plugins2 = __esm(() => {
485996
486068
  // src/commands/rewind/rewind.ts
485997
486069
  var exports_rewind = {};
485998
486070
  __export(exports_rewind, {
485999
- call: () => call57
486071
+ call: () => call58
486000
486072
  });
486001
- async function call57(_args, context6) {
486073
+ async function call58(_args, context6) {
486002
486074
  if (context6.openMessageSelector) {
486003
486075
  context6.openMessageSelector();
486004
486076
  }
@@ -486183,9 +486255,9 @@ var init_heapDumpService = __esm(() => {
486183
486255
  // src/commands/heapdump/heapdump.ts
486184
486256
  var exports_heapdump = {};
486185
486257
  __export(exports_heapdump, {
486186
- call: () => call58
486258
+ call: () => call59
486187
486259
  });
486188
- async function call58() {
486260
+ async function call59() {
486189
486261
  const result = await performHeapDump();
486190
486262
  if (!result.success) {
486191
486263
  return {
@@ -486556,7 +486628,7 @@ var USAGE = `/bridge-kick <subcommand>
486556
486628
  reconnect-session fail next POST /bridge/reconnect fails
486557
486629
  heartbeat <status> next heartbeat throws BridgeFatalError(status)
486558
486630
  reconnect call reconnectEnvironmentWithSession directly
486559
- status print bridge state`, call59 = async (args) => {
486631
+ status print bridge state`, call60 = async (args) => {
486560
486632
  const h2 = getBridgeDebugHandle();
486561
486633
  if (!h2) {
486562
486634
  return {
@@ -486689,16 +486761,16 @@ var init_bridge_kick = __esm(() => {
486689
486761
  description: "Inject bridge failure states for manual recovery testing",
486690
486762
  isEnabled: () => process.env.USER_TYPE === "ant",
486691
486763
  supportsNonInteractive: false,
486692
- load: () => Promise.resolve({ call: call59 })
486764
+ load: () => Promise.resolve({ call: call60 })
486693
486765
  };
486694
486766
  bridge_kick_default = bridgeKick;
486695
486767
  });
486696
486768
 
486697
486769
  // src/commands/version.ts
486698
- var call60 = async () => {
486770
+ var call61 = async () => {
486699
486771
  return {
486700
486772
  type: "text",
486701
- value: `${"99.0.0"} (built ${"2026-05-07T15:10:48.598Z"})`
486773
+ value: `${"99.0.0"} (built ${"2026-05-07T15:45:19.535Z"})`
486702
486774
  };
486703
486775
  }, version2, version_default;
486704
486776
  var init_version = __esm(() => {
@@ -486708,7 +486780,7 @@ var init_version = __esm(() => {
486708
486780
  description: "Print the version this session is running (not what autoupdate downloaded)",
486709
486781
  isEnabled: () => process.env.USER_TYPE === "ant",
486710
486782
  supportsNonInteractive: true,
486711
- load: () => Promise.resolve({ call: call60 })
486783
+ load: () => Promise.resolve({ call: call61 })
486712
486784
  };
486713
486785
  version_default = version2;
486714
486786
  });
@@ -487079,7 +487151,7 @@ var init_status4 = __esm(() => {
487079
487151
  // src/commands/wiki/wiki.tsx
487080
487152
  var exports_wiki = {};
487081
487153
  __export(exports_wiki, {
487082
- call: () => call61
487154
+ call: () => call62
487083
487155
  });
487084
487156
  function renderHelp() {
487085
487157
  return `Usage: /wiki [init|status|ingest <path>]
@@ -487173,7 +487245,7 @@ ${renderHelp()}`, {
487173
487245
  display: "system"
487174
487246
  });
487175
487247
  }
487176
- var call61 = async (onDone, _context, args) => {
487248
+ var call62 = async (onDone, _context, args) => {
487177
487249
  await runWikiCommand(onDone, args ?? "");
487178
487250
  return null;
487179
487251
  };
@@ -488354,10 +488426,10 @@ var init_SandboxSettings = __esm(() => {
488354
488426
  // src/commands/sandbox-toggle/sandbox-toggle.tsx
488355
488427
  var exports_sandbox_toggle = {};
488356
488428
  __export(exports_sandbox_toggle, {
488357
- call: () => call62
488429
+ call: () => call63
488358
488430
  });
488359
488431
  import { relative as relative30 } from "path";
488360
- async function call62(onDone, _context, args) {
488432
+ async function call63(onDone, _context, args) {
488361
488433
  const settings = getSettings_DEPRECATED();
488362
488434
  const themeName = settings.theme || "light";
488363
488435
  const platform5 = getPlatform();
@@ -488739,7 +488811,7 @@ var init_setup2 = __esm(() => {
488739
488811
  // src/commands/chrome/chrome.tsx
488740
488812
  var exports_chrome = {};
488741
488813
  __export(exports_chrome, {
488742
- call: () => call63
488814
+ call: () => call64
488743
488815
  });
488744
488816
  function ClaudeInChromeMenu(t0) {
488745
488817
  const $2 = import_react_compiler_runtime258.c(41);
@@ -489106,7 +489178,7 @@ function _temp268(c6) {
489106
489178
  function _temp155(s) {
489107
489179
  return s.mcp.clients;
489108
489180
  }
489109
- var import_react_compiler_runtime258, import_react186, jsx_dev_runtime343, CHROME_EXTENSION_URL = "https://claude.ai/chrome", CHROME_PERMISSIONS_URL = "https://clau.de/chrome/permissions", CHROME_RECONNECT_URL = "https://clau.de/chrome/reconnect", call63 = async function(onDone) {
489181
+ var import_react_compiler_runtime258, import_react186, jsx_dev_runtime343, CHROME_EXTENSION_URL = "https://claude.ai/chrome", CHROME_PERMISSIONS_URL = "https://clau.de/chrome/permissions", CHROME_RECONNECT_URL = "https://clau.de/chrome/reconnect", call64 = async function(onDone) {
489110
489182
  const isExtensionInstalled = await isChromeExtensionInstalled();
489111
489183
  const config3 = getGlobalConfig();
489112
489184
  const isSubscriber = isClaudeAISubscriber();
@@ -489154,9 +489226,9 @@ var init_chrome2 = __esm(() => {
489154
489226
  // src/commands/stickers/stickers.ts
489155
489227
  var exports_stickers = {};
489156
489228
  __export(exports_stickers, {
489157
- call: () => call64
489229
+ call: () => call65
489158
489230
  });
489159
- async function call64() {
489231
+ async function call65() {
489160
489232
  const url4 = "https://www.stickermule.com/claudecode";
489161
489233
  const success2 = await openBrowser(url4);
489162
489234
  if (success2) {
@@ -489342,7 +489414,7 @@ var init_validateModel = __esm(() => {
489342
489414
  });
489343
489415
 
489344
489416
  // src/commands/advisor.ts
489345
- var call65 = async (args, context6) => {
489417
+ var call66 = async (args, context6) => {
489346
489418
  const arg = args.trim().toLowerCase();
489347
489419
  const baseModel = parseUserSpecifiedModel(context6.getAppState().mainLoopModel ?? getDefaultMainLoopModelSetting());
489348
489420
  if (!arg) {
@@ -489428,7 +489500,7 @@ var init_advisor2 = __esm(() => {
489428
489500
  return !canUserConfigureAdvisor();
489429
489501
  },
489430
489502
  supportsNonInteractive: true,
489431
- load: () => Promise.resolve({ call: call65 })
489503
+ load: () => Promise.resolve({ call: call66 })
489432
489504
  };
489433
489505
  advisor_default = advisor;
489434
489506
  });
@@ -489841,12 +489913,12 @@ var init_ExitFlow = __esm(() => {
489841
489913
  // src/commands/exit/exit.tsx
489842
489914
  var exports_exit = {};
489843
489915
  __export(exports_exit, {
489844
- call: () => call66
489916
+ call: () => call67
489845
489917
  });
489846
489918
  function getRandomGoodbyeMessage2() {
489847
489919
  return sample_default(GOODBYE_MESSAGES2) ?? "Goodbye!";
489848
489920
  }
489849
- async function call66(onDone) {
489921
+ async function call67(onDone) {
489850
489922
  if (false) {}
489851
489923
  const showWorktree = getCurrentWorktreeSession() !== null;
489852
489924
  if (showWorktree) {
@@ -490140,7 +490212,7 @@ var exports_export = {};
490140
490212
  __export(exports_export, {
490141
490213
  sanitizeFilename: () => sanitizeFilename,
490142
490214
  extractFirstPrompt: () => extractFirstPrompt,
490143
- call: () => call67
490215
+ call: () => call68
490144
490216
  });
490145
490217
  import { join as join132 } from "path";
490146
490218
  function formatTimestamp(date6) {
@@ -490181,7 +490253,7 @@ async function exportWithReactRenderer(context6) {
490181
490253
  const tools = context6.options.tools || [];
490182
490254
  return renderMessagesToPlainText(context6.messages, tools);
490183
490255
  }
490184
- async function call67(onDone, context6, args) {
490256
+ async function call68(onDone, context6, args) {
490185
490257
  const content = await exportWithReactRenderer(context6);
490186
490258
  const filename = args.trim();
490187
490259
  if (filename) {
@@ -490363,7 +490435,7 @@ var init_openaiModelDiscovery = __esm(() => {
490363
490435
  // src/commands/model/model.tsx
490364
490436
  var exports_model2 = {};
490365
490437
  __export(exports_model2, {
490366
- call: () => call68
490438
+ call: () => call69
490367
490439
  });
490368
490440
  function ModelPickerWrapper(t0) {
490369
490441
  const $2 = import_react_compiler_runtime260.c(17);
@@ -490636,7 +490708,7 @@ function renderModelLabel(model) {
490636
490708
  const rendered = renderDefaultModelSetting(model ?? getDefaultMainLoopModelSetting());
490637
490709
  return model === null ? `${rendered} (default)` : rendered;
490638
490710
  }
490639
- var import_react_compiler_runtime260, React116, jsx_dev_runtime350, call68 = async (onDone, _context, args) => {
490711
+ var import_react_compiler_runtime260, React116, jsx_dev_runtime350, call69 = async (onDone, _context, args) => {
490640
490712
  args = args?.trim() || "";
490641
490713
  if (COMMON_INFO_ARGS.includes(args)) {
490642
490714
  logEvent("tengu_model_command_inline_help", {
@@ -490710,7 +490782,7 @@ var init_model3 = __esm(() => {
490710
490782
  // src/commands/tag/tag.tsx
490711
490783
  var exports_tag = {};
490712
490784
  __export(exports_tag, {
490713
- call: () => call69
490785
+ call: () => call70
490714
490786
  });
490715
490787
  function ConfirmRemoveTag(t0) {
490716
490788
  const $2 = import_react_compiler_runtime261.c(11);
@@ -490934,7 +491006,7 @@ Examples:
490934
491006
  React117.useEffect(t1, t2);
490935
491007
  return null;
490936
491008
  }
490937
- async function call69(onDone, _context, args) {
491009
+ async function call70(onDone, _context, args) {
490938
491010
  args = args?.trim() || "";
490939
491011
  if (COMMON_INFO_ARGS.includes(args) || COMMON_HELP_ARGS.includes(args)) {
490940
491012
  return /* @__PURE__ */ jsx_dev_runtime351.jsxDEV(ShowHelp, {
@@ -490982,9 +491054,9 @@ var init_tag2 = __esm(() => {
490982
491054
  // src/commands/output-style/output-style.tsx
490983
491055
  var exports_output_style = {};
490984
491056
  __export(exports_output_style, {
490985
- call: () => call70
491057
+ call: () => call71
490986
491058
  });
490987
- async function call70(onDone) {
491059
+ async function call71(onDone) {
490988
491060
  onDone("/output-style has been deprecated. Use /config to change your output style, or set it in your settings file. Changes take effect on the next session.", {
490989
491061
  display: "system"
490990
491062
  });
@@ -491503,9 +491575,9 @@ var init_RemoteEnvironmentDialog = __esm(() => {
491503
491575
  // src/commands/remote-env/remote-env.tsx
491504
491576
  var exports_remote_env = {};
491505
491577
  __export(exports_remote_env, {
491506
- call: () => call71
491578
+ call: () => call72
491507
491579
  });
491508
- async function call71(onDone) {
491580
+ async function call72(onDone) {
491509
491581
  return /* @__PURE__ */ jsx_dev_runtime353.jsxDEV(RemoteEnvironmentDialog, {
491510
491582
  onDone
491511
491583
  }, undefined, false, undefined, this);
@@ -491536,9 +491608,9 @@ var init_remote_env2 = __esm(() => {
491536
491608
  // src/commands/upgrade/upgrade.tsx
491537
491609
  var exports_upgrade = {};
491538
491610
  __export(exports_upgrade, {
491539
- call: () => call72
491611
+ call: () => call73
491540
491612
  });
491541
- async function call72(onDone, context6) {
491613
+ async function call73(onDone, context6) {
491542
491614
  try {
491543
491615
  if (isClaudeAISubscriber()) {
491544
491616
  const tokens = getClaudeAIOAuthTokens();
@@ -491598,7 +491670,7 @@ var init_upgrade2 = __esm(() => {
491598
491670
  // src/commands/rate-limit-options/rate-limit-options.tsx
491599
491671
  var exports_rate_limit_options = {};
491600
491672
  __export(exports_rate_limit_options, {
491601
- call: () => call73
491673
+ call: () => call74
491602
491674
  });
491603
491675
  function RateLimitOptionsMenu(t0) {
491604
491676
  const $2 = import_react_compiler_runtime263.c(25);
@@ -491732,7 +491804,7 @@ function RateLimitOptionsMenu(t0) {
491732
491804
  t5 = function handleSelect2(value) {
491733
491805
  if (value === "upgrade") {
491734
491806
  logEvent("tengu_rate_limit_options_menu_select_upgrade", {});
491735
- call72(onDone, context6).then((jsx) => {
491807
+ call73(onDone, context6).then((jsx) => {
491736
491808
  if (jsx) {
491737
491809
  setSubCommandJSX(jsx);
491738
491810
  }
@@ -491792,7 +491864,7 @@ function RateLimitOptionsMenu(t0) {
491792
491864
  }
491793
491865
  return t7;
491794
491866
  }
491795
- async function call73(onDone, context6) {
491867
+ async function call74(onDone, context6) {
491796
491868
  return /* @__PURE__ */ jsx_dev_runtime355.jsxDEV(RateLimitOptionsMenu, {
491797
491869
  onDone,
491798
491870
  context: context6
@@ -492011,7 +492083,7 @@ var exports_effort = {};
492011
492083
  __export(exports_effort, {
492012
492084
  showCurrentEffort: () => showCurrentEffort,
492013
492085
  executeEffort: () => executeEffort,
492014
- call: () => call74
492086
+ call: () => call75
492015
492087
  });
492016
492088
  function setEffortValue(effortValue) {
492017
492089
  const persistable = toPersistableEffort(effortValue);
@@ -492165,7 +492237,7 @@ function ApplyEffortAndClose(t0) {
492165
492237
  React119.useEffect(t1, t2);
492166
492238
  return null;
492167
492239
  }
492168
- async function call74(onDone, _context, args) {
492240
+ async function call75(onDone, _context, args) {
492169
492241
  args = args?.trim() || "";
492170
492242
  if (COMMON_HELP_ARGS2.includes(args)) {
492171
492243
  onDone(`Usage: /effort [low|medium|high|max|auto]
@@ -495035,9 +495107,9 @@ var init_Stats = __esm(() => {
495035
495107
  // src/commands/stats/stats.tsx
495036
495108
  var exports_stats = {};
495037
495109
  __export(exports_stats, {
495038
- call: () => call75
495110
+ call: () => call76
495039
495111
  });
495040
- var jsx_dev_runtime359, call75 = async (onDone) => {
495112
+ var jsx_dev_runtime359, call76 = async (onDone) => {
495041
495113
  return /* @__PURE__ */ jsx_dev_runtime359.jsxDEV(Stats, {
495042
495114
  onClose: onDone
495043
495115
  }, undefined, false, undefined, this);
@@ -495089,7 +495161,7 @@ var agents_platform_default = null;
495089
495161
  // src/commands/buddy/buddy.tsx
495090
495162
  var exports_buddy = {};
495091
495163
  __export(exports_buddy, {
495092
- call: () => call76
495164
+ call: () => call77
495093
495165
  });
495094
495166
  function hashString3(s) {
495095
495167
  let h2 = 2166136261;
@@ -495129,7 +495201,7 @@ function showHelp(onDone) {
495129
495201
 
495130
495202
  Run /buddy with no args to hatch your companion the first time, then pet it on later runs.`, { display: "system" });
495131
495203
  }
495132
- async function call76(onDone, context6, args) {
495204
+ async function call77(onDone, context6, args) {
495133
495205
  const arg = args?.trim().toLowerCase() ?? "";
495134
495206
  if (COMMON_HELP_ARGS.includes(arg) || arg === "") {
495135
495207
  const existing = getCompanion();
@@ -497511,6 +497583,7 @@ var init_commands2 = __esm(() => {
497511
497583
  init_bughunter();
497512
497584
  init_terminalSetup2();
497513
497585
  init_usage3();
497586
+ init_whoami2();
497514
497587
  init_theme3();
497515
497588
  init_vim2();
497516
497589
  init_thinkback2();
@@ -497573,7 +497646,7 @@ var init_commands2 = __esm(() => {
497573
497646
  usageReport2 = {
497574
497647
  type: "prompt",
497575
497648
  name: "insights",
497576
- description: "Generate a report analyzing your Claude Code sessions",
497649
+ description: "Generate a report analyzing your Stratagem sessions",
497577
497650
  contentLength: 0,
497578
497651
  progressMessage: "analyzing your sessions",
497579
497652
  source: "builtin",
@@ -497682,6 +497755,7 @@ var init_commands2 = __esm(() => {
497682
497755
  usage_default,
497683
497756
  usageReport2,
497684
497757
  vim_default,
497758
+ whoami_default,
497685
497759
  wiki_default,
497686
497760
  ...webCmd ? [webCmd] : [],
497687
497761
  ...forkCmd ? [forkCmd] : [],
@@ -555431,7 +555505,7 @@ function WelcomeV2() {
555431
555505
  dimColor: true,
555432
555506
  children: [
555433
555507
  "v",
555434
- "0.3.53",
555508
+ "0.3.55",
555435
555509
  " "
555436
555510
  ]
555437
555511
  }, undefined, true, undefined, this)
@@ -572925,7 +572999,7 @@ async function update() {
572925
572999
  await gracefulShutdown(1);
572926
573000
  }
572927
573001
  if (result.latestVersion === "99.0.0") {
572928
- writeToStdout(source_default.green(`Claude Code is up to date (${"99.0.0"})`) + `
573002
+ writeToStdout(source_default.green(`STRATAGEM X7 is up to date (${"99.0.0"})`) + `
572929
573003
  `);
572930
573004
  } else {
572931
573005
  writeToStdout(source_default.green(`Successfully updated from ${"99.0.0"} to version ${result.latestVersion}`) + `
@@ -572989,7 +573063,7 @@ async function update() {
572989
573063
  await gracefulShutdown(1);
572990
573064
  }
572991
573065
  if (latestVersion === "99.0.0") {
572992
- writeToStdout(source_default.green(`Claude Code is up to date (${"99.0.0"})`) + `
573066
+ writeToStdout(source_default.green(`STRATAGEM X7 is up to date (${"99.0.0"})`) + `
572993
573067
  `);
572994
573068
  await gracefulShutdown(0);
572995
573069
  }
@@ -574889,7 +574963,7 @@ Usage: stx7 --remote "your task description"`, () => gracefulShutdown(1));
574889
574963
  pendingHookMessages
574890
574964
  }, renderAndRun);
574891
574965
  }
574892
- }).version("0.3.53 (STRATAGEM X7)", "-v, --version", "Output the version number");
574966
+ }).version("0.3.55 (STRATAGEM X7)", "-v, --version", "Output the version number");
574893
574967
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
574894
574968
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
574895
574969
  if (canUserConfigureAdvisor()) {
@@ -575350,7 +575424,7 @@ if (false) {}
575350
575424
  async function main2() {
575351
575425
  const args = process.argv.slice(2);
575352
575426
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
575353
- console.log(`${"0.3.53"} (STRATAGEM X7)`);
575427
+ console.log(`${"0.3.55"} (STRATAGEM X7)`);
575354
575428
  return;
575355
575429
  }
575356
575430
  if (args.includes("--provider")) {
@@ -575472,4 +575546,4 @@ async function main2() {
575472
575546
  }
575473
575547
  main2();
575474
575548
 
575475
- //# debugId=C7ADB318148820DF64756E2164756E21
575549
+ //# debugId=875F8EAD361DEE7964756E2164756E21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stratagem-x7",
3
- "version": "0.3.53",
3
+ "version": "0.3.55",
4
4
  "description": "STRATAGEM X7 is a cyberpunk coding-agent CLI for cloud and local model providers",
5
5
  "type": "module",
6
6
  "bin": {
@@ -142,7 +142,7 @@
142
142
  },
143
143
  "repository": {
144
144
  "type": "git",
145
- "url": "https://github.com/EstarinAzx/XETH--7.git"
145
+ "url": "https://github.com/EstarinAzx/STRATAGEM.git"
146
146
  },
147
147
  "keywords": [
148
148
  "stratagem-x7",