oh-my-opencode-slim 2.0.0-beta.7 → 2.0.0-beta.8

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.
package/dist/index.js CHANGED
@@ -4,35 +4,21 @@ var __getProtoOf = Object.getPrototypeOf;
4
4
  var __defProp = Object.defineProperty;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- function __accessProp(key) {
8
- return this[key];
9
- }
10
- var __toESMCache_node;
11
- var __toESMCache_esm;
12
7
  var __toESM = (mod, isNodeMode, target) => {
13
- var canCache = mod != null && typeof mod === "object";
14
- if (canCache) {
15
- var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
16
- var cached = cache.get(mod);
17
- if (cached)
18
- return cached;
19
- }
20
8
  target = mod != null ? __create(__getProtoOf(mod)) : {};
21
9
  const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
22
10
  for (let key of __getOwnPropNames(mod))
23
11
  if (!__hasOwnProp.call(to, key))
24
12
  __defProp(to, key, {
25
- get: __accessProp.bind(mod, key),
13
+ get: () => mod[key],
26
14
  enumerable: true
27
15
  });
28
- if (canCache)
29
- cache.set(mod, to);
30
16
  return to;
31
17
  };
32
18
  var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
33
19
  var __require = /* @__PURE__ */ createRequire(import.meta.url);
34
20
 
