vibe64 0.1.47 → 0.1.49

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 (150) hide show
  1. package/bin/run.js +1734 -1687
  2. package/bin/server.js +75 -75
  3. package/bin/upgrade-state.js +4539 -4471
  4. package/dist/assets/GithubBrowserTabs-BwpiRS2u.js +1 -0
  5. package/dist/assets/{LocalDatabaseServer-6VzPWZxG.js → LocalDatabaseServer-u_Ky7bNS.js} +1 -1
  6. package/dist/assets/{Vibe64AuthSettingsButton-TLwqAxDo.js → Vibe64AuthSettingsButton-BCwswT1G.js} +1 -1
  7. package/dist/assets/{Vibe64DashboardShell-B4dQ-oHD.js → Vibe64DashboardShell-CWlgrR2B.js} +1 -1
  8. package/dist/assets/{Vibe64DatabaseWorkspace-Bh5WIPOj.js → Vibe64DatabaseWorkspace-Dhs8_H0P.js} +1 -1
  9. package/dist/assets/Vibe64OutputControls-Dn548CZa.js +8 -0
  10. package/dist/assets/{Vibe64RepositoryWorkspace-idDg94lc.js → Vibe64RepositoryWorkspace-C-8S4JUF.js} +1 -1
  11. package/dist/assets/{Vibe64SessionFiles-Z9zxosyl.js → Vibe64SessionFiles-Cx6J7DDN.js} +2 -3
  12. package/dist/assets/{Vibe64UiStoryboardView-CrCDWMdR.js → Vibe64UiStoryboardView-DHyhJiWS.js} +1 -1
  13. package/dist/assets/{Vibe64UnavailableSessions-TqsxvGSf.js → Vibe64UnavailableSessions-Da4RxIhA.js} +1 -1
  14. package/dist/assets/{_sessionId_-7F1VGOou.js → _sessionId_-DCpgDPSI.js} +1 -1
  15. package/dist/assets/_slug_-BbEWp01a.js +25 -0
  16. package/dist/assets/{_slug_-B16mTWjj.css → _slug_-DerKOisL.css} +1 -1
  17. package/dist/assets/{access-Cx9RH95J.js → access-D4di2sCr.js} +1 -1
  18. package/dist/assets/{app-DPx4KKOa.js → app-Adr9Iz8p.js} +1 -1
  19. package/dist/assets/asyncModuleRecovery-DJsn5NrL.js +1 -0
  20. package/dist/assets/{changes-DYsuQLFW.js → changes-3Dd1O8Lu.js} +1 -1
  21. package/dist/assets/client-BAXHGUOC.js +1 -0
  22. package/dist/assets/{client-BYsDPxR3.js → client-CCZIu6yc.js} +1 -1
  23. package/dist/assets/{conversation-3ln-WnbL.css → conversation-CSDHdGDb.css} +1 -1
  24. package/dist/assets/conversation-DG9lp25w.js +8 -0
  25. package/dist/assets/conversation-ErAO1CmH.js +13 -0
  26. package/dist/assets/{dashboard-CWswAbYP.js → dashboard-0tCzDYCX.js} +1 -1
  27. package/dist/assets/english-definitions-DeiQ-jTT.js +1 -0
  28. package/dist/assets/env-DsyQ2MFX.js +1 -0
  29. package/dist/assets/{health-C0f6s-G1.js → health-DyTXU-nb.js} +1 -1
  30. package/dist/assets/{history-BQjETNB9.js → history-BXGAdPMI.js} +1 -1
  31. package/dist/assets/{incoming-COpY201m.js → incoming-yajkdGBY.js} +1 -1
  32. package/dist/assets/{index-MWACm8Pp.css → index-B-dukXUB.css} +1 -1
  33. package/dist/assets/index-CGz4Yow6.js +136 -0
  34. package/dist/assets/{integrations-BBkvNRHu.js → integrations-BMrXET36.js} +10 -2
  35. package/dist/assets/issues-kc1XBZCK.js +1 -0
  36. package/dist/assets/{learning-B8_wHoe1.js → learning-CIE5ghYv.js} +1 -1
  37. package/dist/assets/linkPath-Ch9eft18.js +1 -0
  38. package/dist/assets/{placement-DXvgK433.js → placement-BNmlke_j.js} +1 -1
  39. package/dist/assets/placement-DYM3JJ-F.js +1 -0
  40. package/dist/assets/publish-DTh6amqi.js +3 -0
  41. package/dist/assets/pull-requests-CbfGSSIh.js +1 -0
  42. package/dist/assets/{repository-BNPt7UWc.js → repository-BstMh-bG.js} +1 -1
  43. package/dist/assets/settings-Bf8C6dls.js +1 -0
  44. package/dist/assets/{studioGateApi-BVdclhPL.js → studioGateApi-mkX1eOTX.js} +1 -1
  45. package/dist/assets/{studioUrls-CGKCbM_d.js → studioUrls-B0-GdWh8.js} +1 -1
  46. package/dist/assets/useArchivedVibe64Sessions-DIOpfUxD.js +1 -0
  47. package/dist/assets/useCommand-CVuya6vG.js +1 -0
  48. package/dist/assets/useEndpointResource-7-YDfAxX.js +1 -0
  49. package/dist/assets/usePaths-Y6UuQxmI.js +1 -0
  50. package/dist/assets/{useUiFeedback-B51xtCAK.js → useUiFeedback-Bd3rao6E.js} +1 -1
  51. package/dist/assets/useVibe64ConversationLog-ChJOU2SD.js +1 -0
  52. package/dist/assets/{useVibe64DatabaseTools-BE_yXZFn.js → useVibe64DatabaseTools-DKV-TeNJ.js} +1 -1
  53. package/dist/assets/{useVibe64ProjectScope-D7b8n1gx.js → useVibe64ProjectScope-DXjsKKhl.js} +1 -1
  54. package/dist/assets/useVibe64SessionData-BkIHUrP5.js +1 -0
  55. package/dist/assets/useVibe64SessionSelection-N8wX5oqo.js +1 -0
  56. package/dist/assets/{useVibe64SystemGraph-CDDcsye4.js → useVibe64SystemGraph-Db_eD-X8.js} +1 -1
  57. package/dist/assets/{useVibe64Terminal-Zr3Mig2L.js → useVibe64Terminal-B9EWJ9Ba.js} +2 -2
  58. package/dist/assets/vibe64ProjectScope.local-l5_-E6pq.js +1 -0
  59. package/dist/assets/vibe64RepositoryRealtime-CHT4-6VN.js +1 -0
  60. package/dist/assets/vibe64SessionFocus-CS6Ex53G.js +1 -0
  61. package/dist/assets/vibe64SessionFocus-CSm4YJQD.css +1 -0
  62. package/dist/assets/vibe64SessionRequestConfig-xIx-5jxQ.js +1 -0
  63. package/dist/index.html +26 -22
  64. package/docs/colleague-usage/ai-accounts.md +6 -2
  65. package/docs/colleague-usage/ai-balance-and-allowance.md +15 -2
  66. package/docs/colleague-usage/coding-agent-failures.md +2 -1
  67. package/docs/colleague-usage/coding-agent-goals.md +8 -3
  68. package/docs/colleague-usage/coding-agents.md +16 -0
  69. package/docs/colleague-usage/github-work.md +14 -0
  70. package/docs/colleague-usage/preview-browser-checks.md +5 -3
  71. package/docs/colleague-usage/project-setup.md +6 -3
  72. package/docs/colleague-usage/running-vibe64-on-your-computer.md +3 -1
  73. package/docs/colleague-usage/sessions.md +35 -7
  74. package/docs/colleague-usage/starter-apps.md +3 -0
  75. package/docs/colleague-usage/temporary-chat-context.md +2 -1
  76. package/docs/colleague-usage/temporary-chats.md +17 -5
  77. package/node_modules/@jskit-ai/assistant-core/CHANGELOG.md +539 -0
  78. package/node_modules/@jskit-ai/assistant-core/locales/en.json +383 -0
  79. package/node_modules/@jskit-ai/assistant-core/package.json +3 -2
  80. package/node_modules/@jskit-ai/assistant-runtime/CHANGELOG.md +138 -0
  81. package/node_modules/@jskit-ai/assistant-runtime/README.md +2 -1
  82. package/node_modules/@jskit-ai/assistant-runtime/locales/en.json +137 -0
  83. package/node_modules/@jskit-ai/assistant-runtime/package.json +3 -2
  84. package/node_modules/@jskit-ai/assistant-runtime/src/server/repositories/assistantConfigRepository.js +223 -203
  85. package/node_modules/@jskit-ai/assistant-runtime/src/server/repositories/conversationsRepository.js +286 -266
  86. package/node_modules/@jskit-ai/assistant-runtime/src/server/repositories/messagesRepository.js +270 -250
  87. package/node_modules/@jskit-ai/assistant-voice/locales/en.json +182 -0
  88. package/node_modules/@jskit-ai/assistant-voice/package.json +3 -2
  89. package/node_modules/@jskit-ai/connector-google-calendar/CHANGELOG.md +83 -0
  90. package/node_modules/@jskit-ai/connector-google-calendar/locales/en.json +91 -0
  91. package/node_modules/@jskit-ai/connector-google-calendar/package.json +4 -3
  92. package/node_modules/@jskit-ai/connectors-catalog/CHANGELOG.md +1722 -0
  93. package/node_modules/@jskit-ai/connectors-catalog/README.md +11 -0
  94. package/node_modules/@jskit-ai/connectors-catalog/locales/en.json +3139 -0
  95. package/node_modules/@jskit-ai/connectors-catalog/package.json +5 -4
  96. package/node_modules/@jskit-ai/connectors-core/CHANGELOG.md +183 -0
  97. package/node_modules/@jskit-ai/connectors-core/locales/en.json +92 -0
  98. package/node_modules/@jskit-ai/connectors-core/package.json +3 -2
  99. package/node_modules/@jskit-ai/http-runtime/CHANGELOG.md +31 -0
  100. package/node_modules/@jskit-ai/http-runtime/locales/en.json +14 -0
  101. package/node_modules/@jskit-ai/http-runtime/package.json +3 -2
  102. package/node_modules/@jskit-ai/kernel/CHANGELOG.md +182 -0
  103. package/node_modules/@jskit-ai/kernel/locales/en.json +94 -0
  104. package/node_modules/@jskit-ai/kernel/package.json +6 -2
  105. package/node_modules/@jskit-ai/payments-core/CHANGELOG.md +128 -0
  106. package/node_modules/@jskit-ai/payments-core/locales/en.json +77 -0
  107. package/node_modules/@jskit-ai/payments-core/package.json +3 -2
  108. package/node_modules/@jskit-ai/realtime/CHANGELOG.md +20 -0
  109. package/node_modules/@jskit-ai/realtime/locales/en.json +14 -0
  110. package/node_modules/@jskit-ai/realtime/package.json +3 -2
  111. package/node_modules/@jskit-ai/resource-core/package.json +1 -1
  112. package/node_modules/@jskit-ai/resource-crud-core/package.json +1 -1
  113. package/node_modules/@jskit-ai/uploads-runtime/CHANGELOG.md +35 -0
  114. package/node_modules/@jskit-ai/uploads-runtime/locales/en.json +15 -0
  115. package/node_modules/@jskit-ai/uploads-runtime/package.json +3 -2
  116. package/node_modules/@local/vibe64-execution/src/host/execHelper.js +49 -48
  117. package/node_modules/@local/vibe64-execution/src/server/gitTurnCheckpointCommand.js +1327 -0
  118. package/node_modules/@local/vibe64-genesis/bin/vibe64-genesis-host-context +430 -390
  119. package/node_modules/@local/vibe64-genesis/src/server/index.js +45 -45
  120. package/node_modules/@local/vibe64-genesis/src/server/promptContext.js +119 -119
  121. package/node_modules/@local/vibe64-runtime/src/server/codexAppServerProcess.js +57 -57
  122. package/node_modules/@local/vibe64-sessions/package.json +2 -1
  123. package/node_modules/@local/vibe64-terminals/src/server/opencodeSessionEnvironmentPlugin.js +195 -175
  124. package/node_modules/@local/vibe64-terminals/src/server/sessionWorkOperationCommand.js +1385 -1362
  125. package/package.json +15 -15
  126. package/server.bundle.mjs +44206 -42825
  127. package/dist/assets/GithubBrowserTabs-D-Z3TlA8.js +0 -1
  128. package/dist/assets/Vibe64OutputControls-DtybwgL3.js +0 -8
  129. package/dist/assets/_slug_-Bq84T_Iv.js +0 -24
  130. package/dist/assets/conversation-Bn7wpATa.js +0 -2
  131. package/dist/assets/conversation-CNcCrV-R.js +0 -16
  132. package/dist/assets/definitions-CEbi4qae.js +0 -1
  133. package/dist/assets/env-X7EOFLtl.js +0 -1
  134. package/dist/assets/index-CBo1BEk6.js +0 -138
  135. package/dist/assets/issues-BiSiUd5o.js +0 -1
  136. package/dist/assets/placement-B5T1LR7m.js +0 -1
  137. package/dist/assets/publish-CeLZE2AG.js +0 -3
  138. package/dist/assets/pull-requests-pTdQOT7i.js +0 -1
  139. package/dist/assets/settings-lecRzZ-r.js +0 -1
  140. package/dist/assets/useArchivedVibe64Sessions-DHYRnyJD.js +0 -1
  141. package/dist/assets/useCommand-Epd2yHhQ.js +0 -1
  142. package/dist/assets/useEndpointResource-DBRQISI_.js +0 -1
  143. package/dist/assets/usePaths-DdAnjVDj.js +0 -1
  144. package/dist/assets/useVibe64ConversationLog-DboM3tYN.js +0 -1
  145. package/dist/assets/useVibe64SessionData-CreWtQAO.js +0 -1
  146. package/dist/assets/useVibe64SessionSelection-CDaX4uwY.js +0 -1
  147. package/dist/assets/vibe64ProjectScope.local-BxTBYuRg.js +0 -1
  148. package/dist/assets/vibe64RepositoryRealtime-C-J0I5jY.js +0 -1
  149. package/dist/assets/vibe64SessionFocus-DSW5Irm6.css +0 -1
  150. package/dist/assets/vibe64SessionFocus-DzqbVq60.js +0 -1
