vibe64 0.1.52 → 0.1.53
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/bin/upgrade-state.js +975 -974
- package/dist/assets/{GithubBrowserTabs-D7DveB8M.js → GithubBrowserTabs-DG2nCSNW.js} +1 -1
- package/dist/assets/{Vibe64AuthSettingsButton-DDArM5uw.js → Vibe64AuthSettingsButton-9OLqOZao.js} +1 -1
- package/dist/assets/{Vibe64DashboardShell-Ab65VYSS.js → Vibe64DashboardShell-hWNziCur.js} +1 -1
- package/dist/assets/{Vibe64DatabaseWorkspace-DHLt5bST.js → Vibe64DatabaseWorkspace-TqXOZJpI.js} +1 -1
- package/dist/assets/{Vibe64FileArea-DCqpclYH.js → Vibe64FileArea-BljhpApn.js} +1 -1
- package/dist/assets/{Vibe64OutputControls-BPDF1XfG.js → Vibe64OutputControls-Dk_DWuFb.js} +1 -1
- package/dist/assets/{Vibe64RepositoryWorkspace-C107tX19.js → Vibe64RepositoryWorkspace-CDnsAlIz.js} +1 -1
- package/dist/assets/{Vibe64SessionFiles-BKJ1Qem_.js → Vibe64SessionFiles-DjeEvtpc.js} +1 -1
- package/dist/assets/{Vibe64UiStoryboardView-CJajdYSt.js → Vibe64UiStoryboardView-idZz86bx.js} +1 -1
- package/dist/assets/{_sessionId_-BaNhTTVN.js → _sessionId_-DLLJsju9.js} +1 -1
- package/dist/assets/{_slug_-D7mzZsk3.css → _slug_-BRPxP_Yn.css} +1 -1
- package/dist/assets/{_slug_-nHO3Bg-f.js → _slug_-JgF_FQ6F.js} +7 -7
- package/dist/assets/{app-DbGzTUVN.js → app-Cuw9E-ru.js} +1 -1
- package/dist/assets/{changes-D7NjgKWf.js → changes-CoR0-8EL.js} +1 -1
- package/dist/assets/{conversation-DV8qCsqw.js → conversation-B1UoWMaA.js} +1 -1
- package/dist/assets/{dashboard-DL95BPsz.js → dashboard-DnuIxR1s.js} +1 -1
- package/dist/assets/{english-definitions-ChTTs3cC.js → english-definitions-By4b_Yl2.js} +1 -1
- package/dist/assets/{env-BdJvhqF-.js → env-KUPen-sS.js} +1 -1
- package/dist/assets/{history-DmGNxMVh.js → history-S_cJLehJ.js} +1 -1
- package/dist/assets/{index-BXZp5ztx.js → index-CNkd6O5t.js} +3 -3
- package/dist/assets/{integrations-DAYe7RkJ.js → integrations-Dmbbbs_A.js} +1 -1
- package/dist/assets/{issues-D_zOo2IW.js → issues-EeBajY3I.js} +1 -1
- package/dist/assets/{learning-ilyEoffw.js → learning-DDRM-FoP.js} +1 -1
- package/dist/assets/{project-files-CJWdFXh4.js → project-files-CQ1BLaaP.js} +1 -1
- package/dist/assets/{publish-D728amkk.js → publish-bvwc-KoQ.js} +1 -1
- package/dist/assets/{pull-requests-BsbM-5MA.js → pull-requests-Ce1ECyuL.js} +1 -1
- package/dist/assets/{repository-C8NwO4bj.js → repository-CK3osHmp.js} +1 -1
- package/dist/assets/{settings-DTLY7ZT5.js → settings-PQGw4vfn.js} +1 -1
- package/dist/assets/{useArchivedVibe64Sessions-Cc9GdKlD.js → useArchivedVibe64Sessions-BAQjW01a.js} +1 -1
- package/dist/assets/{useAssistantAttachments-DJKqt1hL.js → useAssistantAttachments-DJWb1KdF.js} +1 -1
- package/dist/assets/{useVibe64ConversationLog-Co0DhC3R.js → useVibe64ConversationLog-CjUZuvV7.js} +1 -1
- package/dist/assets/{useVibe64SessionData-D7fBm9xf.js → useVibe64SessionData-CbY_B5mC.js} +1 -1
- package/dist/assets/{vibe64SessionFocus-8fHAeoyU.js → vibe64SessionFocus-Bd3JuuZe.js} +1 -1
- package/dist/index.html +4 -4
- package/docs/colleague-usage/conversation-context.md +3 -1
- package/docs/colleague-usage/temporary-chats.md +26 -1
- package/docs/colleague-usage/workspace-preparation.md +17 -0
- package/node_modules/@jskit-ai/assistant-core/locales/en.json +1 -0
- package/node_modules/@jskit-ai/assistant-core/package.json +1 -1
- package/node_modules/@jskit-ai/assistant-runtime/package.json +1 -1
- package/node_modules/@jskit-ai/assistant-voice/package.json +1 -1
- package/node_modules/@jskit-ai/connector-google-calendar/package.json +1 -1
- package/node_modules/@jskit-ai/connectors-catalog/package.json +1 -1
- package/node_modules/@jskit-ai/connectors-core/locales/en.json +1 -0
- package/node_modules/@jskit-ai/connectors-core/package.json +1 -1
- package/node_modules/@local/vibe64-genesis/bin/vibe64-genesis-host-context +43 -43
- package/node_modules/@local/vibe64-genesis/src/server/index.js +189 -182
- package/node_modules/@local/vibe64-genesis/src/server/promptContext.js +68 -61
- package/node_modules/@local/vibe64-terminals/src/server/sessionWorkOperationCommand.js +532 -532
- package/package.json +7 -7
- package/server.bundle.mjs +28835 -28791
|
@@ -56,7 +56,9 @@ Temporary chat.
|
|
|
56
56
|
|
|
57
57
|
Guidance sent to a working Claude chat does not interrupt it: Claude moves its
|
|
58
58
|
current command to the background, where it keeps running, and reads the
|
|
59
|
-
guidance within moments.
|
|
59
|
+
guidance within moments. This includes a Fix it with AI repair chat whose repair
|
|
60
|
+
changes the project's Genesis files while it works: the message joins the running
|
|
61
|
+
repair, and the changed project guidance applies from the chat's next idle turn. Output already shown remains
|
|
60
62
|
attached to its original request; the follow-up response belongs to the new request.
|
|
61
63
|
Reloading the chat preserves that relationship and the recorded AI labels.
|
|
62
64
|
After **Stop** confirms a Claude reply has stopped, text already shown remains
|
|
@@ -113,6 +115,29 @@ Senior). A merge repair chat accepts only **Fix it with AI** or **Custom**. Auto
|
|
|
113
115
|
is Main chat only. Colleague doesn't start an Update conflict's **Fix it with AI**
|
|
114
116
|
repair itself: choose that button on the Update error.
|
|
115
117
|
|
|
118
|
+
## Repairs check the saved version first
|
|
119
|
+
|
|
120
|
+
Every **Fix it with AI** turn (setup, Update, Save, preview identity and the
|
|
121
|
+
others) tells the AI whether this session is behind its saved version and lists
|
|
122
|
+
the incoming versions, read again for each message. Before it changes
|
|
123
|
+
dependencies or ports code, the AI checks whether the saved version already
|
|
124
|
+
contains the change; if it does, the change arrives with Update and is not
|
|
125
|
+
redone in the session.
|
|
126
|
+
|
|
127
|
+
When local work is superseded by the saved version, such as a stale or partial
|
|
128
|
+
dependency bump that the saved version completes, the repair takes the saved
|
|
129
|
+
version and says so in one sentence. It does not ask you to choose between the
|
|
130
|
+
versions, because Vibe64's checkpoint keeps your original. It asks only about
|
|
131
|
+
real product decisions.
|
|
132
|
+
|
|
133
|
+
While the session's Update has failed, is running or is waiting, Update is the
|
|
134
|
+
one repair for the session. A setup, workspace preparation or verification
|
|
135
|
+
repair that is already open tells you the session must be brought up to date
|
|
136
|
+
first, then stops. Use **Fix it with AI** on the Update notice. After that
|
|
137
|
+
repair, Vibe64 checks Update again, and setup is checked again against the
|
|
138
|
+
updated session. See
|
|
139
|
+
[Project setup waits for Update](workspace-preparation.md#project-setup-waits-for-update).
|
|
140
|
+
|
|
116
141
|
## Work elsewhere while a chat runs
|
|
117
142
|
|
|
118
143
|
Select **Main chat** or another temporary tab to continue elsewhere. The hidden
|
|
@@ -95,6 +95,23 @@ The same recovery applies on desktop and mobile. Colleague can explain the
|
|
|
95
95
|
warning and offer the supported repair flow; source edits and terminal commands
|
|
96
96
|
belong to the coding assistant or the person, not Colleague.
|
|
97
97
|
|
|
98
|
+
## Project setup waits for Update
|
|
99
|
+
|
|
100
|
+
When the session's Update has failed, is running or is waiting (the session is
|
|
101
|
+
behind its saved version), **Project setup needs attention** shows why, for
|
|
102
|
+
example *This session's Update needs repair first*. It does not offer
|
|
103
|
+
**Fix it with AI** for setup, and workspace preparation's **Fix it with AI** is
|
|
104
|
+
unavailable. Setup is often blocked only by local work that the saved version
|
|
105
|
+
already supersedes, such as a partial dependency bump, and repairing it here
|
|
106
|
+
would redo that work.
|
|
107
|
+
|
|
108
|
+
Bring the session up to date first: choose **Update**, or **Fix it with AI** on
|
|
109
|
+
the Update notice when Update needs help. When the repair finishes, Vibe64 checks Update
|
|
110
|
+
again. When Update succeeds, Vibe64 prepares the workspace again and
|
|
111
|
+
rechecks setup. Setup repair is offered again only if setup still needs
|
|
112
|
+
attention. Colleague's onboarding read reports the same `updateFirst` state and
|
|
113
|
+
offers no setup repair while it is present.
|
|
114
|
+
|
|
98
115
|
## Competing Stack proposals
|
|
99
116
|
|
|
100
117
|
When two selected technologies propose different bodies for the same section,
|
|
@@ -333,6 +333,7 @@
|
|
|
333
333
|
"compactWhileWorking": "Claude is still working. Wait for it to finish before freeing its context.",
|
|
334
334
|
"noActiveTurn": "Claude has no active turn for this message.",
|
|
335
335
|
"steeringUnavailable": "This Claude turn cannot accept steering now.",
|
|
336
|
+
"settingsChangeWhileWorking": "Stop the current Claude turn before changing its settings.",
|
|
336
337
|
"notConnected": "Claude Code is not connected.",
|
|
337
338
|
"accountStatusInvalid": "Claude Code returned an invalid account status."
|
|
338
339
|
},
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"schemaVersionUnsupported": "Use numeric schemaVersion 1; other versions require an explicit migration.",
|
|
28
28
|
"scopeRequired": "Select at least one permission.",
|
|
29
29
|
"scopeUnsupported": "A selected permission is not supported by this provider configuration.",
|
|
30
|
+
"secretReference": "Use a reference such as env:VARIABLE_NAME.",
|
|
30
31
|
"serviceAccountPerUser": "A service account cannot connect as each app user.",
|
|
31
32
|
"serviceAccountRegistration": "Service-account credentials do not use a browser OAuth registration.",
|
|
32
33
|
"stableName": "Use a stable lowercase name containing letters, digits and hyphens.",
|
|
@@ -284,11 +284,11 @@ o.auth&&!n.headers.authorization&&(n.headers.authorization="Basic "+Buffer.from(
|
|
|
284
284
|
t._redirects&&t.emit("redirect",t.url,x)}else x=t._req=m(o);o.timeout&&x.on("timeout",()=>{H(t,x,"Opening handshake has \
|
|
285
285
|
timed out")}),x.on("error",T=>{x===null||x[Lo]||(x=t._req=null,jt(t,T))}),x.on("response",T=>{let O=T.headers.location,P=T.
|
|
286
286
|
statusCode;if(O&&o.followRedirects&&P>=300&&P<400){if(++t._redirects>o.maxRedirects){H(t,x,"Maximum redirects exceeded");
|
|
287
|
-
return}x.abort();let
|
|
287
|
+
return}x.abort();let D;try{D=new Or(O,e)}catch{let L=new SyntaxError(`Invalid URL: ${O}`);jt(t,L);return}Fo(t,D,r,n)}else
|
|
288
288
|
t.emit("unexpected-response",x,T)||H(t,x,`Unexpected server response: ${T.statusCode}`)}),x.on("upgrade",(T,O,P)=>{if(t.
|
|
289
|
-
emit("upgrade",T),t.readyState!==k.CONNECTING)return;x=t._req=null;let
|
|
290
|
-
"websocket"){H(t,O,"Invalid Upgrade header");return}let
|
|
291
|
-
socket-accept"]!==
|
|
289
|
+
emit("upgrade",T),t.readyState!==k.CONNECTING)return;x=t._req=null;let D=T.headers.upgrade;if(D===void 0||D.toLowerCase()!==
|
|
290
|
+
"websocket"){H(t,O,"Invalid Upgrade header");return}let j=Wa("sha1").update(l+Za).digest("base64");if(T.headers["sec-web\
|
|
291
|
+
socket-accept"]!==j){H(t,O,"Invalid Sec-WebSocket-Accept header");return}let L=T.headers["sec-websocket-protocol"],J;if(L!==
|
|
292
292
|
void 0?p.size?p.has(L)||(J="Server sent an invalid subprotocol"):J="Server sent a subprotocol but none was requested":p.
|
|
293
293
|
size&&(J="Server sent no subprotocol"),J){H(t,O,J);return}L&&(t._protocol=L);let B=T.headers["sec-websocket-extensions"];
|
|
294
294
|
if(B!==void 0){if(!v){H(t,O,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let q;
|
|
@@ -383,7 +383,7 @@ l","Content-Length":Buffer.byteLength(r),...n},t.once("finish",t.destroy),t.end(
|
|
|
383
383
|
`+r)}function xe(t,e,r,n,o,s){if(t.listenerCount("wsClientError")){let i=new Error(o);Error.captureStackTrace(i,xe),t.emit(
|
|
384
384
|
"wsClientError",i,r,e)}else ot(r,n,o,s)}});function I(t){return String(t??"").trim()}function It(t){if(!t||typeof t!="object"||Array.isArray(t))return!1;let e=Object.getPrototypeOf(t);return e===Object.prototype||
|
|
385
385
|
e===null}var jp=Object.freeze(["none","pending","committed","rolledBack","unknown"]);function C(t,{fallback:e=""}={}){return String(t||"").trim()||e}function E(t){return!!(t&&typeof t=="object"&&!Array.isArray(t))}function V(t,{fallback:e=0}={}){let r=Number(t);return!Number.isInteger(r)||r<1?e:r}var Lp=Object.freeze({interrupted:Object.freeze({text:"Stopped.",messageCode:"assistant.turn.stopped"}),failed:Object.freeze(
|
|
386
|
-
{text:"Assistant stopped with an error.",messageCode:"assistant.turn.failed"})});function St(t){return E(t)?{...t}:{}}var
|
|
386
|
+
{text:"Assistant stopped with an error.",messageCode:"assistant.turn.failed"})});function St(t){return E(t)?{...t}:{}}var N=class extends Error{constructor(e,r,n={}){super(r,n.cause===void 0?void 0:{cause:n.cause}),this.name="AppError",this.
|
|
387
387
|
status=Number(e)||500,this.statusCode=this.status,this.code=n.code||"APP_ERROR",this.params=St(n.params),n.messageCode&&
|
|
388
388
|
(this.messageCode=String(n.messageCode),this.messageParams=St(n.messageParams)),this.details=n.details,this.headers=n.headers||
|
|
389
389
|
{}}};var mf=new Set(["contextcompaction",...["context","thread","conversation"].flatMap(t=>["compact","compacted","compaction",
|
|
@@ -395,16 +395,16 @@ JSKIT_EXECUTION_RUNTIME_TOKEN",commandHashEnvironmentName:e="JSKIT_EXECUTION_COM
|
|
|
395
395
|
native_process_identity_unavailable",platform:o=process.platform,ps:s=ra}={}){let a=o==="darwin"?100:25,c=1,d=Object.freeze(
|
|
396
396
|
{linux:"linux-proc",darwin:"darwin"}),l=d[o]||"",m=Object.freeze({RUNNING:"running",STOPPED:"stopped"}),p=Object.freeze(
|
|
397
397
|
{ABSENT:"absent",AMBIGUOUS:"ambiguous",EXACT:"exact",INVALID:"invalid",MISMATCH:"mismatch"});function v(w={}){return!!(Number.
|
|
398
|
-
isSafeInteger(Number(w.pid))&&Number(w.pid)>0&&
|
|
398
|
+
isSafeInteger(Number(w.pid))&&Number(w.pid)>0&&j(w.processIdentity)&&[m.RUNNING,m.STOPPED].includes(w.processState))}function x(w){
|
|
399
399
|
let u=Number(w);if(!Number.isSafeInteger(u)||u<=0)return!1;try{return process.kill(u,0),!0}catch{return!1}}function T(w){
|
|
400
400
|
let u=Number(w);if(!Number.isSafeInteger(u)||u<=0)return!1;if(process.platform==="win32")return x(u);try{return process.
|
|
401
401
|
kill(-u,0),!0}catch{return!1}}function O(w,u){let f=Number(w),h=process.platform==="win32"?f:-f;try{return process.kill(
|
|
402
402
|
h,u),!0}catch(g){if(!["ESRCH","EPERM"].includes(String(g?.code||"")))throw g;return!1}}function P(w=""){let u=String(w||
|
|
403
403
|
""),f=u.lastIndexOf(")");if(f<0)return null;let h=u.slice(f+1).trim().split(/\s+/u),g=String(h[0]||""),y=Number(h[1]),S=Number(
|
|
404
404
|
h[2]),b=String(h[19]||"");return!/^[A-Z]$/u.test(g)||!Number.isSafeInteger(y)||y<0||!Number.isSafeInteger(S)||S<=0||!/^\d+$/u.
|
|
405
|
-
test(b)?null:{parentPid:y,processGroupId:S,startTimeTicks:b,state:g}}function
|
|
405
|
+
test(b)?null:{parentPid:y,processGroupId:S,startTimeTicks:b,state:g}}function D(w={}){let u=E(w)?w:{};return{commandHash:I(
|
|
406
406
|
u.commandHash),platform:I(u.platform),runtimeToken:I(u.runtimeToken),startTimeTicks:I(u.startTimeTicks),version:Number(u.
|
|
407
|
-
version||0)}}function
|
|
407
|
+
version||0)}}function j(w={}){let u=D(w);return!!(u.version===c&&Object.values(d).includes(u.platform)&&/^[a-f0-9]{12}$/u.
|
|
408
408
|
test(u.commandHash)&&/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu.test(u.runtimeToken)&&/^\d+$/u.
|
|
409
409
|
test(u.startTimeTicks))}function L(w=[],u=""){let f=w.find(h=>h.startsWith(`${u}=`));return f?f.slice(u.length+1):""}async function J(){
|
|
410
410
|
let w=[],u=await Qi("/proc",{withFileTypes:!0}).catch(()=>[]);for(let f of u){if(!f.isDirectory()||!/^\d+$/u.test(f.name))
|
|
@@ -452,10 +452,10 @@ let S=[p.ABSENT,p.MISMATCH].includes(g.status);return{descendantProcessGroups:y.
|
|
|
452
452
|
status,pid:Number(w.pid),processExitVerified:S,signaledProcessGroups:y,stopped:S&&y.length>0}}async function ir(w){if(o!==
|
|
453
453
|
"darwin")return P(await lr(`/proc/${w}/stat`,"utf8").catch(()=>""));let u=String(await s(["-o","pgid=,lstart=","-p",String(
|
|
454
454
|
w)]).catch(()=>"")),f=/^\s*(\d+)\s+(.+?)\s*$/u.exec(u);return f?{processGroupId:Number(f[1]),startTimeTicks:q(f[2])}:null}
|
|
455
|
-
async function ar({commandHash:w="",pid:u=null,reportedIdentity:f=null,runtimeToken:h=""}={}){let g=I(w),y=I(h),S=
|
|
455
|
+
async function ar({commandHash:w="",pid:u=null,reportedIdentity:f=null,runtimeToken:h=""}={}){let g=I(w),y=I(h),S=D(f);if(j(
|
|
456
456
|
S)&&S.commandHash===g&&S.runtimeToken===y)return S;let b=Number(u),R=l&&Number.isSafeInteger(b)&&b>0?await ir(b):null;if(!R?.
|
|
457
457
|
startTimeTicks||R.processGroupId!==b){let A=new Error(`${r} process identity could not be captured.`);throw A.code=n,A}return{
|
|
458
|
-
commandHash:g,platform:l,runtimeToken:y,startTimeTicks:R.startTimeTicks,version:c}}return Object.freeze({normalize:
|
|
458
|
+
commandHash:g,platform:l,runtimeToken:y,startTimeTicks:R.startTimeTicks,version:c}}return Object.freeze({normalize:D,isValid:j,
|
|
459
459
|
normalizeInspection:gt,capture:ar,inspect:he,stop:sr,isProcessAlive:x})}import{execFile as oa}from"node:child_process";import{promisify as sa}from"node:util";var Ff=Object.freeze(["plugins","apps","daemon_auto_start"]);var Uf=Object.freeze([[".tmp",/^(?:plugins(?:$|[.-])|git-|bundled-marketplaces$)/u],["cache",/^(?:remote_plugin_catalog|codex_apps_tools|codex_apps_server_info|codex_app_directory|bundled_plugin_exclusions)$/u]]);var Gf=sa(oa);function ge(t=""){return Array.from(String(t)).some(e=>{let r=e.codePointAt(0);return r<=31||r===127})}var _t=(t,e,r,n={})=>Object.freeze({id:t,contextWindow:e,variants:Object.freeze(r),...n}),ia=Object.freeze([Object.freeze(
|
|
460
460
|
{id:"deepseek",baseUrl:"https://api.deepseek.com/",claudeBaseUrl:"https://api.deepseek.com/anthropic",claudeAutoCompactWindow:786432,
|
|
461
461
|
webSearch:!1,models:Object.freeze([_t("deepseek-flash",1048576,["low","high","max"],{images:!0,freeformPatch:!0,codexHistoryRouting:!0}),
|
|
@@ -493,11 +493,11 @@ currentHelperExecutionContext!="function")throw p("Codex helper execution requir
|
|
|
493
493
|
currentHelperExecutionContext(),h=I(f?.cwd),g=I(f?.accountIdentitySignature);if(f?.executionMode!=="helper"||!h||!ad.isAbsolute(
|
|
494
494
|
h)||!/^sha256:[a-f0-9]{64}$/u.test(g))throw p("Codex helper runtime isolation could not be verified.");return Object.freeze(
|
|
495
495
|
{accountIdentitySignature:g,cwd:h,executionMode:"helper"})}function P(u=""){let f=I(u).match(/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u);
|
|
496
|
-
if(!f)return null;let h=f.slice(1).map(g=>Number.parseInt(g,10));return h.every(Number.isSafeInteger)?h:null}function
|
|
496
|
+
if(!f)return null;let h=f.slice(1).map(g=>Number.parseInt(g,10));return h.every(Number.isSafeInteger)?h:null}function D(u=""){
|
|
497
497
|
let f=I(u);if(!f||f.length>n||ge(f))return null;let h=`${t}/`;if(!f.startsWith(h))return null;let g=f.slice(h.length).match(
|
|
498
|
-
/^((?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*))(?:$|[ \t].*$)/u);return g?P(g[1]):null}function
|
|
498
|
+
/^((?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*))(?:$|[ \t].*$)/u);return g?P(g[1]):null}function j(u){if(typeof u?.currentServerInfo!=
|
|
499
499
|
"function")throw p("Codex helper execution cannot verify the app-server version. Update Codex and retry.",{minimumVersion:e});
|
|
500
|
-
let f=I(u.currentServerInfo()?.userAgent),h=
|
|
500
|
+
let f=I(u.currentServerInfo()?.userAgent),h=D(f);if(!h)throw p("Codex helper execution received an unrecognised app-serv\
|
|
501
501
|
er version. Update Codex and retry.",{minimumVersion:e});let g=h.join("."),y=P(e),S=h.findIndex((b,R)=>b!==y[R]);if(S!==
|
|
502
502
|
-1&&h[S]<y[S])throw p(`Codex helper execution requires app-server ${e} or newer; current version is ${g}. Update Codex a\
|
|
503
503
|
nd retry.`,{actualVersion:g,minimumVersion:e});return Object.freeze({minimumVersion:e,version:g})}function L(u=null){if(!It(
|
|
@@ -522,7 +522,7 @@ fromEntries(g.map(b=>[b,{enabled:!1}])),memories:{dedicated_tools:!1,generate_me
|
|
|
522
522
|
mcp:{enabled:!1},skills:{enabled:!1}},project_doc_max_bytes:0,shell_environment_policy:{inherit:"none",set:{}},skills:{include_instructions:!1},
|
|
523
523
|
tools:{experimental_request_user_input:{enabled:!1},update_plan:{enabled:!1}},web_search:"disabled"},S=xs(y);return v.add(
|
|
524
524
|
S),S}function q(u,f,h,{effort:g="",summary:y=""}={}){let S=L(u),b=J(f,h);return{mcpServerNames:S,hookState:b,config:B({effort:g,
|
|
525
|
-
summary:y,hookKeys:b.hookKeys,mcpServerNames:S})}}async function ae(u,{effort:f="",summary:h=""}={}){if(
|
|
525
|
+
summary:y,hookKeys:b.hookKeys,mcpServerNames:S})}}async function ae(u,{effort:f="",summary:h=""}={}){if(j(u),typeof u?.readConfig!=
|
|
526
526
|
"function"||typeof u?.listHooks!="function")throw p("Codex helper execution cannot inventory configuration and hooks.");
|
|
527
527
|
let g=await O(u),y=T(u),S=await u.readConfig({cwd:g.cwd,includeLayers:!1});if(T(u)!==y)throw p("Codex app-server reconne\
|
|
528
528
|
cted during helper policy verification.");let b=await u.listHooks([g.cwd]);if(T(u)!==y)throw p("Codex app-server reconne\
|
|
@@ -551,7 +551,7 @@ return{...u,sessionStartSource:"startup",threadSource:f}}function ar(u){return{a
|
|
|
551
551
|
baseInstructions,config:u.config,cwd:u.cwd,systemPrompt:u.systemPrompt,model:u.model,runtimeWorkspaceRoots:u.runtimeWorkspaceRoots,
|
|
552
552
|
sandbox:u.sandbox}}function w({approvalPolicy:u,cwd:f,effectiveSettings:h,outputSchema:g}){let y={approvalPolicy:u,cwd:f,
|
|
553
553
|
environments:[],model:h.model,outputSchema:g,runtimeWorkspaceRoots:[],sandboxPolicy:{networkAccess:!1,type:"readOnly"},summary:"\
|
|
554
|
-
none"};return h.request.reasoning&&(y.effort=h.thinking),y}return Object.freeze({assertCompatibility:
|
|
554
|
+
none"};return h.request.reasoning&&(y.effort=h.thinking),y}return Object.freeze({assertCompatibility:j,executionContext:O,
|
|
555
555
|
inspect:ae,configuration:yt,hasConfiguration:Ee,threadSettings:sr,threadStartSettings:ir,threadResumeSettings:ar,turnSettings:w,
|
|
556
556
|
start:he,resume:wt})}var Tv=ud();var By=Object.freeze({PROVIDER_FAILURE:"provider_failure",RESPONSE_DELIVERY_FAILURE:"response_delivery_failure",SERVICE_RESTART:"\
|
|
557
557
|
service_restart",USER_CANCELLED:"user_cancelled",CONTROL_RECONFIGURATION:"control_reconfiguration",INTERRUPTED:"interrup\
|
|
@@ -569,9 +569,9 @@ in the record show it happened. Ignore plans, offers, questions, advice, facts a
|
|
|
569
569
|
pened earlier in the conversation, and descriptions of what a file or app contains.",'Reply with JSON only: {"unsupporte\
|
|
570
570
|
d": ["short quote of each unsupported claim"]}, with [] when every claim is supported.'].join(`
|
|
571
571
|
`);var ZI=64*1024;var Vd="the app",sS=Qr(Vd);var aS=16*1024*1024;var lS=new URL("./../../../@jskit-ai/assistant-core/src/server/conversation/commandWrapper.js",import.meta.url).href;var Zd=Object.freeze({streaming:!1,instructions:!1,configuration:!1,goals:!1,goalBudgets:!1,goalCommands:Object.freeze({}),
|
|
572
|
-
attachments:!1,tools:!1,nativeTools:!1});var
|
|
572
|
+
attachments:!1,tools:!1,nativeTools:!1});var Lx=Object.freeze({goals:!0,goalBudgets:!1,goalCommands:Object.freeze({set:Object.freeze({delivery:"message",interruptsTurn:!1}),
|
|
573
573
|
resume:Object.freeze({delivery:"message",interruptsTurn:!1}),pause:Object.freeze({delivery:"control",interruptsTurn:!0}),
|
|
574
|
-
cancel:Object.freeze({delivery:"message",interruptsTurn:!0})})}),
|
|
574
|
+
cancel:Object.freeze({delivery:"message",interruptsTurn:!0})})}),Fx=Object.freeze({});var mT=new URL("./../../../@jskit-ai/assistant-core/src/server/conversation/codexRuntime.js",import.meta.url).href;import{createHash as Ds}from"node:crypto";import{open as vu}from"node:fs/promises";import js from"node:path";var an=1024*1024,wu=256*1024,zs=512,yu=128,Iu=16*1024;function cn({errorPrefix:t="",identityNamespace:e="codex-account-v\
|
|
575
575
|
1",secretNamespace:r="codex-auth-secret-v1"}={}){function n(d="",l=""){let m=new Error(I(l)||"Codex helper authenticatio\
|
|
576
576
|
n is unavailable. Reconnect Codex and retry.");return m.code=I(d)||`${t}codex_helper_auth_unavailable`,m}function o(d,{label:l="\
|
|
577
577
|
Codex authentication value",maxLength:m=0}={}){if(typeof d!="string"||d.length===0||d.length>m)throw n(`${t}codex_helper\
|
|
@@ -593,9 +593,9 @@ return Object.freeze({accessToken:T,accountId:x,authMode:"chatgpt",identitySigna
|
|
|
593
593
|
T)})}if(["apikey","api_key"].includes(p)){let v=o(m.OPENAI_API_KEY,{label:"Codex API key",maxLength:Iu});return Object.freeze(
|
|
594
594
|
{apiKey:v,authMode:"apiKey",identitySignature:s("apiKey",v),secretSignature:i(v)})}throw n(`${t}codex_helper_auth_invali\
|
|
595
595
|
d`,"The selected Codex authentication mode is unsupported. Reconnect Codex and retry.")}return Object.freeze({error:n,identitySignature:s,
|
|
596
|
-
readRecord:a,readSelected:c})}var
|
|
596
|
+
readRecord:a,readSelected:c})}var DT=Object.freeze({label:"Checking the Codex sign-in",operationId:"codex-auth-preflight"});var $T=cn().error;var pb=4*1024*1024;var x_=Object.freeze({goals:!0,goalBudgets:!0,goalCommands:Object.freeze({set:Object.freeze({delivery:"control",interruptsTurn:!1}),
|
|
597
597
|
resume:Object.freeze({delivery:"control",interruptsTurn:!1}),pause:Object.freeze({delivery:"control",interruptsTurn:!0}),
|
|
598
|
-
cancel:Object.freeze({delivery:"control",interruptsTurn:!1})})});var
|
|
598
|
+
cancel:Object.freeze({delivery:"control",interruptsTurn:!1})})});var A_=2*1024*1024,O_=32*1024*1024,R_=2*1024*1024;function U(t){if(t===null||typeof t!="object")return!1;let e=Object.getPrototypeOf(t);return e===Object.prototype||e===null||
|
|
599
599
|
Ru(e)}function Ru(t){return t!==null&&typeof t=="object"&&Object.getPrototypeOf(t)===null&&Reflect.ownKeys(t).length===0}function ln(t){return t!==null&&typeof t=="object"&&U(t.structure)&&U(t.operations)&&typeof t.validateWith=="function"&&
|
|
600
600
|
typeof t.toJsonSchema=="function"&&typeof t.cleanup=="function"}function Wt(t,e){if(!Object.hasOwn(e,"items"))return null;
|
|
601
601
|
let{items:r}=e;if(ln(r))return{kind:"schema",schema:r};if(!U(r)||typeof r.type!="string")throw new Error(`Array field "${t}\
|
|
@@ -805,9 +805,9 @@ c,e[c],r,a,n,o,d);this._mergeErrors(i,l)}return{validatedObject:a,errors:i}}_val
|
|
|
805
805
|
hasOwn(this.structure,e))return{};let c=this.structure[e],d=r.self===!0,l=ii(r);if(this._fieldToBeSkipped(a,s))return{};
|
|
806
806
|
let m=Object.hasOwn(n,e),p=n[e],v={};if(!m){if(d&&i.enforceRequired&&c.required&&!this._paramToBeSkipped("required",s.skipParams,
|
|
807
807
|
a)&&this._mergeErrors(v,this._singleErrorMap({field:a,code:"REQUIRED",message:"Field is required",params:{}})),d&&i.applyDefaults&&
|
|
808
|
-
c.defaultTo!==void 0){let P=typeof c.defaultTo=="function"?c.defaultTo():c.defaultTo,
|
|
809
|
-
currentObject:o,containerKey:e,objectBeforeCast:n,options:s,settings:i});this._mergeErrors(v,
|
|
810
|
-
length===0&&_(o,e,
|
|
808
|
+
c.defaultTo!==void 0){let P=typeof c.defaultTo=="function"?c.defaultTo():c.defaultTo,D=this._normalizeDefault(c,P,{fieldPath:a,
|
|
809
|
+
currentObject:o,containerKey:e,objectBeforeCast:n,options:s,settings:i});this._mergeErrors(v,D.errors),Object.keys(D.errors).
|
|
810
|
+
length===0&&_(o,e,D.value)}return v}if(p===void 0)return d&&i.rejectExplicitUndefined?this._singleErrorMap(this._typeError(
|
|
811
811
|
a).errorObject):{};let x={[e]:p};if(d){let P=this._normalizeAndValidateValue(c,p,a,x,e,n,s,i);return Object.hasOwn(x,e)&&
|
|
812
812
|
x[e]!==void 0?_(o,e,x[e]):x[e]===null&&_(o,e,null),P}if(!l)return{};let T=this._castValue(c,p,a,x,e,n,s,i);if(Object.keys(
|
|
813
813
|
T.errors).length>0)return T.errors;if(!T.shouldContinue)return{};let O=this._validateSelectedDescendants(c,r.children,a,
|
|
@@ -824,11 +824,11 @@ if(P===void 0){T&&a.rejectExplicitUndefined&&_(l,v,this._typeError(v).errorObjec
|
|
|
824
824
|
let q=o.schema._validateWithOperation("replace",o.schema.operations.replace,P,He(i,v));Zt(q.validatedObject)&&_(c,p,q.validatedObject),
|
|
825
825
|
this._mergeErrors(l,$e(q.errors,v));continue}if(!O)continue;let B=o.schema._validateSelectedTree(x.children,P,He(i,v),{...a,
|
|
826
826
|
operationName:"replace",operation:o.schema.operations.replace,defaultedFields:new Set});Zt(B.validatedObject)&&_(c,p,B.validatedObject),
|
|
827
|
-
this._mergeErrors(l,$e(B.errors,v));continue}let
|
|
828
|
-
o.definition,P,v,
|
|
829
|
-
continue}if(!O)continue;let L=this._castValue(o.definition,P,v,
|
|
830
|
-
l,L.errors);continue}if(!L.shouldContinue)continue;let J=this._validateSelectedDescendants(o.definition,x.children,v,
|
|
831
|
-
i,
|
|
827
|
+
this._mergeErrors(l,$e(B.errors,v));continue}let D=this._buildArrayItemSettings(o.definition,a),j=[P];if(T){let B=this._normalizeAndValidateValue(
|
|
828
|
+
o.definition,P,v,j,0,d,i,D);Object.hasOwn(j,0)&&j[0]!==void 0?_(c,p,j[0]):j[0]===null&&_(c,p,null),this._mergeErrors(l,B);
|
|
829
|
+
continue}if(!O)continue;let L=this._castValue(o.definition,P,v,j,0,d,i,D);if(Object.keys(L.errors).length>0){this._mergeErrors(
|
|
830
|
+
l,L.errors);continue}if(!L.shouldContinue)continue;let J=this._validateSelectedDescendants(o.definition,x.children,v,j,0,
|
|
831
|
+
i,D);Zt(j[0])&&_(c,p,j[0]),this._mergeErrors(l,J)}return l}validateWith(e,r,n={}){if(!Object.hasOwn(this.operations,e))throw new Error(
|
|
832
832
|
`Unknown operation "${e}".`);let o=this.operations[e];return this._assertPlainObjectInput(e,r),this._validateWithOperation(
|
|
833
833
|
e,o,r,n)}validateAt(e,r,n={}){this._assertPlainObjectInput("validateAt",r);let o=_n(e),{operationName:s,operation:i,validationOptions:a}=this.
|
|
834
834
|
_resolvePathValidationRequest(n),c=this._validateSelectedTree(ci([e]),r,a,this._buildOperationSettings(s,i,r));return{validatedValue:al(
|
|
@@ -840,7 +840,7 @@ _buildOperationSettings(o,s,r))}_installOperationMethods(){for(let e of Object.k
|
|
|
840
840
|
return oi(this,e)}getFieldDefinitions(){return Tn(this.structure)}getFieldDefinition(e){if(typeof e!="string"||e.trim()===
|
|
841
841
|
"")throw new Error("Field path must be a non-empty string.");let r=Cn(this,_n(e.trim()));return r===null?null:Tn(r)}getFieldMessages(e){
|
|
842
842
|
let r=this.getFieldDefinition(e);return!r||typeof r.messages!="object"||r.messages===null?Object.freeze({}):Tn(r.messages)}cleanup(e,r){
|
|
843
|
-
let n={};for(let o of Object.keys(e))Object.hasOwn(this.structure,o)&&this.structure[o][r]&&_(n,o,e[o]);return n}};var{parse:
|
|
843
|
+
let n={};for(let o of Object.keys(e))Object.hasOwn(this.structure,o)&&this.structure[o][r]&&_(n,o,e[o]);return n}};var{parse:dC,stringify:ml}=JSON,{keys:uC}=Object,hl=String,gl="string";var mi="object",vl=(t,e)=>e;var hi=(t,e,r)=>{let n=hl(e.push(r)-1);return t.set(r,n),n};var gi=(t,e,r)=>{let n=e&&typeof e===mi?(l,m)=>l===""||-1<e.indexOf(l)?m:void 0:e||vl,o=new Map,s=[],i=[],a=+hi(o,s,n.call(
|
|
844
844
|
{"":t},"",t)),c=!a;for(;a<s.length;)c=!0,i[a]=ml(s[a++],d,r);return"["+i.join(",")+"]";function d(l,m){if(c)return c=!c,
|
|
845
845
|
m;let p=n.call(this,l,m);switch(typeof p){case mi:if(p===null)return p;case gl:return o.get(p)||hi(o,s,p)}return p}};var yl=new Set(["true","1","yes","y","on"]),Il=new Set(["false","0","no","n","off"]);function Sl(t){return t!==null&&(typeof t==
|
|
846
846
|
"object"||typeof t=="function")&&typeof t.then=="function"}function vi(t){if(typeof t=="number")return Number.isFinite(t)?
|
|
@@ -913,7 +913,7 @@ ust be schema instances or schema factories created by json-rest-schema.");Ii(o,
|
|
|
913
913
|
ator")}return{types:o,validators:s}}function bi({types:t={},validators:e={},installCore:r=!0}={}){let n=tr(t),o=tr(e),s=(i,a={})=>{
|
|
914
914
|
let c=new Be(i,n,o,a.operations);return yi(c,n,o),c};return yi(s,n,o),s.addType=(i,a)=>{Tl(n,i,a)},s.addValidator=(i,a)=>{
|
|
915
915
|
bl(o,i,a)},s.use=i=>{_l(i,{addType:s.addType,addValidator:s.addValidator})},s.createFactory=(...i)=>{let a=Ol(n,o,i);return bi(
|
|
916
|
-
{types:a.types,validators:a.validators,installCore:!1})},r&&s.use(wi),s}var Q=bi({installCore:!0});var
|
|
916
|
+
{types:a.types,validators:a.validators,installCore:!1})},r&&s.use(wi),s}var Q=bi({installCore:!0});var PC=Object.freeze({schema:Q({}),mode:"replace"});var _i=/^[a-z][a-z0-9_.-]*$/u,Pl=/^[A-Za-z_$][A-Za-z0-9_$]*$/u;function Ci(t,e){let r=String(t||"").trim().toLowerCase();
|
|
917
917
|
if(!_i.test(r))throw new TypeError(`${e} must match ${_i.toString()}.`);return r}function On(t,e){if(t==null)return Object.
|
|
918
918
|
freeze({});if(!E(t))throw new TypeError(`${e} must be an object mapping local names to capability ids.`);let r={},n=new Set;
|
|
919
919
|
for(let[o,s]of Object.entries(t)){let i=String(o||"").trim();if(!Pl.test(i))throw new TypeError(`${e} local name "${i}" \
|
|
@@ -943,7 +943,7 @@ unction when provided.`);return Object.freeze({id:e,handle:t.handle,matches:t.ma
|
|
|
943
943
|
throw new Error(`Event listener "${a.id}" is duplicated.`);return e.add(a.id),t.push(a),s}async function n(i){let a=jl(i);
|
|
944
944
|
for(let c of t)c.matches&&c.matches(a)!==!0||await c.handle(a);return a}function o(){return Object.freeze({listenerIds:Object.
|
|
945
945
|
freeze(t.map(i=>i.id))})}let s=Object.freeze({register:r,publish:n,diagnostics:o});return s}var zl=rr({id:"runtime.events",provides:{events:"runtime.events"},setup(){return{events:Mn()}}});function Ce(t,e=new WeakSet){if(!t||typeof t!="object"||e.has(t))return t;e.add(t);for(let r of Object.getOwnPropertyNames(
|
|
946
|
-
t))Ce(t[r],e);return Object.freeze(t)}var
|
|
946
|
+
t))Ce(t[r],e);return Object.freeze(t)}var SE=Object.freeze({REQUIRED:{messageKey:"required",code:"kernel.validation.field.required"},TYPE_CAST_FAILED:{messageKey:"\
|
|
947
947
|
default",code:"kernel.validation.field.typeCastFailed"},NOT_NULLABLE:{messageKey:"default",code:"kernel.validation.field\
|
|
948
948
|
.notNullable"},MIN_LENGTH:{messageKey:"minLength",code:"kernel.validation.field.minLength"},MAX_LENGTH:{messageKey:"maxL\
|
|
949
949
|
ength",code:"kernel.validation.field.maxLength"},MIN_VALUE:{messageKey:"min",code:"kernel.validation.field.minValue"},MAX_VALUE:{
|
|
@@ -951,10 +951,10 @@ messageKey:"max",code:"kernel.validation.field.maxValue"},PATTERN:{messageKey:"p
|
|
|
951
951
|
ttern"},ENUM_VALUE:{messageKey:"enum",code:"kernel.validation.field.enumValue"},FIELD_NOT_ALLOWED:{messageKey:"additiona\
|
|
952
952
|
lProperties",code:"kernel.validation.field.notAllowed"},CUSTOM_VALIDATOR_FAILED:{messageKey:"validator",code:""},STRICT_BOOLEAN:{
|
|
953
953
|
messageKey:"default",code:"kernel.validation.field.strictBoolean"},RANGE_EXCEEDED:{messageKey:"default",code:"kernel.val\
|
|
954
|
-
idation.field.rangeExceeded"},NOT_EMPTY:{messageKey:"default",code:"kernel.validation.field.notEmpty"}}),
|
|
955
|
-
{code:"kernel.validation.invalid",message:"Invalid value."}),
|
|
954
|
+
idation.field.rangeExceeded"},NOT_EMPTY:{messageKey:"default",code:"kernel.validation.field.notEmpty"}}),xE=Object.freeze(
|
|
955
|
+
{code:"kernel.validation.invalid",message:"Invalid value."}),TE=Object.freeze(["create","replace","patch","toJsonSchema"]);var ql=Q({cursor:{type:"id",required:!1},limit:{type:"number",required:!1,min:1,unsigned:!0}}),$l=Object.freeze({schema:ql,
|
|
956
956
|
mode:"patch"});var Ri=Object.freeze({type:"string",pattern:"^(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d)?$",minLength:5}),Hl=Object.freeze(
|
|
957
|
-
{...Ri,nullable:!0});var
|
|
957
|
+
{...Ri,nullable:!0});var KE=new Map([{keyword:"required",code:"kernel.validation.required"},{keyword:"type",code:"kernel.validation.type"},{keyword:"\
|
|
958
958
|
minLength",code:"kernel.validation.minLength"},{keyword:"maxLength",code:"kernel.validation.maxLength"},{keyword:"minimu\
|
|
959
959
|
m",code:"kernel.validation.minimum"},{keyword:"maximum",code:"kernel.validation.maximum"},{keyword:"exclusiveMinimum",code:"\
|
|
960
960
|
kernel.validation.exclusiveMinimum"},{keyword:"exclusiveMaximum",code:"kernel.validation.exclusiveMaximum"},{keyword:"mu\
|
|
@@ -968,7 +968,7 @@ kernel.validation.propertyNames"},{keyword:"oneOf",code:"kernel.validation.oneOf
|
|
|
968
968
|
ion.anyOf"},{keyword:"not",code:"kernel.validation.not"},{keyword:"if",code:"kernel.validation.if"}].map(({keyword:t,code:e})=>[
|
|
969
969
|
t,e]));var Pi="^[1-9][0-9]*$",Nn=Ce({type:"string",minLength:1,pattern:Pi}),Vl=Ce({...Nn,nullable:!0}),Gl=Ce({schema:Q({recordId:{
|
|
970
970
|
...Nn,required:!0,messages:{pattern:{code:"kernel.validation.recordIdInvalid",message:"Record id must be a canonical pos\
|
|
971
|
-
itive integer string."}}}}),mode:"patch"});var ki=20
|
|
971
|
+
itive integer string."}}}}),mode:"patch"});var ki=20,HA=32*1024,BA=48*1024,Dn=Object.freeze({search:"assistant_action_search",contract:"assistant_action_contract",
|
|
972
972
|
execute:"assistant_action_execute"}),jn=Object.freeze({type:"object",additionalProperties:!0}),Jl=Object.freeze({type:"o\
|
|
973
973
|
bject",additionalProperties:!1,properties:{query:{type:"string",maxLength:200,description:"Optional literal words or act\
|
|
974
974
|
ion-id fragments; every word must match. Use short resource or operation terms such as list. Omit query to browse all av\
|
|
@@ -990,8 +990,8 @@ le records. Search before claiming a capability is unavailable. If terminology d
|
|
|
990
990
|
query to browse. Returns compact paged matches without schemas; follow nextCursor when more discovery is needed.",parameters:Jl,
|
|
991
991
|
outputSchema:Xl}),Object.freeze({name:Dn.contract,description:"Load the exact input and output contract for one availabl\
|
|
992
992
|
e action before executing it.",parameters:Yl,outputSchema:Zl}),Object.freeze({name:Dn.execute,description:"Execute one a\
|
|
993
|
-
vailable action after loading its exact contract in this turn. The action result is returned in result.",parameters:Ql,outputSchema:ep})]);var
|
|
994
|
-
ersation_attachments_not_configured",messageCode:"assistant.conversation.attachmentsNotConfigured"})}});var
|
|
993
|
+
vailable action after loading its exact contract in this turn. The action result is returned in result.",parameters:Ql,outputSchema:ep})]);var XO=new URL("./../../../@jskit-ai/assistant-core/src/server/conversation/openCodeProcess.js",import.meta.url).href;var rR=256*1024;var nR=2*1024*1024;var oR=Mi.map(({name:t,description:e,parameters:r})=>({type:"function",function:{name:t,description:e,parameters:r}}));var NR=Object.freeze({});var GR=Object.freeze([]);var vp=Object.freeze({resolve(){throw new N(400,"File attachments are not configured for this conversation.",{code:"conv\
|
|
994
|
+
ersation_attachments_not_configured",messageCode:"assistant.conversation.attachmentsNotConfigured"})}});var tP=Object.freeze([{message:"This conversation exceeds the configured API history limit. Start another conversation o\
|
|
995
995
|
r increase the limit.",messageCode:"assistant.conversation.apiHistoryLimit"},{message:"The model reached its output toke\
|
|
996
996
|
n limit before completing the answer. Increase maxOutputTokens in the conversation limits.",messageCode:"assistant.conve\
|
|
997
997
|
rsation.outputTokenLimit"},{message:"The model stream ended without confirming its application tool calls.",messageCode:"\
|
|
@@ -1010,21 +1010,21 @@ t be saved. Restore storage access and retry saving.",messageCode:"assistant.con
|
|
|
1010
1010
|
Conversation progress could not be saved. Restore access to its storage before continuing.",messageCode:"assistant.conve\
|
|
1011
1011
|
rsation.progressUnsaved"},{message:"The conversation request exceeded its time limit.",messageCode:"assistant.conversati\
|
|
1012
1012
|
on.requestTimedOut"},{message:"Work stopped.",messageCode:"assistant.conversation.workStopped"},{message:"Stopped by use\
|
|
1013
|
-
r.",messageCode:"assistant.conversation.stoppedByUser"}]);var Ge=Object.freeze({text:16e3,toolName:256,arguments:256*1024,toolProgress:280});var
|
|
1014
|
-
type:"string",maxLength:Ge.toolName,required:!1},arguments:{type:"string",maxLength:Ge.arguments,required:!1}}),
|
|
1013
|
+
r.",messageCode:"assistant.conversation.stoppedByUser"}]);var Ge=Object.freeze({text:16e3,toolName:256,arguments:256*1024,toolProgress:280});var LP=Q({kind:{type:"string",enum:["reply","tool"],required:!0},text:{type:"string",maxLength:Ge.text,required:!1},toolName:{
|
|
1014
|
+
type:"string",maxLength:Ge.toolName,required:!1},arguments:{type:"string",maxLength:Ge.arguments,required:!1}}),FP={type:"\
|
|
1015
1015
|
object",additionalProperties:!1,required:["kind","text","toolName","arguments"],properties:{kind:{type:"string",enum:["r\
|
|
1016
1016
|
eply","tool"]},text:{type:"string",maxLength:Ge.text,description:"The final reply, or a brief progress sentence for the \
|
|
1017
1017
|
first tool request; empty for subsequent tool requests."},toolName:{type:"string",maxLength:Ge.toolName},arguments:{type:"\
|
|
1018
|
-
string",maxLength:Ge.arguments}}};var
|
|
1018
|
+
string",maxLength:Ge.arguments}}};var F0=Object.freeze({});function Ep(){throw new TypeError("Hook delivery requires an instruction resolver.")}function Bn({resolveConversation:t,
|
|
1019
1019
|
readInstructions:e=Ep}){if(typeof t!="function")throw new TypeError("Conversation hook delivery requires a binding resol\
|
|
1020
1020
|
ver.");return async function(n){if(n.scope!=="session")return{kind:"unclaimed"};let o=await t(n);if(!o)return{kind:"uncl\
|
|
1021
1021
|
aimed"};if(o.delivery==="native")return{kind:"delivery",text:""};if(o.delivery!=="hook")throw new TypeError("Unknown con\
|
|
1022
1022
|
versation instruction delivery mode.");let s=await e(o,n);if(typeof s!="string"||!s.trim())throw new TypeError("Managed \
|
|
1023
|
-
conversation instructions are unavailable.");return{kind:"delivery",text:s}}}var
|
|
1023
|
+
conversation instructions are unavailable.");return{kind:"delivery",text:s}}}var $0=Object.freeze({codex:Object.freeze({requiresWriterExclusion:!1}),claude:Object.freeze({requiresWriterExclusion:!0,
|
|
1024
1024
|
allowsManagedServer:!1,matchesProcess:({executable:t,commandLine:e})=>/(?:^|[\0/])claude(?:\0|$)|@anthropic-ai\/claude-code\//u.
|
|
1025
1025
|
test(`${t||""}\0${e}`)}),opencode:Object.freeze({requiresWriterExclusion:!0,allowsManagedServer:!0,matchesProcess:({executable:t,
|
|
1026
1026
|
commandLine:e})=>/(?:^|[\0/])opencode(?:\0|$)/u.test(`${t||""}\0${e}`)})});import{readFile as Ap}from"node:fs/promises";import Vn from"node:path";function or(t){return String(t||"").trim()}var Op=Object.freeze(["main","temporary"]),qi=Object.freeze(["managedDatabaseRefresh","managedEnvironment","managedGit",
|
|
1027
|
-
"managedPreview"]),Rp=64*1024,
|
|
1027
|
+
"managedPreview"]),Rp=64*1024,IM=Object.freeze(["When user input is necessary, ask no more than three concise, high-impa\
|
|
1028
1028
|
ct questions at once.","Put multiple questions on separate lines as `[1] Question`, `[2] Question`, and so on.","For a s\
|
|
1029
1029
|
mall fixed set of useful choices, put `Possible answers:` and a short bullet list directly beneath its own question, bef\
|
|
1030
1030
|
ore the next one; never collect several questions' answers into one trailing list.","Each bullet is one distinct, comple\
|
|
@@ -1037,7 +1037,7 @@ Possible answers:
|
|
|
1037
1037
|
[2] Tell the main agent before changes?
|
|
1038
1038
|
Possible answers:
|
|
1039
1039
|
- Yes, tell main first
|
|
1040
|
-
- No, proceed independently`]),
|
|
1040
|
+
- No, proceed independently`]),SM=Object.freeze(["The Vibe64-managed preview is the canonical application server; never \
|
|
1041
1041
|
start a duplicate or replacement server. If it is unavailable, report that blocker. Describe only rendered browser evide\
|
|
1042
1042
|
nce.","When adopting an authenticated app, or when its login blocks Preview inspection, inspect identity support/names w\
|
|
1043
1043
|
ith `vibe64-helper preview status`; prefer `vibe64-helper preview browser identity <configured-name>` to requesting pass\
|
|
@@ -1091,7 +1091,7 @@ tatus` is ready on the restored target. To stop, run `vibe64-helper playwright c
|
|
|
1091
1091
|
ot prove tests stopped. Recheck status before reporting a busy blocker.","If a managed command reports kernel task denia\
|
|
1092
1092
|
ls or a resource incident, report the blocker with its diagnostic and incident ID and ask the platform operator to inspe\
|
|
1093
1093
|
ct that evidence before retrying; never raise test timeouts or weaken assertions to work around a process/thread limit. \
|
|
1094
|
-
A generic browser timeout without resource evidence does not establish a platform cause."]),
|
|
1094
|
+
A generic browser timeout without resource evidence does not establish a platform cause."]),xM=Object.freeze(["Each mana\
|
|
1095
1095
|
ged shell command receives current development Env from Vibe64, including declared resource bindings; use them in ordina\
|
|
1096
1096
|
ry commands. Do not build environment injection or copy managed credentials into source. Resource provisioning and appli\
|
|
1097
1097
|
cation migrations remain separate preparation steps.","Use `vibe64-helper env status [development|production|all]` to in\
|