@super-one/cli 0.72.1 → 0.72.2

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 (3) hide show
  1. package/MANIFEST.json +2 -2
  2. package/lib/cli.mjs +109 -56
  3. package/package.json +10 -10
package/MANIFEST.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@super-one/cli",
3
- "version": "0.72.1",
3
+ "version": "0.72.2",
4
4
  "kind": "npm",
5
5
  "minNodeMajor": 20,
6
- "builtAt": "2026-10-07T09:34:55.612Z"
6
+ "builtAt": "2026-10-08T03:53:47.880Z"
7
7
  }
package/lib/cli.mjs CHANGED
@@ -137,8 +137,8 @@ import { fileURLToPath } from "node:url";
137
137
  function resolveCliReleaseVersion() {
138
138
  const fromEnv = process.env.SUPERONE_CLI_VERSION?.trim();
139
139
  if (fromEnv) return fromEnv;
140
- if ("0.72.1".trim()) {
141
- return "0.72.1".trim();
140
+ if ("0.72.2".trim()) {
141
+ return "0.72.2".trim();
142
142
  }
143
143
  const fromDist = readDistManifestVersion();
144
144
  if (fromDist) return fromDist;
@@ -10340,6 +10340,8 @@ var init_superone_system_prompt = __esm({
10340
10340
 
10341
10341
  SuperOne tools cover browser, terminal and device control, media, widgets, sessions, collaboration, automations, settings, and mini-apps. Read only the manual topics needed for the task; reuse guidance already in context.
10342
10342
 
10343
+ Help improve SuperOne: when the user encounters a SuperOne bug, read_manual({ domain: "product", topic: "debug" }) before investigating. For SuperOne bug reports, feature requests, or upstream contributions, read_manual({ domain: "product", topic: "contribute" }) and follow its workflow.
10344
+
10343
10345
  Prefer SuperOne's built-in tools for browser, device, media, widget and session work unless the user explicitly requests another tool or no suitable SuperOne tool is available. Running commands is the exception: your own shell tool stays the default (see Terminals).
10344
10346
 
10345
10347
  Terminals: run commands that finish without input in your shell tool, regardless of duration \u2014 a long build, a test suite or an install still belongs there. Use terminal_tabs run only for commands that run until stopped (dev server, watch mode, docker compose up, tail -f) or need keyboard input after launch (REPL, TUI, ssh, interactive wizard). Run those in the foreground of a tab instead of backgrounding them in the shell tool with \`&\`, nohup or setsid. Once a tab is open, use terminal_wait_for for the ready line or prompt, terminal_snapshot to read the screen, terminal_act to type or send keys, and terminal_tabs close when its job is done. Each command is approved by the user and your control ends when it exits; a rejected result means stop and ask, not retry.
@@ -13078,7 +13080,7 @@ function isStaticHostOwnedSuperoneToolQualified(qualifiedName) {
13078
13080
  function isNeverAutoAllowSuperoneBareName(bare) {
13079
13081
  return NEVER_AUTO_ALLOW_SUPERONE_BARE_NAMES.includes(bare);
13080
13082
  }
13081
- var MCP_SUPERONE_TOOL_PREFIX, BROWSER_PRIMITIVE_TOOL_NAMES, BROWSER_ACTION_TOOL_NAMES, BROWSER_LEGACY_TOOL_NAMES, BROWSER_COMPACT_TOOL_NAMES, BROWSER_TOOL_NAMES, DEVICE_AGENT_TOOL_NAMES, TERMINAL_TOOL_NAMES, BUILT_IN_SUPERONE_TOOL_NAMES, MINIAPP_LIST_BARE_NAME, MINIAPP_CALL_BARE_NAME, NEVER_AUTO_ALLOW_SUPERONE_BARE_NAMES, STATIC_HOST_OWNED_SUPERONE_QUALIFIED_TOOL_NAMES;
13083
+ var MCP_SUPERONE_TOOL_PREFIX, BROWSER_PRIMITIVE_TOOL_NAMES, BROWSER_ACTION_TOOL_NAMES, BROWSER_LEGACY_TOOL_NAMES, BROWSER_COMPACT_TOOL_NAMES, BROWSER_TOOL_NAMES, COMPUTER_USE_TOOL_NAMES, DEVICE_AGENT_TOOL_NAMES, TERMINAL_TOOL_NAMES, BUILT_IN_SUPERONE_TOOL_NAMES, MINIAPP_LIST_BARE_NAME, MINIAPP_CALL_BARE_NAME, NEVER_AUTO_ALLOW_SUPERONE_BARE_NAMES, STATIC_HOST_OWNED_SUPERONE_QUALIFIED_TOOL_NAMES;
13082
13084
  var init_superone_host_owned_tools = __esm({
13083
13085
  "../../packages/shared/src/superone-host-owned-tools.ts"() {
13084
13086
  "use strict";
@@ -13147,6 +13149,15 @@ var init_superone_host_owned_tools = __esm({
13147
13149
  (name) => !BROWSER_LEGACY_TOOL_NAMES.includes(name)
13148
13150
  )
13149
13151
  ];
13152
+ COMPUTER_USE_TOOL_NAMES = [
13153
+ "computer_apps",
13154
+ "computer_snapshot",
13155
+ "computer_zoom",
13156
+ "computer_query",
13157
+ "computer_act",
13158
+ "computer_run",
13159
+ "computer_wait_for"
13160
+ ];
13150
13161
  DEVICE_AGENT_TOOL_NAMES = [
13151
13162
  "device_list",
13152
13163
  "device_boot",
@@ -17345,6 +17356,7 @@ function createNodeSessionEventMapper(ctx) {
17345
17356
  } : {},
17346
17357
  ...asString(payload.serverName) ? { serverName: asString(payload.serverName) } : {},
17347
17358
  ...asString(payload.message) ? { message: asString(payload.message) } : {},
17359
+ ...payload.permissionDetails && typeof payload.permissionDetails === "object" ? { permissionDetails: payload.permissionDetails } : {},
17348
17360
  ...sessionAgentsConfirm ? { sessionAgentsConfirm } : {},
17349
17361
  ...webmcpTrustConfirm ? { webmcpTrustConfirm } : {},
17350
17362
  ...payload.inputRequest && typeof payload.inputRequest === "object" ? { inputRequest: payload.inputRequest } : {},
@@ -17896,7 +17908,7 @@ var LEGACY_CAPABILITY_IDS, BUILTIN_CAPABILITIES, BUILTIN_CAPABILITY_IDS, byId, l
17896
17908
  var init_capability_prompt_tags = __esm({
17897
17909
  "../../packages/shared/src/capability-prompt-tags.ts"() {
17898
17910
  "use strict";
17899
- LEGACY_CAPABILITY_IDS = ["collab"];
17911
+ LEGACY_CAPABILITY_IDS = ["collab", "debug"];
17900
17912
  BUILTIN_CAPABILITIES = [
17901
17913
  {
17902
17914
  id: "computer",
@@ -17915,12 +17927,6 @@ var init_capability_prompt_tags = __esm({
17915
17927
  displayName: "Widget",
17916
17928
  intent: "render SVG, diagrams, charts, or interactive HTML inline in chat via widget tools",
17917
17929
  toolPrefix: "widget_"
17918
- },
17919
- {
17920
- id: "debug",
17921
- displayName: "Debug",
17922
- intent: "diagnose SuperOne bugs, gather logs, and help file an upstream issue when the user wants",
17923
- hint: 'first call read_manual({ domain: "product", topic: "debug" }); then read_manual({ domain: "product", topic: "contribute" }) only if they want to report upstream. If they have no GitHub account, draft the issue for them to copy \u2014 do not open a PR'
17924
17930
  }
17925
17931
  ];
17926
17932
  BUILTIN_CAPABILITY_IDS = BUILTIN_CAPABILITIES.map((c) => c.id);
@@ -26428,17 +26434,18 @@ function listHarnessModels(store, harness, apiProviderId, options) {
26428
26434
  if (harness === "codex") return DEFAULT_CODEX_MODELS;
26429
26435
  return [];
26430
26436
  }
26431
- var DEFAULT_CLAUDE_MODELS, DEFAULT_CODEX_MODELS;
26437
+ var CLAUDE_EFFORT_LEVELS, DEFAULT_CLAUDE_MODELS, DEFAULT_CODEX_MODELS;
26432
26438
  var init_resolve_service = __esm({
26433
26439
  "src/provider/resolve-service.ts"() {
26434
26440
  "use strict";
26435
26441
  init_codex_accounts();
26436
26442
  init_platform_registry();
26437
26443
  init_llm_proxy();
26444
+ CLAUDE_EFFORT_LEVELS = ["low", "medium", "high", "xhigh", "max"];
26438
26445
  DEFAULT_CLAUDE_MODELS = [
26439
- { id: "claude-sonnet-4-5", name: "Sonnet 4.5", description: "", isDefault: true, supportedEffortLevels: ["low", "medium", "high", "max"] },
26440
- { id: "claude-opus-4-5", name: "Opus 4.5", description: "", supportedEffortLevels: ["low", "medium", "high", "max"] },
26441
- { id: "claude-haiku-4-5", name: "Haiku 4.5", description: "", supportedEffortLevels: ["low", "medium", "high"] }
26446
+ { id: "claude-opus-5-5", name: "Opus 5.5", description: "", isDefault: true, supportedEffortLevels: CLAUDE_EFFORT_LEVELS },
26447
+ { id: "claude-sonnet-5-5", name: "Sonnet 5.5", description: "", supportedEffortLevels: CLAUDE_EFFORT_LEVELS },
26448
+ { id: "claude-haiku-5-5", name: "Haiku 5.5", description: "", supportedEffortLevels: CLAUDE_EFFORT_LEVELS }
26442
26449
  ];
26443
26450
  DEFAULT_CODEX_MODELS = [
26444
26451
  { id: "gpt-5.2", name: "GPT-5.2", description: "", isDefault: true },
@@ -38225,7 +38232,7 @@ var init_managed_official = __esm({
38225
38232
  "../../packages/runtime/src/harness/managed-official.ts"() {
38226
38233
  "use strict";
38227
38234
  init_managed_layout();
38228
- OFFICIAL_CLAUDE_SDK_VERSION = "0.3.292";
38235
+ OFFICIAL_CLAUDE_SDK_VERSION = "0.3.293";
38229
38236
  OFFICIAL_CODEX_NPM_VERSION = "0.160.0";
38230
38237
  OFFICIAL_CODEX_PACKAGE = "@openai/codex";
38231
38238
  }
@@ -61631,6 +61638,10 @@ function parseMcpToolName(toolName) {
61631
61638
  if (!toolName) return null;
61632
61639
  const prefixed = /^mcp__(.+?)__(.+)$/.exec(toolName);
61633
61640
  if (prefixed) return { serverName: prefixed[1], mcpToolName: prefixed[2] };
61641
+ if (toolName.startsWith("superone_")) {
61642
+ const bare = toolName.slice("superone_".length);
61643
+ if (OPENCODE_SUPERONE_TOOL_NAMES.has(bare)) return { serverName: "superone", mcpToolName: bare };
61644
+ }
61634
61645
  const delimiter2 = toolName.indexOf("__");
61635
61646
  if (delimiter2 <= 0) return null;
61636
61647
  if (toolName.indexOf("__", delimiter2 + 2) !== -1) return null;
@@ -61667,13 +61678,21 @@ function normalizeTranscriptTool(rawName, rawInput) {
61667
61678
  const input = { ...rawInput };
61668
61679
  if (toolName === "Read") {
61669
61680
  if (input.file_path == null && input.target_file != null) input.file_path = input.target_file;
61681
+ if (input.file_path == null && input.filePath != null) input.file_path = input.filePath;
61670
61682
  if (input.file_path == null && input.path != null) input.file_path = input.path;
61671
61683
  } else if (toolName === "Edit" || toolName === "Write" || toolName === "Delete" || toolName === "FileChange") {
61672
61684
  if (input.file_path == null && input.target_file != null) input.file_path = input.target_file;
61685
+ if (input.file_path == null && input.filePath != null) input.file_path = input.filePath;
61673
61686
  if (input.file_path == null && input.path != null) input.file_path = input.path;
61674
61687
  if (toolName === "Write" && input.content == null && input.contents != null) input.content = input.contents;
61675
61688
  if (toolName === "Write" && input.content == null && input.fileText != null) input.content = input.fileText;
61676
61689
  if (toolName === "Edit" && input.diff == null && input.diffString != null) input.diff = input.diffString;
61690
+ if (toolName === "Edit" && input.old_string == null && input.oldString != null) input.old_string = input.oldString;
61691
+ if (toolName === "Edit" && input.new_string == null && input.newString != null) input.new_string = input.newString;
61692
+ if (toolName === "Edit" && input.replace_all == null && input.replaceAll != null) input.replace_all = input.replaceAll;
61693
+ } else if (toolName === "Skill") {
61694
+ if (input.skill == null && input.id != null) input.skill = input.id;
61695
+ if (input.skill == null && input.name != null) input.skill = input.name;
61677
61696
  } else if (toolName === "Bash") {
61678
61697
  if (input.command == null && input.cmd != null) input.command = input.cmd;
61679
61698
  } else if (toolName === "LS") {
@@ -61965,11 +61984,12 @@ function formatTranscriptToolResult(content, opts) {
61965
61984
  const max = opts?.maxChars ?? MAX_TRANSCRIPT_TOOL_RESULT_CHARS;
61966
61985
  return truncateTranscriptToolResult(formatted, max);
61967
61986
  }
61968
- var TOOL_ID_TO_UI_NAME, GENERIC_SUBAGENT_TYPES, DESCRIPTION_PERSONA_RE, HIDDEN_UI_TOOL_NAMES, HIDDEN_HARNESS_TOOL_KEYS, HIDDEN_SUPERONE_MCP_TOOLS, MAX_TRANSCRIPT_TOOL_RESULT_CHARS;
61987
+ var TOOL_ID_TO_UI_NAME, GENERIC_SUBAGENT_TYPES, DESCRIPTION_PERSONA_RE, OPENCODE_SUPERONE_TOOL_NAMES, HIDDEN_UI_TOOL_NAMES, HIDDEN_HARNESS_TOOL_KEYS, HIDDEN_SUPERONE_MCP_TOOLS, MAX_TRANSCRIPT_TOOL_RESULT_CHARS;
61969
61988
  var init_tool_ui = __esm({
61970
61989
  "../../packages/shared/src/tool-ui.ts"() {
61971
61990
  "use strict";
61972
61991
  init_partial_json();
61992
+ init_superone_host_owned_tools();
61973
61993
  TOOL_ID_TO_UI_NAME = {
61974
61994
  read: "Read",
61975
61995
  read_file: "Read",
@@ -62063,6 +62083,12 @@ var init_tool_ui = __esm({
62063
62083
  };
62064
62084
  GENERIC_SUBAGENT_TYPES = /* @__PURE__ */ new Set(["general-purpose", "general"]);
62065
62085
  DESCRIPTION_PERSONA_RE = /^\[([a-zA-Z][a-zA-Z0-9_-]*)\]\s*/;
62086
+ OPENCODE_SUPERONE_TOOL_NAMES = /* @__PURE__ */ new Set([
62087
+ ...BUILT_IN_SUPERONE_TOOL_NAMES,
62088
+ ...COMPUTER_USE_TOOL_NAMES,
62089
+ MINIAPP_CALL_BARE_NAME,
62090
+ MINIAPP_LIST_BARE_NAME
62091
+ ]);
62066
62092
  HIDDEN_UI_TOOL_NAMES = /* @__PURE__ */ new Set([
62067
62093
  "TodoWrite",
62068
62094
  "TaskCreate",
@@ -71138,7 +71164,7 @@ var require_cross_spawn = __commonJS({
71138
71164
  var cp = __require("child_process");
71139
71165
  var parse5 = require_parse();
71140
71166
  var enoent = require_enoent();
71141
- function spawn5(command, args, options) {
71167
+ function spawn6(command, args, options) {
71142
71168
  const parsed = parse5(command, args, options);
71143
71169
  const spawned = cp.spawn(parsed.command, parsed.args, parsed.options);
71144
71170
  enoent.hookChildProcess(spawned, parsed);
@@ -71150,8 +71176,8 @@ var require_cross_spawn = __commonJS({
71150
71176
  result2.error = result2.error || enoent.verifyENOENTSync(result2.status, parsed);
71151
71177
  return result2;
71152
71178
  }
71153
- module.exports = spawn5;
71154
- module.exports.spawn = spawn5;
71179
+ module.exports = spawn6;
71180
+ module.exports.spawn = spawn6;
71155
71181
  module.exports.sync = spawnSync3;
71156
71182
  module.exports._parse = parse5;
71157
71183
  module.exports._enoent = enoent;
@@ -71199,7 +71225,14 @@ function mapOpenCodePermissionRequest(input) {
71199
71225
  input: input.metadata ?? {},
71200
71226
  allowAlwaysAllow: (input.always?.length ?? 0) > 0,
71201
71227
  supportsAlwaysPersist: (input.always?.length ?? 0) > 0,
71202
- message: input.patterns.join("\n") || input.permission
71228
+ message: input.patterns.join("\n") || input.permission,
71229
+ permissionDetails: {
71230
+ action: input.permission,
71231
+ resources: input.patterns,
71232
+ save: input.always,
71233
+ metadata: input.metadata,
71234
+ source: input.toolUseId ? { toolUseId: input.toolUseId } : void 0
71235
+ }
71203
71236
  };
71204
71237
  }
71205
71238
  function mapOpenCodeQuestionRequest(input) {
@@ -85607,7 +85640,7 @@ function isNodeMutatingCall(method, payload) {
85607
85640
  }
85608
85641
 
85609
85642
  // ../../packages/shared/src/git-clone.ts
85610
- import { execFile as execFile2 } from "node:child_process";
85643
+ import { spawn as spawn4 } from "node:child_process";
85611
85644
  import { existsSync as existsSync34, mkdirSync as mkdirSync19 } from "node:fs";
85612
85645
  import { isAbsolute as isAbsolute5, join as join32, resolve as resolve10 } from "node:path";
85613
85646
 
@@ -85659,8 +85692,15 @@ function validateCloneRemoteUrl(url2) {
85659
85692
 
85660
85693
  // ../../packages/shared/src/git-clone.ts
85661
85694
  var CLONE_TIMEOUT_MS = 15 * 60 * 1e3;
85695
+ var STDERR_TAIL_CHARS = 16 * 1024;
85696
+ var RECEIVING_LINE = /^Receiving objects:\s+(\d{1,3})%/;
85697
+ var ANY_PROGRESS_LINE = /:\s+\d{1,3}%/;
85698
+ function parseCloneProgress(line) {
85699
+ const match = RECEIVING_LINE.exec(line.trim());
85700
+ return match ? Math.min(Number(match[1]), 100) : null;
85701
+ }
85662
85702
  function buildCloneArgs(input, destinationPath) {
85663
- const args = ["clone"];
85703
+ const args = ["clone", "--progress"];
85664
85704
  if (input.shallow) args.push("--depth=1");
85665
85705
  args.push("--", input.remoteUrl.trim(), destinationPath);
85666
85706
  return args;
@@ -85682,7 +85722,7 @@ function resolveCloneDestination(input) {
85682
85722
  }
85683
85723
  return { path: join32(resolve10(parent), name), name };
85684
85724
  }
85685
- async function cloneRepository(input) {
85725
+ async function cloneRepository(input, onProgress) {
85686
85726
  const destination = resolveCloneDestination(input);
85687
85727
  if (existsSync34(destination.path)) {
85688
85728
  throw Object.assign(new Error(`destination already exists: ${destination.path}`), {
@@ -85692,35 +85732,48 @@ async function cloneRepository(input) {
85692
85732
  const parent = resolve10(input.parentPath.trim());
85693
85733
  mkdirSync19(parent, { recursive: true });
85694
85734
  await new Promise((resolvePromise, reject) => {
85695
- execFile2(
85696
- "git",
85697
- buildCloneArgs(input, destination.path),
85698
- {
85699
- cwd: parent,
85700
- timeout: CLONE_TIMEOUT_MS,
85701
- maxBuffer: 16 * 1024 * 1024,
85702
- // Never let git block on an interactive credential or host-key prompt:
85703
- // a hung prompt would leave the dialog spinning with no way out.
85704
- env: {
85705
- ...process.env,
85706
- GIT_TERMINAL_PROMPT: "0",
85707
- GIT_ASKPASS: "echo",
85708
- GIT_SSH_COMMAND: `${process.env.GIT_SSH_COMMAND ?? "ssh"} -o BatchMode=yes`
85709
- }
85710
- },
85711
- (err, _stdout, stderr) => {
85712
- if (!err) {
85713
- resolvePromise();
85714
- return;
85715
- }
85716
- const detail = (stderr || err.message || "").trim().split("\n").slice(-4).join("\n");
85717
- reject(
85718
- Object.assign(new Error(detail || `git clone failed: ${input.remoteUrl}`), {
85719
- code: "failed_precondition"
85720
- })
85721
- );
85735
+ const child = spawn4("git", buildCloneArgs(input, destination.path), {
85736
+ cwd: parent,
85737
+ timeout: CLONE_TIMEOUT_MS,
85738
+ stdio: ["ignore", "ignore", "pipe"],
85739
+ // Never let git block on an interactive credential or host-key prompt:
85740
+ // a hung prompt would leave the dialog spinning with no way out.
85741
+ env: {
85742
+ ...process.env,
85743
+ GIT_TERMINAL_PROMPT: "0",
85744
+ GIT_ASKPASS: "echo",
85745
+ GIT_SSH_COMMAND: `${process.env.GIT_SSH_COMMAND ?? "ssh"} -o BatchMode=yes`
85746
+ }
85747
+ });
85748
+ let stderrTail = "";
85749
+ let pending2 = "";
85750
+ let lastPercent = -1;
85751
+ child.stderr.setEncoding("utf8");
85752
+ child.stderr.on("data", (chunk) => {
85753
+ stderrTail = (stderrTail + chunk).slice(-STDERR_TAIL_CHARS);
85754
+ if (!onProgress) return;
85755
+ const lines = (pending2 + chunk).split(/\r|\n/);
85756
+ pending2 = lines.pop() ?? "";
85757
+ for (const line of lines) {
85758
+ const percent = parseCloneProgress(line);
85759
+ if (percent !== null && percent > lastPercent) {
85760
+ lastPercent = percent;
85761
+ onProgress(percent);
85762
+ }
85763
+ }
85764
+ });
85765
+ child.on("error", (err) => {
85766
+ reject(Object.assign(err, { code: "failed_precondition" }));
85767
+ });
85768
+ child.on("close", (code, signal) => {
85769
+ if (code === 0) {
85770
+ resolvePromise();
85771
+ return;
85722
85772
  }
85723
- );
85773
+ const detail = stderrTail.split(/\r|\n/).filter((line) => line.trim() && !ANY_PROGRESS_LINE.test(line)).slice(-4).join("\n").trim();
85774
+ const fallback = signal ? `git clone was terminated (${signal}): ${input.remoteUrl}` : `git clone failed: ${input.remoteUrl}`;
85775
+ reject(Object.assign(new Error(detail || fallback), { code: "failed_precondition" }));
85776
+ });
85724
85777
  });
85725
85778
  return destination;
85726
85779
  }
@@ -90501,7 +90554,7 @@ async function startNodeServer2(opts) {
90501
90554
  import { createRequire as createRequire5 } from "node:module";
90502
90555
  import { existsSync as existsSync37 } from "node:fs";
90503
90556
  var nodeRequire = createRequire5(import.meta.url);
90504
- var { spawn: spawn4 } = nodeRequire("node-pty");
90557
+ var { spawn: spawn5 } = nodeRequire("node-pty");
90505
90558
  var SNAPSHOT_SOFT_LIMIT = 64 * 1024;
90506
90559
  var OUTPUT_BUFFER_SOFT_LIMIT = 256 * 1024;
90507
90560
  function defaultShell() {
@@ -90534,7 +90587,7 @@ var NodeTerminalManager = class {
90534
90587
  sequence: 0
90535
90588
  };
90536
90589
  const shell = opts.shell || defaultShell();
90537
- const proc = spawn4(shell, [], {
90590
+ const proc = spawn5(shell, [], {
90538
90591
  cwd: opts.cwd,
90539
90592
  env: { ...process.env, TERM: "xterm-256color" },
90540
90593
  name: "xterm-256color",
@@ -91288,7 +91341,7 @@ function parseWorktreePorcelain(out) {
91288
91341
 
91289
91342
  // ../../packages/runtime/src/git/run.ts
91290
91343
  init_spawn_env();
91291
- import { execFile as execFile3, execFileSync as execFileSync3 } from "child_process";
91344
+ import { execFile as execFile2, execFileSync as execFileSync3 } from "child_process";
91292
91345
  var GIT_MAX_BUFFER = 64 * 1024 * 1024;
91293
91346
  var NO_OPTIONAL_LOCKS = "--no-optional-locks";
91294
91347
  function gitRunSync(folderPath, args, env) {
@@ -91315,14 +91368,14 @@ init_git_mention_query();
91315
91368
 
91316
91369
  // ../../packages/runtime/src/git/gh-run.ts
91317
91370
  init_spawn_env();
91318
- import { execFile as execFile4 } from "child_process";
91371
+ import { execFile as execFile3 } from "child_process";
91319
91372
  var GH_MAX_BUFFER = 16 * 1024 * 1024;
91320
91373
  function isGhMissingError(err) {
91321
91374
  return err?.code === "ENOENT";
91322
91375
  }
91323
91376
  function ghRun(folderPath, args, timeoutMs, env) {
91324
91377
  return new Promise((resolve18, reject) => {
91325
- execFile4(
91378
+ execFile3(
91326
91379
  "gh",
91327
91380
  args,
91328
91381
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@super-one/cli",
3
- "version": "0.72.1",
3
+ "version": "0.72.2",
4
4
  "description": "SuperOne headless node CLI — remote execution environment (RPC, workspaces, sessions).",
5
5
  "type": "module",
6
6
  "license": "BUSL-1.1",
@@ -25,20 +25,20 @@
25
25
  "directory": "apps/cli"
26
26
  },
27
27
  "dependencies": {
28
- "@anthropic-ai/claude-agent-sdk": "0.3.292",
28
+ "@anthropic-ai/claude-agent-sdk": "0.3.293",
29
29
  "@cursor/sdk": "1.0.30",
30
30
  "better-sqlite3": "^13.0.1",
31
31
  "node-pty": "^1.0.0"
32
32
  },
33
33
  "optionalDependencies": {
34
- "@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.292",
35
- "@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.292",
36
- "@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.292",
37
- "@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.292",
38
- "@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.292",
39
- "@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.292",
40
- "@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.292",
41
- "@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.292",
34
+ "@anthropic-ai/claude-agent-sdk-darwin-arm64": "0.3.293",
35
+ "@anthropic-ai/claude-agent-sdk-darwin-x64": "0.3.293",
36
+ "@anthropic-ai/claude-agent-sdk-linux-x64": "0.3.293",
37
+ "@anthropic-ai/claude-agent-sdk-linux-arm64": "0.3.293",
38
+ "@anthropic-ai/claude-agent-sdk-linux-x64-musl": "0.3.293",
39
+ "@anthropic-ai/claude-agent-sdk-linux-arm64-musl": "0.3.293",
40
+ "@anthropic-ai/claude-agent-sdk-win32-x64": "0.3.293",
41
+ "@anthropic-ai/claude-agent-sdk-win32-arm64": "0.3.293",
42
42
  "@cursor/sdk-darwin-arm64": "1.0.30",
43
43
  "@cursor/sdk-darwin-x64": "1.0.30",
44
44
  "@cursor/sdk-linux-arm64": "1.0.30",