@@ -14,7 +14,7 @@ e=new Ze(t):ArrayBuffer.isView(t)?e=new Ze(t.buffer,t.byteOffset,t.byteLength):(
14
14
  exports.mask=function(e,r,o,n,s){s<48?Pt(e,r,o,n,s):t.mask(e,r,o,n,s)},Re.exports.unmask=function(e,r){e.length<32?Rt(e,
15
15
  r):t.unmask(e,r)}}catch{}});var Mt=F((xs,kt)=>{"use strict";var Nt=Symbol("kDone"),et=Symbol("kRun"),tt=class{constructor(e){this[Nt]=()=>{this.pending--,
16
16
  this[et]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[et]()}[et](){if(this.pending!==
17
- this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[Nt])}}};kt.exports=tt});var _e=F((Ss,Bt)=>{"use strict";var Ce=U("zlib"),Lt=Ee(),on=Mt(),{kStatusCode:Dt}=Q(),sn=Buffer[Symbol.species],an=Buffer.
17
+ this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[Nt])}}};kt.exports=tt});var _e=F((Ss,Bt)=>{"use strict";var Ce=U("zlib"),Dt=Ee(),on=Mt(),{kStatusCode:Lt}=Q(),sn=Buffer[Symbol.species],an=Buffer.
18
18
  from([0,0,255,255]),ke=Symbol("permessage-deflate"),ee=Symbol("total-length"),he=Symbol("callback"),se=Symbol("buffers"),
19
19
  me=Symbol("error"),Ne,rt=class{constructor(e){if(this._options=e||{},this._threshold=this._options.threshold!==void 0?this.
20
20
  _options.threshold:1024,this._maxPayload=this._options.maxPayload|0,this._isServer=!!this._options.isServer,this._deflate=
@@ -48,18 +48,18 @@ e,r,(s,c)=>{n(),o(s,c)})})}_decompress(e,r,o){let n=this._isServer?"client":"ser
48
48
  window_bits`,c=typeof this.params[s]!="number"?Ce.Z_DEFAULT_WINDOWBITS:this.params[s];this._inflate=Ce.createInflateRaw(
49
49
  {...this._options.zlibInflateOptions,windowBits:c}),this._inflate[ke]=this,this._inflate[ee]=0,this._inflate[se]=[],this.
50
50
  _inflate.on("error",un),this._inflate.on("data",Ut)}this._inflate[he]=o,this._inflate.write(e),r&&this._inflate.write(an),
51
- this._inflate.flush(()=>{let s=this._inflate[me];if(s){this._inflate.close(),this._inflate=null,o(s);return}let c=Lt.concat(
51
+ this._inflate.flush(()=>{let s=this._inflate[me];if(s){this._inflate.close(),this._inflate=null,o(s);return}let c=Dt.concat(
52
52
  this._inflate[se],this._inflate[ee]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):
53
53
  (this._inflate[ee]=0,this._inflate[se]=[],r&&this.params[`${n}_no_context_takeover`]&&this._inflate.reset()),o(null,c)})}_compress(e,r,o){
54
54
  let n=this._isServer?"server":"client";if(!this._deflate){let s=`${n}_max_window_bits`,c=typeof this.params[s]!="number"?
55
55
  Ce.Z_DEFAULT_WINDOWBITS:this.params[s];this._deflate=Ce.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:c}),
56
56
  this._deflate[ee]=0,this._deflate[se]=[],this._deflate.on("data",cn)}this._deflate[he]=o,this._deflate.write(e),this._deflate.
57
- flush(Ce.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=Lt.concat(this._deflate[se],this._deflate[ee]);r&&(s=new sn(s.
57
+ flush(Ce.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let s=Dt.concat(this._deflate[se],this._deflate[ee]);r&&(s=new sn(s.
58
58
  buffer,s.byteOffset,s.length-4)),this._deflate[he]=null,this._deflate[ee]=0,this._deflate[se]=[],r&&this.params[`${n}_no\
59
59
  _context_takeover`]&&this._deflate.reset(),o(null,s)})}};Bt.exports=rt;function cn(t){this[se].push(t),this[ee]+=t.length}
60
60
  function Ut(t){if(this[ee]+=t.length,this[ke]._maxPayload<1||this[ee]<=this[ke]._maxPayload){this[se].push(t);return}this[me]=
61
- new RangeError("Max payload size exceeded"),this[me].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[me][Dt]=1009,this.removeListener(
62
- "data",Ut),this.reset()}function un(t){if(this[ke]._inflate=null,this[me]){this[he](this[me]);return}t[Dt]=1007,this[he](
61
+ new RangeError("Max payload size exceeded"),this[me].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[me][Lt]=1009,this.removeListener(
62
+ "data",Ut),this.reset()}function un(t){if(this[ke]._inflate=null,this[me]){this[he](this[me]);return}t[Lt]=1007,this[he](
63
63
  t)}});var ye=F((ws,Me)=>{"use strict";var{isUtf8:$t}=U("buffer"),{hasBlob:ln}=Q(),dn=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
64
64
  0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
65
65
  1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function fn(t){return t>=
@@ -72,8 +72,8 @@ bject"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stre
72
72
  "Blob"||t[Symbol.toStringTag]==="File")}Me.exports={isBlob:pn,isValidStatusCode:fn,isValidUTF8:nt,tokenChars:dn};if($t)Me.
73
73
  exports.isValidUTF8=function(t){return t.length<24?nt(t):$t(t)};else if(!process.env.WS_NO_UTF_8_VALIDATE)try{let t=U("utf-8-validate");
74
74
  Me.exports.isValidUTF8=function(e){return e.length<32?nt(e):t(e)}}catch{}});var ct=F((Es,Vt)=>{"use strict";var{Writable:hn}=U("stream"),Ht=_e(),{BINARY_TYPES:mn,EMPTY_BUFFER:jt,kStatusCode:_n,kWebSocket:yn}=Q(),
75
- {concat:ot,toArrayBuffer:gn,unmask:xn}=Ee(),{isValidStatusCode:Sn,isValidUTF8:zt}=ye(),Le=Buffer[Symbol.species],W=0,Ft=1,
76
- Gt=2,qt=3,st=4,it=5,De=6,at=class extends hn{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==
75
+ {concat:ot,toArrayBuffer:gn,unmask:xn}=Ee(),{isValidStatusCode:Sn,isValidUTF8:zt}=ye(),De=Buffer[Symbol.species],W=0,Ft=1,
76
+ Gt=2,qt=3,st=4,it=5,Le=6,at=class extends hn{constructor(e={}){super(),this._allowSynchronousEvents=e.allowSynchronousEvents!==
77
77
  void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||mn[0],this._extensions=e.extensions||{},this._isServer=
78
78
  !!e.isServer,this._maxBufferedChunks=e.maxBufferedChunks|0,this._maxFragments=e.maxFragments|0,this._maxPayload=e.maxPayload|
79
79
  0,this._skipUTF8Validation=!!e.skipUTF8Validation,this[yn]=void 0,this._bufferedBytes=0,this._buffers=[],this._compressed=
@@ -82,12 +82,12 @@ void 0?e.allowSynchronousEvents:!0,this._binaryType=e.binaryType||mn[0],this._ex
82
82
  if(this._opcode===8&&this._state==W)return o();if(this._maxBufferedChunks>0&&this._buffers.length>=this._maxBufferedChunks){
83
83
  o(this.createError(RangeError,"Too many buffered chunks",!1,1008,"WS_ERR_TOO_MANY_BUFFERED_PARTS"));return}this._bufferedBytes+=
84
84
  e.length,this._buffers.push(e),this.startLoop(o)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this.
85
- _buffers.shift();if(e<this._buffers[0].length){let o=this._buffers[0];return this._buffers[0]=new Le(o.buffer,o.byteOffset+
86
- e,o.length-e),new Le(o.buffer,o.byteOffset,e)}let r=Buffer.allocUnsafe(e);do{let o=this._buffers[0],n=r.length-e;e>=o.length?
87
- r.set(this._buffers.shift(),n):(r.set(new Uint8Array(o.buffer,o.byteOffset,e),n),this._buffers[0]=new Le(o.buffer,o.byteOffset+
85
+ _buffers.shift();if(e<this._buffers[0].length){let o=this._buffers[0];return this._buffers[0]=new De(o.buffer,o.byteOffset+
86
+ e,o.length-e),new De(o.buffer,o.byteOffset,e)}let r=Buffer.allocUnsafe(e);do{let o=this._buffers[0],n=r.length-e;e>=o.length?
87
+ r.set(this._buffers.shift(),n):(r.set(new Uint8Array(o.buffer,o.byteOffset,e),n),this._buffers[0]=new De(o.buffer,o.byteOffset+
88
88
  e,o.length-e)),e-=o.length}while(e>0);return r}startLoop(e){this._loop=!0;do switch(this._state){case W:this.getInfo(e);
89
89
  break;case Ft:this.getPayloadLength16(e);break;case Gt:this.getPayloadLength64(e);break;case qt:this.getMask();break;case st:
90
- this.getData(e);break;case it:case De:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<
90
+ this.getData(e);break;case it:case Le:this._loop=!1;return}while(this._loop);this._errored||e()}getInfo(e){if(this._bufferedBytes<
91
91
  2){this._loop=!1;return}let r=this.consume(2);if((r[0]&48)!==0){let n=this.createError(RangeError,"RSV2 and RSV3 must be\
92
92
  clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");e(n);return}let o=(r[0]&64)===64;if(o&&!this._extensions[Ht.extensionName]){
93
93
  let n=this.createError(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");e(n);return}if(this._fin=(r[0]&
@@ -123,15 +123,15 @@ this.dataMessage(r),this._state===W&&this.startLoop(r)})}dataMessage(e){if(!this
123
123
  o=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._numFragments=0,this._fragments=
124
124
  [],this._opcode===2){let n;this._binaryType==="nodebuffer"?n=ot(o,r):this._binaryType==="arraybuffer"?n=gn(ot(o,r)):this.
125
125
  _binaryType==="blob"?n=new Blob(o):n=o,this._allowSynchronousEvents?(this.emit("message",n,!0),this._state=W):(this._state=
126
- De,setImmediate(()=>{this.emit("message",n,!0),this._state=W,this.startLoop(e)}))}else{let n=ot(o,r);if(!this._skipUTF8Validation&&
126
+ Le,setImmediate(()=>{this.emit("message",n,!0),this._state=W,this.startLoop(e)}))}else{let n=ot(o,r);if(!this._skipUTF8Validation&&
127
127
  !zt(n)){let s=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");e(s);return}this._state===it||
128
- this._allowSynchronousEvents?(this.emit("message",n,!1),this._state=W):(this._state=De,setImmediate(()=>{this.emit("mess\
128
+ this._allowSynchronousEvents?(this.emit("message",n,!1),this._state=W):(this._state=Le,setImmediate(()=>{this.emit("mess\
129
129
  age",n,!1),this._state=W,this.startLoop(e)}))}}controlMessage(e,r){if(this._opcode===8){if(e.length===0)this._loop=!1,this.
130
130
  emit("conclude",1005,jt),this.end();else{let o=e.readUInt16BE(0);if(!Sn(o)){let s=this.createError(RangeError,`invalid s\
131
- tatus code ${o}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");r(s);return}let n=new Le(e.buffer,e.byteOffset+2,e.length-2);if(!this.
131
+ tatus code ${o}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");r(s);return}let n=new De(e.buffer,e.byteOffset+2,e.length-2);if(!this.
132
132
  _skipUTF8Validation&&!zt(n)){let s=this.createError(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");r(s);return}
133
133
  this._loop=!1,this.emit("conclude",o,n),this.end()}this._state=W;return}this._allowSynchronousEvents?(this.emit(this._opcode===
134
- 9?"ping":"pong",e),this._state=W):(this._state=De,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=
134
+ 9?"ping":"pong",e),this._state=W):(this._state=Le,setImmediate(()=>{this.emit(this._opcode===9?"ping":"pong",e),this._state=
135
135
  W,this.startLoop(r)}))}createError(e,r,o,n,s){this._loop=!1,this._errored=!0;let c=new e(o?`Invalid WebSocket frame: ${r}`:
136
136
  r);return Error.captureStackTrace(c,this.createError),c.code=s,c[_n]=n,c}};Vt.exports=at});var dt=F((vs,Jt)=>{"use strict";var{Duplex:Cs}=U("stream"),{randomFillSync:wn}=U("crypto"),{types:{isUint8Array:En}}=U("util"),
137
137
  Wt=_e(),{EMPTY_BUFFER:Cn,kWebSocket:vn,NOOP:bn}=Q(),{isBlob:ge,isValidStatusCode:Tn}=ye(),{mask:Xt,toBuffer:ae}=Ee(),X=Symbol(
@@ -209,7 +209,7 @@ f=_=-1}else throw new SyntaxError(`Unexpected character at index ${m}`);if(f===-
209
209
  "Unexpected end of input");_===-1&&(_=m);let d=t.slice(f,_);return c===void 0?Y(e,d,r):(l===void 0?Y(r,d,!0):o?Y(r,l,d.replace(
210
210
  /\\/g,"")):Y(r,l,d),Y(e,c,r)),e}function kn(t){return Object.keys(t).map(e=>{let r=t[e];return Array.isArray(r)||(r=[r]),
211
211
  r.map(o=>[e].concat(Object.keys(o).map(n=>{let s=o[n];return Array.isArray(s)||(s=[s]),s.map(c=>c===!0?n:`${n}=${c}`).join(
212
- "; ")})).join("; ")).join(", ")}).join(", ")}sr.exports={format:kn,parse:Nn}});var Fe=F((Is,yr)=>{"use strict";var Mn=U("events"),Ln=U("https"),Dn=U("http"),cr=U("net"),Un=U("tls"),{randomBytes:Bn,createHash:$n}=U("crypto"),
212
+ "; ")})).join("; ")).join(", ")}).join(", ")}sr.exports={format:kn,parse:Nn}});var Fe=F((Is,yr)=>{"use strict";var Mn=U("events"),Dn=U("https"),Ln=U("http"),cr=U("net"),Un=U("tls"),{randomBytes:Bn,createHash:$n}=U("crypto"),
213
213
  {Duplex:As,Readable:Os}=U("stream"),{URL:pt}=U("url"),ie=_e(),Hn=ct(),jn=dt(),{isBlob:zn}=ye(),{BINARY_TYPES:ir,CLOSE_TIMEOUT:Fn,
214
214
  EMPTY_BUFFER:He,GUID:Gn,kForOnEventAttribute:ht,kListener:qn,kStatusCode:Vn,kWebSocket:H,NOOP:ur}=Q(),{EventTarget:{addEventListener:Wn,
215
215
  removeEventListener:Xn}}=or(),{format:Jn,parse:Kn}=$e(),{toBuffer:Yn}=Ee(),lr=Symbol("kAborted"),mt=[8,13],re=["CONNECTI\
@@ -266,7 +266,7 @@ n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.proto
266
266
  "http:"?s.protocol="ws:":s.protocol==="https:"&&(s.protocol="wss:"),t._url=s.href;let c=s.protocol==="wss:",l=s.protocol===
267
267
  "ws+unix:",f;if(s.protocol!=="ws:"&&!c&&!l?f=`The URL's protocol must be one of "ws:", "wss:", "http:", "https:", or "ws\
268
268
  +unix:"`:l&&!s.pathname?f="The URL's pathname is empty":s.hash&&(f="The URL contains a fragment identifier"),f){let x=new SyntaxError(
269
- f);if(t._redirects===0)throw x;je(t,x);return}let h=c?443:80,_=Bn(16).toString("base64"),m=c?Ln.request:Dn.request,d=new Set,
269
+ f);if(t._redirects===0)throw x;je(t,x);return}let h=c?443:80,_=Bn(16).toString("base64"),m=c?Dn.request:Ln.request,d=new Set,
270
270
  E;if(n.createConnection=n.createConnection||(c?eo:Qn),n.defaultPort=n.defaultPort||h,n.port=s.port||h,n.host=s.hostname.
271
271
  startsWith("[")?s.hostname.slice(1,-1):s.hostname,n.headers={...n.headers,"Sec-WebSocket-Version":n.protocolVersion,"Sec\
272
272
  -WebSocket-Key":_,Connection:"Upgrade",Upgrade:"websocket"},n.path=s.pathname+s.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&
@@ -283,15 +283,15 @@ n.auth&&!o.headers.authorization&&(o.headers.authorization="Basic "+Buffer.from(
283
283
  t._redirects&&t.emit("redirect",t.url,S)}else S=t._req=m(n);n.timeout&&S.on("timeout",()=>{G(t,S,"Opening handshake has \
284
284
  timed out")}),S.on("error",x=>{S===null||S[lr]||(S=t._req=null,je(t,x))}),S.on("response",x=>{let C=x.headers.location,I=x.
285
285
  statusCode;if(C&&n.followRedirects&&I>=300&&I<400){if(++t._redirects>n.maxRedirects){G(t,S,"Maximum redirects exceeded");
286
- return}S.abort();let D;try{D=new pt(C,e)}catch{let T=new SyntaxError(`Invalid URL: ${C}`);je(t,T);return}dr(t,D,r,o)}else
286
+ return}S.abort();let L;try{L=new pt(C,e)}catch{let T=new SyntaxError(`Invalid URL: ${C}`);je(t,T);return}dr(t,L,r,o)}else
287
287
  t.emit("unexpected-response",S,x)||G(t,S,`Unexpected server response: ${x.statusCode}`)}),S.on("upgrade",(x,C,I)=>{if(t.
288
- emit("upgrade",x),t.readyState!==M.CONNECTING)return;S=t._req=null;let D=x.headers.upgrade;if(D===void 0||D.toLowerCase()!==
288
+ emit("upgrade",x),t.readyState!==M.CONNECTING)return;S=t._req=null;let L=x.headers.upgrade;if(L===void 0||L.toLowerCase()!==
289
289
  "websocket"){G(t,C,"Invalid Upgrade header");return}let b=$n("sha1").update(_+Gn).digest("base64");if(x.headers["sec-web\
290
290
  socket-accept"]!==b){G(t,C,"Invalid Sec-WebSocket-Accept header");return}let T=x.headers["sec-websocket-protocol"],P;if(T!==
291
291
  void 0?d.size?d.has(T)||(P="Server sent an invalid subprotocol"):P="Server sent a subprotocol but none was requested":d.
292
292
  size&&(P="Server sent no subprotocol"),P){G(t,C,P);return}T&&(t._protocol=T);let R=x.headers["sec-websocket-extensions"];
293
293
  if(R!==void 0){if(!E){G(t,C,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let O;
294
- try{O=Kn(R)}catch{G(t,C,"Invalid Sec-WebSocket-Extensions header");return}let L=Object.keys(O);if(L.length!==1||L[0]!==ie.
294
+ try{O=Kn(R)}catch{G(t,C,"Invalid Sec-WebSocket-Extensions header");return}let D=Object.keys(O);if(D.length!==1||D[0]!==ie.
295
295
  extensionName){G(t,C,"Server indicated an extension that was not requested");return}try{E.accept(O[ie.extensionName])}catch{
296
296
  G(t,C,"Invalid Sec-WebSocket-Extensions header");return}t._extensions[ie.extensionName]=E}t.setSocket(C,I,{allowSynchronousEvents:n.
297
297
  allowSynchronousEvents,generateMask:n.generateMask,maxBufferedChunks:n.maxBufferedChunks,maxFragments:n.maxFragments,maxPayload:n.
@@ -381,9 +381,9 @@ l","Content-Length":Buffer.byteLength(r),...o},t.once("finish",t.destroy),t.end(
381
381
  \r
382
382
  `+r)}function de(t,e,r,o,n,s){if(t.listenerCount("wsClientError")){let c=new Error(n);Error.captureStackTrace(c,de),t.emit(
383
383
  "wsClientError",c,r,e)}else Oe(r,o,n,s)}});var Co=oe(wr(),1),vo=oe($e(),1),bo=oe(_e(),1),To=oe(ct(),1),Ao=oe(dt(),1),Oo=oe(yt(),1),Io=oe(Fe(),1),Po=oe(Ir(),1);import{spawn as rs}from"node:child_process";import{chmod as Pi,mkdir as Ri,readFile as Ni,readdir as ki,rename as ns,rm as os,
384
- stat as Mi,writeFile as ss}from"node:fs/promises";import is from"node:os";import qr from"node:path";var Ds=Object.freeze(["none","pending","committed","rolledBack","unknown"]);function qe(t){return!!(t&&typeof t=="object"&&!Array.isArray(t))}function fe(t,{fallback:e=0}={}){let r=Number(t);return!Number.isInteger(r)||r<1?e:r}function k(t){return String(t??"").trim()}import{execFile as No,spawn as Gs}from"node:child_process";import{mkdtemp as Vs,open as Ws,readFile as xt,readdir as ko,rm as Xs}from"node:fs/promises";import{setTimeout as Pr}from"node:timers/promises";import{promisify as Mo}from"node:util";var Lo=Mo(No);async function Do(t){
385
- let{stdout:e}=await Lo("ps",t,{env:{...process.env,LC_ALL:"C",TZ:"UTC"},maxBuffer:67108864});return e}function Rr({runtimeTokenEnvironmentName:t="JSKIT_EXECUTION_RUNTIME_TOKEN",commandHashEnvironmentName:e="JSKIT_EXECUTION\
386
- _COMMAND_HASH",label:r="Native",unavailableCode:o="native_process_identity_unavailable",platform:n=process.platform,ps:s=Do}={}){
384
+ stat as Mi,writeFile as ss}from"node:fs/promises";import is from"node:os";import qr from"node:path";var Ls=Object.freeze(["none","pending","committed","rolledBack","unknown"]);function qe(t){return!!(t&&typeof t=="object"&&!Array.isArray(t))}function fe(t,{fallback:e=0}={}){let r=Number(t);return!Number.isInteger(r)||r<1?e:r}function k(t){return String(t??"").trim()}import{execFile as No,spawn as Gs}from"node:child_process";import{mkdtemp as Vs,open as Ws,readFile as xt,readdir as ko,rm as Xs}from"node:fs/promises";import{setTimeout as Pr}from"node:timers/promises";import{promisify as Mo}from"node:util";var Do=Mo(No);async function Lo(t){
385
+ let{stdout:e}=await Do("ps",t,{env:{...process.env,LC_ALL:"C",TZ:"UTC"},maxBuffer:67108864});return e}function Rr({runtimeTokenEnvironmentName:t="JSKIT_EXECUTION_RUNTIME_TOKEN",commandHashEnvironmentName:e="JSKIT_EXECUTION\
386
+ _COMMAND_HASH",label:r="Native",unavailableCode:o="native_process_identity_unavailable",platform:n=process.platform,ps:s=Lo}={}){
387
387
  let l=n==="darwin"?100:25,f=1,h=Object.freeze({linux:"linux-proc",darwin:"darwin"}),_=h[n]||"",m=Object.freeze({RUNNING:"\
388
388
  running",STOPPED:"stopped"}),d=Object.freeze({ABSENT:"absent",AMBIGUOUS:"ambiguous",EXACT:"exact",INVALID:"invalid",MISMATCH:"\
389
389
  mismatch"});function E(i={}){return!!(Number.isSafeInteger(Number(i.pid))&&Number(i.pid)>0&&b(i.processIdentity)&&[m.RUNNING,
@@ -393,9 +393,9 @@ kill(a,0),!0}catch{return!1}}function x(i){let a=Number(i);if(!Number.isSafeInte
393
393
  "win32"?u:-u;try{return process.kill(p,a),!0}catch(g){if(!["ESRCH","EPERM"].includes(String(g?.code||"")))throw g;return!1}}
394
394
  function I(i=""){let a=String(i||""),u=a.lastIndexOf(")");if(u<0)return null;let p=a.slice(u+1).trim().split(/\s+/u),g=String(
395
395
  p[0]||""),y=Number(p[1]),w=Number(p[2]),A=String(p[19]||"");return!/^[A-Z]$/u.test(g)||!Number.isSafeInteger(y)||y<0||!Number.
396
- isSafeInteger(w)||w<=0||!/^\d+$/u.test(A)?null:{parentPid:y,processGroupId:w,startTimeTicks:A,state:g}}function D(i={}){
396
+ isSafeInteger(w)||w<=0||!/^\d+$/u.test(A)?null:{parentPid:y,processGroupId:w,startTimeTicks:A,state:g}}function L(i={}){
397
397
  let a=qe(i)?i:{};return{commandHash:k(a.commandHash),platform:k(a.platform),runtimeToken:k(a.runtimeToken),startTimeTicks:k(
398
- a.startTimeTicks),version:Number(a.version||0)}}function b(i={}){let a=D(i);return!!(a.version===f&&Object.values(h).includes(
398
+ a.startTimeTicks),version:Number(a.version||0)}}function b(i={}){let a=L(i);return!!(a.version===f&&Object.values(h).includes(
399
399
  a.platform)&&/^[a-f0-9]{12}$/u.test(a.commandHash)&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu.
400
400
  test(a.runtimeToken)&&/^\d+$/u.test(a.startTimeTicks))}function T(i=[],a=""){let u=i.find(p=>p.startsWith(`${a}=`));return u?
401
401
  u.slice(a.length+1):""}async function P(){let i=[],a=await ko("/proc",{withFileTypes:!0}).catch(()=>[]);for(let u of a){
@@ -404,12 +404,12 @@ if(!u.isDirectory()||!/^\d+$/u.test(u.name))continue;let p=Number(u.name),g=awai
404
404
  v?.code||"")==="ENOENT")continue;A=!1}let N=A?w.toString("utf8").split("\0"):[];i.push({...y,commandHash:T(N,e),environmentReadable:A,
405
405
  pid:p,runtimeToken:T(N,t)})}return i}let R=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function O(i=""){
406
406
  let a=/^\w{3}\s+(\w{3})\s+(\d{1,2})\s+(\d{2}):(\d{2}):(\d{2})\s+(\d{4})$/u.exec(String(i).trim()),u=a?R.indexOf(a[1]):-1;
407
- if(u<0)return"";let[,,p,g,y,w,A]=a.map(Number);return String(Date.UTC(A,u,p,g,y,w)/1e3)}function L(i=""){let a=new Map;for(let u of String(
407
+ if(u<0)return"";let[,,p,g,y,w,A]=a.map(Number);return String(Date.UTC(A,u,p,g,y,w)/1e3)}function D(i=""){let a=new Map;for(let u of String(
408
408
  i).split(`
409
409
  `)){let p=/^\s*(\d+) (.*)$/u.exec(u);p&&a.set(Number(p[1]),p[2])}return a}function j(i,a){if(i===void 0||!a?.startsWith(
410
410
  i))return null;let u=a.slice(i.length).split(/\s+/u).filter(p=>/^[^=\s]+=/u.test(p));return u.length?u:null}async function q(){
411
411
  let i=process.getuid(),a=["-x","-U",String(i),"-ww","-o","pid=,command="],[u,p,g]=await Promise.all([s(["-ax","-o","pid=\
412
- ,pgid=,uid=,stat=,lstart="]),s(a),s(["-E",...a])]),y=L(p),w=L(g),A=[];for(let N of String(u).split(`
412
+ ,pgid=,uid=,stat=,lstart="]),s(a),s(["-E",...a])]),y=D(p),w=D(g),A=[];for(let N of String(u).split(`
413
413
  `)){let v=/^\s*(\d+)\s+(\d+)\s+(\d+)\s+(\S+)\s+(\w{3}\s+\w{3}\s+\d{1,2}\s+[\d:]{8}\s+\d{4})\s*$/u.exec(N);if(!v||v[4].startsWith(
414
414
  "Z"))continue;let Z=Number(v[1]),ne=Number(v[3])===i?j(y.get(Z),w.get(Z)):null;A.push({commandHash:T(ne||[],e),environmentReadable:!!ne,
415
415
  pid:Z,processGroupId:Number(v[2]),runtimeToken:T(ne||[],t),startTimeTicks:O(v[5])})}return A}function z(i={}){let a=Object.
@@ -445,10 +445,10 @@ d.MISMATCH].includes(g.status);return{descendantProcessGroups:y.filter(A=>A!==Nu
445
445
  i.pid),processExitVerified:w,signaledProcessGroups:y,stopped:w&&y.length>0}}async function Ke(i){if(n!=="darwin")return I(
446
446
  await xt(`/proc/${i}/stat`,"utf8").catch(()=>""));let a=String(await s(["-o","pgid=,lstart=","-p",String(i)]).catch(()=>"")),
447
447
  u=/^\s*(\d+)\s+(.+?)\s*$/u.exec(a);return u?{processGroupId:Number(u[1]),startTimeTicks:O(u[2])}:null}async function Ye({
448
- commandHash:i="",pid:a=null,reportedIdentity:u=null,runtimeToken:p=""}={}){let g=k(i),y=k(p),w=D(u);if(b(w)&&w.commandHash===
448
+ commandHash:i="",pid:a=null,reportedIdentity:u=null,runtimeToken:p=""}={}){let g=k(i),y=k(p),w=L(u);if(b(w)&&w.commandHash===
449
449
  g&&w.runtimeToken===y)return w;let A=Number(a),N=_&&Number.isSafeInteger(A)&&A>0?await Ke(A):null;if(!N?.startTimeTicks||
450
450
  N.processGroupId!==A){let v=new Error(`${r} process identity could not be captured.`);throw v.code=o,v}return{commandHash:g,
451
- platform:_,runtimeToken:y,startTimeTicks:N.startTimeTicks,version:f}}return Object.freeze({normalize:D,isValid:b,normalizeInspection:z,
451
+ platform:_,runtimeToken:y,startTimeTicks:N.startTimeTicks,version:f}}return Object.freeze({normalize:L,isValid:b,normalizeInspection:z,
452
452
  capture:Ye,inspect:$,stop:Je,isProcessAlive:S})}import{execFile as Uo}from"node:child_process";import{open as ri,readFile as ni,rename as Bo,rm as $o,writeFile as Ho}from"node:fs/promises";
453
453
  import kr from"node:path";import{promisify as jo}from"node:util";var zo=jo(Uo);async function Mr({command:t,runtimeDir:e,bundled:r=!1,signal:o,additionalModels:n=[]}){let s,c=new Map;try{let{stdout:_}=await zo(
454
454
  t,["debug","models",...r?["--bundled"]:[],"-c","check_for_update_on_startup=false"],{encoding:"utf8",maxBuffer:16777216,
@@ -463,10 +463,10 @@ code_mode_host","computer_use","default_mode_request_user_input","deferred_execu
463
463
  ol","shell_tool","skill_mcp_dependency_install","skill_search","tool_call_mcp_elicitation","tool_suggest","unified_exec",
464
464
  "unified_exec_zsh_fork","view_image"]);function St(t=""){return Array.from(String(t)).some(e=>{let r=e.codePointAt(0);return r<=
465
465
  31||r===127})}function Nr(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=Object.getPrototypeOf(t);return e===
466
- Object.prototype||e===null}function Lr(t){if(!t||typeof t!="object"||Object.isFrozen(t))return t;for(let e of Object.values(
467
- t))Lr(e);return Object.freeze(t)}function Go(t="",e={}){let r=new Error(k(t)||"Codex cannot prove the helper execution p\
466
+ Object.prototype||e===null}function Dr(t){if(!t||typeof t!="object"||Object.isFrozen(t))return t;for(let e of Object.values(
467
+ t))Dr(e);return Object.freeze(t)}function Go(t="",e={}){let r=new Error(k(t)||"Codex cannot prove the helper execution p\
468
468
  olicy.");r.code="codex_policy_unenforceable",r.details=Object.freeze({...e});for(let[o,n]of Object.entries(r.details))["\
469
- code","details","message","name"].includes(o)||(r[o]=n);return r}function Dr({clientName:t="jskit",minimumVersion:e="0.1\
469
+ code","details","message","name"].includes(o)||(r[o]=n);return r}function Lr({clientName:t="jskit",minimumVersion:e="0.1\
470
470
  51.0",disabledFeatures:r=Fo,limits:{userAgentMaxLength:o=512,mcpServerMaxCount:n=128,mcpServerNameMaxLength:s=256,configResponseMaxBytes:c=256*
471
471
  1024,hookMaxCount:l=256,hookErrorMaxCount:f=256,hookFieldMaxLength:h=2048,hookFingerprintMaxLength:_=256*1024,hookResponseMaxBytes:m=512*
472
472
  1024}={},createError:d=Go}={}){let E=new WeakSet;function S(i,a,u){let p=0;try{p=Buffer.byteLength(JSON.stringify(i),"ut\
@@ -478,11 +478,11 @@ currentHelperExecutionContext!="function")throw d("Codex helper execution requir
478
478
  currentHelperExecutionContext(),u=k(a?.cwd),p=k(a?.accountIdentitySignature);if(a?.executionMode!=="helper"||!u||!kr.isAbsolute(
479
479
  u)||!/^sha256:[a-f0-9]{64}$/u.test(p))throw d("Codex helper runtime isolation could not be verified.");return Object.freeze(
480
480
  {accountIdentitySignature:p,cwd:u,executionMode:"helper"})}function I(i=""){let a=k(i).match(/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u);
481
- if(!a)return null;let u=a.slice(1).map(p=>Number.parseInt(p,10));return u.every(Number.isSafeInteger)?u:null}function D(i=""){
481
+ if(!a)return null;let u=a.slice(1).map(p=>Number.parseInt(p,10));return u.every(Number.isSafeInteger)?u:null}function L(i=""){
482
482
  let a=k(i);if(!a||a.length>o||St(a))return null;let u=`${t}/`;if(!a.startsWith(u))return null;let p=a.slice(u.length).match(
483
483
  /^((?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*))(?:$|[ \t].*$)/u);return p?I(p[1]):null}function b(i){if(typeof i?.currentServerInfo!=
484
484
  "function")throw d("Codex helper execution cannot verify the app-server version. Update Codex and retry.",{minimumVersion:e});
485
- let a=k(i.currentServerInfo()?.userAgent),u=D(a);if(!u)throw d("Codex helper execution received an unrecognised app-serv\
485
+ let a=k(i.currentServerInfo()?.userAgent),u=L(a);if(!u)throw d("Codex helper execution received an unrecognised app-serv\
486
486
  er version. Update Codex and retry.",{minimumVersion:e});let p=u.join("."),g=I(e),y=u.findIndex((w,A)=>w!==g[A]);if(y!==
487
487
  -1&&u[y]<g[y])throw d(`Codex helper execution requires app-server ${e} or newer; current version is ${p}. Update Codex a\
488
488
  nd retry.`,{actualVersion:p,minimumVersion:e});return Object.freeze({minimumVersion:e,version:p})}function T(i=null){if(!Nr(
@@ -505,9 +505,9 @@ w,{enabled:!1}]))},include_apps_instructions:!1,include_collaboration_mode_instr
505
505
  include_permissions_instructions:!1,...i?{model_reasoning_effort:i}:{},...a?{model_reasoning_summary:a}:{},mcp_servers:Object.
506
506
  fromEntries(p.map(w=>[w,{enabled:!1}])),memories:{dedicated_tools:!1,generate_memories:!1,use_memories:!1},notify:[],orchestrator:{
507
507
  mcp:{enabled:!1},skills:{enabled:!1}},project_doc_max_bytes:0,shell_environment_policy:{inherit:"none",set:{}},skills:{include_instructions:!1},
508
- tools:{experimental_request_user_input:{enabled:!1},update_plan:{enabled:!1}},web_search:"disabled"},y=Lr(g);return E.add(
508
+ tools:{experimental_request_user_input:{enabled:!1},update_plan:{enabled:!1}},web_search:"disabled"},y=Dr(g);return E.add(
509
509
  y),y}function O(i,a,u,{effort:p="",summary:g=""}={}){let y=T(i),w=P(a,u);return{mcpServerNames:y,hookState:w,config:R({effort:p,
510
- summary:g,hookKeys:w.hookKeys,mcpServerNames:y})}}async function L(i,{effort:a="",summary:u=""}={}){if(b(i),typeof i?.readConfig!=
510
+ summary:g,hookKeys:w.hookKeys,mcpServerNames:y})}}async function D(i,{effort:a="",summary:u=""}={}){if(b(i),typeof i?.readConfig!=
511
511
  "function"||typeof i?.listHooks!="function")throw d("Codex helper execution cannot inventory configuration and hooks.");
512
512
  let p=await C(i),g=x(i),y=await i.readConfig({cwd:p.cwd,includeLayers:!1});if(x(i)!==g)throw d("Codex app-server reconne\
513
513
  cted during helper policy verification.");let w=await i.listHooks([p.cwd]);if(x(i)!==g)throw d("Codex app-server reconne\
@@ -519,7 +519,7 @@ a?.executionCwd&&i?.hookFingerprint===a?.hookFingerprint&&JSON.stringify(i?.mcpS
519
519
  [])}function q(i,a,u=""){let p=k(u);if(!a)return i.codexAppServerHelperThreadId=p,i.codexAppServerHelperThreadRetired=!0,
520
520
  i;let g=d("Codex could not retire a helper thread after policy verification failed.",{cleanupFailed:!0,threadId:p});return g.
521
521
  codexAppServerHelperThreadCleanupRequired=!0,g.codexAppServerHelperThreadId=p,g}async function z({error:i=null,provider:a=null,
522
- threadId:u=""}={}){let p=null;try{await a.deleteThread(u)}catch(g){p=g}throw q(i,p,u)}async function V(i,a,u,p,g){try{let y=await L(
522
+ threadId:u=""}={}){let p=null;try{await a.deleteThread(u)}catch(g){p=g}throw q(i,p,u)}async function V(i,a,u,p,g){try{let y=await D(
523
523
  i,{effort:a.config.model_reasoning_effort,summary:a.config.model_reasoning_summary});if(!j(a,y))throw d(`Codex execution\
524
524
  surfaces changed while the helper thread was ${g}.`);return Object.freeze({enforcement:y,thread:u,threadId:p})}catch(y){
525
525
  await z({error:y,provider:i,threadId:p})}}async function $(i,a){if(typeof i?.startThread!="function"||typeof i?.deleteThread!=
@@ -536,9 +536,9 @@ sessionStartSource:"startup",threadSource:a}}function Ke(i){return{approvalPolic
536
536
  config:i.config,cwd:i.cwd,systemPrompt:i.systemPrompt,model:i.model,runtimeWorkspaceRoots:i.runtimeWorkspaceRoots,sandbox:i.
537
537
  sandbox}}function Ye({approvalPolicy:i,cwd:a,effectiveSettings:u,outputSchema:p}){let g={approvalPolicy:i,cwd:a,environments:[],
538
538
  model:u.model,outputSchema:p,runtimeWorkspaceRoots:[],sandboxPolicy:{networkAccess:!1,type:"readOnly"},summary:"none"};return u.
539
- request.reasoning&&(g.effort=u.thinking),g}return Object.freeze({assertCompatibility:b,executionContext:C,inspect:L,configuration:pe,
539
+ request.reasoning&&(g.effort=u.thinking),g}return Object.freeze({assertCompatibility:b,executionContext:C,inspect:D,configuration:pe,
540
540
  hasConfiguration:i=>E.has(i),threadSettings:Pe,threadStartSettings:Je,threadResumeSettings:Ke,turnSettings:Ye,start:$,resume:Ie})}
541
- var ci=Dr();function wt({models:t}){return{models:t.map((e,r)=>({slug:e.id,display_name:e.label,description:e.label,default_reasoning_level:e.
541
+ var ci=Lr();function wt({models:t}){return{models:t.map((e,r)=>({slug:e.id,display_name:e.label,description:e.label,default_reasoning_level:e.
542
542
  defaultThinking,supported_reasoning_levels:e.variants.map(o=>({effort:o,description:o})),shell_type:"shell_command",visibility:"\
543
543
  list",supported_in_api:!0,priority:r,base_instructions:"You are a coding assistant. Complete the user's task in the work\
544
544
  space, use the available tools, preserve unrelated work, and verify your changes.",supports_reasoning_summaries:!1,default_reasoning_summary:"\
@@ -604,29 +604,29 @@ stat();if(!x.isFile())throw B("the saved history is not a regular file.");let C=
604
604
  l,0,x.size,n)){if(b.type==="session_meta"&&(C+=1,b.payload?.id!==S[1]||b.payload?.forked_from_id))throw B("the saved his\
605
605
  tory does not identify one supported conversation.");if(b.type==="event_msg"&&b.payload?.type==="thread_rolled_back")throw B(
606
606
  "history recovery after Undo is not supported yet.");if(b.type!=="compacted")continue;let P=b.payload?.replacement_history;
607
- for(let[R,O]of f)typeof R=="string"&&R.length&&P?.some(L=>L?.type==="compaction"&&L.encrypted_content===R)&&(O.count+=1,
607
+ for(let[R,O]of f)typeof R=="string"&&R.length&&P?.some(D=>D?.type==="compaction"&&D.encrypted_content===R)&&(O.count+=1,
608
608
  O.start=I,O.end=T,O.retainedUsers=P.map(Et).filter(Boolean));typeof b.payload?.message=="string"&&b.payload.message.trim()&&
609
609
  Array.isArray(P)&&P.length&&!P.some(R=>R?.type==="compaction")&&(I=T)}if(C!==1)throw B("the saved history does not ident\
610
- ify one supported conversation.");let D=0;for(let b of f.values()){if(b.count!==1)throw B("its exact saved compaction bo\
610
+ ify one supported conversation.");let L=0;for(let b of f.values()){if(b.count!==1)throw B("its exact saved compaction bo\
611
611
  undary could not be identified.");b.history=[];for await(let{row:T,offset:P}of zr(l,b.start,b.end,n)){let R=[];T.type===
612
612
  "response_item"?R=[T.payload]:T.type==="compacted"&&P===b.start&&(R=T.payload.replacement_history);for(let O of R||[])if(!(O?.
613
- type==="compaction"||O?.type==="message"&&["developer","system"].includes(O.role))){if(D+=Buffer.byteLength(JSON.stringify(
614
- O)),D>s)throw B("the recovered history exceeds the request size limit.",413);b.history.push(O)}}}}catch(m){throw n.aborted||
613
+ type==="compaction"||O?.type==="message"&&["developer","system"].includes(O.role))){if(L+=Buffer.byteLength(JSON.stringify(
614
+ O)),L>s)throw B("the recovered history exceeds the request size limit.",413);b.history.push(O)}}}}catch(m){throw n.aborted||
615
615
  m.statusCode?m:B("the native history could not be read completely.")}finally{await l?.close()}let h=[],_=Buffer.byteLength(
616
616
  JSON.stringify(t));for(let[m,d]of t.input.entries()){if(h.push(d),d?.type!=="compaction")continue;let E=f.get(d.encrypted_content).
617
617
  history,S=t.input.slice(0,m).map(Et).filter(Boolean),x=f.get(d.encrypted_content).retainedUsers.filter(T=>{let P=S.findIndex(
618
- R=>$r(R,T));return P<0?!1:(S.splice(P,1),!0)}),C=[],I=[],D=0;for(let T of E){if(!["message","agent_message","reasoning",
618
+ R=>$r(R,T));return P<0?!1:(S.splice(P,1),!0)}),C=[],I=[],L=0;for(let T of E){if(!["message","agent_message","reasoning",
619
619
  "function_call","function_call_output","custom_tool_call","custom_tool_call_output"].includes(T?.type))throw B("the save\
620
- d history contains an unsupported item.");let{encrypted_content:P,id:R,...O}=T,L=Et(T),j=I.length;for(let z of["content",
620
+ d history contains an unsupported item.");let{encrypted_content:P,id:R,...O}=T,D=Et(T),j=I.length;for(let z of["content",
621
621
  "summary","output"]){let V=T[z];if(!(V==null||typeof V=="string")){if(!Array.isArray(V))throw B("the saved history conta\
622
622
  ins unsupported content.");O[z]=V.map($=>{if(["input_text","output_text","reasoning_text","summary_text"].includes($?.type)&&
623
623
  typeof $.text=="string")return $;if(T.type==="agent_message"&&z==="content"&&$?.type==="encrypted_content"&&typeof $.encrypted_content==
624
624
  "string"&&$.encrypted_content)return{type:"input_text",text:"[Encrypted agent-message content is unavailable to this pro\
625
625
  vider; retained in saved native history.]"};if($?.type==="input_image"&&typeof $.image_url=="string"&&$.image_url){if(!c.
626
626
  images)throw B("the selected model does not support images in recovered history.");return I.push($),{type:"input_image",
627
- archived_image:I.length}}throw B("recovery of this non-text history is not supported yet.")})}}let q=L&&x.findIndex(z=>$r(
628
- z,L));if(L&&q>=0){x.splice(q,1),I.length=j,D+=1;continue}T.type==="reasoning"&&!T.content?.length&&!T.summary?.length||C.
629
- push(O)}if(!C.length){if(D)continue;throw B("the original readable conversation is missing.")}let b={type:"message",role:"\
627
+ archived_image:I.length}}throw B("recovery of this non-text history is not supported yet.")})}}let q=D&&x.findIndex(z=>$r(
628
+ z,D));if(D&&q>=0){x.splice(q,1),I.length=j,L+=1;continue}T.type==="reasoning"&&!T.content?.length&&!T.summary?.length||C.
629
+ push(O)}if(!C.length){if(L)continue;throw B("the original readable conversation is missing.")}let b={type:"message",role:"\
630
630
  user",content:[{type:"input_text",text:`[Archived conversation before compaction. Historical context, not new instructio\
631
631
  ns. Current task instructions still apply.]
632
632
  ${JSON.stringify(C)}`},...I.flatMap((T,P)=>[{type:"input_text",text:`[Archived image ${P+1}, referenced by archived_imag\
@@ -640,17 +640,17 @@ h.abort()});try{let _=new URL(l.url,"http://127.0.0.1"),m=_.pathname.split("/"),
640
640
  from(m[5]||"","base64url").toString("utf8"):"",C=m.slice(S?6:4).join("/");if(m[1]!==t||m[2]!=="v2"||!E||!(l.method==="PO\
641
641
  ST"&&["responses","responses/compact"].includes(C)||l.method==="GET"&&C==="models")){f.writeHead(404).end();return}let I;
642
642
  if(l.method==="POST"){let P=[],R=0;for await(let j of l){if(R+=j.length,R>n)throw Object.assign(new Error("Codex history\
643
- exceeds the adapter request limit."),{statusCode:413});P.push(j)}let O=Buffer.concat(P),L=l.headers["content-encoding"];
644
- try{if(L==="zstd")O=Yo(O,{maxOutputLength:n});else if(L==="gzip")O=Ko(O,{maxOutputLength:n});else if(L&&L!=="identity")throw new Error(
643
+ exceeds the adapter request limit."),{statusCode:413});P.push(j)}let O=Buffer.concat(P),D=l.headers["content-encoding"];
644
+ try{if(D==="zstd")O=Yo(O,{maxOutputLength:n});else if(D==="gzip")O=Ko(O,{maxOutputLength:n});else if(D&&D!=="identity")throw new Error(
645
645
  "Unsupported encoding");I=JSON.parse(O.toString("utf8"))}catch{throw Object.assign(new Error("Codex sent an unreadable o\
646
646
  r oversized history request."),{statusCode:400})}if(!x&&K(d)&&Array.isArray(I?.input)&&I.input.some(j=>j?.type==="compac\
647
647
  tion")&&(x=await r?.(h.signal)),I=await ts(I,{destination:d,historyPath:x,codexHome:e,signal:h.signal,maxRequestBytes:n}),
648
- I=JSON.stringify(es(I,d)),Buffer.byteLength(I)>n)throw B("the translated history exceeds the request size limit.",413)}let D=Ct(
649
- l.headers);D.set("accept-encoding","identity");let b=await o(`${E}/${C}${_.search}`,{method:l.method,headers:D,body:I,signal:h.
648
+ I=JSON.stringify(es(I,d)),Buffer.byteLength(I)>n)throw B("the translated history exceeds the request size limit.",413)}let L=Ct(
649
+ l.headers);L.set("accept-encoding","identity");let b=await o(`${E}/${C}${_.search}`,{method:l.method,headers:L,body:I,signal:h.
650
650
  signal,redirect:"error"});if(d==="deepseek"&&b.status===400&&b.headers.get("content-type")?.split(";",1)[0].trim()==="ap\
651
- plication/json"){let P=Buffer.from(await b.arrayBuffer());try{let R=JSON.parse(P.toString("utf8")),O=R?.error,L=typeof O?.
651
+ plication/json"){let P=Buffer.from(await b.arrayBuffer());try{let R=JSON.parse(P.toString("utf8")),O=R?.error,D=typeof O?.
652
652
  message=="string"&&/^This model's maximum context length is ([1-9]\d*) tokens\. However, you requested ([1-9]\d*) tokens \((\d+) in the messages, (\d+) in the completion\)\. Please reduce the length of the messages or completion\. \(request_id: [0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\)$/u.
653
- exec(O.message);if(O?.type==="invalid_request_error"&&O.code==="invalid_request_error"&&L){let[j,q,z,V]=L.slice(1).map(Number);
653
+ exec(O.message);if(O?.type==="invalid_request_error"&&O.code==="invalid_request_error"&&D){let[j,q,z,V]=D.slice(1).map(Number);
654
654
  [j,q,z,V].every(Number.isSafeInteger)&&q>j&&q===z+V&&(O.code="context_length_exceeded",P=Buffer.from(JSON.stringify(R)))}}catch{}
655
655
  f.writeHead(b.status,Object.fromEntries(Ct(b.headers))).end(P);return}if(f.writeHead(b.status,Object.fromEntries(Ct(b.headers))),
656
656
  !b.body){f.end();return}let T=Jo.fromWeb(b.body);T.once("error",()=>f.destroy()),f.once("close",()=>T.destroy()),T.pipe(
@@ -670,12 +670,12 @@ tmp`,JSON.stringify({baseUrl:_.baseUrl,runtimeToken:o}),{mode:384}),await ns(`${
670
670
  catalog_json=${JSON.stringify(h)}`],{stdio:"inherit"}),d=!1,E;function S(C="SIGTERM"){d||(d=!0,_.close(),m.kill(C),E=setTimeout(
671
671
  ()=>m.kill("SIGKILL"),5e3),E.unref())}process.on("SIGTERM",()=>S()),process.on("SIGINT",()=>S("SIGINT")),process.removeListener(
672
672
  "SIGTERM",f),process.removeListener("SIGINT",f),l.signal.aborted&&S(),_.server.on("error",()=>{process.exitCode=1,S()});
673
- let x=await new Promise(C=>{m.once("error",()=>C({code:1})),m.once("exit",(I,D)=>C({code:I,signal:D}))});clearTimeout(E),
673
+ let x=await new Promise(C=>{m.once("error",()=>C({code:1})),m.once("exit",(I,L)=>C({code:I,signal:L}))});clearTimeout(E),
674
674
  await _.close(),await os(c,{force:!0}),process.exitCode||=x.code??(d?0:1)}var as=Object.freeze({UNIX:"unix"});var qi=process.platform==="linux"?107:103,Vi=Object.freeze({MISSING:"missing",RESPONSIVE:"responsive",TIMEOUT:"timeout",
675
675
  UNREACHABLE:"unreachable"}),Wi=Object.freeze({EXITED:"exited",INCOMPATIBLE:"incompatible",LIVE:"live",MISSING:"missing",
676
676
  SUSPECT:"suspect"}),Xi=Object.freeze({RUNNING:"running",STOPPED:"stopped"}),Ji=Object.freeze({ABSENT:"absent",AMBIGUOUS:"\
677
677
  ambiguous",EXACT:"exact",INVALID:"invalid",MISMATCH:"mismatch"});var Ki=Object.freeze({runtimeToken:"JSKIT_EXECUTION_RUNTIME_TOKEN",modelCatalogSource:"JSKIT_CODEX_MODEL_CATALOG_SOURCE",
678
- commandHash:"JSKIT_EXECUTION_COMMAND_HASH"});var va=16*1024*1024;var Aa=new URL("./../../../../@jskit-ai/assistant-core/src/server/conversation/commandWrapper.js",import.meta.url).href;var Xe=(t,e,r,o)=>{let{modelProviderId:n,...s}=We(e,t);return Object.freeze({...s,label:r,defaultThinking:o})},Vr=Object.
678
+ commandHash:"JSKIT_EXECUTION_COMMAND_HASH"});var va=16*1024*1024;var Aa=new URL("./../../../../@jskit-ai/assistant-core/src/server/conversation/commandWrapper.js",import.meta.url).href;var ja=5*6e4;var Xe=(t,e,r,o)=>{let{modelProviderId:n,...s}=We(e,t);return Object.freeze({...s,label:r,defaultThinking:o})},Vr=Object.
679
679
  freeze([Object.freeze({...K("deepseek"),label:"DeepSeek",shortLabel:"DeepSeek",description:"DeepSeek API key \xB7 usage-bas\
680
680
  ed billing",keyUrl:"https://platform.deepseek.com/api_keys",guideUrl:"https://api-docs.deepseek.com/quick_start/agent_in\
681
681
  tegrations/codex/",ownerOnly:!1,models:Object.freeze([Xe("deepseek","deepseek-flash","DeepSeek V4.1 Flash","high"),Xe("d\
@@ -686,5 +686,5 @@ lm-5.3","GLM 5.3","max")])}),Object.freeze({...K("zai"),label:"GLM \xB7 Pay-as-y
686
686
  Z.AI API key \xB7 pay-as-you-go account",keyUrl:"https://z.ai/manage-apikey/apikey-list",guideUrl:"https://docs.z.ai/gui\
687
687
  des/overview/quick-start",setupNote:"Use a key from a Z.AI account without a Coding Plan. Pay-as-you-go access through C\
688
688
  odex and Claude Code still needs live verification; a successful check confirms model access, not billing.",ownerOnly:!1,
689
- models:Object.freeze([Xe("zai","glm-5.3","GLM 5.3","max")])})]);var uc=Object.freeze(["auth","codex","status.json"]),lc=Object.freeze(["auth","codex","auth-status.json"]);function Wr(t){let e=t?.models||[...new Map(Vr.flatMap(r=>r.models).map(r=>[r.id,r])).values()];return wt({models:e})}var[ps,hs,...ms]=process.argv.slice(2);await bt({runtimeDir:ps,command:hs,args:ms,runtimeToken:process.env.VIBE64_CODEX_APP_SERVER_RUNTIME_TOKEN,
689
+ models:Object.freeze([Xe("zai","glm-5.3","GLM 5.3","max")])})]);var lc=Object.freeze(["auth","codex","status.json"]),dc=Object.freeze(["auth","codex","auth-status.json"]);function Wr(t){let e=t?.models||[...new Map(Vr.flatMap(r=>r.models).map(r=>[r.id,r])).values()];return wt({models:e})}var[ps,hs,...ms]=process.argv.slice(2);await bt({runtimeDir:ps,command:hs,args:ms,runtimeToken:process.env.VIBE64_CODEX_APP_SERVER_RUNTIME_TOKEN,
690
690
  bundled:process.env.VIBE64_CODEX_MODEL_CATALOG_SOURCE==="bundled",additionalModels:Wr().models});
@@ -4,6 +4,7 @@
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "exports": {
7
- "./shared/conversation": "./src/shared/conversationIdentity.js"
7
+ "./shared/conversation": "./src/shared/conversationIdentity.js",
8
+ "./shared/repository-updates": "./src/shared/repositoryUpdates.js"
8
9
  }
9
10
  }