35
- // node_modules/.pnpm/@mozilla+readability@0.6.0/node_modules/@mozilla/readability/Readability.js
21
+ // node_modules/@mozilla/readability/Readability.js
36
22
  var require_Readability = __commonJS((exports, module) => {
37
23
  function Readability(doc, options) {
38
24
  if (options && options.documentElement) {
@@ -1603,7 +1589,7 @@ var require_Readability = __commonJS((exports, module) => {
1603
1589
  }
1604
1590
  });
1605
1591
 
1606
- // node_modules/.pnpm/@mozilla+readability@0.6.0/node_modules/@mozilla/readability/Readability-readerable.js
1592
+ // node_modules/@mozilla/readability/Readability-readerable.js
1607
1593
  var require_Readability_readerable = __commonJS((exports, module) => {
1608
1594
  var REGEXPS = {
1609
1595
  unlikelyCandidates: /-ad-|ai2html|banner|breadcrumbs|combx|comment|community|cover-wrap|disqus|extra|footer|gdpr|header|legends|menu|related|remark|replies|rss|shoutbox|sidebar|skyscraper|social|sponsor|supplemental|ad-break|agegate|pagination|pager|popup|yom-remote/i,
@@ -1659,7 +1645,7 @@ var require_Readability_readerable = __commonJS((exports, module) => {
1659
1645
  }
1660
1646
  });
1661
1647
 
1662
- // node_modules/.pnpm/@mozilla+readability@0.6.0/node_modules/@mozilla/readability/index.js
1648
+ // node_modules/@mozilla/readability/index.js
1663
1649
  var require_readability = __commonJS((exports, module) => {
1664
1650
  var Readability = require_Readability();
1665
1651
  var isProbablyReaderable = require_Readability_readerable();
@@ -1669,7 +1655,7 @@ var require_readability = __commonJS((exports, module) => {
1669
1655
  };
1670
1656
  });
1671
1657
 
1672
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Event.js
1658
+ // node_modules/@mixmark-io/domino/lib/Event.js
1673
1659
  var require_Event = __commonJS((exports, module) => {
1674
1660
  module.exports = Event;
1675
1661
  Event.CAPTURING_PHASE = 1;
@@ -1726,7 +1712,7 @@ var require_Event = __commonJS((exports, module) => {
1726
1712
  });
1727
1713
  });
1728
1714
 
1729
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/UIEvent.js
1715
+ // node_modules/@mixmark-io/domino/lib/UIEvent.js
1730
1716
  var require_UIEvent = __commonJS((exports, module) => {
1731
1717
  var Event = require_Event();
1732
1718
  module.exports = UIEvent;
@@ -1745,7 +1731,7 @@ var require_UIEvent = __commonJS((exports, module) => {
1745
1731
  });
1746
1732
  });
1747
1733
 
1748
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/MouseEvent.js
1734
+ // node_modules/@mixmark-io/domino/lib/MouseEvent.js
1749
1735
  var require_MouseEvent = __commonJS((exports, module) => {
1750
1736
  var UIEvent = require_UIEvent();
1751
1737
  module.exports = MouseEvent;
@@ -1803,7 +1789,7 @@ var require_MouseEvent = __commonJS((exports, module) => {
1803
1789
  });
1804
1790
  });
1805
1791
 
1806
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/DOMException.js
1792
+ // node_modules/@mixmark-io/domino/lib/DOMException.js
1807
1793
  var require_DOMException = __commonJS((exports, module) => {
1808
1794
  module.exports = DOMException;
1809
1795
  var INDEX_SIZE_ERR = 1;
@@ -1927,12 +1913,12 @@ var require_DOMException = __commonJS((exports, module) => {
1927
1913
  var c;
1928
1914
  });
1929
1915
 
1930
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/config.js
1916
+ // node_modules/@mixmark-io/domino/lib/config.js
1931
1917
  var require_config = __commonJS((exports) => {
1932
1918
  exports.isApiWritable = !globalThis.__domino_frozen__;
1933
1919
  });
1934
1920
 
1935
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/utils.js
1921
+ // node_modules/@mixmark-io/domino/lib/utils.js
1936
1922
  var require_utils = __commonJS((exports) => {
1937
1923
  var DOMException = require_DOMException();
1938
1924
  var ERR = DOMException;
@@ -2045,7 +2031,7 @@ var require_utils = __commonJS((exports) => {
2045
2031
  };
2046
2032
  });
2047
2033
 
2048
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/EventTarget.js
2034
+ // node_modules/@mixmark-io/domino/lib/EventTarget.js
2049
2035
  var require_EventTarget = __commonJS((exports, module) => {
2050
2036
  var Event = require_Event();
2051
2037
  var MouseEvent = require_MouseEvent();
@@ -2233,7 +2219,7 @@ var require_EventTarget = __commonJS((exports, module) => {
2233
2219
  };
2234
2220
  });
2235
2221
 
2236
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/LinkedList.js
2222
+ // node_modules/@mixmark-io/domino/lib/LinkedList.js
2237
2223
  var require_LinkedList = __commonJS((exports, module) => {
2238
2224
  var utils = require_utils();
2239
2225
  var LinkedList = module.exports = {
@@ -2276,7 +2262,7 @@ var require_LinkedList = __commonJS((exports, module) => {
2276
2262
  };
2277
2263
  });
2278
2264
 
2279
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeUtils.js
2265
+ // node_modules/@mixmark-io/domino/lib/NodeUtils.js
2280
2266
  var require_NodeUtils = __commonJS((exports, module) => {
2281
2267
  module.exports = {
2282
2268
  serializeOne,
@@ -2452,7 +2438,7 @@ var require_NodeUtils = __commonJS((exports, module) => {
2452
2438
  }
2453
2439
  });
2454
2440
 
2455
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Node.js
2441
+ // node_modules/@mixmark-io/domino/lib/Node.js
2456
2442
  var require_Node = __commonJS((exports, module) => {
2457
2443
  module.exports = Node;
2458
2444
  var EventTarget = require_EventTarget();
@@ -3013,7 +2999,7 @@ var require_Node = __commonJS((exports, module) => {
3013
2999
  });
3014
3000
  });
3015
3001
 
3016
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeList.es6.js
3002
+ // node_modules/@mixmark-io/domino/lib/NodeList.es6.js
3017
3003
  var require_NodeList_es6 = __commonJS((exports, module) => {
3018
3004
  module.exports = class NodeList extends Array {
3019
3005
  constructor(a) {
@@ -3030,7 +3016,7 @@ var require_NodeList_es6 = __commonJS((exports, module) => {
3030
3016
  };
3031
3017
  });
3032
3018
 
3033
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeList.es5.js
3019
+ // node_modules/@mixmark-io/domino/lib/NodeList.es5.js
3034
3020
  var require_NodeList_es5 = __commonJS((exports, module) => {
3035
3021
  function item(i) {
3036
3022
  return this[i] || null;
@@ -3044,7 +3030,7 @@ var require_NodeList_es5 = __commonJS((exports, module) => {
3044
3030
  module.exports = NodeList;
3045
3031
  });
3046
3032
 
3047
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeList.js
3033
+ // node_modules/@mixmark-io/domino/lib/NodeList.js
3048
3034
  var require_NodeList = __commonJS((exports, module) => {
3049
3035
  var NodeList;
3050
3036
  try {
@@ -3055,7 +3041,7 @@ var require_NodeList = __commonJS((exports, module) => {
3055
3041
  module.exports = NodeList;
3056
3042
  });
3057
3043
 
3058
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/ContainerNode.js
3044
+ // node_modules/@mixmark-io/domino/lib/ContainerNode.js
3059
3045
  var require_ContainerNode = __commonJS((exports, module) => {
3060
3046
  module.exports = ContainerNode;
3061
3047
  var Node = require_Node();
@@ -3123,7 +3109,7 @@ var require_ContainerNode = __commonJS((exports, module) => {
3123
3109
  });
3124
3110
  });
3125
3111
 
3126
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/xmlnames.js
3112
+ // node_modules/@mixmark-io/domino/lib/xmlnames.js
3127
3113
  var require_xmlnames = __commonJS((exports) => {
3128
3114
  exports.isValidName = isValidName;
3129
3115
  exports.isValidQName = isValidQName;
@@ -3172,7 +3158,7 @@ var require_xmlnames = __commonJS((exports) => {
3172
3158
  }
3173
3159
  });
3174
3160
 
3175
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/attributes.js
3161
+ // node_modules/@mixmark-io/domino/lib/attributes.js
3176
3162
  var require_attributes = __commonJS((exports) => {
3177
3163
  var utils = require_utils();
3178
3164
  exports.property = function(attr) {
@@ -3308,7 +3294,7 @@ var require_attributes = __commonJS((exports) => {
3308
3294
  };
3309
3295
  });
3310
3296
 
3311
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/FilteredElementList.js
3297
+ // node_modules/@mixmark-io/domino/lib/FilteredElementList.js
3312
3298
  var require_FilteredElementList = __commonJS((exports, module) => {
3313
3299
  module.exports = FilteredElementList;
3314
3300
  var Node = require_Node();
@@ -3374,7 +3360,7 @@ var require_FilteredElementList = __commonJS((exports, module) => {
3374
3360
  });
3375
3361
  });
3376
3362
 
3377
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/DOMTokenList.js
3363
+ // node_modules/@mixmark-io/domino/lib/DOMTokenList.js
3378
3364
  var require_DOMTokenList = __commonJS((exports, module) => {
3379
3365
  var utils = require_utils();
3380
3366
  module.exports = DOMTokenList;
@@ -3536,7 +3522,7 @@ var require_DOMTokenList = __commonJS((exports, module) => {
3536
3522
  }
3537
3523
  });
3538
3524
 
3539
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/select.js
3525
+ // node_modules/@mixmark-io/domino/lib/select.js
3540
3526
  var require_select = __commonJS((exports, module) => {
3541
3527
  var window2 = Object.create(null, {
3542
3528
  location: { get: function() {
@@ -4279,7 +4265,7 @@ var require_select = __commonJS((exports, module) => {
4279
4265
  };
4280
4266
  });
4281
4267
 
4282
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/ChildNode.js
4268
+ // node_modules/@mixmark-io/domino/lib/ChildNode.js
4283
4269
  var require_ChildNode = __commonJS((exports, module) => {
4284
4270
  var Node = require_Node();
4285
4271
  var LinkedList = require_LinkedList();
@@ -4369,7 +4355,7 @@ var require_ChildNode = __commonJS((exports, module) => {
4369
4355
  module.exports = ChildNode;
4370
4356
  });
4371
4357
 
4372
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NonDocumentTypeChildNode.js
4358
+ // node_modules/@mixmark-io/domino/lib/NonDocumentTypeChildNode.js
4373
4359
  var require_NonDocumentTypeChildNode = __commonJS((exports, module) => {
4374
4360
  var Node = require_Node();
4375
4361
  var NonDocumentTypeChildNode = {
@@ -4395,7 +4381,7 @@ var require_NonDocumentTypeChildNode = __commonJS((exports, module) => {
4395
4381
  module.exports = NonDocumentTypeChildNode;
4396
4382
  });
4397
4383
 
4398
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NamedNodeMap.js
4384
+ // node_modules/@mixmark-io/domino/lib/NamedNodeMap.js
4399
4385
  var require_NamedNodeMap = __commonJS((exports, module) => {
4400
4386
  module.exports = NamedNodeMap;
4401
4387
  var utils = require_utils();
@@ -4432,7 +4418,7 @@ var require_NamedNodeMap = __commonJS((exports, module) => {
4432
4418
  });
4433
4419
  });
4434
4420
 
4435
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Element.js
4421
+ // node_modules/@mixmark-io/domino/lib/Element.js
4436
4422
  var require_Element = __commonJS((exports, module) => {
4437
4423
  module.exports = Element;
4438
4424
  var xml = require_xmlnames();
@@ -5333,7 +5319,7 @@ var require_Element = __commonJS((exports, module) => {
5333
5319
  }
5334
5320
  });
5335
5321
 
5336
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Leaf.js
5322
+ // node_modules/@mixmark-io/domino/lib/Leaf.js
5337
5323
  var require_Leaf = __commonJS((exports, module) => {
5338
5324
  module.exports = Leaf;
5339
5325
  var Node = require_Node();
@@ -5374,7 +5360,7 @@ var require_Leaf = __commonJS((exports, module) => {
5374
5360
  });
5375
5361
  });
5376
5362
 
5377
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/CharacterData.js
5363
+ // node_modules/@mixmark-io/domino/lib/CharacterData.js
5378
5364
  var require_CharacterData = __commonJS((exports, module) => {
5379
5365
  module.exports = CharacterData;
5380
5366
  var Leaf = require_Leaf();
@@ -5431,7 +5417,7 @@ var require_CharacterData = __commonJS((exports, module) => {
5431
5417
  Object.defineProperties(CharacterData.prototype, NonDocumentTypeChildNode);
5432
5418
  });
5433
5419
 
5434
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Text.js
5420
+ // node_modules/@mixmark-io/domino/lib/Text.js
5435
5421
  var require_Text = __commonJS((exports, module) => {
5436
5422
  module.exports = Text;
5437
5423
  var utils = require_utils();
@@ -5501,7 +5487,7 @@ var require_Text = __commonJS((exports, module) => {
5501
5487
  });
5502
5488
  });
5503
5489
 
5504
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Comment.js
5490
+ // node_modules/@mixmark-io/domino/lib/Comment.js
5505
5491
  var require_Comment = __commonJS((exports, module) => {
5506
5492
  module.exports = Comment;
5507
5493
  var Node = require_Node();
@@ -5544,7 +5530,7 @@ var require_Comment = __commonJS((exports, module) => {
5544
5530
  });
5545
5531
  });
5546
5532
 
5547
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/DocumentFragment.js
5533
+ // node_modules/@mixmark-io/domino/lib/DocumentFragment.js
5548
5534
  var require_DocumentFragment = __commonJS((exports, module) => {
5549
5535
  module.exports = DocumentFragment;
5550
5536
  var Node = require_Node();
@@ -5601,7 +5587,7 @@ var require_DocumentFragment = __commonJS((exports, module) => {
5601
5587
  });
5602
5588
  });
5603
5589
 
5604
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/ProcessingInstruction.js
5590
+ // node_modules/@mixmark-io/domino/lib/ProcessingInstruction.js
5605
5591
  var require_ProcessingInstruction = __commonJS((exports, module) => {
5606
5592
  module.exports = ProcessingInstruction;
5607
5593
  var Node = require_Node();
@@ -5650,7 +5636,7 @@ var require_ProcessingInstruction = __commonJS((exports, module) => {
5650
5636
  });
5651
5637
  });
5652
5638
 
5653
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeFilter.js
5639
+ // node_modules/@mixmark-io/domino/lib/NodeFilter.js
5654
5640
  var require_NodeFilter = __commonJS((exports, module) => {
5655
5641
  var NodeFilter = {
5656
5642
  FILTER_ACCEPT: 1,
@@ -5673,7 +5659,7 @@ var require_NodeFilter = __commonJS((exports, module) => {
5673
5659
  module.exports = NodeFilter.constructor = NodeFilter.prototype = NodeFilter;
5674
5660
  });
5675
5661
 
5676
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeTraversal.js
5662
+ // node_modules/@mixmark-io/domino/lib/NodeTraversal.js
5677
5663
  var require_NodeTraversal = __commonJS((exports, module) => {
5678
5664
  var NodeTraversal = module.exports = {
5679
5665
  nextSkippingChildren,
@@ -5737,7 +5723,7 @@ var require_NodeTraversal = __commonJS((exports, module) => {
5737
5723
  }
5738
5724
  });
5739
5725
 
5740
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/TreeWalker.js
5726
+ // node_modules/@mixmark-io/domino/lib/TreeWalker.js
5741
5727
  var require_TreeWalker = __commonJS((exports, module) => {
5742
5728
  module.exports = TreeWalker;
5743
5729
  var Node = require_Node();
@@ -5967,7 +5953,7 @@ var require_TreeWalker = __commonJS((exports, module) => {
5967
5953
  });
5968
5954
  });
5969
5955
 
5970
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NodeIterator.js
5956
+ // node_modules/@mixmark-io/domino/lib/NodeIterator.js
5971
5957
  var require_NodeIterator = __commonJS((exports, module) => {
5972
5958
  module.exports = NodeIterator;
5973
5959
  var NodeFilter = require_NodeFilter();
@@ -6108,7 +6094,7 @@ var require_NodeIterator = __commonJS((exports, module) => {
6108
6094
  });
6109
6095
  });
6110
6096
 
6111
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/URL.js
6097
+ // node_modules/@mixmark-io/domino/lib/URL.js
6112
6098
  var require_URL = __commonJS((exports, module) => {
6113
6099
  module.exports = URL4;
6114
6100
  function URL4(url) {
@@ -6281,7 +6267,7 @@ var require_URL = __commonJS((exports, module) => {
6281
6267
  };
6282
6268
  });
6283
6269
 
6284
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/CustomEvent.js
6270
+ // node_modules/@mixmark-io/domino/lib/CustomEvent.js
6285
6271
  var require_CustomEvent = __commonJS((exports, module) => {
6286
6272
  module.exports = CustomEvent;
6287
6273
  var Event = require_Event();
@@ -6293,7 +6279,7 @@ var require_CustomEvent = __commonJS((exports, module) => {
6293
6279
  });
6294
6280
  });
6295
6281
 
6296
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/events.js
6282
+ // node_modules/@mixmark-io/domino/lib/events.js
6297
6283
  var require_events = __commonJS((exports, module) => {
6298
6284
  module.exports = {
6299
6285
  Event: require_Event(),
@@ -6303,7 +6289,7 @@ var require_events = __commonJS((exports, module) => {
6303
6289
  };
6304
6290
  });
6305
6291
 
6306
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/style_parser.js
6292
+ // node_modules/@mixmark-io/domino/lib/style_parser.js
6307
6293
  var require_style_parser = __commonJS((exports) => {
6308
6294
  Object.defineProperty(exports, "__esModule", { value: true });
6309
6295
  exports.hyphenate = exports.parse = undefined;
@@ -6370,7 +6356,7 @@ var require_style_parser = __commonJS((exports) => {
6370
6356
  exports.hyphenate = hyphenate;
6371
6357
  });
6372
6358
 
6373
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/CSSStyleDeclaration.js
6359
+ // node_modules/@mixmark-io/domino/lib/CSSStyleDeclaration.js
6374
6360
  var require_CSSStyleDeclaration = __commonJS((exports, module) => {
6375
6361
  var { parse } = require_style_parser();
6376
6362
  module.exports = function(elt) {
@@ -6546,7 +6532,7 @@ var require_CSSStyleDeclaration = __commonJS((exports, module) => {
6546
6532
  });
6547
6533
  });
6548
6534
 
6549
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/URLUtils.js
6535
+ // node_modules/@mixmark-io/domino/lib/URLUtils.js
6550
6536
  var require_URLUtils = __commonJS((exports, module) => {
6551
6537
  var URL4 = require_URL();
6552
6538
  module.exports = URLUtils;
@@ -6780,7 +6766,7 @@ var require_URLUtils = __commonJS((exports, module) => {
6780
6766
  };
6781
6767
  });
6782
6768
 
6783
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/defineElement.js
6769
+ // node_modules/@mixmark-io/domino/lib/defineElement.js
6784
6770
  var require_defineElement = __commonJS((exports, module) => {
6785
6771
  var attributes = require_attributes();
6786
6772
  var isApiWritable = require_config().isApiWritable;
@@ -6842,7 +6828,7 @@ var require_defineElement = __commonJS((exports, module) => {
6842
6828
  }
6843
6829
  });
6844
6830
 
6845
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/htmlelts.js
6831
+ // node_modules/@mixmark-io/domino/lib/htmlelts.js
6846
6832
  var require_htmlelts = __commonJS((exports) => {
6847
6833
  var Node = require_Node();
6848
6834
  var Element = require_Element();
@@ -6915,7 +6901,7 @@ var require_htmlelts = __commonJS((exports) => {
6915
6901
  var HTMLElement = exports.HTMLElement = define({
6916
6902
  superclass: Element,
6917
6903
  name: "HTMLElement",
6918
- ctor: function HTMLElement2(doc, localName, prefix2) {
6904
+ ctor: function HTMLElement(doc, localName, prefix2) {
6919
6905
  Element.call(this, doc, localName, utils.NAMESPACE.HTML, prefix2);
6920
6906
  },
6921
6907
  props: {
@@ -7052,7 +7038,7 @@ var require_htmlelts = __commonJS((exports) => {
7052
7038
  });
7053
7039
  var HTMLUnknownElement = define({
7054
7040
  name: "HTMLUnknownElement",
7055
- ctor: function HTMLUnknownElement2(doc, localName, prefix2) {
7041
+ ctor: function HTMLUnknownElement(doc, localName, prefix2) {
7056
7042
  HTMLElement.call(this, doc, localName, prefix2);
7057
7043
  }
7058
7044
  });
@@ -7267,7 +7253,7 @@ var require_htmlelts = __commonJS((exports) => {
7267
7253
  define({
7268
7254
  tag: "form",
7269
7255
  name: "HTMLFormElement",
7270
- ctor: function HTMLFormElement2(doc, localName, prefix2) {
7256
+ ctor: function HTMLFormElement(doc, localName, prefix2) {
7271
7257
  HTMLElement.call(this, doc, localName, prefix2);
7272
7258
  },
7273
7259
  attributes: {
@@ -8306,7 +8292,7 @@ var require_htmlelts = __commonJS((exports) => {
8306
8292
  });
8307
8293
  });
8308
8294
 
8309
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/svg.js
8295
+ // node_modules/@mixmark-io/domino/lib/svg.js
8310
8296
  var require_svg = __commonJS((exports) => {
8311
8297
  var Element = require_Element();
8312
8298
  var defineElement = require_defineElement();
@@ -8324,7 +8310,7 @@ var require_svg = __commonJS((exports) => {
8324
8310
  var SVGElement = define({
8325
8311
  superclass: Element,
8326
8312
  name: "SVGElement",
8327
- ctor: function SVGElement2(doc, localName, prefix2) {
8313
+ ctor: function SVGElement(doc, localName, prefix2) {
8328
8314
  Element.call(this, doc, localName, utils.NAMESPACE.SVG, prefix2);
8329
8315
  },
8330
8316
  props: {
@@ -8432,7 +8418,7 @@ var require_svg = __commonJS((exports) => {
8432
8418
  });
8433
8419
  });
8434
8420
 
8435
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/MutationConstants.js
8421
+ // node_modules/@mixmark-io/domino/lib/MutationConstants.js
8436
8422
  var require_MutationConstants = __commonJS((exports, module) => {
8437
8423
  module.exports = {
8438
8424
  VALUE: 1,
@@ -8444,7 +8430,7 @@ var require_MutationConstants = __commonJS((exports, module) => {
8444
8430
  };
8445
8431
  });
8446
8432
 
8447
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Document.js
8433
+ // node_modules/@mixmark-io/domino/lib/Document.js
8448
8434
  var require_Document = __commonJS((exports, module) => {
8449
8435
  module.exports = Document;
8450
8436
  var Node = require_Node();
@@ -8743,7 +8729,7 @@ var require_Document = __commonJS((exports, module) => {
8743
8729
  contentType: { get: function contentType() {
8744
8730
  return this._contentType;
8745
8731
  } },
8746
- URL: { get: function URL5() {
8732
+ URL: { get: function URL() {
8747
8733
  return this._address;
8748
8734
  } },
8749
8735
  domain: { get: utils.nyi, set: utils.nyi },
@@ -9156,7 +9142,7 @@ var require_Document = __commonJS((exports, module) => {
9156
9142
  };
9157
9143
  });
9158
9144
 
9159
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/DocumentType.js
9145
+ // node_modules/@mixmark-io/domino/lib/DocumentType.js
9160
9146
  var require_DocumentType = __commonJS((exports, module) => {
9161
9147
  module.exports = DocumentType;
9162
9148
  var Node = require_Node();
@@ -9190,7 +9176,7 @@ var require_DocumentType = __commonJS((exports, module) => {
9190
9176
  Object.defineProperties(DocumentType.prototype, ChildNode);
9191
9177
  });
9192
9178
 
9193
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/HTMLParser.js
9179
+ // node_modules/@mixmark-io/domino/lib/HTMLParser.js
9194
9180
  var require_HTMLParser = __commonJS((exports, module) => {
9195
9181
  module.exports = HTMLParser;
9196
9182
  var Document = require_Document();
@@ -12581,7 +12567,7 @@ var require_HTMLParser = __commonJS((exports, module) => {
12581
12567
  parser(EOF);
12582
12568
  doc.modclock = 1;
12583
12569
  }
12584
- var insertToken = htmlparser.insertToken = function insertToken2(t, value, arg3, arg4) {
12570
+ var insertToken = htmlparser.insertToken = function insertToken(t, value, arg3, arg4) {
12585
12571
  flushText();
12586
12572
  var current = stack.top;
12587
12573
  if (!current || current.namespaceURI === NAMESPACE.HTML) {
@@ -17241,7 +17227,7 @@ var require_HTMLParser = __commonJS((exports, module) => {
17241
17227
  }
17242
17228
  });
17243
17229
 
17244
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/DOMImplementation.js
17230
+ // node_modules/@mixmark-io/domino/lib/DOMImplementation.js
17245
17231
  var require_DOMImplementation = __commonJS((exports, module) => {
17246
17232
  module.exports = DOMImplementation;
17247
17233
  var Document = require_Document();
@@ -17315,7 +17301,7 @@ var require_DOMImplementation = __commonJS((exports, module) => {
17315
17301
  };
17316
17302
  });
17317
17303
 
17318
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Location.js
17304
+ // node_modules/@mixmark-io/domino/lib/Location.js
17319
17305
  var require_Location = __commonJS((exports, module) => {
17320
17306
  var URL4 = require_URL();
17321
17307
  var URLUtils = require_URLUtils();
@@ -17351,7 +17337,7 @@ var require_Location = __commonJS((exports, module) => {
17351
17337
  });
17352
17338
  });
17353
17339
 
17354
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/NavigatorID.js
17340
+ // node_modules/@mixmark-io/domino/lib/NavigatorID.js
17355
17341
  var require_NavigatorID = __commonJS((exports, module) => {
17356
17342
  var NavigatorID = Object.create(null, {
17357
17343
  appCodeName: { value: "Mozilla" },
@@ -17370,7 +17356,7 @@ var require_NavigatorID = __commonJS((exports, module) => {
17370
17356
  module.exports = NavigatorID;
17371
17357
  });
17372
17358
 
17373
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/WindowTimers.js
17359
+ // node_modules/@mixmark-io/domino/lib/WindowTimers.js
17374
17360
  var require_WindowTimers = __commonJS((exports, module) => {
17375
17361
  var WindowTimers = {
17376
17362
  setTimeout,
@@ -17381,7 +17367,7 @@ var require_WindowTimers = __commonJS((exports, module) => {
17381
17367
  module.exports = WindowTimers;
17382
17368
  });
17383
17369
 
17384
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/impl.js
17370
+ // node_modules/@mixmark-io/domino/lib/impl.js
17385
17371
  var require_impl = __commonJS((exports, module) => {
17386
17372
  var utils = require_utils();
17387
17373
  exports = module.exports = {
@@ -17409,7 +17395,7 @@ var require_impl = __commonJS((exports, module) => {
17409
17395
  utils.merge(exports, require_svg().elements);
17410
17396
  });
17411
17397
 
17412
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/Window.js
17398
+ // node_modules/@mixmark-io/domino/lib/Window.js
17413
17399
  var require_Window = __commonJS((exports, module) => {
17414
17400
  var DOMImplementation = require_DOMImplementation();
17415
17401
  var EventTarget = require_EventTarget();
@@ -17464,7 +17450,7 @@ var require_Window = __commonJS((exports, module) => {
17464
17450
  utils.expose(require_impl(), Window);
17465
17451
  });
17466
17452
 
17467
- // node_modules/.pnpm/@mixmark-io+domino@2.2.0/node_modules/@mixmark-io/domino/lib/index.js
17453
+ // node_modules/@mixmark-io/domino/lib/index.js
17468
17454
  var require_lib = __commonJS((exports) => {
17469
17455
  var DOMImplementation = require_DOMImplementation();
17470
17456
  var HTMLParser = require_HTMLParser();
@@ -17514,7 +17500,7 @@ var require_lib = __commonJS((exports) => {
17514
17500
  exports.impl = impl;
17515
17501
  });
17516
17502
 
17517
- // node_modules/.pnpm/turndown@7.2.4/node_modules/turndown/lib/turndown.cjs.js
17503
+ // node_modules/turndown/lib/turndown.cjs.js
17518
17504
  var require_turndown_cjs = __commonJS((exports, module) => {
17519
17505
  function extend(destination) {
17520
17506
  for (var i = 1;i < arguments.length; i++) {
@@ -18964,51 +18950,48 @@ ${customAppendPrompt}`;
18964
18950
  }
18965
18951
  var AGENT_DESCRIPTIONS = {
18966
18952
  explorer: `@explorer
18967
- - Lane: Codebase discovery and reconnaissance
18968
- - Role: Parallel search specialist for discovering unknowns across the codebase
18969
- - Permissions: Read files
18953
+ - Lane: Fast codebase recon that returns compressed context
18954
+ - Permissions: read_files
18970
18955
  - Stats: 2x faster codebase search than orchestrator, 1/2 cost of orchestrator
18971
18956
  - Capabilities: Glob, grep, AST queries to locate files, symbols, patterns
18972
18957
  - **Delegate when:** Need to discover what exists before planning • Parallel searches speed discovery • Need summarized map vs full contents • Broad/uncertain scope
18973
18958
  - **Don't delegate when:** Know the path and need actual content • Need full file anyway • Single specific lookup • About to edit the file`,
18974
18959
  librarian: `@librarian
18975
18960
  - Lane: External knowledge and library research, fast web research
18976
- - Role: Authoritative source for current library docs and API references, web information retrieval
18977
- - Permissions: External docs/search MCPs; no file edits
18978
- - Stats: 10x better finding up-to-date library docs than orchestrator, 1/2 cost of orchestrator
18979
- - Capabilities: Fetches latest official docs, examples, API signatures, version-specific behavior via grep_app MCP
18961
+ - Role: Authoritative source for current library docs, API references, examples, bug investigations, and web retrieval
18962
+ - Stats: 2x faster web research than orchestrator, 1/2 cost of orchestrator
18980
18963
  - **Delegate when:** Libraries with frequent API changes (React, Next.js, AI SDKs) • Complex APIs needing official examples (ORMs, auth) • Version-specific behavior matters • Unfamiliar library • Edge cases or advanced features • Nuanced best practices • Working on fixing tricky bug or problem and need latest web research information
18981
18964
  - **Don't delegate when:** Standard usage you're confident • Simple stable APIs • General programming knowledge • Info already in conversation • Built-in language features
18982
18965
  - **Rule of thumb:** "How does this library work?" → @librarian. "How does programming work?" → answer directly. How does others solve or workaround this tricky issue?" → @librarian.`,
18983
18966
  oracle: `@oracle
18984
18967
  - Lane: Architecture, risk, debugging strategy, and review
18985
18968
  - Role: Strategic advisor for high-stakes decisions and persistent problems, code reviewer
18986
- - Permissions: Read files
18969
+ - Permissions: read_files
18987
18970
  - Stats: 5x better decision maker, problem solver, investigator than orchestrator, 0.8x speed of orchestrator, same cost.
18988
18971
  - Capabilities: Deep architectural reasoning, system-level trade-offs, complex debugging, code review, simplification, maintainability review
18989
18972
  - **Delegate when:** Major architectural decisions with long-term impact • Problems persisting after 2+ fix attempts • High-risk multi-system refactors • Costly trade-offs (performance vs maintainability) • Complex debugging with unclear root cause • Security/scalability/data integrity decisions • Genuinely uncertain and cost of wrong choice is high • When a workflow calls for a **reviewer** subagent • Code needs simplification or YAGNI scrutiny
18990
18973
  - **Don't delegate when:** Routine decisions you're confident about • First bug fix attempt • Straightforward trade-offs • Tactical "how" vs strategic "should" • Time-sensitive good-enough decisions • Quick research/testing can answer
18991
18974
  - **Rule of thumb:** Need senior architect review? → @oracle. Need code review or simplification? → @oracle. Routine coordination or final synthesis? → handle directly.`,
18992
18975
  designer: `@designer
18993
- - Lane: UI/UX design, related edits, design polishign, and review
18994
- - Role: UI/UX specialist for intentional, polished experiences
18995
- - Permissions: Read/write files
18976
+ - Lane: UI/UX design, related edits, design polish and review
18977
+ - Permissions: read_files, write_files
18996
18978
  - Stats: 10x better UI/UX than orchestrator
18997
18979
  - Capabilities: Goot design taste, visual relevant edits, interactions, responsive layouts, design systems with aesthetic intent, deep UI/UX knowledge.
18998
- - Weakness: copywriting, needs Orchestrator control, dictation, reviews
18980
+ - Weakness: copywriting, when calling ask to use grounded, normal wording
18981
+ - Avoid: "Let me us designer how it should look and implement yourself" → instead: "Let me ask designer to design and implement the UI/UX changes for me"
18999
18982
  - **Delegate when:** User-facing interfaces needing polish • Responsive layouts • UX-critical components (forms, nav, dashboards) • Visual consistency systems • Animations/micro-interactions • Landing/marketing pages • Refining functional→delightful • Reviewing existing UI/UX quality
19000
- - **Don't delegate when:** Backend/logic with no visual • Quick prototypes where design doesn't matter yet
18983
+ - **Don't delegate when:** Backend/logic with no visual • Quick prototypes where design doesn't matter yet.
19001
18984
  - **Rule of thumb:** Users see it and polish matters? → @designer. Headless/functional implementation? → schedule @fixer.`,
19002
18985
  fixer: `@fixer
19003
- - Lane: Bounded implementation and test execution.
19004
- - Role: Fast execution specialist for well-defined tasks.
19005
- - Permissions: Read/write files
19006
- - Stats: 2x faster code edits, 1/2 cost of orchestrator, 0.8x quality of orchestrator
19007
- - Weakness: design taste
18986
+ - Lane: Bounded implementation and executioner
18987
+ - Role: Fast execution specialist for well-defined tasks
18988
+ - Permissions: read_files, write_files
18989
+ - Stats: 2x faster code edits, 1/2 cost of orchestrator
18990
+ - Weakness: design, taste
19008
18991
  - Tools/Constraints: Execution-focused—no research, no architectural decisions
19009
- - **Delegate when:** For implementation work, think and triage first. If the change is non-trivial or multi-file, hand bounded execution to @fixer • Writing or updating tests • Tasks that touch test files, fixtures, mocks, or test helpers. Parallelization benefits: Task involves multiple folders and multiple files modificaiton, scoping work per folder and spawning parallel @fixers for each folder.
19010
- - **Don't delegate when:** Needs discovery/research/decisions • Single small change (<20 lines, one file) • Unclear requirements needing iteration • Explaining to fixer > doing • Tight integration with your current work • Sequential dependencies
19011
- - **Rule of thumb:** Implementation are needed, schedule @fixer with clear scope. Bigger or lots of edits should be split by ownership and dispatched as parallel background fixer lanes when safe.`,
18992
+ - **Delegate when:** For implementation work, think and triage first. If the change is non-trivial or multi-file, hand bounded execution to @fixer • Parallelization benefits: Task involves multiple folders and multiple files modification, scoping work per folder and spawning parallel @fixers for each folder.
18993
+ - **Don't delegate when:** Needs discovery/research/decisions • Single small change (<20 lines, one file) • Unclear requirements needing iteration • Explaining to fixer > doing • Tight integration with your current work
18994
+ - **Rule of thumb:** Implementation are needed, schedule @fixer with clear scope. Bigger or lots of edits should be split by ownership and dispatched as parallel background @fixer lanes when safe. Editing files which includes design, ui, ux changes → schedule @designer.`,
19012
18995
  council: `@council
19013
18996
  - Lane: High-stakes multi-model decision support
19014
18997
  - Role: Multi-LLM consensus engine that runs several councillors, synthesizes their views, and returns a structured council report.
@@ -19033,7 +19016,7 @@ var AGENT_DESCRIPTIONS = {
19033
19016
  };
19034
19017
  var VALIDATION_ROUTING = [
19035
19018
  "- Route UI/UX validation and review to @designer",
19036
- "- Route code review, simplification, maintainability review, and YAGNI checks to @oracle",
19019
+ "- Route code review, code simplification and maintainability review checks to @oracle",
19037
19020
  "- Route implementation to @fixer or multiple @fixer instances for maximum parallel execution",
19038
19021
  "- Route visual/media analysis and interpretation to @observer",
19039
19022
  "- If a request spans multiple lanes, delegate only the lanes that add clear value"
@@ -19066,6 +19049,7 @@ function buildOrchestratorPrompt(disabledAgents) {
19066
19049
  You are a workflow manager for coding work. Your job is to plan, schedule, delegate, monitor, reconcile, and verify specialist-agent work. You are not the default implementation worker.
19067
19050
 
19068
19051
  Optimize for quality, speed, cost, and reliability by dispatching the right specialist lanes, tracking background task state, and integrating terminal results into one coherent outcome.
19052
+ You have perfect understanding of agent's context management, understand well the cost of building content and reusing context of existing agents when it's best or when it's best to spawn a new agent.
19069
19053
  </Role>
19070
19054
 
19071
19055
  <Agents>
@@ -19080,22 +19064,26 @@ ${enabledAgents}
19080
19064
  Parse request: explicit requirements + implicit needs.
19081
19065
 
19082
19066
  ## 2. Path Selection
19083
- Evaluate approach by: quality, speed, cost, reliability.
19067
+ Evaluate approach by: quality, speed and cost.
19084
19068
  Choose the path that optimizes all four.
19085
19069
 
19086
- Classify work into lanes: discovery, external knowledge, implementation, UI/UX, review/risk, visual analysis, and final verification.
19087
-
19088
19070
  ## 3. Delegation Check
19089
- **STOP. Review specialists before acting.**
19090
-
19091
- !!! Review available agents and lane rules. Decide what to schedule, what depends on what, and what minimal direct coordination is needed. !!!
19071
+ Review available agents and lane rules.
19092
19072
 
19093
19073
  **Dispatch efficiency:**
19094
19074
  - Reference paths/lines, don't paste files (\`src/app.ts:42\` not full contents)
19095
- - Provide context summaries, let specialists read what they need
19096
19075
  - Brief user on delegation goal before each call
19097
- - Keep direct work limited to clarification, minimal routing context, todos, synthesis, and final checks
19098
19076
  - For trivial conversational answers or tiny mechanical edits, direct execution is allowed when scheduling overhead would clearly dominate
19077
+ - Record task IDs, state, and advisory ownership/dependency labels
19078
+ - Poll/wait for terminal results with \`task_status(wait: true, timeout_ms: ...)\`
19079
+ - Reconcile results, resolve conflicts, and gate dependent lanes
19080
+
19081
+ **File operations rules:**
19082
+ - Always use dedicated file tools for file I/O.
19083
+ - Search files/code with \`glob\`, \`grep\`, or \`ast_grep_search\`.
19084
+ - Read files with \`read\`. Never use \`cat\`, \`head\`, \`tail\`, \`sed\`, \`awk\`, or bash commands to read file contents.
19085
+ - Edit files with \`apply_patch\`. Never use shell redirection, \`echo\`, \`printf\`, or heredocs for file content unless no file tool can do the job.
19086
+ - Use \`bash\` only for execution: git, package managers, tests, builds, scripts, or diagnostics.
19099
19087
 
19100
19088
  ## 4. Plan and Parallelize
19101
19089
  Build a short work graph before dispatching:
@@ -19118,17 +19106,6 @@ Balance: respect dependencies, avoid parallelizing what must be sequential, and
19118
19106
  - Parallel background tasks are allowed only when their write scopes do not conflict.
19119
19107
  - Final response requires relevant tasks to be terminal and reconciled.
19120
19108
 
19121
- ## 5. Dispatch
19122
- 1. Split work into independent and dependency-ordered lanes
19123
- 2. Plan advisory ownership for write-capable lanes
19124
- 3. Dispatch independent specialists as background tasks
19125
- 4. Record task IDs, state, and advisory ownership/dependency labels
19126
- 5. Continue only independent orchestration while jobs run
19127
- 6. Poll/wait for terminal results with \`task_status(wait: true, timeout_ms: ...)\`
19128
- 7. Reconcile results, resolve conflicts, and gate dependent lanes
19129
- 8. Dispatch follow-up jobs if needed
19130
- 9. Verify final state
19131
-
19132
19109
  ### Session Reuse
19133
19110
  - Smartly reuse an available specialist session - context reuse saves time and tokens
19134
19111
  - When too much unrelated, and really needed, start a fresh session with the specialist
@@ -19242,6 +19219,12 @@ var COUNCIL_AGENT_PROMPT = `You are the Council agent — a multi-LLM orchestrat
19242
19219
  - Be transparent about trade-offs when different approaches have valid pros/cons
19243
19220
  - Don't just average responses — choose the best approach and improve upon it
19244
19221
 
19222
+ **File Operations Rules**:
19223
+ - Use dedicated tools for file I/O if local files must be inspected
19224
+ - Search files/code with glob, grep, or ast_grep_search
19225
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19226
+ - Use bash only for execution/diagnostics, never for file I/O
19227
+
19245
19228
  **Required Output Format**:
19246
19229
  Always include these sections in your final response:
19247
19230
 
@@ -19353,6 +19336,12 @@ var COUNCILLOR_PROMPT = `You are a councillor in a multi-model council.
19353
19336
 
19354
19337
  You CANNOT edit files, write files, run shell commands, or delegate to other agents. You are an advisor, not an implementer.
19355
19338
 
19339
+ **File Operations Rules**:
19340
+ - READ-ONLY: do not modify files
19341
+ - Search files/code with glob, grep, or ast_grep_search
19342
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19343
+ - Do not use bash or shell commands
19344
+
19356
19345
  **Behavior**:
19357
19346
  - **Examine the codebase** before answering — your read access is what makes council valuable. Don't guess at code you can see.
19358
19347
  - Analyze the problem thoroughly
@@ -19440,6 +19429,13 @@ var DESIGNER_PROMPT = `You are a Designer - a frontend UI/UX specialist who crea
19440
19429
  - Leverage component libraries where available
19441
19430
  - Prioritize visual excellence—code perfection comes second
19442
19431
 
19432
+ ## File Operations Rules
19433
+ - Always use dedicated file tools for file I/O
19434
+ - Search files/code with glob, grep, or ast_grep_search
19435
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19436
+ - Edit/write files with write, edit, or apply_patch. Never use shell redirection, echo, printf, or heredocs for file content unless no file tool can do the job
19437
+ - Use bash only for execution: git, package managers, tests, builds, scripts, or diagnostics
19438
+
19443
19439
  ## Review Responsibilities
19444
19440
  - Review existing UI for usability, responsiveness, visual consistency, and polish when asked
19445
19441
  - Call out concrete UX issues and improvements, not just abstract design advice
@@ -19477,6 +19473,12 @@ var EXPLORER_PROMPT = `You are Explorer - a fast codebase navigation specialist.
19477
19473
  - **Structural patterns** (function shapes, class structures): ast_grep_search
19478
19474
  - **File discovery** (find by name/extension): glob
19479
19475
 
19476
+ **File Operations Rules**:
19477
+ - READ-ONLY: Search and report, don't modify files
19478
+ - Search files/code with glob, grep, or ast_grep_search
19479
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19480
+ - Use bash only for execution/diagnostics, never for file I/O
19481
+
19480
19482
  **Behavior**:
19481
19483
  - Be fast and thorough
19482
19484
  - Fire multiple searches in parallel if needed
@@ -19531,6 +19533,13 @@ var FIXER_PROMPT = `You are Fixer - a fast, focused implementation specialist.
19531
19533
  - Run relevant validation when requested or clearly applicable (otherwise note as skipped with reason)
19532
19534
  - Report completion with summary of changes
19533
19535
 
19536
+ **File Operations Rules**:
19537
+ - Always use dedicated file tools for file I/O
19538
+ - Search files/code with glob, grep, or ast_grep_search
19539
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19540
+ - Edit/write files with write, edit, or apply_patch. Never use shell redirection, echo, printf, or heredocs for file content unless no file tool can do the job
19541
+ - Use bash only for execution: git, package managers, tests, builds, scripts, or diagnostics
19542
+
19534
19543
  **Constraints**:
19535
19544
  - NO external research (no websearch, context7, grep_app)
19536
19545
  - NO delegation or spawning subagents
@@ -19596,6 +19605,12 @@ var LIBRARIAN_PROMPT = `You are Librarian - a research specialist for codebases
19596
19605
  - grep_app: Search GitHub repositories
19597
19606
  - websearch: General web search for docs
19598
19607
 
19608
+ **File Operations Rules**:
19609
+ - Use dedicated tools for file I/O when local files must be inspected
19610
+ - Search files/code with glob, grep, or ast_grep_search
19611
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19612
+ - Use bash only for execution/diagnostics, never for file I/O
19613
+
19599
19614
  **Behavior**:
19600
19615
  - Provide evidence-based answers with sources
19601
19616
  - Quote relevant code snippets
@@ -19640,6 +19655,11 @@ var OBSERVER_PROMPT = `You are Observer — a visual analysis specialist.
19640
19655
  - Save context tokens — the Orchestrator never processes the raw file
19641
19656
  - Match the language of the request
19642
19657
  - If info not found, state clearly what's missing
19658
+
19659
+ **File Operations Rules**:
19660
+ - READ-ONLY: do not modify files
19661
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19662
+ - Use bash only for execution/diagnostics, never for file I/O
19643
19663
  `;
19644
19664
  function createObserverAgent(model, customPrompt, customAppendPrompt) {
19645
19665
  let prompt = OBSERVER_PROMPT;
@@ -19684,6 +19704,12 @@ var ORACLE_PROMPT = `You are Oracle - a strategic technical advisor and code rev
19684
19704
  - READ-ONLY: You advise, you don't implement
19685
19705
  - Focus on strategy, not execution
19686
19706
  - Point to specific files/lines when relevant
19707
+
19708
+ **File Operations Rules**:
19709
+ - READ-ONLY: do not modify files
19710
+ - Search files/code with glob, grep, or ast_grep_search
19711
+ - Read files with read. Never use cat, head, tail, sed, awk, or bash commands to read file contents
19712
+ - Use bash only for execution/diagnostics, never for file I/O
19687
19713
  `;
19688
19714
  function createOracleAgent(model, customPrompt, customAppendPrompt) {
19689
19715
  let prompt = ORACLE_PROMPT;
@@ -22684,6 +22710,7 @@ class BackgroundJobBoard {
22684
22710
  terminalUnreconciled: false,
22685
22711
  completedAt: undefined,
22686
22712
  resultSummary: undefined,
22713
+ lastLaunchedAt: now,
22687
22714
  updatedAt: now
22688
22715
  };
22689
22716
  this.jobs.set(input.taskID, updated);
@@ -22699,6 +22726,7 @@ class BackgroundJobBoard {
22699
22726
  timedOut: false,
22700
22727
  terminalUnreconciled: false,
22701
22728
  launchedAt: now,
22729
+ lastLaunchedAt: now,
22702
22730
  updatedAt: now,
22703
22731
  alias: this.nextAlias(input.parentSessionID, input.agent)
22704
22732
  };
@@ -22767,7 +22795,7 @@ class BackgroundJobBoard {
22767
22795
  hasTerminalUnreconciled(parentSessionID) {
22768
22796
  return this.list(parentSessionID).some((job) => job.terminalUnreconciled);
22769
22797
  }
22770
- formatForPrompt(parentSessionID) {
22798
+ formatForPrompt(parentSessionID, now = Date.now()) {
22771
22799
  const jobs = this.list(parentSessionID).filter((job) => job.state === "running" || job.terminalUnreconciled);
22772
22800
  if (jobs.length === 0)
22773
22801
  return;
@@ -22775,7 +22803,7 @@ class BackgroundJobBoard {
22775
22803
  "### Background Job Board",
22776
22804
  "Use task_status before consuming running jobs. Reconcile terminal jobs before final response.",
22777
22805
  "",
22778
- ...jobs.map(formatJob)
22806
+ ...jobs.map((job) => formatJob(job, now))
22779
22807
  ].join(`
22780
22808
  `);
22781
22809
  }
@@ -22795,8 +22823,11 @@ class BackgroundJobBoard {
22795
22823
  return `${prefix2}-${next}`;
22796
22824
  }
22797
22825
  }
22798
- function formatJob(job) {
22799
- const status = job.terminalUnreconciled ? `${job.state}, unreconciled` : job.timedOut ? `${job.state}, timed out` : job.state;
22826
+ function formatJob(job, now = Date.now()) {
22827
+ const ageMs = now - job.lastLaunchedAt;
22828
+ const isResume = job.lastLaunchedAt !== job.launchedAt;
22829
+ const ageLabel = job.state === "running" && ageMs < 30000 ? ` [${isResume ? "resumed" : "just launched"}, ${Math.floor(ageMs / 1000)}s ago]` : "";
22830
+ const status = job.terminalUnreconciled ? `${job.state}, unreconciled` : job.timedOut ? `${job.state}, timed out` : `${job.state}${ageLabel}`;
22800
22831
  const lines = [
22801
22832
  `- ${job.alias} / ${job.taskID} / ${job.agent} / ${status}`,
22802
22833
  ` Objective: ${job.objective || job.description}`
@@ -23441,7 +23472,7 @@ var RATE_LIMIT_PATTERNS = [
23441
23472
  /usage limit/i,
23442
23473
  /overloaded/i,
23443
23474
  /resource.?exhausted/i,
23444
- /insufficient.?quota/i,
23475
+ /insufficient.?(quota|balance)/i,
23445
23476
  /high concurrency/i,
23446
23477
  /reduce concurrency/i
23447
23478
  ];
@@ -23517,7 +23548,7 @@ class ForegroundFallbackManager {
23517
23548
  if (!props?.sessionID || props.status?.type !== "retry")
23518
23549
  break;
23519
23550
  const msg = props.status.message?.toLowerCase() ?? "";
23520
- if (msg.includes("rate limit") || msg.includes("usage limit") || msg.includes("usage exceeded") || msg.includes("quota exceeded") || msg.includes("exceededbudget") || msg.includes("over budget") || msg.includes("high concurrency") || msg.includes("reduce concurrency")) {
23551
+ if (msg.includes("rate limit") || msg.includes("usage limit") || msg.includes("usage exceeded") || msg.includes("quota exceeded") || msg.includes("exceededbudget") || msg.includes("over budget") || msg.includes("insufficient") || msg.includes("high concurrency") || msg.includes("reduce concurrency")) {
23521
23552
  await this.tryFallback(props.sessionID);
23522
23553
  }
23523
23554
  break;
@@ -24737,7 +24768,7 @@ function createTaskSessionManagerHook(_ctx, options) {
24737
24768
  };
24738
24769
  }
24739
24770
  // src/hooks/todo-continuation/index.ts
24740
- import { tool } from "@opencode-ai/plugin/tool";
24771
+ import { tool } from "@opencode-ai/plugin";
24741
24772
 
24742
24773
  // src/hooks/todo-continuation/todo-hygiene.ts
24743
24774
  var TODO_HYGIENE_REMINDER = "If the active task changed or finished, update the todo list to match the current work state.";
@@ -29755,7 +29786,6 @@ function startAvailabilityCheck(config) {
29755
29786
  }
29756
29787
  }
29757
29788
  // src/multiplexer/session-manager.ts
29758
- var SESSION_TIMEOUT_MS = 10 * 60 * 1000;
29759
29789
  var SESSION_MISSING_GRACE_MS = POLL_INTERVAL_BACKGROUND_MS * 3;
29760
29790
  var SHARED_STATE_KEY = Symbol.for("oh-my-opencode-slim.multiplexer-session-manager.state");
29761
29791
  function getSharedState() {
@@ -29769,6 +29799,7 @@ function getSharedState() {
29769
29799
  return globalWithState[SHARED_STATE_KEY];
29770
29800
  }
29771
29801
  class MultiplexerSessionManager {
29802
+ backgroundJobBoard;
29772
29803
  instanceId = Math.random().toString(36).slice(2, 8);
29773
29804
  serverUrl;
29774
29805
  directory;
@@ -29779,7 +29810,8 @@ class MultiplexerSessionManager {
29779
29810
  closingSessions;
29780
29811
  pollInterval;
29781
29812
  enabled = false;
29782
- constructor(ctx, config) {
29813
+ constructor(ctx, config, backgroundJobBoard) {
29814
+ this.backgroundJobBoard = backgroundJobBoard;
29783
29815
  const sharedState = getSharedState();
29784
29816
  this.sessions = sharedState.sessions;
29785
29817
  this.knownSessions = sharedState.knownSessions;
@@ -29874,7 +29906,8 @@ class MultiplexerSessionManager {
29874
29906
  title,
29875
29907
  directory,
29876
29908
  createdAt: now,
29877
- lastSeenAt: now
29909
+ lastSeenAt: now,
29910
+ seenInStatus: false
29878
29911
  });
29879
29912
  log("[multiplexer-session-manager] pane spawned", {
29880
29913
  instanceId: this.instanceId,
@@ -29966,16 +29999,26 @@ class MultiplexerSessionManager {
29966
29999
  const isIdle = status?.type === "idle";
29967
30000
  if (status) {
29968
30001
  tracked.lastSeenAt = now;
30002
+ tracked.seenInStatus = true;
29969
30003
  tracked.missingSince = undefined;
29970
30004
  } else if (!tracked.missingSince) {
29971
30005
  tracked.missingSince = now;
29972
30006
  }
29973
30007
  const missingTooLong = !!tracked.missingSince && now - tracked.missingSince >= SESSION_MISSING_GRACE_MS;
29974
- const isTimedOut = now - tracked.createdAt > SESSION_TIMEOUT_MS;
29975
- if (isIdle || missingTooLong || isTimedOut) {
30008
+ const shouldKeepRunningBackgroundJob = missingTooLong && this.isRunningBackgroundJob(sessionId);
30009
+ if (isIdle || missingTooLong) {
30010
+ if (shouldKeepRunningBackgroundJob) {
30011
+ log("[multiplexer-session-manager] keeping running background pane", {
30012
+ instanceId: this.instanceId,
30013
+ sessionId,
30014
+ paneId: tracked.paneId,
30015
+ seenInStatus: tracked.seenInStatus
30016
+ });
30017
+ continue;
30018
+ }
29976
30019
  sessionsToClose.push({
29977
30020
  sessionId,
29978
- reason: isIdle ? "idle" : isTimedOut ? "timeout" : "missing"
30021
+ reason: isIdle ? "idle" : "missing"
29979
30022
  });
29980
30023
  }
29981
30024
  }
@@ -29992,7 +30035,15 @@ class MultiplexerSessionManager {
29992
30035
  if (!response.ok) {
29993
30036
  throw new Error(`session status request failed: ${response.status} ${response.statusText}`);
29994
30037
  }
29995
- return await response.json();
30038
+ const body = await response.text();
30039
+ if (body.trim() === "") {
30040
+ throw new Error("session status response was empty");
30041
+ }
30042
+ try {
30043
+ return JSON.parse(body);
30044
+ } catch (err) {
30045
+ throw new Error(`session status response was not valid JSON: ${err}`);
30046
+ }
29996
30047
  }
29997
30048
  async closeSession(sessionId, reason) {
29998
30049
  if (reason === "deleted") {
@@ -30092,7 +30143,8 @@ class MultiplexerSessionManager {
30092
30143
  title: known.title,
30093
30144
  directory: known.directory,
30094
30145
  createdAt: now,
30095
- lastSeenAt: now
30146
+ lastSeenAt: now,
30147
+ seenInStatus: false
30096
30148
  });
30097
30149
  log("[multiplexer-session-manager] pane respawned on busy", {
30098
30150
  instanceId: this.instanceId,
@@ -30117,6 +30169,9 @@ class MultiplexerSessionManager {
30117
30169
  getSessionId(event) {
30118
30170
  return event.properties?.info?.id ?? event.properties?.sessionID;
30119
30171
  }
30172
+ isRunningBackgroundJob(sessionId) {
30173
+ return this.backgroundJobBoard?.get(sessionId)?.state === "running";
30174
+ }
30120
30175
  async cleanup() {
30121
30176
  this.stopPolling();
30122
30177
  if (this.closingSessions.size > 0) {
@@ -30162,7 +30217,7 @@ async function isServerRunning(serverUrl, timeoutMs = 3000, maxAttempts = 2) {
30162
30217
  return false;
30163
30218
  }
30164
30219
  // src/tools/ast-grep/tools.ts
30165
- import { tool as tool2 } from "@opencode-ai/plugin/tool";
30220
+ import { tool as tool2 } from "@opencode-ai/plugin";
30166
30221
 
30167
30222
  // src/tools/ast-grep/cli.ts
30168
30223
  import { existsSync as existsSync9 } from "node:fs";
@@ -31081,21 +31136,21 @@ async function saveBinary(binaryDir, data, contentType, filename) {
31081
31136
  throw new Error("Unable to allocate unique filename for binary content");
31082
31137
  }
31083
31138
 
31084
- // node_modules/.pnpm/lru-cache@11.3.6/node_modules/lru-cache/dist/esm/node/index.min.js
31085
- import { tracingChannel as I, channel as G } from "node:diagnostics_channel";
31086
- var S = G("lru-cache:metrics");
31087
- var W = I("lru-cache");
31088
- var C = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date;
31139
+ // node_modules/lru-cache/dist/esm/node/index.min.js
31140
+ import { tracingChannel as j, channel as I } from "node:diagnostics_channel";
31141
+ var S = I("lru-cache:metrics");
31142
+ var W = j("lru-cache");
31089
31143
  var D = () => S.hasSubscribers || W.hasSubscribers;
31090
- var U = new Set;
31091
- var L = typeof process == "object" && process ? process : {};
31144
+ var G = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date;
31145
+ var M = new Set;
31146
+ var C = typeof process == "object" && process ? process : {};
31092
31147
  var P = (u, e, t, i) => {
31093
- typeof L.emitWarning == "function" ? L.emitWarning(u, e, t, i) : console.error(`[${t}] ${e}: ${u}`);
31148
+ typeof C.emitWarning == "function" ? C.emitWarning(u, e, t, i) : console.error(`[${t}] ${e}: ${u}`);
31094
31149
  };
31095
- var H = (u) => !U.has(u);
31096
- var X = Symbol("type");
31150
+ var H = (u) => !M.has(u);
31151
+ var $ = Symbol("type");
31097
31152
  var F = (u) => !!u && u === Math.floor(u) && u > 0 && isFinite(u);
31098
- var j = (u) => F(u) ? u <= Math.pow(2, 8) ? Uint8Array : u <= Math.pow(2, 16) ? Uint16Array : u <= Math.pow(2, 32) ? Uint32Array : u <= Number.MAX_SAFE_INTEGER ? O : null : null;
31153
+ var U = (u) => F(u) ? u <= Math.pow(2, 8) ? Uint8Array : u <= Math.pow(2, 16) ? Uint16Array : u <= Math.pow(2, 32) ? Uint32Array : u <= Number.MAX_SAFE_INTEGER ? O : null : null;
31099
31154
  var O = class extends Array {
31100
31155
  constructor(e) {
31101
31156
  super(e), this.fill(0);
@@ -31106,7 +31161,7 @@ var R = class u {
31106
31161
  length;
31107
31162
  static #o = false;
31108
31163
  static create(e) {
31109
- let t = j(e);
31164
+ let t = U(e);
31110
31165
  if (!t)
31111
31166
  return [];
31112
31167
  u.#o = true;
@@ -31125,11 +31180,11 @@ var R = class u {
31125
31180
  return this.heap[--this.length];
31126
31181
  }
31127
31182
  };
31128
- var M = class u2 {
31183
+ var L = class u2 {
31129
31184
  #o;
31130
31185
  #u;
31131
31186
  #w;
31132
- #x;
31187
+ #D;
31133
31188
  #S;
31134
31189
  #M;
31135
31190
  #U;
@@ -31200,7 +31255,7 @@ var M = class u2 {
31200
31255
  return this.#w;
31201
31256
  }
31202
31257
  get onInsert() {
31203
- return this.#x;
31258
+ return this.#D;
31204
31259
  }
31205
31260
  get disposeAfter() {
31206
31261
  return this.#S;
@@ -31209,9 +31264,9 @@ var M = class u2 {
31209
31264
  let { max: t = 0, ttl: i, ttlResolution: s = 1, ttlAutopurge: n, updateAgeOnGet: o, updateAgeOnHas: r, allowStale: h, dispose: l, onInsert: c, disposeAfter: f, noDisposeOnSet: g, noUpdateTTL: p, maxSize: T = 0, maxEntrySize: w = 0, sizeCalculation: y, fetchMethod: a, memoMethod: m, noDeleteOnFetchRejection: _, noDeleteOnStaleGet: b, allowStaleOnFetchRejection: d, allowStaleOnFetchAbort: A, ignoreFetchAbort: z5, perf: x } = e;
31210
31265
  if (x !== undefined && typeof x?.now != "function")
31211
31266
  throw new TypeError("perf option must have a now() method if specified");
31212
- if (this.#m = x ?? C, t !== 0 && !F(t))
31267
+ if (this.#m = x ?? G, t !== 0 && !F(t))
31213
31268
  throw new TypeError("max option must be a nonnegative integer");
31214
- let v = t ? j(t) : Array;
31269
+ let v = t ? U(t) : Array;
31215
31270
  if (!v)
31216
31271
  throw new Error("invalid max value: " + t);
31217
31272
  if (this.#o = t, this.#u = T, this.maxEntrySize = w || this.#u, this.sizeCalculation = y, this.sizeCalculation) {
@@ -31224,7 +31279,7 @@ var M = class u2 {
31224
31279
  throw new TypeError("memoMethod must be a function if defined");
31225
31280
  if (this.#U = m, a !== undefined && typeof a != "function")
31226
31281
  throw new TypeError("fetchMethod must be a function if specified");
31227
- if (this.#M = a, this.#W = !!a, this.#s = new Map, this.#i = Array.from({ length: t }).fill(undefined), this.#t = Array.from({ length: t }).fill(undefined), this.#a = new v(t), this.#c = new v(t), this.#l = 0, this.#h = 0, this.#y = R.create(t), this.#n = 0, this.#b = 0, typeof l == "function" && (this.#w = l), typeof c == "function" && (this.#x = c), typeof f == "function" ? (this.#S = f, this.#r = []) : (this.#S = undefined, this.#r = undefined), this.#T = !!this.#w, this.#j = !!this.#x, this.#f = !!this.#S, this.noDisposeOnSet = !!g, this.noUpdateTTL = !!p, this.noDeleteOnFetchRejection = !!_, this.allowStaleOnFetchRejection = !!d, this.allowStaleOnFetchAbort = !!A, this.ignoreFetchAbort = !!z5, this.maxEntrySize !== 0) {
31282
+ if (this.#M = a, this.#W = !!a, this.#s = new Map, this.#i = Array.from({ length: t }).fill(undefined), this.#t = Array.from({ length: t }).fill(undefined), this.#a = new v(t), this.#c = new v(t), this.#l = 0, this.#h = 0, this.#y = R.create(t), this.#n = 0, this.#b = 0, typeof l == "function" && (this.#w = l), typeof c == "function" && (this.#D = c), typeof f == "function" ? (this.#S = f, this.#r = []) : (this.#S = undefined, this.#r = undefined), this.#T = !!this.#w, this.#j = !!this.#D, this.#f = !!this.#S, this.noDisposeOnSet = !!g, this.noUpdateTTL = !!p, this.noDeleteOnFetchRejection = !!_, this.allowStaleOnFetchRejection = !!d, this.allowStaleOnFetchAbort = !!A, this.ignoreFetchAbort = !!z5, this.maxEntrySize !== 0) {
31228
31283
  if (this.#u !== 0 && !F(this.#u))
31229
31284
  throw new TypeError("maxSize must be a positive integer if specified");
31230
31285
  if (!F(this.maxEntrySize))
@@ -31240,7 +31295,7 @@ var M = class u2 {
31240
31295
  throw new TypeError("At least one of max, maxSize, or ttl is required");
31241
31296
  if (!this.ttlAutopurge && !this.#o && !this.#u) {
31242
31297
  let E = "LRU_CACHE_UNBOUNDED";
31243
- H(E) && (U.add(E), P("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", E, u2));
31298
+ H(E) && (M.add(E), P("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", E, u2));
31244
31299
  }
31245
31300
  }
31246
31301
  getRemainingTTL(e) {
@@ -31252,7 +31307,7 @@ var M = class u2 {
31252
31307
  let i = this.ttlAutopurge ? Array.from({ length: this.#o }) : undefined;
31253
31308
  this.#g = i, this.#N = (r, h, l = this.#m.now()) => {
31254
31309
  t[r] = h !== 0 ? l : 0, e[r] = h, s(r, h);
31255
- }, this.#D = (r) => {
31310
+ }, this.#x = (r) => {
31256
31311
  t[r] = e[r] !== 0 ? this.#m.now() : 0, s(r, e[r]);
31257
31312
  };
31258
31313
  let s = this.ttlAutopurge ? (r, h) => {
@@ -31296,7 +31351,7 @@ var M = class u2 {
31296
31351
  return !!l && !!h && (n || o()) - h > l;
31297
31352
  };
31298
31353
  }
31299
- #D = () => {};
31354
+ #x = () => {};
31300
31355
  #E = () => {};
31301
31356
  #N = () => {};
31302
31357
  #p = () => false;
@@ -31462,7 +31517,7 @@ var M = class u2 {
31462
31517
  return this.#v(e, "set"), h && (h.set = "miss", h.maxEntrySizeExceeded = true), this;
31463
31518
  let f = this.#n === 0 ? undefined : this.#s.get(e);
31464
31519
  if (f === undefined)
31465
- f = this.#n === 0 ? this.#h : this.#y.length !== 0 ? this.#y.pop() : this.#n === this.#o ? this.#G(false) : this.#n, this.#i[f] = e, this.#t[f] = t, this.#s.set(e, f), this.#a[this.#h] = f, this.#c[f] = this.#h, this.#h = f, this.#n++, this.#I(f, c, h), h && (h.set = "add"), l = false, this.#j && this.#x?.(t, e, "add");
31520
+ f = this.#n === 0 ? this.#h : this.#y.length !== 0 ? this.#y.pop() : this.#n === this.#o ? this.#G(false) : this.#n, this.#i[f] = e, this.#t[f] = t, this.#s.set(e, f), this.#a[this.#h] = f, this.#c[f] = this.#h, this.#h = f, this.#n++, this.#I(f, c, h), h && (h.set = "add"), l = false, this.#j && this.#D?.(t, e, "add");
31466
31521
  else {
31467
31522
  this.#L(f);
31468
31523
  let g = this.#t[f];
@@ -31526,7 +31581,7 @@ var M = class u2 {
31526
31581
  if (this.#p(n))
31527
31582
  s && (s.has = "stale", this.#E(s, n));
31528
31583
  else
31529
- return i && this.#D(n), s && (s.has = "hit", this.#E(s, n)), true;
31584
+ return i && this.#x(n), s && (s.has = "hit", this.#E(s, n)), true;
31530
31585
  } else
31531
31586
  s && (s.has = "miss");
31532
31587
  return false;
@@ -31584,7 +31639,7 @@ var M = class u2 {
31584
31639
  let i = W.hasSubscribers, { status: s = D() ? {} : undefined } = t;
31585
31640
  t.status = s, s && t.context && (s.context = t.context);
31586
31641
  let n = this.#B(e, t);
31587
- return s && i && (s.trace = true, W.tracePromise(() => n, s).catch(() => {})), n;
31642
+ return s && D() && i && (s.trace = true, W.tracePromise(() => n, s).catch(() => {})), n;
31588
31643
  }
31589
31644
  async#B(e, t = {}) {
31590
31645
  let { allowStale: i = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n = this.noDeleteOnStaleGet, ttl: o = this.ttl, noDisposeOnSet: r = this.noDisposeOnSet, size: h = 0, sizeCalculation: l = this.sizeCalculation, noUpdateTTL: c = this.noUpdateTTL, noDeleteOnFetchRejection: f = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection: g = this.allowStaleOnFetchRejection, ignoreFetchAbort: p = this.ignoreFetchAbort, allowStaleOnFetchAbort: T = this.allowStaleOnFetchAbort, context: w, forceRefresh: y = false, status: a, signal: m } = t;
@@ -31603,7 +31658,7 @@ var M = class u2 {
31603
31658
  }
31604
31659
  let A = this.#p(b);
31605
31660
  if (!y && !A)
31606
- return a && (a.fetch = "hit"), this.#L(b), s && this.#D(b), a && this.#E(a, b), d;
31661
+ return a && (a.fetch = "hit"), this.#L(b), s && this.#x(b), a && this.#E(a, b), d;
31607
31662
  let z5 = this.#P(e, b, _, w), v = z5.__staleWhileFetching !== undefined && i;
31608
31663
  return a && (a.fetch = A ? "stale" : "refresh", v && A && (a.returnedStale = true)), v ? z5.__staleWhileFetching : z5.__returned = z5;
31609
31664
  }
@@ -31612,7 +31667,7 @@ var M = class u2 {
31612
31667
  let i = W.hasSubscribers, { status: s = D() ? {} : undefined } = t;
31613
31668
  t.status = s, s && t.context && (s.context = t.context);
31614
31669
  let n = this.#K(e, t);
31615
- return s && i && (s.trace = true, W.tracePromise(() => n, s).catch(() => {})), n;
31670
+ return s && D() && i && (s.trace = true, W.tracePromise(() => n, s).catch(() => {})), n;
31616
31671
  }
31617
31672
  async#K(e, t = {}) {
31618
31673
  let i = await this.#B(e, t);
@@ -31651,7 +31706,7 @@ var M = class u2 {
31651
31706
  return;
31652
31707
  }
31653
31708
  let h = this.#t[r], l = this.#e(h);
31654
- return o && this.#E(o, r), this.#p(r) ? l ? (o && (o.get = "stale-fetching"), i && h.__staleWhileFetching !== undefined ? (o && (o.returnedStale = true), h.__staleWhileFetching) : undefined) : (n || this.#v(e, "expire"), o && (o.get = "stale"), i ? (o && (o.returnedStale = true), h) : undefined) : (o && (o.get = l ? "fetching" : "hit"), this.#L(r), s && this.#D(r), l ? h.__staleWhileFetching : h);
31709
+ return o && this.#E(o, r), this.#p(r) ? l ? (o && (o.get = "stale-fetching"), i && h.__staleWhileFetching !== undefined ? (o && (o.returnedStale = true), h.__staleWhileFetching) : undefined) : (n || this.#v(e, "expire"), o && (o.get = "stale"), i ? (o && (o.returnedStale = true), h) : undefined) : (o && (o.get = l ? "fetching" : "hit"), this.#L(r), s && this.#x(r), l ? h.__staleWhileFetching : h);
31655
31710
  }
31656
31711
  #$(e, t) {
31657
31712
  this.#c[t] = e, this.#a[e] = t;
@@ -32556,7 +32611,7 @@ async function probeLlmsText(url, timeoutMs, signal, fallbackOrigin) {
32556
32611
  }
32557
32612
 
32558
32613
  // src/tools/smartfetch/cache.ts
32559
- var CACHE = new M({
32614
+ var CACHE = new L({
32560
32615
  maxSize: 50 * 1024 * 1024,
32561
32616
  ttl: 15 * 60 * 1000,
32562
32617
  sizeCalculation: (value) => {
@@ -33487,7 +33542,8 @@ var OhMyOpenCodeLite = async (ctx) => {
33487
33542
  councilTools = config.council ? createCouncilTool(ctx, new CouncilManager(ctx, config, depthTracker, multiplexerEnabled)) : {};
33488
33543
  mcps = createBuiltinMcps(config.disabled_mcps, config.websearch);
33489
33544
  webfetch = createWebfetchTool(ctx);
33490
- multiplexerSessionManager = new MultiplexerSessionManager(ctx, multiplexerConfig);
33545
+ backgroundJobBoard = new BackgroundJobBoard;
33546
+ multiplexerSessionManager = new MultiplexerSessionManager(ctx, multiplexerConfig, backgroundJobBoard);
33491
33547
  autoUpdateChecker = createAutoUpdateCheckerHook(ctx, {
33492
33548
  autoUpdate: config.autoUpdate ?? true
33493
33549
  });
@@ -33502,7 +33558,6 @@ var OhMyOpenCodeLite = async (ctx) => {
33502
33558
  applyPatchHook = createApplyPatchHook(ctx);
33503
33559
  jsonErrorRecoveryHook = createJsonErrorRecoveryHook(ctx);
33504
33560
  foregroundFallback = new ForegroundFallbackManager(ctx.client, runtimeChains, config.fallback?.enabled !== false && Object.keys(runtimeChains).length > 0);
33505
- backgroundJobBoard = new BackgroundJobBoard;
33506
33561
  todoContinuationHook = createTodoContinuationHook(ctx, {
33507
33562
  maxContinuations: config.todoContinuation?.maxContinuations ?? 5,
33508
33563
  cooldownMs: config.todoContinuation?.cooldownMs ?? 3000,