@metaphi-ai/hum 0.2.64 → 0.2.66

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 +345 -280
  2. package/package.json +2 -2
package/dist/cli.mjs CHANGED
@@ -11,11 +11,20 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
11
11
  if (typeof require !== "undefined") return require.apply(this, arguments);
12
12
  throw Error('Dynamic require of "' + x + '" is not supported');
13
13
  });
14
- var __esm = (fn, res) => function __init() {
15
- return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
14
+ var __esm = (fn, res, err) => function __init() {
15
+ if (err) throw err[0];
16
+ try {
17
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
18
+ } catch (e) {
19
+ throw err = [e], e;
20
+ }
16
21
  };
17
22
  var __commonJS = (cb, mod) => function __require2() {
18
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
23
+ try {
24
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
25
+ } catch (e) {
26
+ throw mod = 0, e;
27
+ }
19
28
  };
20
29
  var __export = (target2, all) => {
21
30
  for (var name in all)
@@ -42,7 +51,7 @@ var __toESM = (mod, isNodeMode, target2) => (target2 = mod != null ? __create(__
42
51
  var define_HUM_CORE_SUBS_default;
43
52
  var init_define_HUM_CORE_SUBS = __esm({
44
53
  "<define:HUM_CORE_SUBS>"() {
45
- define_HUM_CORE_SUBS_default = ["run", "login", "logout", "whoami", "model", "credits", "sessions", "show", "export", "sync", "ci", "core", "skill", "agent", "persona", "ps", "stop", "send", "team", "hooks", "trust", "permissions", "worktrees", "plugin", "mcp", "slack", "listen", "admin"];
54
+ define_HUM_CORE_SUBS_default = ["run", "login", "logout", "whoami", "model", "credits", "sessions", "show", "export", "sync", "ci", "core", "skill", "agent", "persona", "ps", "stop", "send", "team", "hooks", "trust", "permissions", "worktrees", "plugin", "mcp", "slack", "listen"];
46
55
  }
47
56
  });
48
57
 
@@ -51,18 +60,19 @@ var require_react_production = __commonJS({
51
60
  "node_modules/react/cjs/react.production.js"(exports) {
52
61
  "use strict";
53
62
  init_define_HUM_CORE_SUBS();
54
- var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element");
55
- var REACT_PORTAL_TYPE = Symbol.for("react.portal");
56
- var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
57
- var REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode");
58
- var REACT_PROFILER_TYPE = Symbol.for("react.profiler");
59
- var REACT_CONSUMER_TYPE = Symbol.for("react.consumer");
60
- var REACT_CONTEXT_TYPE = Symbol.for("react.context");
61
- var REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref");
62
- var REACT_SUSPENSE_TYPE = Symbol.for("react.suspense");
63
- var REACT_MEMO_TYPE = Symbol.for("react.memo");
64
- var REACT_LAZY_TYPE = Symbol.for("react.lazy");
65
- var REACT_ACTIVITY_TYPE = Symbol.for("react.activity");
63
+ var REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element");
64
+ var REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal");
65
+ var REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment");
66
+ var REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode");
67
+ var REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler");
68
+ var REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer");
69
+ var REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context");
70
+ var REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref");
71
+ var REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense");
72
+ var REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo");
73
+ var REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
74
+ var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
75
+ var REACT_VIEW_TRANSITION_TYPE = /* @__PURE__ */ Symbol.for("react.view_transition");
66
76
  var MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
67
77
  function getIteratorFn(maybeIterable) {
68
78
  if (null === maybeIterable || "object" !== typeof maybeIterable) return null;
@@ -250,19 +260,18 @@ var require_react_production = __commonJS({
250
260
  }
251
261
  function lazyInitializer(payload) {
252
262
  if (-1 === payload._status) {
253
- var ctor = payload._result;
254
- ctor = ctor();
255
- ctor.then(
263
+ var ctor = payload._result, thenable = ctor();
264
+ thenable.then(
256
265
  function(moduleObject) {
257
266
  if (0 === payload._status || -1 === payload._status)
258
- payload._status = 1, payload._result = moduleObject;
267
+ payload._status = 1, payload._result = moduleObject, void 0 === thenable.status && (thenable.status = "fulfilled", thenable.value = moduleObject);
259
268
  },
260
269
  function(error) {
261
270
  if (0 === payload._status || -1 === payload._status)
262
- payload._status = 2, payload._result = error;
271
+ payload._status = 2, payload._result = error, void 0 === thenable.status && (thenable.status = "rejected", thenable.reason = error);
263
272
  }
264
273
  );
265
- -1 === payload._status && (payload._status = 0, payload._result = ctor);
274
+ -1 === payload._status && (payload._status = 0, payload._result = thenable);
266
275
  }
267
276
  if (1 === payload._status) return payload._result.default;
268
277
  throw payload._result;
@@ -282,6 +291,27 @@ var require_react_production = __commonJS({
282
291
  }
283
292
  console.error(error);
284
293
  };
294
+ function startTransition(scope) {
295
+ var prevTransition = ReactSharedInternals.T, currentTransition = {};
296
+ currentTransition.types = null !== prevTransition ? prevTransition.types : null;
297
+ ReactSharedInternals.T = currentTransition;
298
+ try {
299
+ var returnValue = scope(), onStartTransitionFinish = ReactSharedInternals.S;
300
+ null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
301
+ "object" === typeof returnValue && null !== returnValue && "function" === typeof returnValue.then && returnValue.then(noop2, reportGlobalError);
302
+ } catch (error) {
303
+ reportGlobalError(error);
304
+ } finally {
305
+ null !== prevTransition && null !== currentTransition.types && (prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition;
306
+ }
307
+ }
308
+ function addTransitionType(type) {
309
+ var transition = ReactSharedInternals.T;
310
+ if (null !== transition) {
311
+ var transitionTypes = transition.types;
312
+ null === transitionTypes ? transition.types = [type] : -1 === transitionTypes.indexOf(type) && transitionTypes.push(type);
313
+ } else startTransition(addTransitionType.bind(null, type));
314
+ }
285
315
  var Children = {
286
316
  map: mapChildren,
287
317
  forEach: function(children, forEachFunc, forEachContext) {
@@ -321,6 +351,7 @@ var require_react_production = __commonJS({
321
351
  exports.PureComponent = PureComponent2;
322
352
  exports.StrictMode = REACT_STRICT_MODE_TYPE;
323
353
  exports.Suspense = REACT_SUSPENSE_TYPE;
354
+ exports.ViewTransition = REACT_VIEW_TRANSITION_TYPE;
324
355
  exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals;
325
356
  exports.__COMPILER_RUNTIME = {
326
357
  __proto__: null,
@@ -328,6 +359,7 @@ var require_react_production = __commonJS({
328
359
  return ReactSharedInternals.H.useMemoCache(size);
329
360
  }
330
361
  };
362
+ exports.addTransitionType = addTransitionType;
331
363
  exports.cache = function(fn) {
332
364
  return function() {
333
365
  return fn.apply(null, arguments);
@@ -408,19 +440,7 @@ var require_react_production = __commonJS({
408
440
  compare: void 0 === compare ? null : compare
409
441
  };
410
442
  };
411
- exports.startTransition = function(scope) {
412
- var prevTransition = ReactSharedInternals.T, currentTransition = {};
413
- ReactSharedInternals.T = currentTransition;
414
- try {
415
- var returnValue = scope(), onStartTransitionFinish = ReactSharedInternals.S;
416
- null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
417
- "object" === typeof returnValue && null !== returnValue && "function" === typeof returnValue.then && returnValue.then(noop2, reportGlobalError);
418
- } catch (error) {
419
- reportGlobalError(error);
420
- } finally {
421
- null !== prevTransition && null !== currentTransition.types && (prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition;
422
- }
423
- };
443
+ exports.startTransition = startTransition;
424
444
  exports.unstable_useCacheRefresh = function() {
425
445
  return ReactSharedInternals.H.useCacheRefresh();
426
446
  };
@@ -484,7 +504,7 @@ var require_react_production = __commonJS({
484
504
  exports.useTransition = function() {
485
505
  return ReactSharedInternals.H.useTransition();
486
506
  };
487
- exports.version = "19.2.8";
507
+ exports.version = "19.3.1";
488
508
  }
489
509
  });
490
510
 
@@ -576,6 +596,8 @@ var require_react_development = __commonJS({
576
596
  return "SuspenseList";
577
597
  case REACT_ACTIVITY_TYPE:
578
598
  return "Activity";
599
+ case REACT_VIEW_TRANSITION_TYPE:
600
+ return "ViewTransition";
579
601
  }
580
602
  if ("object" === typeof type)
581
603
  switch ("number" === typeof type.tag && console.error(
@@ -832,8 +854,11 @@ var require_react_development = __commonJS({
832
854
  }
833
855
  function lazyInitializer(payload) {
834
856
  if (-1 === payload._status) {
835
- var ioInfo = payload._ioInfo;
836
- null != ioInfo && (ioInfo.start = ioInfo.end = performance.now());
857
+ var resolveDebugValue = null, rejectDebugValue = null, ioInfo = payload._ioInfo;
858
+ null != ioInfo && (ioInfo.start = ioInfo.end = performance.now(), ioInfo.value = new Promise(function(resolve, reject) {
859
+ resolveDebugValue = resolve;
860
+ rejectDebugValue = reject;
861
+ }));
837
862
  ioInfo = payload._result;
838
863
  var thenable = ioInfo();
839
864
  thenable.then(
@@ -842,7 +867,13 @@ var require_react_development = __commonJS({
842
867
  payload._status = 1;
843
868
  payload._result = moduleObject;
844
869
  var _ioInfo = payload._ioInfo;
845
- null != _ioInfo && (_ioInfo.end = performance.now());
870
+ if (null != _ioInfo) {
871
+ _ioInfo.end = performance.now();
872
+ var debugValue = null == moduleObject ? void 0 : moduleObject.default;
873
+ resolveDebugValue(debugValue);
874
+ _ioInfo.value.status = "fulfilled";
875
+ _ioInfo.value.value = debugValue;
876
+ }
846
877
  void 0 === thenable.status && (thenable.status = "fulfilled", thenable.value = moduleObject);
847
878
  }
848
879
  },
@@ -851,14 +882,13 @@ var require_react_development = __commonJS({
851
882
  payload._status = 2;
852
883
  payload._result = error;
853
884
  var _ioInfo2 = payload._ioInfo;
854
- null != _ioInfo2 && (_ioInfo2.end = performance.now());
885
+ null != _ioInfo2 && (_ioInfo2.end = performance.now(), _ioInfo2.value.then(noop2, noop2), rejectDebugValue(error), _ioInfo2.value.status = "rejected", _ioInfo2.value.reason = error);
855
886
  void 0 === thenable.status && (thenable.status = "rejected", thenable.reason = error);
856
887
  }
857
888
  }
858
889
  );
859
890
  ioInfo = payload._ioInfo;
860
891
  if (null != ioInfo) {
861
- ioInfo.value = thenable;
862
892
  var displayName = thenable.displayName;
863
893
  "string" === typeof displayName && (ioInfo.name = displayName);
864
894
  }
@@ -884,6 +914,35 @@ var require_react_development = __commonJS({
884
914
  function releaseAsyncTransition() {
885
915
  ReactSharedInternals.asyncTransitions--;
886
916
  }
917
+ function startTransition(scope) {
918
+ var prevTransition = ReactSharedInternals.T, currentTransition = {};
919
+ currentTransition.types = null !== prevTransition ? prevTransition.types : null;
920
+ currentTransition._updatedFibers = /* @__PURE__ */ new Set();
921
+ ReactSharedInternals.T = currentTransition;
922
+ try {
923
+ var returnValue = scope(), onStartTransitionFinish = ReactSharedInternals.S;
924
+ null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
925
+ "object" === typeof returnValue && null !== returnValue && "function" === typeof returnValue.then && (ReactSharedInternals.asyncTransitions++, returnValue.then(releaseAsyncTransition, releaseAsyncTransition), returnValue.then(noop2, reportGlobalError));
926
+ } catch (error) {
927
+ reportGlobalError(error);
928
+ } finally {
929
+ null === prevTransition && currentTransition._updatedFibers && (scope = currentTransition._updatedFibers.size, currentTransition._updatedFibers.clear(), 10 < scope && console.warn(
930
+ "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
931
+ )), null !== prevTransition && null !== currentTransition.types && (null !== prevTransition.types && prevTransition.types !== currentTransition.types && console.error(
932
+ "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
933
+ ), prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition;
934
+ }
935
+ }
936
+ function addTransitionType(type) {
937
+ var transition = ReactSharedInternals.T;
938
+ if (null !== transition) {
939
+ var transitionTypes = transition.types;
940
+ null === transitionTypes ? transition.types = [type] : -1 === transitionTypes.indexOf(type) && transitionTypes.push(type);
941
+ } else
942
+ 0 === ReactSharedInternals.asyncTransitions && console.error(
943
+ "addTransitionType can only be called inside a `startTransition()` callback. It must be associated with a specific Transition."
944
+ ), startTransition(addTransitionType.bind(null, type));
945
+ }
887
946
  function enqueueTask(task) {
888
947
  if (null === enqueueTaskImpl)
889
948
  try {
@@ -958,7 +1017,7 @@ var require_react_development = __commonJS({
958
1017
  }
959
1018
  }
960
1019
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
961
- var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = Symbol.for("react.activity"), MAYBE_ITERATOR_SYMBOL = Symbol.iterator, didWarnStateUpdateForUnmountedComponent = {}, ReactNoopUpdateQueue = {
1020
+ var REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity"), REACT_VIEW_TRANSITION_TYPE = /* @__PURE__ */ Symbol.for("react.view_transition"), MAYBE_ITERATOR_SYMBOL = Symbol.iterator, didWarnStateUpdateForUnmountedComponent = {}, ReactNoopUpdateQueue = {
962
1021
  isMounted: function() {
963
1022
  return false;
964
1023
  },
@@ -1001,7 +1060,7 @@ var require_react_development = __commonJS({
1001
1060
  deprecatedAPIs.constructor = PureComponent2;
1002
1061
  assign(deprecatedAPIs, Component.prototype);
1003
1062
  deprecatedAPIs.isPureReactComponent = true;
1004
- var isArrayImpl = Array.isArray, REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"), ReactSharedInternals = {
1063
+ var isArrayImpl = Array.isArray, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), ReactSharedInternals = {
1005
1064
  H: null,
1006
1065
  A: null,
1007
1066
  T: null,
@@ -1093,6 +1152,7 @@ var require_react_development = __commonJS({
1093
1152
  exports.PureComponent = PureComponent2;
1094
1153
  exports.StrictMode = REACT_STRICT_MODE_TYPE;
1095
1154
  exports.Suspense = REACT_SUSPENSE_TYPE;
1155
+ exports.ViewTransition = REACT_VIEW_TRANSITION_TYPE;
1096
1156
  exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE = ReactSharedInternals;
1097
1157
  exports.__COMPILER_RUNTIME = deprecatedAPIs;
1098
1158
  exports.act = function(callback) {
@@ -1172,6 +1232,7 @@ var require_react_development = __commonJS({
1172
1232
  }
1173
1233
  };
1174
1234
  };
1235
+ exports.addTransitionType = addTransitionType;
1175
1236
  exports.cache = function(fn) {
1176
1237
  return function() {
1177
1238
  return fn.apply(null, arguments);
@@ -1248,6 +1309,7 @@ var require_react_development = __commonJS({
1248
1309
  exports.createElement = function(type, config, children) {
1249
1310
  for (var i = 2; i < arguments.length; i++)
1250
1311
  validateChildKeys(arguments[i]);
1312
+ var propName;
1251
1313
  i = {};
1252
1314
  var key = null;
1253
1315
  if (null != config)
@@ -1270,13 +1332,13 @@ var require_react_development = __commonJS({
1270
1332
  i,
1271
1333
  "function" === typeof type ? type.displayName || type.name || "Unknown" : type
1272
1334
  );
1273
- var propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;
1335
+ (propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++) ? (childArray = Error.stackTraceLimit, Error.stackTraceLimit = 10, childrenLength = Error("react-stack-top-frame"), Error.stackTraceLimit = childArray) : childrenLength = unknownOwnerDebugStack;
1274
1336
  return ReactElement(
1275
1337
  type,
1276
1338
  key,
1277
1339
  i,
1278
1340
  getOwner(),
1279
- propName ? Error("react-stack-top-frame") : unknownOwnerDebugStack,
1341
+ childrenLength,
1280
1342
  propName ? createTask(getTaskName(type)) : unknownOwnerDebugTask
1281
1343
  );
1282
1344
  };
@@ -1356,24 +1418,7 @@ var require_react_development = __commonJS({
1356
1418
  });
1357
1419
  return compare;
1358
1420
  };
1359
- exports.startTransition = function(scope) {
1360
- var prevTransition = ReactSharedInternals.T, currentTransition = {};
1361
- currentTransition._updatedFibers = /* @__PURE__ */ new Set();
1362
- ReactSharedInternals.T = currentTransition;
1363
- try {
1364
- var returnValue = scope(), onStartTransitionFinish = ReactSharedInternals.S;
1365
- null !== onStartTransitionFinish && onStartTransitionFinish(currentTransition, returnValue);
1366
- "object" === typeof returnValue && null !== returnValue && "function" === typeof returnValue.then && (ReactSharedInternals.asyncTransitions++, returnValue.then(releaseAsyncTransition, releaseAsyncTransition), returnValue.then(noop2, reportGlobalError));
1367
- } catch (error) {
1368
- reportGlobalError(error);
1369
- } finally {
1370
- null === prevTransition && currentTransition._updatedFibers && (scope = currentTransition._updatedFibers.size, currentTransition._updatedFibers.clear(), 10 < scope && console.warn(
1371
- "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
1372
- )), null !== prevTransition && null !== currentTransition.types && (null !== prevTransition.types && prevTransition.types !== currentTransition.types && console.error(
1373
- "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
1374
- ), prevTransition.types = currentTransition.types), ReactSharedInternals.T = prevTransition;
1375
- }
1376
- };
1421
+ exports.startTransition = startTransition;
1377
1422
  exports.unstable_useCacheRefresh = function() {
1378
1423
  return resolveDispatcher().useCacheRefresh();
1379
1424
  };
@@ -1455,7 +1500,7 @@ var require_react_development = __commonJS({
1455
1500
  exports.useTransition = function() {
1456
1501
  return resolveDispatcher().useTransition();
1457
1502
  };
1458
- exports.version = "19.2.8";
1503
+ exports.version = "19.3.1";
1459
1504
  "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ && "function" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
1460
1505
  })();
1461
1506
  }
@@ -1514,7 +1559,7 @@ function debounce(func, debounceMs, { signal, edges } = {}) {
1514
1559
  invoke();
1515
1560
  };
1516
1561
  const debounced = function(...args2) {
1517
- if (signal?.aborted) return;
1562
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) return;
1518
1563
  pendingThis = this;
1519
1564
  pendingArgs = args2;
1520
1565
  const isFirstCall = timeoutId == null;
@@ -1524,7 +1569,7 @@ function debounce(func, debounceMs, { signal, edges } = {}) {
1524
1569
  debounced.schedule = schedule;
1525
1570
  debounced.cancel = cancel;
1526
1571
  debounced.flush = flush;
1527
- signal?.addEventListener("abort", cancel, { once: true });
1572
+ signal === null || signal === void 0 || signal.addEventListener("abort", cancel, { once: true });
1528
1573
  return debounced;
1529
1574
  }
1530
1575
  var init_debounce = __esm({
@@ -3729,7 +3774,7 @@ var init_src = __esm({
3729
3774
  // node_modules/ink/node_modules/ansi-regex/index.js
3730
3775
  function ansiRegex({ onlyFirst = false } = {}) {
3731
3776
  const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
3732
- const osc = `(?:\\u001B\\][^\\u0007\\u001B\\u009C]*${ST})`;
3777
+ const osc = `(?:(?:\\u001B\\]|\\u009D)[^\\u0007\\u001B\\u009C\\u009D]*${ST})`;
3733
3778
  const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
3734
3779
  const pattern = `${osc}|${csi}`;
3735
3780
  return new RegExp(pattern, onlyFirst ? void 0 : "g");
@@ -3772,7 +3817,7 @@ var init_lookup_data = __esm({
3772
3817
  fullwidthRanges = [12288, 12288, 65281, 65376, 65504, 65510];
3773
3818
  wideMinimalCodePoint = 4352;
3774
3819
  wideMaximumCodePoint = 262141;
3775
- wideRanges = [4352, 4447, 8986, 8987, 9001, 9002, 9193, 9196, 9200, 9200, 9203, 9203, 9725, 9726, 9748, 9749, 9776, 9783, 9800, 9811, 9855, 9855, 9866, 9871, 9875, 9875, 9889, 9889, 9898, 9899, 9917, 9918, 9924, 9925, 9934, 9934, 9940, 9940, 9962, 9962, 9970, 9971, 9973, 9973, 9978, 9978, 9981, 9981, 9989, 9989, 9994, 9995, 10024, 10024, 10060, 10060, 10062, 10062, 10067, 10069, 10071, 10071, 10133, 10135, 10160, 10160, 10175, 10175, 11035, 11036, 11088, 11088, 11093, 11093, 11904, 11929, 11931, 12019, 12032, 12245, 12272, 12287, 12289, 12350, 12353, 12438, 12441, 12543, 12549, 12591, 12593, 12686, 12688, 12773, 12783, 12830, 12832, 12871, 12880, 42124, 42128, 42182, 43360, 43388, 44032, 55203, 63744, 64255, 65040, 65049, 65072, 65106, 65108, 65126, 65128, 65131, 94176, 94180, 94192, 94198, 94208, 101589, 101631, 101662, 101760, 101874, 110576, 110579, 110581, 110587, 110589, 110590, 110592, 110882, 110898, 110898, 110928, 110930, 110933, 110933, 110948, 110951, 110960, 111355, 119552, 119638, 119648, 119670, 126980, 126980, 127183, 127183, 127374, 127374, 127377, 127386, 127488, 127490, 127504, 127547, 127552, 127560, 127568, 127569, 127584, 127589, 127744, 127776, 127789, 127797, 127799, 127868, 127870, 127891, 127904, 127946, 127951, 127955, 127968, 127984, 127988, 127988, 127992, 128062, 128064, 128064, 128066, 128252, 128255, 128317, 128331, 128334, 128336, 128359, 128378, 128378, 128405, 128406, 128420, 128420, 128507, 128591, 128640, 128709, 128716, 128716, 128720, 128722, 128725, 128728, 128732, 128735, 128747, 128748, 128756, 128764, 128992, 129003, 129008, 129008, 129292, 129338, 129340, 129349, 129351, 129535, 129648, 129660, 129664, 129674, 129678, 129734, 129736, 129736, 129741, 129756, 129759, 129770, 129775, 129784, 131072, 196605, 196608, 262141];
3820
+ wideRanges = [4352, 4447, 8986, 8987, 9001, 9002, 9193, 9196, 9200, 9200, 9203, 9203, 9725, 9726, 9748, 9749, 9776, 9783, 9800, 9811, 9855, 9855, 9866, 9871, 9875, 9875, 9889, 9889, 9898, 9899, 9917, 9918, 9924, 9925, 9934, 9934, 9940, 9940, 9962, 9962, 9970, 9971, 9973, 9973, 9978, 9978, 9981, 9981, 9989, 9989, 9994, 9995, 10024, 10024, 10060, 10060, 10062, 10062, 10067, 10069, 10071, 10071, 10133, 10135, 10160, 10160, 10175, 10175, 11035, 11036, 11088, 11088, 11093, 11093, 11904, 11929, 11931, 12019, 12032, 12245, 12272, 12287, 12289, 12350, 12353, 12438, 12441, 12543, 12549, 12591, 12593, 12686, 12688, 12773, 12783, 12830, 12832, 12871, 12880, 42124, 42128, 42182, 43360, 43388, 44032, 55203, 63744, 64255, 65040, 65049, 65072, 65106, 65108, 65126, 65128, 65131, 94176, 94180, 94192, 94198, 94208, 101594, 101631, 101664, 101760, 101874, 101888, 102801, 102816, 102866, 110576, 110579, 110581, 110587, 110589, 110590, 110592, 110888, 110898, 110898, 110928, 110930, 110933, 110933, 110948, 110952, 110960, 111355, 119552, 119638, 119648, 119670, 126980, 126980, 127183, 127183, 127374, 127374, 127377, 127386, 127406, 127406, 127488, 127490, 127504, 127547, 127552, 127560, 127568, 127569, 127584, 127589, 127744, 127776, 127789, 127797, 127799, 127868, 127870, 127891, 127904, 127946, 127951, 127955, 127968, 127984, 127988, 127988, 127992, 128062, 128064, 128064, 128066, 128252, 128255, 128317, 128331, 128334, 128336, 128359, 128378, 128378, 128405, 128406, 128420, 128420, 128507, 128591, 128640, 128709, 128716, 128716, 128720, 128722, 128725, 128729, 128732, 128735, 128747, 128748, 128756, 128764, 128986, 128986, 128992, 129003, 129008, 129008, 129292, 129338, 129340, 129349, 129351, 129535, 129648, 129660, 129664, 129734, 129736, 129736, 129740, 129757, 129759, 129771, 129775, 129786, 131072, 196605, 196608, 262141];
3776
3821
  }
3777
3822
  });
3778
3823
 
@@ -3817,7 +3862,7 @@ function findWideFastPathRange(ranges) {
3817
3862
  }
3818
3863
  return [fastPathStart, fastPathEnd];
3819
3864
  }
3820
- var commonCjkCodePoint, wideFastPathStart, wideFastPathEnd, isAmbiguous, isFullWidth, isWide;
3865
+ var commonCjkCodePoint, wideFastPathStart, wideFastPathEnd, isAmbiguous, isFullwidth, isWide;
3821
3866
  var init_lookup = __esm({
3822
3867
  "node_modules/get-east-asian-width/lookup.js"() {
3823
3868
  init_define_HUM_CORE_SUBS();
@@ -3831,7 +3876,7 @@ var init_lookup = __esm({
3831
3876
  }
3832
3877
  return isInRange(ambiguousRanges, codePoint);
3833
3878
  };
3834
- isFullWidth = (codePoint) => {
3879
+ isFullwidth = (codePoint) => {
3835
3880
  if (codePoint < fullwidthMinimalCodePoint || codePoint > fullwidthMaximumCodePoint) {
3836
3881
  return false;
3837
3882
  }
@@ -3857,7 +3902,7 @@ function validate(codePoint) {
3857
3902
  }
3858
3903
  function eastAsianWidth(codePoint, { ambiguousAsWide = false } = {}) {
3859
3904
  validate(codePoint);
3860
- if (isFullWidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
3905
+ if (isFullwidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
3861
3906
  return 2;
3862
3907
  }
3863
3908
  return 1;
@@ -3885,10 +3930,8 @@ function isDoubleWidthNonRgiEmojiSequence(segment) {
3885
3930
  return false;
3886
3931
  }
3887
3932
  function baseVisible(segment) {
3888
- return segment.replace(leadingNonPrintingRegex, "");
3889
- }
3890
- function isZeroWidthCluster(segment) {
3891
- return zeroWidthClusterRegex.test(segment);
3933
+ const index = segment.search(visibleCharacterRegex);
3934
+ return index === -1 ? void 0 : segment.slice(index);
3892
3935
  }
3893
3936
  function isHangulLeadingJamo(codePoint) {
3894
3937
  return codePoint >= 4352 && codePoint <= 4447 || codePoint >= 43360 && codePoint <= 43388;
@@ -3905,7 +3948,7 @@ function isHangulJamo(codePoint) {
3905
3948
  function hangulClusterWidth(visibleSegment, eastAsianWidthOptions) {
3906
3949
  const codePoints = [];
3907
3950
  for (const character of visibleSegment) {
3908
- if (zeroWidthClusterRegex.test(character)) {
3951
+ if (!visibleCharacterRegex.test(character)) {
3909
3952
  continue;
3910
3953
  }
3911
3954
  codePoints.push(character.codePointAt(0));
@@ -3969,14 +4012,14 @@ function stringWidth(input, options2 = {}) {
3969
4012
  let width = 0;
3970
4013
  const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
3971
4014
  for (const { segment } of segmenter.segment(string)) {
3972
- if (isZeroWidthCluster(segment)) {
4015
+ const visibleSegment = baseVisible(segment);
4016
+ if (visibleSegment === void 0) {
3973
4017
  continue;
3974
4018
  }
3975
4019
  if (rgiEmojiRegex.test(segment) || isDoubleWidthNonRgiEmojiSequence(segment)) {
3976
4020
  width += 2;
3977
4021
  continue;
3978
4022
  }
3979
- const visibleSegment = baseVisible(segment);
3980
4023
  const hangulWidth = hangulClusterWidth(visibleSegment, eastAsianWidthOptions);
3981
4024
  if (hangulWidth !== void 0) {
3982
4025
  width += hangulWidth;
@@ -3988,15 +4031,14 @@ function stringWidth(input, options2 = {}) {
3988
4031
  }
3989
4032
  return width;
3990
4033
  }
3991
- var segmenter, zeroWidthClusterRegex, leadingNonPrintingRegex, spacingMarkRegex, rgiEmojiRegex, unqualifiedKeycapRegex, extendedPictographicRegex;
4034
+ var segmenter, visibleCharacterRegex, spacingMarkRegex, rgiEmojiRegex, unqualifiedKeycapRegex, extendedPictographicRegex;
3992
4035
  var init_string_width = __esm({
3993
4036
  "node_modules/ink/node_modules/string-width/index.js"() {
3994
4037
  init_define_HUM_CORE_SUBS();
3995
4038
  init_strip_ansi();
3996
4039
  init_get_east_asian_width();
3997
4040
  segmenter = new Intl.Segmenter();
3998
- zeroWidthClusterRegex = new RegExp("^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Nonspacing_Mark}|\\p{Enclosing_Mark}|\\p{Surrogate})+$", "v");
3999
- leadingNonPrintingRegex = new RegExp("^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Nonspacing_Mark}\\p{Enclosing_Mark}\\p{Surrogate}]+", "v");
4041
+ visibleCharacterRegex = new RegExp("[^\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Nonspacing_Mark}\\p{Enclosing_Mark}\\p{Surrogate}]", "v");
4000
4042
  spacingMarkRegex = new RegExp("\\p{Spacing_Mark}", "v");
4001
4043
  rgiEmojiRegex = new RegExp("^\\p{RGI_Emoji}$", "v");
4002
4044
  unqualifiedKeycapRegex = /^[\d#*]\u20E3$/;
@@ -4198,9 +4240,9 @@ var init_ansi_styles = __esm({
4198
4240
 
4199
4241
  // node_modules/ink/node_modules/wrap-ansi/index.js
4200
4242
  function wrapAnsi(string, columns, options2) {
4201
- return String(string).normalize().replaceAll("\r\n", "\n").split("\n").map((line) => exec(expandTabs(line), columns, options2)).join("\n");
4243
+ return normalizeText(String(string)).replaceAll("\r\n", "\n").split("\n").map((line) => exec(expandTabs(line), columns, options2)).join("\n");
4202
4244
  }
4203
- var ANSI_ESCAPE, ANSI_ESCAPE_BELL, C1_CSI, ANSI_CSI, ANSI_OSC, ANSI_SGR_TERMINATOR, ANSI_SGR_RESET, ANSI_SGR_RESET_FOREGROUND, ANSI_SGR_RESET_BACKGROUND, ANSI_SGR_RESET_UNDERLINE_COLOR, ANSI_SGR_FOREGROUND_EXTENDED, ANSI_SGR_BACKGROUND_EXTENDED, ANSI_SGR_UNDERLINE_COLOR_EXTENDED, ANSI_SGR_COLOR_MODE_RGB, ANSI_SGR_COLOR_MODE_256, ANSI_ESCAPE_LINK, ESCAPES, ESCAPE_CHARACTERS, CSI_INTRODUCER, CSI_PARAMETERS, SGR_PARAMETERS, OSC_STRING_TERMINATOR, OSC_STRING_PAYLOAD, LINK_PARAMETERS, OSC_STRING, ANSI_ESCAPE_REGEX, ANSI_SGR_MODIFIER_CLOSE_CODES, segmenter2, getStringWidth, TAB_SIZE, ESCAPE_INTRODUCER_REGEX, ROW_BOUNDARY_REGEX, ASCII_PRINTABLE_REGEX, wrapAnsiCode, wrapAnsiHyperlink, matchAnsiEscape, forEachSegment, getWidth, getTokens, splitWords, getColonColorToken, getSgrTokens, removeActiveStyle, upsertActiveStyle, removeModifierStylesByClose, getColorStyle, applySgrResetCode, applySgrToken, applySgrParameters, applySgrResets, applyLeadingSgrResets, getClosingSgrSequence, getOpeningSgrSequence, wrapWord, stringVisibleTrimSpacesRight, expandTabs, restoreStylesAcrossRows, exec;
4245
+ var ANSI_ESCAPE, ANSI_ESCAPE_BELL, C1_CSI, ANSI_CSI, ANSI_OSC, ANSI_SGR_TERMINATOR, ANSI_SGR_RESET, ANSI_SGR_RESET_FOREGROUND, ANSI_SGR_RESET_BACKGROUND, ANSI_SGR_RESET_UNDERLINE_COLOR, ANSI_SGR_FOREGROUND_EXTENDED, ANSI_SGR_BACKGROUND_EXTENDED, ANSI_SGR_UNDERLINE_COLOR_EXTENDED, ANSI_SGR_COLOR_MODE_RGB, ANSI_SGR_COLOR_MODE_256, ANSI_ESCAPE_LINK, ESCAPES, ESCAPE_CHARACTERS, CSI_INTRODUCER, CSI_PARAMETERS, SGR_PARAMETERS, OSC_STRING_TERMINATOR, OSC_STRING_PAYLOAD, LINK_PARAMETERS, OSC_STRING, ANSI_ESCAPE_REGEX, ANSI_SGR_MODIFIER_CLOSE_CODES, segmenter2, getStringWidth, TAB_SIZE, ESCAPE_INTRODUCER_REGEX, ROW_BOUNDARY_REGEX, ASCII_PRINTABLE_REGEX, wrapAnsiCode, wrapAnsiHyperlink, matchAnsiEscape, forEachSegment, getWidth, getTokens, splitWords, getColonColorToken, getSgrTokens, removeActiveStyle, upsertActiveStyle, removeModifierStylesByClose, getColorStyle, applySgrResetCode, applySgrToken, applySgrParameters, applySgrResets, applyLeadingSgrResets, getClosingSgrSequence, getOpeningSgrSequence, wrapWord, stringVisibleTrimSpacesRight, expandTabs, restoreStylesAcrossRows, exec, normalizeText;
4204
4246
  var init_wrap_ansi = __esm({
4205
4247
  "node_modules/ink/node_modules/wrap-ansi/index.js"() {
4206
4248
  init_define_HUM_CORE_SUBS();
@@ -4680,6 +4722,15 @@ var init_wrap_ansi = __esm({
4680
4722
  }
4681
4723
  return restoreStylesAcrossRows(rows.join("\n"));
4682
4724
  };
4725
+ normalizeText = (string) => {
4726
+ let normalizedString = "";
4727
+ forEachSegment(string, (plainText) => {
4728
+ normalizedString += plainText.normalize();
4729
+ }, (escape4) => {
4730
+ normalizedString += escape4;
4731
+ });
4732
+ return normalizedString;
4733
+ };
4683
4734
  }
4684
4735
  });
4685
4736
 
@@ -12755,14 +12806,14 @@ var require_react_reconciler_production = __commonJS({
12755
12806
  }
12756
12807
  var exports2 = {};
12757
12808
  "use strict";
12758
- var React18 = require_react(), Scheduler2 = require_scheduler(), assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = Symbol.for("react.element"), REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy");
12759
- Symbol.for("react.scope");
12760
- var REACT_ACTIVITY_TYPE = Symbol.for("react.activity");
12761
- Symbol.for("react.legacy_hidden");
12762
- Symbol.for("react.tracing_marker");
12763
- var REACT_MEMO_CACHE_SENTINEL = Symbol.for("react.memo_cache_sentinel");
12764
- Symbol.for("react.view_transition");
12765
- var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React18.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, rendererVersion = $$$config.rendererVersion, rendererPackageName = $$$config.rendererPackageName, extraDevToolsConfig = $$$config.extraDevToolsConfig, getPublicInstance = $$$config.getPublicInstance, getRootHostContext = $$$config.getRootHostContext, getChildHostContext = $$$config.getChildHostContext, prepareForCommit = $$$config.prepareForCommit, resetAfterCommit = $$$config.resetAfterCommit, createInstance = $$$config.createInstance;
12809
+ var React18 = require_react(), Scheduler2 = require_scheduler(), assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.element"), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
12810
+ /* @__PURE__ */ Symbol.for("react.scope");
12811
+ var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
12812
+ /* @__PURE__ */ Symbol.for("react.legacy_hidden");
12813
+ /* @__PURE__ */ Symbol.for("react.tracing_marker");
12814
+ var REACT_MEMO_CACHE_SENTINEL = /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel");
12815
+ /* @__PURE__ */ Symbol.for("react.view_transition");
12816
+ var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React18.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, rendererVersion = $$$config.rendererVersion, rendererPackageName = $$$config.rendererPackageName, extraDevToolsConfig = $$$config.extraDevToolsConfig, getPublicInstance = $$$config.getPublicInstance, getRootHostContext = $$$config.getRootHostContext, getChildHostContext = $$$config.getChildHostContext, prepareForCommit = $$$config.prepareForCommit, resetAfterCommit = $$$config.resetAfterCommit, createInstance = $$$config.createInstance;
12766
12817
  $$$config.cloneMutableInstance;
12767
12818
  var appendInitialChild = $$$config.appendInitialChild, finalizeInitialChildren = $$$config.finalizeInitialChildren, shouldSetTextContent = $$$config.shouldSetTextContent, createTextInstance = $$$config.createTextInstance;
12768
12819
  $$$config.cloneMutableTextInstance;
@@ -25356,14 +25407,14 @@ var require_react_reconciler_development = __commonJS({
25356
25407
  }
25357
25408
  var exports2 = {};
25358
25409
  "use strict";
25359
- var React18 = require_react(), Scheduler2 = require_scheduler(), assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = Symbol.for("react.element"), REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy");
25360
- Symbol.for("react.scope");
25361
- var REACT_ACTIVITY_TYPE = Symbol.for("react.activity");
25362
- Symbol.for("react.legacy_hidden");
25363
- Symbol.for("react.tracing_marker");
25364
- var REACT_MEMO_CACHE_SENTINEL = Symbol.for("react.memo_cache_sentinel");
25365
- Symbol.for("react.view_transition");
25366
- var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React18.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, rendererVersion = $$$config.rendererVersion, rendererPackageName = $$$config.rendererPackageName, extraDevToolsConfig = $$$config.extraDevToolsConfig, getPublicInstance = $$$config.getPublicInstance, getRootHostContext = $$$config.getRootHostContext, getChildHostContext = $$$config.getChildHostContext, prepareForCommit = $$$config.prepareForCommit, resetAfterCommit = $$$config.resetAfterCommit, createInstance = $$$config.createInstance;
25410
+ var React18 = require_react(), Scheduler2 = require_scheduler(), assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.element"), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
25411
+ /* @__PURE__ */ Symbol.for("react.scope");
25412
+ var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
25413
+ /* @__PURE__ */ Symbol.for("react.legacy_hidden");
25414
+ /* @__PURE__ */ Symbol.for("react.tracing_marker");
25415
+ var REACT_MEMO_CACHE_SENTINEL = /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel");
25416
+ /* @__PURE__ */ Symbol.for("react.view_transition");
25417
+ var MAYBE_ITERATOR_SYMBOL = Symbol.iterator, REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), isArrayImpl = Array.isArray, ReactSharedInternals = React18.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, rendererVersion = $$$config.rendererVersion, rendererPackageName = $$$config.rendererPackageName, extraDevToolsConfig = $$$config.extraDevToolsConfig, getPublicInstance = $$$config.getPublicInstance, getRootHostContext = $$$config.getRootHostContext, getChildHostContext = $$$config.getChildHostContext, prepareForCommit = $$$config.prepareForCommit, resetAfterCommit = $$$config.resetAfterCommit, createInstance = $$$config.createInstance;
25367
25418
  $$$config.cloneMutableInstance;
25368
25419
  var appendInitialChild = $$$config.appendInitialChild, finalizeInitialChildren = $$$config.finalizeInitialChildren, shouldSetTextContent = $$$config.shouldSetTextContent, createTextInstance = $$$config.createTextInstance;
25369
25420
  $$$config.cloneMutableTextInstance;
@@ -27332,7 +27383,7 @@ var require_react_reconciler = __commonJS({
27332
27383
  // node_modules/widest-line/node_modules/ansi-regex/index.js
27333
27384
  function ansiRegex2({ onlyFirst = false } = {}) {
27334
27385
  const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
27335
- const osc = `(?:\\u001B\\][^\\u0007\\u001B\\u009C]*${ST})`;
27386
+ const osc = `(?:(?:\\u001B\\]|\\u009D)[^\\u0007\\u001B\\u009C\\u009D]*${ST})`;
27336
27387
  const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
27337
27388
  const pattern = `${osc}|${csi}`;
27338
27389
  return new RegExp(pattern, onlyFirst ? void 0 : "g");
@@ -27377,10 +27428,8 @@ function isDoubleWidthNonRgiEmojiSequence2(segment) {
27377
27428
  return false;
27378
27429
  }
27379
27430
  function baseVisible2(segment) {
27380
- return segment.replace(leadingNonPrintingRegex2, "");
27381
- }
27382
- function isZeroWidthCluster2(segment) {
27383
- return zeroWidthClusterRegex2.test(segment);
27431
+ const index = segment.search(visibleCharacterRegex2);
27432
+ return index === -1 ? void 0 : segment.slice(index);
27384
27433
  }
27385
27434
  function isHangulLeadingJamo2(codePoint) {
27386
27435
  return codePoint >= 4352 && codePoint <= 4447 || codePoint >= 43360 && codePoint <= 43388;
@@ -27397,7 +27446,7 @@ function isHangulJamo2(codePoint) {
27397
27446
  function hangulClusterWidth2(visibleSegment, eastAsianWidthOptions) {
27398
27447
  const codePoints = [];
27399
27448
  for (const character of visibleSegment) {
27400
- if (zeroWidthClusterRegex2.test(character)) {
27449
+ if (!visibleCharacterRegex2.test(character)) {
27401
27450
  continue;
27402
27451
  }
27403
27452
  codePoints.push(character.codePointAt(0));
@@ -27461,14 +27510,14 @@ function stringWidth2(input, options2 = {}) {
27461
27510
  let width = 0;
27462
27511
  const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
27463
27512
  for (const { segment } of segmenter3.segment(string)) {
27464
- if (isZeroWidthCluster2(segment)) {
27513
+ const visibleSegment = baseVisible2(segment);
27514
+ if (visibleSegment === void 0) {
27465
27515
  continue;
27466
27516
  }
27467
27517
  if (rgiEmojiRegex2.test(segment) || isDoubleWidthNonRgiEmojiSequence2(segment)) {
27468
27518
  width += 2;
27469
27519
  continue;
27470
27520
  }
27471
- const visibleSegment = baseVisible2(segment);
27472
27521
  const hangulWidth = hangulClusterWidth2(visibleSegment, eastAsianWidthOptions);
27473
27522
  if (hangulWidth !== void 0) {
27474
27523
  width += hangulWidth;
@@ -27480,15 +27529,14 @@ function stringWidth2(input, options2 = {}) {
27480
27529
  }
27481
27530
  return width;
27482
27531
  }
27483
- var segmenter3, zeroWidthClusterRegex2, leadingNonPrintingRegex2, spacingMarkRegex2, rgiEmojiRegex2, unqualifiedKeycapRegex2, extendedPictographicRegex2;
27532
+ var segmenter3, visibleCharacterRegex2, spacingMarkRegex2, rgiEmojiRegex2, unqualifiedKeycapRegex2, extendedPictographicRegex2;
27484
27533
  var init_string_width2 = __esm({
27485
27534
  "node_modules/widest-line/node_modules/string-width/index.js"() {
27486
27535
  init_define_HUM_CORE_SUBS();
27487
27536
  init_strip_ansi2();
27488
27537
  init_get_east_asian_width();
27489
27538
  segmenter3 = new Intl.Segmenter();
27490
- zeroWidthClusterRegex2 = new RegExp("^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Nonspacing_Mark}|\\p{Enclosing_Mark}|\\p{Surrogate})+$", "v");
27491
- leadingNonPrintingRegex2 = new RegExp("^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Nonspacing_Mark}\\p{Enclosing_Mark}\\p{Surrogate}]+", "v");
27539
+ visibleCharacterRegex2 = new RegExp("[^\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Nonspacing_Mark}\\p{Enclosing_Mark}\\p{Surrogate}]", "v");
27492
27540
  spacingMarkRegex2 = new RegExp("\\p{Spacing_Mark}", "v");
27493
27541
  rgiEmojiRegex2 = new RegExp("^\\p{RGI_Emoji}$", "v");
27494
27542
  unqualifiedKeycapRegex2 = /^[\d#*]\u20E3$/;
@@ -27544,7 +27592,7 @@ function isFullwidthCodePoint(codePoint) {
27544
27592
  if (!Number.isInteger(codePoint)) {
27545
27593
  return false;
27546
27594
  }
27547
- return isFullWidth(codePoint) || isWide(codePoint);
27595
+ return isFullwidth(codePoint) || isWide(codePoint);
27548
27596
  }
27549
27597
  var init_is_fullwidth_code_point = __esm({
27550
27598
  "node_modules/is-fullwidth-code-point/index.js"() {
@@ -28218,89 +28266,91 @@ function shouldIncludeSgrAfterEnd(token2, activeStyles) {
28218
28266
  function hasSgrStartFragment(token2) {
28219
28267
  return token2.fragments.some((fragment) => fragment.type === "start");
28220
28268
  }
28221
- function discardPendingHyperlink(parameters) {
28222
- if (parameters.activeHyperlink && !parameters.activeHyperlinkHasVisibleText && parameters.activeHyperlinkOutputIndex !== void 0) {
28223
- const openCodeLength = parameters.activeHyperlink.code.length;
28224
- parameters.returnValue = parameters.returnValue.slice(0, parameters.activeHyperlinkOutputIndex) + parameters.returnValue.slice(parameters.activeHyperlinkOutputIndex + openCodeLength);
28225
- if (parameters.pendingSgrOutputIndex !== void 0 && parameters.pendingSgrOutputIndex > parameters.activeHyperlinkOutputIndex) {
28226
- parameters.pendingSgrOutputIndex -= openCodeLength;
28269
+ function discardPendingHyperlink(state) {
28270
+ if (state.activeHyperlink && !state.activeHyperlinkHasVisibleText && state.activeHyperlinkOutputIndex !== void 0) {
28271
+ const openCodeLength = state.activeHyperlink.code.length;
28272
+ state.returnValue = state.returnValue.slice(0, state.activeHyperlinkOutputIndex) + state.returnValue.slice(state.activeHyperlinkOutputIndex + openCodeLength);
28273
+ if (state.pendingSgrOutputIndex !== void 0 && state.pendingSgrOutputIndex > state.activeHyperlinkOutputIndex) {
28274
+ state.pendingSgrOutputIndex -= openCodeLength;
28227
28275
  }
28228
28276
  }
28229
- parameters.activeHyperlink = void 0;
28230
- parameters.activeHyperlinkHasVisibleText = false;
28231
- parameters.activeHyperlinkOutputIndex = void 0;
28277
+ state.activeHyperlink = void 0;
28278
+ state.activeHyperlinkHasVisibleText = false;
28279
+ state.activeHyperlinkOutputIndex = void 0;
28232
28280
  }
28233
- function applySgrToken2(parameters) {
28234
- if (parameters.isPastEnd && !shouldIncludeSgrAfterEnd(parameters.token, parameters.activeStyles)) {
28235
- return parameters;
28281
+ function settleActiveHyperlink(state) {
28282
+ if (state.activeHyperlinkHasVisibleText) {
28283
+ state.returnValue += closeHyperlink(state.activeHyperlink);
28284
+ } else {
28285
+ discardPendingHyperlink(state);
28286
+ }
28287
+ }
28288
+ function applySgrToken2(state) {
28289
+ if (state.isPastEnd && !shouldIncludeSgrAfterEnd(state.token, state.activeStyles)) {
28290
+ return;
28236
28291
  }
28237
- if (parameters.include && hasSgrStartFragment(parameters.token) && parameters.pendingSgrOutputIndex === void 0) {
28238
- parameters.pendingSgrOutputIndex = parameters.returnValue.length;
28239
- parameters.pendingSgrActiveStyles = new Map(parameters.activeStyles);
28292
+ if (state.include && hasSgrStartFragment(state.token) && state.pendingSgrOutputIndex === void 0) {
28293
+ state.pendingSgrOutputIndex = state.returnValue.length;
28294
+ state.pendingSgrActiveStyles = new Map(state.activeStyles);
28240
28295
  }
28241
- parameters.activeStyles = applySgrFragments(parameters.activeStyles, parameters.token.fragments);
28242
- if (parameters.include) {
28243
- parameters.returnValue += parameters.token.code;
28296
+ state.activeStyles = applySgrFragments(state.activeStyles, state.token.fragments);
28297
+ if (state.include) {
28298
+ state.returnValue += state.token.code;
28244
28299
  }
28245
- return parameters;
28246
28300
  }
28247
- function applyHyperlinkToken(parameters) {
28248
- if (parameters.isPastEnd && (parameters.token.action !== "close" || !parameters.activeHyperlink)) {
28249
- return parameters;
28250
- }
28251
- if (parameters.token.action === "open") {
28252
- parameters.activeHyperlink = parameters.token;
28253
- parameters.activeHyperlinkHasVisibleText = false;
28254
- parameters.activeHyperlinkOutputIndex = void 0;
28255
- if (parameters.include) {
28256
- parameters.activeHyperlinkOutputIndex = parameters.returnValue.length;
28257
- }
28258
- } else if (parameters.token.action === "close") {
28259
- if (parameters.include && parameters.activeHyperlink && !parameters.activeHyperlinkHasVisibleText) {
28260
- discardPendingHyperlink(parameters);
28261
- return parameters;
28262
- }
28263
- parameters.activeHyperlink = void 0;
28264
- parameters.activeHyperlinkHasVisibleText = false;
28265
- parameters.activeHyperlinkOutputIndex = void 0;
28266
- }
28267
- if (parameters.include) {
28268
- parameters.returnValue += parameters.token.code;
28269
- }
28270
- return parameters;
28301
+ function applyHyperlinkToken(state) {
28302
+ if (state.isPastEnd && (state.token.action !== "close" || !state.activeHyperlink)) {
28303
+ return;
28304
+ }
28305
+ if (state.token.action === "open") {
28306
+ if (state.activeHyperlink) {
28307
+ settleActiveHyperlink(state);
28308
+ }
28309
+ state.activeHyperlink = state.token;
28310
+ state.activeHyperlinkHasVisibleText = false;
28311
+ state.activeHyperlinkOutputIndex = void 0;
28312
+ if (state.include) {
28313
+ state.activeHyperlinkOutputIndex = state.returnValue.length;
28314
+ }
28315
+ } else if (state.token.action === "close") {
28316
+ if (state.include && state.activeHyperlink && !state.activeHyperlinkHasVisibleText) {
28317
+ discardPendingHyperlink(state);
28318
+ return;
28319
+ }
28320
+ state.activeHyperlink = void 0;
28321
+ state.activeHyperlinkHasVisibleText = false;
28322
+ state.activeHyperlinkOutputIndex = void 0;
28323
+ }
28324
+ if (state.include) {
28325
+ state.returnValue += state.token.code;
28326
+ }
28271
28327
  }
28272
- function applyControlToken(parameters) {
28273
- if (!parameters.isPastEnd && parameters.include) {
28274
- parameters.returnValue += parameters.token.code;
28328
+ function applyControlToken(state) {
28329
+ if (!state.isPastEnd && state.include) {
28330
+ state.returnValue += state.token.code;
28275
28331
  }
28276
- return parameters;
28277
28332
  }
28278
- function applyCharacterToken(parameters) {
28279
- if (!parameters.include && parameters.position >= parameters.start && !parameters.token.isGraphemeContinuation) {
28280
- parameters.include = true;
28281
- parameters.returnValue = [...parameters.activeStyles.values()].join("");
28282
- if (parameters.activeHyperlink) {
28283
- parameters.activeHyperlinkOutputIndex = parameters.returnValue.length;
28284
- parameters.returnValue += parameters.activeHyperlink.code;
28333
+ function applyCharacterToken(state) {
28334
+ if (!state.include && state.position >= state.start && !state.token.isGraphemeContinuation) {
28335
+ state.include = true;
28336
+ state.returnValue = [...state.activeStyles.values()].join("");
28337
+ if (state.activeHyperlink) {
28338
+ state.activeHyperlinkOutputIndex = state.returnValue.length;
28339
+ state.returnValue += state.activeHyperlink.code;
28285
28340
  }
28286
28341
  }
28287
- if (parameters.include) {
28288
- parameters.returnValue += parameters.token.value;
28289
- parameters.pendingSgrOutputIndex = void 0;
28290
- parameters.pendingSgrActiveStyles = void 0;
28291
- if (parameters.activeHyperlink) {
28292
- parameters.activeHyperlinkHasVisibleText = true;
28342
+ if (state.include) {
28343
+ state.returnValue += state.token.value;
28344
+ state.pendingSgrOutputIndex = void 0;
28345
+ state.pendingSgrActiveStyles = void 0;
28346
+ if (state.activeHyperlink) {
28347
+ state.activeHyperlinkHasVisibleText = true;
28293
28348
  }
28294
28349
  }
28295
- parameters.position += parameters.token.visibleWidth;
28296
- return parameters;
28350
+ state.position += state.token.visibleWidth;
28297
28351
  }
28298
- function applyToken(parameters) {
28299
- const tokenHandler = tokenHandlers[parameters.token.type];
28300
- if (!tokenHandler) {
28301
- return parameters;
28302
- }
28303
- return tokenHandler(parameters);
28352
+ function applyToken(state) {
28353
+ tokenHandlers[state.token.type]?.(state);
28304
28354
  }
28305
28355
  function createHasContinuationAheadMap(tokens) {
28306
28356
  const hasContinuationAhead = Array.from({ length: tokens.length }, () => false);
@@ -28326,69 +28376,49 @@ function isPastEndBoundary(token2, position, end) {
28326
28376
  function sliceAnsi(string, start, end) {
28327
28377
  const tokens = tokenizeAnsi(string, { endCharacter: end });
28328
28378
  const hasContinuationAhead = createHasContinuationAheadMap(tokens);
28329
- let activeStyles = /* @__PURE__ */ new Map();
28330
- let activeHyperlink;
28331
- let activeHyperlinkHasVisibleText = false;
28332
- let activeHyperlinkOutputIndex;
28333
- let pendingSgrOutputIndex;
28334
- let pendingSgrActiveStyles;
28335
- let position = 0;
28336
- let returnValue = "";
28337
- let include = false;
28379
+ const state = {
28380
+ start,
28381
+ token: void 0,
28382
+ isPastEnd: false,
28383
+ activeStyles: /* @__PURE__ */ new Map(),
28384
+ activeHyperlink: void 0,
28385
+ activeHyperlinkHasVisibleText: false,
28386
+ activeHyperlinkOutputIndex: void 0,
28387
+ pendingSgrOutputIndex: void 0,
28388
+ pendingSgrActiveStyles: void 0,
28389
+ position: 0,
28390
+ returnValue: "",
28391
+ include: false
28392
+ };
28338
28393
  for (const [tokenIndex, token2] of tokens.entries()) {
28339
- let isPastEnd = isPastEndBoundary(token2, position, end);
28394
+ let isPastEnd = isPastEndBoundary(token2, state.position, end);
28340
28395
  if (isPastEnd && token2.type !== "character" && hasContinuationAhead[tokenIndex]) {
28341
28396
  isPastEnd = false;
28342
28397
  }
28343
28398
  if (isPastEnd && token2.type === "character" && !token2.isGraphemeContinuation) {
28344
- if (activeHyperlink && !activeHyperlinkHasVisibleText) {
28345
- const hyperlinkState = {
28346
- activeHyperlink,
28347
- activeHyperlinkHasVisibleText,
28348
- activeHyperlinkOutputIndex,
28349
- pendingSgrOutputIndex,
28350
- returnValue
28351
- };
28352
- discardPendingHyperlink(hyperlinkState);
28353
- ({
28354
- activeHyperlink,
28355
- activeHyperlinkHasVisibleText,
28356
- activeHyperlinkOutputIndex,
28357
- pendingSgrOutputIndex,
28358
- returnValue
28359
- } = hyperlinkState);
28360
- }
28361
- if (pendingSgrOutputIndex !== void 0) {
28362
- returnValue = returnValue.slice(0, pendingSgrOutputIndex);
28363
- activeStyles = pendingSgrActiveStyles;
28364
- pendingSgrOutputIndex = void 0;
28365
- pendingSgrActiveStyles = void 0;
28399
+ if (state.activeHyperlink && !state.activeHyperlinkHasVisibleText) {
28400
+ discardPendingHyperlink(state);
28401
+ }
28402
+ if (state.pendingSgrOutputIndex !== void 0) {
28403
+ state.returnValue = state.returnValue.slice(0, state.pendingSgrOutputIndex);
28404
+ state.activeStyles = state.pendingSgrActiveStyles;
28405
+ state.pendingSgrOutputIndex = void 0;
28406
+ state.pendingSgrActiveStyles = void 0;
28366
28407
  }
28367
28408
  break;
28368
28409
  }
28369
- ({ activeStyles, activeHyperlink, activeHyperlinkHasVisibleText, activeHyperlinkOutputIndex, pendingSgrOutputIndex, pendingSgrActiveStyles, position, returnValue, include } = applyToken({
28370
- token: token2,
28371
- isPastEnd,
28372
- start,
28373
- activeStyles,
28374
- activeHyperlink,
28375
- activeHyperlinkHasVisibleText,
28376
- activeHyperlinkOutputIndex,
28377
- pendingSgrOutputIndex,
28378
- pendingSgrActiveStyles,
28379
- position,
28380
- returnValue,
28381
- include
28382
- }));
28410
+ state.token = token2;
28411
+ state.isPastEnd = isPastEnd;
28412
+ applyToken(state);
28383
28413
  }
28384
- if (!include) {
28414
+ if (!state.include) {
28385
28415
  return "";
28386
28416
  }
28387
- if (activeHyperlink) {
28388
- returnValue += closeHyperlink(activeHyperlink);
28417
+ if (state.activeHyperlink) {
28418
+ settleActiveHyperlink(state);
28389
28419
  }
28390
- returnValue += undoAnsiCodes(activeStyles);
28391
- return returnValue;
28420
+ state.returnValue += undoAnsiCodes(state.activeStyles);
28421
+ return state.returnValue;
28392
28422
  }
28393
28423
  var tokenHandlers;
28394
28424
  var init_slice_ansi = __esm({
@@ -28407,7 +28437,7 @@ var init_slice_ansi = __esm({
28407
28437
  // node_modules/cli-truncate/node_modules/ansi-regex/index.js
28408
28438
  function ansiRegex3({ onlyFirst = false } = {}) {
28409
28439
  const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
28410
- const osc = `(?:\\u001B\\][^\\u0007\\u001B\\u009C]*${ST})`;
28440
+ const osc = `(?:(?:\\u001B\\]|\\u009D)[^\\u0007\\u001B\\u009C\\u009D]*${ST})`;
28411
28441
  const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
28412
28442
  const pattern = `${osc}|${csi}`;
28413
28443
  return new RegExp(pattern, onlyFirst ? void 0 : "g");
@@ -28452,10 +28482,8 @@ function isDoubleWidthNonRgiEmojiSequence3(segment) {
28452
28482
  return false;
28453
28483
  }
28454
28484
  function baseVisible3(segment) {
28455
- return segment.replace(leadingNonPrintingRegex3, "");
28456
- }
28457
- function isZeroWidthCluster3(segment) {
28458
- return zeroWidthClusterRegex3.test(segment);
28485
+ const index = segment.search(visibleCharacterRegex3);
28486
+ return index === -1 ? void 0 : segment.slice(index);
28459
28487
  }
28460
28488
  function isHangulLeadingJamo3(codePoint) {
28461
28489
  return codePoint >= 4352 && codePoint <= 4447 || codePoint >= 43360 && codePoint <= 43388;
@@ -28472,7 +28500,7 @@ function isHangulJamo3(codePoint) {
28472
28500
  function hangulClusterWidth3(visibleSegment, eastAsianWidthOptions) {
28473
28501
  const codePoints = [];
28474
28502
  for (const character of visibleSegment) {
28475
- if (zeroWidthClusterRegex3.test(character)) {
28503
+ if (!visibleCharacterRegex3.test(character)) {
28476
28504
  continue;
28477
28505
  }
28478
28506
  codePoints.push(character.codePointAt(0));
@@ -28536,14 +28564,14 @@ function stringWidth3(input, options2 = {}) {
28536
28564
  let width = 0;
28537
28565
  const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
28538
28566
  for (const { segment } of segmenter4.segment(string)) {
28539
- if (isZeroWidthCluster3(segment)) {
28567
+ const visibleSegment = baseVisible3(segment);
28568
+ if (visibleSegment === void 0) {
28540
28569
  continue;
28541
28570
  }
28542
28571
  if (rgiEmojiRegex3.test(segment) || isDoubleWidthNonRgiEmojiSequence3(segment)) {
28543
28572
  width += 2;
28544
28573
  continue;
28545
28574
  }
28546
- const visibleSegment = baseVisible3(segment);
28547
28575
  const hangulWidth = hangulClusterWidth3(visibleSegment, eastAsianWidthOptions);
28548
28576
  if (hangulWidth !== void 0) {
28549
28577
  width += hangulWidth;
@@ -28555,15 +28583,14 @@ function stringWidth3(input, options2 = {}) {
28555
28583
  }
28556
28584
  return width;
28557
28585
  }
28558
- var segmenter4, zeroWidthClusterRegex3, leadingNonPrintingRegex3, spacingMarkRegex3, rgiEmojiRegex3, unqualifiedKeycapRegex3, extendedPictographicRegex3;
28586
+ var segmenter4, visibleCharacterRegex3, spacingMarkRegex3, rgiEmojiRegex3, unqualifiedKeycapRegex3, extendedPictographicRegex3;
28559
28587
  var init_string_width3 = __esm({
28560
28588
  "node_modules/cli-truncate/node_modules/string-width/index.js"() {
28561
28589
  init_define_HUM_CORE_SUBS();
28562
28590
  init_strip_ansi3();
28563
28591
  init_get_east_asian_width();
28564
28592
  segmenter4 = new Intl.Segmenter();
28565
- zeroWidthClusterRegex3 = new RegExp("^(?:\\p{Default_Ignorable_Code_Point}|\\p{Control}|\\p{Format}|\\p{Nonspacing_Mark}|\\p{Enclosing_Mark}|\\p{Surrogate})+$", "v");
28566
- leadingNonPrintingRegex3 = new RegExp("^[\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Nonspacing_Mark}\\p{Enclosing_Mark}\\p{Surrogate}]+", "v");
28593
+ visibleCharacterRegex3 = new RegExp("[^\\p{Default_Ignorable_Code_Point}\\p{Control}\\p{Format}\\p{Nonspacing_Mark}\\p{Enclosing_Mark}\\p{Surrogate}]", "v");
28567
28594
  spacingMarkRegex3 = new RegExp("\\p{Spacing_Mark}", "v");
28568
28595
  rgiEmojiRegex3 = new RegExp("^\\p{RGI_Emoji}$", "v");
28569
28596
  unqualifiedKeycapRegex3 = /^[\d#*]\u20E3$/;
@@ -29580,10 +29607,10 @@ var require_constants2 = __commonJS({
29580
29607
  EMPTY_BUFFER: Buffer.alloc(0),
29581
29608
  GUID: "258EAFA5-E914-47DA-95CA-C5AB0DC85B11",
29582
29609
  hasBlob,
29583
- kForOnEventAttribute: Symbol("kIsForOnEventAttribute"),
29584
- kListener: Symbol("kListener"),
29585
- kStatusCode: Symbol("status-code"),
29586
- kWebSocket: Symbol("websocket"),
29610
+ kForOnEventAttribute: /* @__PURE__ */ Symbol("kIsForOnEventAttribute"),
29611
+ kListener: /* @__PURE__ */ Symbol("kListener"),
29612
+ kStatusCode: /* @__PURE__ */ Symbol("status-code"),
29613
+ kWebSocket: /* @__PURE__ */ Symbol("websocket"),
29587
29614
  NOOP: () => {
29588
29615
  }
29589
29616
  };
@@ -29671,8 +29698,8 @@ var require_limiter = __commonJS({
29671
29698
  "node_modules/ws/lib/limiter.js"(exports, module) {
29672
29699
  "use strict";
29673
29700
  init_define_HUM_CORE_SUBS();
29674
- var kDone = Symbol("kDone");
29675
- var kRun = Symbol("kRun");
29701
+ var kDone = /* @__PURE__ */ Symbol("kDone");
29702
+ var kRun = /* @__PURE__ */ Symbol("kRun");
29676
29703
  var Limiter = class {
29677
29704
  /**
29678
29705
  * Creates a new `Limiter`.
@@ -29728,11 +29755,11 @@ var require_permessage_deflate = __commonJS({
29728
29755
  var { kStatusCode } = require_constants2();
29729
29756
  var FastBuffer = Buffer[Symbol.species];
29730
29757
  var TRAILER = Buffer.from([0, 0, 255, 255]);
29731
- var kPerMessageDeflate = Symbol("permessage-deflate");
29732
- var kTotalLength = Symbol("total-length");
29733
- var kCallback = Symbol("callback");
29734
- var kBuffers = Symbol("buffers");
29735
- var kError = Symbol("error");
29758
+ var kPerMessageDeflate = /* @__PURE__ */ Symbol("permessage-deflate");
29759
+ var kTotalLength = /* @__PURE__ */ Symbol("total-length");
29760
+ var kCallback = /* @__PURE__ */ Symbol("callback");
29761
+ var kBuffers = /* @__PURE__ */ Symbol("buffers");
29762
+ var kError = /* @__PURE__ */ Symbol("error");
29736
29763
  var zlibLimiter;
29737
29764
  var PerMessageDeflate2 = class {
29738
29765
  /**
@@ -30941,7 +30968,7 @@ var require_sender = __commonJS({
30941
30968
  var { EMPTY_BUFFER, kWebSocket, NOOP } = require_constants2();
30942
30969
  var { isBlob, isValidStatusCode } = require_validation();
30943
30970
  var { mask: applyMask, toBuffer } = require_buffer_util();
30944
- var kByteLength = Symbol("kByteLength");
30971
+ var kByteLength = /* @__PURE__ */ Symbol("kByteLength");
30945
30972
  var maskBuffer = Buffer.alloc(4);
30946
30973
  var RANDOM_POOL_SIZE = 8 * 1024;
30947
30974
  var randomPool;
@@ -31427,14 +31454,14 @@ var require_event_target = __commonJS({
31427
31454
  "use strict";
31428
31455
  init_define_HUM_CORE_SUBS();
31429
31456
  var { kForOnEventAttribute, kListener } = require_constants2();
31430
- var kCode = Symbol("kCode");
31431
- var kData = Symbol("kData");
31432
- var kError = Symbol("kError");
31433
- var kMessage = Symbol("kMessage");
31434
- var kReason = Symbol("kReason");
31435
- var kTarget = Symbol("kTarget");
31436
- var kType = Symbol("kType");
31437
- var kWasClean = Symbol("kWasClean");
31457
+ var kCode = /* @__PURE__ */ Symbol("kCode");
31458
+ var kData = /* @__PURE__ */ Symbol("kData");
31459
+ var kError = /* @__PURE__ */ Symbol("kError");
31460
+ var kMessage = /* @__PURE__ */ Symbol("kMessage");
31461
+ var kReason = /* @__PURE__ */ Symbol("kReason");
31462
+ var kTarget = /* @__PURE__ */ Symbol("kTarget");
31463
+ var kType = /* @__PURE__ */ Symbol("kType");
31464
+ var kWasClean = /* @__PURE__ */ Symbol("kWasClean");
31438
31465
  var Event = class {
31439
31466
  /**
31440
31467
  * Create a new `Event`.
@@ -31838,7 +31865,7 @@ var require_websocket = __commonJS({
31838
31865
  } = require_event_target();
31839
31866
  var { format, parse } = require_extension();
31840
31867
  var { toBuffer } = require_buffer_util();
31841
- var kAborted = Symbol("kAborted");
31868
+ var kAborted = /* @__PURE__ */ Symbol("kAborted");
31842
31869
  var protocolVersions = [8, 13];
31843
31870
  var readyStates = ["CONNECTING", "OPEN", "CLOSING", "CLOSED"];
31844
31871
  var subprotocolRegex = /^[!#$%&'*+\-.0-9A-Z^_`|a-z~]+$/;
@@ -31871,11 +31898,23 @@ var require_websocket = __commonJS({
31871
31898
  this._isServer = false;
31872
31899
  this._redirects = 0;
31873
31900
  if (protocols === void 0) {
31874
- protocols = [];
31901
+ if (!options2 || options2.protocols === void 0) {
31902
+ protocols = [];
31903
+ } else if (Array.isArray(options2.protocols)) {
31904
+ protocols = options2.protocols;
31905
+ } else {
31906
+ protocols = [options2.protocols];
31907
+ }
31875
31908
  } else if (!Array.isArray(protocols)) {
31876
31909
  if (typeof protocols === "object" && protocols !== null) {
31877
31910
  options2 = protocols;
31878
- protocols = [];
31911
+ if (options2.protocols === void 0) {
31912
+ protocols = [];
31913
+ } else if (Array.isArray(options2.protocols)) {
31914
+ protocols = options2.protocols;
31915
+ } else {
31916
+ protocols = [options2.protocols];
31917
+ }
31879
31918
  } else {
31880
31919
  protocols = [protocols];
31881
31920
  }
@@ -32072,7 +32111,6 @@ var require_websocket = __commonJS({
32072
32111
  }
32073
32112
  return;
32074
32113
  }
32075
- this._readyState = _WebSocket.CLOSING;
32076
32114
  this._sender.close(code, data, !this._isServer, (err) => {
32077
32115
  if (err) return;
32078
32116
  this._closeFrameSent = true;
@@ -32080,6 +32118,7 @@ var require_websocket = __commonJS({
32080
32118
  this._socket.end();
32081
32119
  }
32082
32120
  });
32121
+ this._readyState = _WebSocket.CLOSING;
32083
32122
  setCloseTimer(this);
32084
32123
  }
32085
32124
  /**
@@ -32304,6 +32343,7 @@ var require_websocket = __commonJS({
32304
32343
  socketPath: void 0,
32305
32344
  hostname: void 0,
32306
32345
  protocol: void 0,
32346
+ protocols: void 0,
32307
32347
  timeout: void 0,
32308
32348
  method: "GET",
32309
32349
  host: void 0,
@@ -34202,9 +34242,9 @@ var init_source = __esm({
34202
34242
  init_supports_color();
34203
34243
  init_utilities2();
34204
34244
  ({ stdout: stdoutColor, stderr: stderrColor } = supports_color_default);
34205
- GENERATOR = Symbol("GENERATOR");
34206
- STYLER = Symbol("STYLER");
34207
- IS_EMPTY = Symbol("IS_EMPTY");
34245
+ GENERATOR = /* @__PURE__ */ Symbol("GENERATOR");
34246
+ STYLER = /* @__PURE__ */ Symbol("STYLER");
34247
+ IS_EMPTY = /* @__PURE__ */ Symbol("IS_EMPTY");
34208
34248
  levelMapping = [
34209
34249
  "ansi",
34210
34250
  "ansi",
@@ -34702,6 +34742,9 @@ var init_ansiCodes = __esm({
34702
34742
  endCodesSet.add(ansi_styles_default.color.ansi(end));
34703
34743
  endCodesMap.set(ansi_styles_default.color.ansi(start), ansi_styles_default.color.ansi(end));
34704
34744
  }
34745
+ endCodesSet.add(linkEndCode);
34746
+ endCodesSet.add(linkEndCodeST);
34747
+ endCodesSet.add(linkEndCodeC1ST);
34705
34748
  }
34706
34749
  });
34707
34750
 
@@ -40570,7 +40613,7 @@ var require_cli_spinners = __commonJS({
40570
40613
  // node_modules/wrap-ansi/node_modules/ansi-regex/index.js
40571
40614
  function ansiRegex5({ onlyFirst = false } = {}) {
40572
40615
  const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
40573
- const osc = `(?:\\u001B\\][^\\u0007\\u001B\\u009C]*${ST})`;
40616
+ const osc = `(?:(?:\\u001B\\]|\\u009D)[^\\u0007\\u001B\\u009C\\u009D]*${ST})`;
40574
40617
  const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
40575
40618
  const pattern = `${osc}|${csi}`;
40576
40619
  return new RegExp(pattern, onlyFirst ? void 0 : "g");
@@ -45566,7 +45609,7 @@ var require_core = __commonJS({
45566
45609
  };
45567
45610
  var escape$12 = escapeHTML;
45568
45611
  var inherit$1 = inherit;
45569
- var NO_MATCH = Symbol("nomatch");
45612
+ var NO_MATCH = /* @__PURE__ */ Symbol("nomatch");
45570
45613
  var HLJS = function(hljs) {
45571
45614
  const languages = /* @__PURE__ */ Object.create(null);
45572
45615
  const aliases = /* @__PURE__ */ Object.create(null);
@@ -88957,8 +89000,8 @@ var require_react_jsx_runtime_production = __commonJS({
88957
89000
  "node_modules/react/cjs/react-jsx-runtime.production.js"(exports) {
88958
89001
  "use strict";
88959
89002
  init_define_HUM_CORE_SUBS();
88960
- var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element");
88961
- var REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
89003
+ var REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element");
89004
+ var REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment");
88962
89005
  function jsxProd(type, config, maybeKey) {
88963
89006
  var key = null;
88964
89007
  void 0 !== maybeKey && (key = "" + maybeKey);
@@ -89007,6 +89050,8 @@ var require_react_jsx_runtime_development = __commonJS({
89007
89050
  return "SuspenseList";
89008
89051
  case REACT_ACTIVITY_TYPE:
89009
89052
  return "Activity";
89053
+ case REACT_VIEW_TRANSITION_TYPE:
89054
+ return "ViewTransition";
89010
89055
  }
89011
89056
  if ("object" === typeof type)
89012
89057
  switch ("number" === typeof type.tag && console.error(
@@ -89198,7 +89243,7 @@ var require_react_jsx_runtime_development = __commonJS({
89198
89243
  function isValidElement(object) {
89199
89244
  return "object" === typeof object && null !== object && object.$$typeof === REACT_ELEMENT_TYPE;
89200
89245
  }
89201
- var React18 = require_react(), REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE = Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = Symbol.for("react.activity"), REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"), ReactSharedInternals = React18.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, hasOwnProperty = Object.prototype.hasOwnProperty, isArrayImpl = Array.isArray, createTask = console.createTask ? console.createTask : function() {
89246
+ var React18 = require_react(), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity"), REACT_VIEW_TRANSITION_TYPE = /* @__PURE__ */ Symbol.for("react.view_transition"), REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference"), ReactSharedInternals = React18.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, hasOwnProperty = Object.prototype.hasOwnProperty, isArrayImpl = Array.isArray, createTask = console.createTask ? console.createTask : function() {
89202
89247
  return null;
89203
89248
  };
89204
89249
  React18 = {
@@ -89217,23 +89262,35 @@ var require_react_jsx_runtime_development = __commonJS({
89217
89262
  exports.Fragment = REACT_FRAGMENT_TYPE;
89218
89263
  exports.jsx = function(type, config, maybeKey) {
89219
89264
  var trackActualOwner = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;
89265
+ if (trackActualOwner) {
89266
+ var previousStackTraceLimit = Error.stackTraceLimit;
89267
+ Error.stackTraceLimit = 10;
89268
+ var debugStackDEV = Error("react-stack-top-frame");
89269
+ Error.stackTraceLimit = previousStackTraceLimit;
89270
+ } else debugStackDEV = unknownOwnerDebugStack;
89220
89271
  return jsxDEVImpl(
89221
89272
  type,
89222
89273
  config,
89223
89274
  maybeKey,
89224
89275
  false,
89225
- trackActualOwner ? Error("react-stack-top-frame") : unknownOwnerDebugStack,
89276
+ debugStackDEV,
89226
89277
  trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask
89227
89278
  );
89228
89279
  };
89229
89280
  exports.jsxs = function(type, config, maybeKey) {
89230
89281
  var trackActualOwner = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;
89282
+ if (trackActualOwner) {
89283
+ var previousStackTraceLimit = Error.stackTraceLimit;
89284
+ Error.stackTraceLimit = 10;
89285
+ var debugStackDEV = Error("react-stack-top-frame");
89286
+ Error.stackTraceLimit = previousStackTraceLimit;
89287
+ } else debugStackDEV = unknownOwnerDebugStack;
89231
89288
  return jsxDEVImpl(
89232
89289
  type,
89233
89290
  config,
89234
89291
  maybeKey,
89235
89292
  true,
89236
- trackActualOwner ? Error("react-stack-top-frame") : unknownOwnerDebugStack,
89293
+ debugStackDEV,
89237
89294
  trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask
89238
89295
  );
89239
89296
  };
@@ -89511,7 +89568,7 @@ var init_install = __esm({
89511
89568
  "src/install.js"() {
89512
89569
  init_define_HUM_CORE_SUBS();
89513
89570
  win = process.platform === "win32";
89514
- MINE = true ? "0.2.64" : "";
89571
+ MINE = true ? "0.2.66" : "";
89515
89572
  npmFix = (version = "") => `npm i -g @metaphi-ai/hum@${version || "latest"} --foreground-scripts`;
89516
89573
  NPM_FIX = npmFix("latest");
89517
89574
  humHome = (env3 = process.env) => env3.HUM_HOME || path.join(os3.homedir(), ".hum");
@@ -89866,10 +89923,10 @@ function clientEnv() {
89866
89923
  platform: process.platform,
89867
89924
  arch: process.arch,
89868
89925
  terminal: process.env.TERM_PROGRAM || (process.env.WT_SESSION ? "Windows Terminal" : process.env.TERM || ""),
89869
- tui: true ? "0.2.64" : ""
89926
+ tui: true ? "0.2.66" : ""
89870
89927
  };
89871
89928
  }
89872
- function startFailure(failures, { npm = /^(node|bun)(\.exe)?$/i.test(String(process.execPath).split(/[\\/]/).pop()), platform: platform2 = process.platform, version = true ? "0.2.64" : "" } = {}) {
89929
+ function startFailure(failures, { npm = /^(node|bun)(\.exe)?$/i.test(String(process.execPath).split(/[\\/]/).pop()), platform: platform2 = process.platform, version = true ? "0.2.66" : "" } = {}) {
89873
89930
  const refused = failures.find((f) => f.error && f.error.code !== "ENOENT");
89874
89931
  const fix = npm ? npmFix(version) : updateCommand({ kind: "native" }, platform2);
89875
89932
  if (!refused) {
@@ -91384,7 +91441,7 @@ var after = (ms, fn) => {
91384
91441
 
91385
91442
  // src/app.jsx
91386
91443
  var import_jsx_runtime3 = __toESM(require_jsx_runtime(), 1);
91387
- var MINE2 = true ? "0.2.64" : "";
91444
+ var MINE2 = true ? "0.2.66" : "";
91388
91445
  var fmtDur = (s) => s < 60 ? `${Math.max(1, Math.round(s))}s` : `${Math.floor(s / 60)}m ${Math.round(s % 60)}s`;
91389
91446
  var plural = (n, w) => `${n} ${w}${n === 1 ? "" : "s"}`;
91390
91447
  var shortSession = (name) => (name || "").replace(/\.jsonl$/, "");
@@ -91514,6 +91571,7 @@ var COMMANDS = [
91514
91571
  { name: "/usage-credits", desc: "your credits on our models, and the page that adds more (a code from Metaphi, or a purchase)" },
91515
91572
  { name: "/approve", desc: "approvals on|off \u2014 whether every change and command waits for you first (leaving the sandbox always asks)" },
91516
91573
  { name: "/agent", desc: "speak to one running sub-agent (/agent 2 <what it should do>), or end it (/agent 2 stop); enter on its row starts the line" },
91574
+ { name: "/background", desc: "the tool calls still out past their turns (a server's task, a long call), by call id; /background cancel <call id> stops one (a task is cancelled on its server)" },
91517
91575
  { name: "/continue", desc: "after a pause: let the agent carry on" },
91518
91576
  { name: "/goal", desc: "the goal the session keeps working toward on its own, exchange after exchange, until the model marks it complete or blocked (/goal <objective>; /goal pause \xB7 resume \xB7 clear; /goal alone shows where it stands)" },
91519
91577
  { name: "/image", desc: "attach an image file to your next message (/image <path>); ctrl+v pastes a screenshot" },
@@ -93179,6 +93237,13 @@ ${r.content}`).join("\n\n") };
93179
93237
  core2.send(m[2].trim() === "stop" ? { cmd: "agent", agent: Number(m[1]), stop: true } : { cmd: "agent", agent: Number(m[1]), text: m[2].trim() });
93180
93238
  break;
93181
93239
  }
93240
+ case "/background": {
93241
+ const m = /^cancel\s+(\S+)$/.exec(arg);
93242
+ if (!arg) core2.send({ cmd: "background" });
93243
+ else if (m) core2.send({ cmd: "background", cancel: m[1] });
93244
+ else append({ kind: "info", text: "/background lists the calls still out; /background cancel <call id> stops one" });
93245
+ break;
93246
+ }
93182
93247
  case "/approve": {
93183
93248
  const mode = arg === "on" ? "approve" : arg === "off" ? "off" : gate === "approve" ? "off" : "approve";
93184
93249
  core2.send({ cmd: "gate", mode });
@@ -94070,7 +94135,7 @@ async function sendPending({
94070
94135
  await init_theme();
94071
94136
  var import_jsx_runtime5 = __toESM(require_jsx_runtime(), 1);
94072
94137
  import { spawnSync as spawnSync6 } from "node:child_process";
94073
- var MINE3 = true ? "0.2.64" : "0.0.0";
94138
+ var MINE3 = true ? "0.2.66" : "0.0.0";
94074
94139
  var layout = installLayout();
94075
94140
  function completeInstall() {
94076
94141
  if (layout.kind !== "npm" || !needsInstall(MINE3)) return;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@metaphi-ai/hum",
3
- "version": "0.2.64",
3
+ "version": "0.2.66",
4
4
  "description": "Hum: a self-improving coding agent for your terminal.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
7
7
  "bin": { "hum": "bin/hum.js" },
8
8
  "files": ["bin", "dist", "scripts"],
9
9
  "scripts": { "postinstall": "node scripts/postinstall.js" },
10
- "engines": { "node": ">=22" },
10
+ "engines": { "node": "26.12.1" },
11
11
  "repository": { "type": "git", "url": "git+https://github.com/metaphi-labs/hum.git" }
12
12
  }