@inkeep/open-knowledge 0.59.0-beta.13 → 0.59.0-beta.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{acp-harness-probe-BLS1nK2w.mjs → acp-harness-probe-CNFNCUGz.mjs} +2 -2
- package/dist/cli.mjs +6 -6
- package/dist/constants-DN-9zlW1.mjs +2 -0
- package/dist/fs-traced-C1nHpvFb.mjs +1 -0
- package/dist/{fs-traced-CJ0NSnI0.mjs → fs-traced-Dy67FR5_.mjs} +2 -2
- package/dist/git-handle-BPPRdjZZ.mjs +1 -0
- package/dist/{git-handle-DDFppGcc.mjs → git-handle-KDk0khh5.mjs} +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{init-DBtz-4P6.mjs → init-CfD5NARM.mjs} +3 -3
- package/dist/init-DWv8tT4O.mjs +1 -0
- package/dist/{launch-json-removal-CZFUI3we.mjs → launch-json-removal-D2sBQ6Ur.mjs} +2 -2
- package/dist/loader-BGkwEr7t.mjs +1 -0
- package/dist/{loader-DLrxB82t.mjs → loader-BofTct4Y.mjs} +2 -2
- package/dist/md-manager-CdRw_aqi.mjs +2 -0
- package/dist/{open-browser-CHSsUL5t.mjs → open-browser-BklPlV75.mjs} +2 -2
- package/dist/parse-worker.mjs +1 -1
- package/dist/{preview-B53ZHVpa.mjs → preview-B2a1S7UT.mjs} +2 -2
- package/dist/preview-D13Am20B.mjs +1 -0
- package/dist/public/assets/{ActivityModeContent-Dm80EO6I.js → ActivityModeContent-BIn008__.js} +1 -1
- package/dist/public/assets/{AgentDiffPane-CiDRNNtB.js → AgentDiffPane-3GMOCb2c.js} +1 -1
- package/dist/public/assets/{AgentThreadClientBinder-q7HjbS_V.js → AgentThreadClientBinder-Di2dPu4h.js} +1 -1
- package/dist/public/assets/{CodeMirrorPropInput-CAuN39X3.js → CodeMirrorPropInput-BKSuOOVi.js} +1 -1
- package/dist/public/assets/{DocumentContext-BQwDWNIp.js → DocumentContext-C-X4T4d9.js} +1 -1
- package/dist/public/assets/{EditorModeToggle-BPsUpNqB.js → EditorModeToggle-CPKSIpqP.js} +1 -1
- package/dist/public/assets/{EnableSyncConfirmDialog-SztigQDp.js → EnableSyncConfirmDialog-B9GQfDxa.js} +1 -1
- package/dist/public/assets/{ExcalidrawDocEditor-DUpN3hmr.js → ExcalidrawDocEditor-CiuG3mW7.js} +1 -1
- package/dist/public/assets/FeedbackForm-DYjADexF.js +1 -0
- package/dist/public/assets/{GraphPanel-B_Mg9p1O.js → GraphPanel-DT-1F3b4.js} +1 -1
- package/dist/public/assets/{ImportSkillDialog-Dlx0DBn5.js → ImportSkillDialog-d6lkfU9h.js} +1 -1
- package/dist/public/assets/{LintConfigEditor-DZNYgrQG.js → LintConfigEditor-BEaCP-Xa.js} +1 -1
- package/dist/public/assets/{ManagedArtifactProperties-B-0nFc46.js → ManagedArtifactProperties-CI77JvTy.js} +1 -1
- package/dist/public/assets/ManagedArtifactProperties-RawOG82I.js +1 -0
- package/dist/public/assets/{MermaidDocEditor-Bu0vzdBQ.js → MermaidDocEditor-3Qy_xxrY.js} +1 -1
- package/dist/public/assets/{PropertyDisplayRow-DFpnExTR.js → PropertyDisplayRow-jv0QSvvc.js} +1 -1
- package/dist/public/assets/{ReportBugDialogBody-CVQgnZSP.js → ReportBugDialogBody-CD42zSIE.js} +1 -1
- package/dist/public/assets/{SchemaConfigEditor-BQ_qrwXQ.js → SchemaConfigEditor-DRPb60r3.js} +1 -1
- package/dist/public/assets/{SessionsHost-CednqHmx.js → SessionsHost-0wztntvc.js} +2 -2
- package/dist/public/assets/{SettingsDialogBody-CDLuNlbr.js → SettingsDialogBody-CguEJilL.js} +2 -2
- package/dist/public/assets/{ShareBranchSwitchDialog-DIQmuIkz.js → ShareBranchSwitchDialog-DD3l5H06.js} +1 -1
- package/dist/public/assets/{ShareReceiveDialog-BWuqWxsw.js → ShareReceiveDialog-D5BGQzdA.js} +1 -1
- package/dist/public/assets/{ShareReceiveMissDialog-CEG6W1Ev.js → ShareReceiveMissDialog-QiuppiTF.js} +1 -1
- package/dist/public/assets/{SkillCostValue-6xiHOBnl.js → SkillCostValue-D8ebP6Zc.js} +1 -1
- package/dist/public/assets/{SkillEditBanner-BqzwArWv.js → SkillEditBanner-BkzopHHR.js} +1 -1
- package/dist/public/assets/{SkillInstallMenu-CiSsB_my.js → SkillInstallMenu-B7luagyu.js} +1 -1
- package/dist/public/assets/{SkillOriginInline-B1B3kTSz.js → SkillOriginInline-BvpULx0r.js} +1 -1
- package/dist/public/assets/{SkillToolbarControls-DzZ0Gk1t.js → SkillToolbarControls-Dzsdm7PA.js} +1 -1
- package/dist/public/assets/{SlidesToolbarControls-BZvu5Syj.js → SlidesToolbarControls-CoX9pn5-.js} +1 -1
- package/dist/public/assets/{SourceEditor-qlPmt6ym.js → SourceEditor-QZM8qnoP.js} +1 -1
- package/dist/public/assets/{TerminalPanel-DkxYnA6s.js → TerminalPanel-gvD8j_Io.js} +1 -1
- package/dist/public/assets/{TerminalWindowApp-BhcRGz-t.js → TerminalWindowApp-CAceqDR9.js} +1 -1
- package/dist/public/assets/{TextDocEditor-CCvc4Q5l.js → TextDocEditor-tkRGKEq5.js} +1 -1
- package/dist/public/assets/{ThreadView-BbaUHoL7.js → ThreadView-BMvSxzC4.js} +1 -1
- package/dist/public/assets/{TimelineDiffPane-QLS0U_1C.js → TimelineDiffPane-DDkbig_i.js} +1 -1
- package/dist/public/assets/{agent-diff-store-J11a-4Bd.js → agent-diff-store-kz-Y8I6f.js} +1 -1
- package/dist/public/assets/{auth-state-cache-_thFjwl-.js → auth-state-cache-CXBlrCdD.js} +2 -2
- package/dist/public/assets/client-version-B1ECEFiM.js +1 -0
- package/dist/public/assets/{comment-chips-CLyRlBJL.js → comment-chips-ZBz8P1qB.js} +1 -1
- package/dist/public/assets/{config-provider-C7upY2Yd.js → config-provider-j9ER9l4W.js} +1 -1
- package/dist/public/assets/{dist-DGemBD_J.js → dist-7P3QNiAv.js} +2 -2
- package/dist/public/assets/{doc-paths-BkpejoFL.js → doc-paths-DPQCXAM6.js} +1 -1
- package/dist/public/assets/{documents-events-B2g_1xMi.js → documents-events-DSYMSbrh.js} +1 -1
- package/dist/public/assets/{file-tree-adapter-Bo3rGytc.js → file-tree-adapter-DWQqMzJU.js} +1 -1
- package/dist/public/assets/{file-tree-utils-CzXn1zjH.js → file-tree-utils-CCGJg4dv.js} +1 -1
- package/dist/public/assets/{folder-config-api-DPWmRi8a.js → folder-config-api-BFcRWayL.js} +1 -1
- package/dist/public/assets/{follow-file-DaYTg7AY.js → follow-file-DInAFQK_.js} +1 -1
- package/dist/public/assets/{globals-t_AE56h0.css → globals-DZLrtRra.css} +1 -1
- package/dist/public/assets/i18n-8WVAXtMP.js +1 -0
- package/dist/public/assets/{index-8x_9u23T.js → index-CW5V3fEN.js} +7 -7
- package/dist/public/assets/{lint-config-client-sK38eqbj.js → lint-config-client-D0R0SOyp.js} +1 -1
- package/dist/public/assets/{markdownlint-rule-browser-T68WxSIo.js → markdownlint-rule-browser-C-ng_hpW.js} +1 -1
- package/dist/public/assets/{navigation-targets-D6rHX3Pq.js → navigation-targets-BI4fIUSN.js} +1 -1
- package/dist/public/assets/{open-managed-artifact-tab-ENQgQOde.js → open-managed-artifact-tab-DUwaeWfA.js} +1 -1
- package/dist/public/assets/{pending-receive-nav-store-CC2XknmZ.js → pending-receive-nav-store-Crc_XCGA.js} +1 -1
- package/dist/public/assets/{prop-types-CizsurD0.js → prop-types-tU6-fOmD.js} +1 -1
- package/dist/public/assets/{receive-store-DHalgzeU.js → receive-store-BzLz5gZK.js} +1 -1
- package/dist/public/assets/{selection-context-DdO1wltB.js → selection-context-CnpF-Ed9.js} +1 -1
- package/dist/public/assets/{skill-actions-BSweQ1qx.js → skill-actions-BdLNV2ET.js} +1 -1
- package/dist/public/assets/{skill-scope-gUkJkFRO.js → skill-scope-CRZYtnmj.js} +1 -1
- package/dist/public/assets/{skills-api-DO54o34O.js → skills-api-DT1cIHsu.js} +1 -1
- package/dist/public/assets/{src-B5lvdvjM.js → src-BHnBKao9.js} +1 -1
- package/dist/public/assets/{tag-pill-input-D2qVy9HA.js → tag-pill-input-Bcant_jp.js} +1 -1
- package/dist/public/assets/{target-navigation-intent-BqElNT05.js → target-navigation-intent-Bd_1P8q5.js} +1 -1
- package/dist/public/assets/{telemetry-impl-BcdvjHjJ.js → telemetry-impl-u08eIZFn.js} +1 -1
- package/dist/public/assets/{telemetry-startup-CmDjO4so.js → telemetry-startup-PYGQzY-J.js} +1 -1
- package/dist/public/assets/{terminal-cli-display-BTQdEy1j.js → terminal-cli-display-Dcm1esjR.js} +1 -1
- package/dist/public/assets/{terminal-launch-events-DNmxO4ft.js → terminal-launch-events-D8ytCf2E.js} +1 -1
- package/dist/public/assets/{terminal-telemetry-BC3JNC05.js → terminal-telemetry-LPAWl6sJ.js} +1 -1
- package/dist/public/assets/{typing-burst-detector-ChW315nG.js → typing-burst-detector-MvNJwskd.js} +1 -1
- package/dist/public/assets/{uninstall-C1RXngJE.js → uninstall-ACcONsCi.js} +1 -1
- package/dist/public/assets/{use-activity-panel-SBXuDVLV.js → use-activity-panel-DO4-UumZ.js} +1 -1
- package/dist/public/assets/{use-apply-config-color-theme-DZRctrdg.js → use-apply-config-color-theme-DpUYtbRe.js} +1 -1
- package/dist/public/assets/{use-collab-url-B7oEo69p.js → use-collab-url-B1V6TiLU.js} +1 -1
- package/dist/public/assets/{use-live-xterm-theme-C1EtEd_i.js → use-live-xterm-theme-DYp4WjiU.js} +1 -1
- package/dist/public/assets/{use-open-skill-DI2x1PKF.js → use-open-skill-8o6IZoY2.js} +1 -1
- package/dist/public/assets/{use-popular-skills-DfFoUUYd.js → use-popular-skills-CC2urVQ6.js} +1 -1
- package/dist/public/assets/{use-settings-route-BrzzIll2.js → use-settings-route-DYSuZnve.js} +1 -1
- package/dist/public/assets/{use-skill-origin-FTbTIS5Y.js → use-skill-origin-Cd9ipAH-.js} +1 -1
- package/dist/public/assets/{use-terminal-enabled-BL8teAd-.js → use-terminal-enabled-pw2WV2qk.js} +1 -1
- package/dist/public/assets/{use-timeline-entry-diff-BjMCsEI9.js → use-timeline-entry-diff-B3StRSt9.js} +1 -1
- package/dist/public/assets/{use-workspace-8Sxb8Z6Q.js → use-workspace-BP0fuu9O.js} +1 -1
- package/dist/public/index.html +47 -47
- package/dist/public/uninstall.html +5 -5
- package/dist/{repair-launch-json-BCLVdv5z.mjs → repair-launch-json-DNViuYZ7.mjs} +2 -2
- package/dist/{repair-mcp-configs-7QsJ5kRz.mjs → repair-mcp-configs-BM4qXgds.mjs} +2 -2
- package/dist/{repair-skills-9uic_lvC.mjs → repair-skills-BoMh5uOr.mjs} +2 -2
- package/dist/repair-skills-D3qrrU25.mjs +1 -0
- package/dist/{resolve-project-root-DxuF_Wkh.mjs → resolve-project-root-DpSmoodv.mjs} +2 -2
- package/dist/{server-lock-BmwIVWMl.mjs → server-lock-CSO3K0Ok.mjs} +2 -2
- package/dist/server-lock-D_MF6GOb.mjs +1 -0
- package/dist/{skill-teardown-BAqBOmoz.mjs → skill-teardown-D66Xjjil.mjs} +2 -2
- package/dist/{sleep-B416PNUo.mjs → sleep-CEs13Om_.mjs} +2 -2
- package/dist/{src-BjgAn2Yr.mjs → src-8LdfqLwC.mjs} +6 -6
- package/dist/{src-BxdlvOrw.mjs → src-BimG4LM6.mjs} +3 -3
- package/dist/{src-CBP82hxm.mjs → src-D72th7in.mjs} +2 -2
- package/dist/{src-CUYD9VhP.mjs → src-DorV8gmN.mjs} +1 -1
- package/dist/src-bwfEbl1P.mjs +1 -0
- package/dist/{start-CI1yLDi9.mjs → start-BfQkBca_.mjs} +4 -4
- package/dist/start-C3q0F7F6.mjs +1 -0
- package/dist/{ui-Z7Q_cw-H.mjs → ui-DRrmB9yI.mjs} +3 -3
- package/package.json +5 -5
- package/dist/constants-CnQt0oGf.mjs +0 -2
- package/dist/fs-traced-Bmqe7SqT.mjs +0 -1
- package/dist/git-handle-CDxQW_H0.mjs +0 -1
- package/dist/init-DRcsYZFT.mjs +0 -1
- package/dist/loader-D8NZH1TL.mjs +0 -1
- package/dist/md-manager-30E0O9b-.mjs +0 -2
- package/dist/preview-DyCQvwcK.mjs +0 -1
- package/dist/public/assets/FeedbackForm-BTUVYyRh.js +0 -1
- package/dist/public/assets/ManagedArtifactProperties-FyJ6IPjk.js +0 -1
- package/dist/public/assets/client-version-CR8MBZoD.js +0 -1
- package/dist/public/assets/i18n-BmV9TpxI.js +0 -1
- package/dist/repair-skills-DFvLHpTw.mjs +0 -1
- package/dist/server-lock-e6dYuoeq.mjs +0 -1
- package/dist/src-BPIgs9KB.mjs +0 -1
- package/dist/start-DzWMYSvd.mjs +0 -1
- /package/dist/public/assets/{globals-BEtYwZKH.js → globals-CQk8qCgW.js} +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{Q as e,it as t,tt as n}from"./sleep-
|
|
2
|
-
`)}\r\n\r\n`),n.length>0&&o.write(n)}catch(e){c({event:`proxy-upgrade-handshake-write-failed`,err:e});return}o.on(`data`,e=>{t.writable&&t.write(e)}),t.on(`data`,e=>{o.writable&&o.write(e)})}),o.once(`timeout`,()=>{c({event:`proxy-upgrade-upstream-connect-timeout`})}),o.on(`error`,e=>c({event:`proxy-upgrade-upstream-error`,err:e})),t.on(`error`,e=>c({event:`proxy-upgrade-client-error`,err:e})),o.once(`close`,()=>c()),t.once(`close`,()=>c())}const y=[`connection`,`keep-alive`,`proxy-authenticate`,`proxy-authorization`,`te`,`trailer`,`transfer-encoding`,`upgrade`,`cookie`,`set-cookie`];async function b(e){let t=e.upstreamTimeoutMs??m,n=new Set,r=u((n,r)=>{h(n,r)||x(n,r,e.upstreamHost,e.upstreamPort,t)});r.on(`upgrade`,(t,r,i)=>{_(t,r)||v(t,r,i,e.upstreamHost,e.upstreamPort,n)}),await new Promise((t,n)=>{let i=e=>n(e);r.once(`error`,i),r.listen(e.listenPort,e.host,()=>{r.off(`error`,i),t()})});let i=r.address();return{httpServer:r,port:typeof i==`object`&&i?i.port:e.listenPort,close:()=>new Promise(e=>{for(let e of n)try{e.destroy()}catch{}n.clear(),r.close(()=>e()),r.closeIdleConnections()})}}function ee(e,t,n){x(e,t,n.upstreamHost,n.upstreamPort,n.upstreamTimeoutMs??m)}function x(e,t,n,r,i){let a={...e.headers};delete a.host;for(let e of y)delete a[e];e.setTimeout(g,()=>{if(t.headersSent)try{t.end()}catch{}else try{p(t,408,`urn:ok:error:request-timeout`,`Proxy request exceeded the per-request deadline.`,`Slow-loris-class: client did not finish within ${g/1e3}s.`)}catch{}try{e.socket?.destroy()}catch{}});let o=d({host:n,port:r,method:e.method,path:e.url,headers:{...a,host:`${n}:${r}`}},e=>{let n={...e.headers};for(let e of y)delete n[e];t.writeHead(e.statusCode??502,n),e.pipe(t),e.once(`error`,()=>{try{t.end()}catch{}})});i>0&&o.setTimeout(i,()=>{if(!t.headersSent)p(t,504,`urn:ok:error:gateway-timeout`,`Upstream did not respond before the gateway deadline.`,`Upstream timeout: ${i/1e3}s elapsed without a response.`);else try{t.end()}catch{}o.destroy()}),o.on(`error`,()=>{if(!t.headersSent)p(t,502,`urn:ok:error:collab-server-not-running`,`Collab server is unreachable.`,`Upstream connection failed or dropped before a response was received.`);else try{t.end()}catch{}}),e.on(`error`,()=>{o.destroy()}),e.pipe(o)}async function S(e){await Promise.all(e.map(e=>new Promise(t=>{e.close(()=>t())})))}function C(e){let t;try{t=new URL(e)}catch{throw Error(`Invalid --server-url '${e}' — expected e.g. http://127.0.0.1:24550`)}if(t.protocol!==`http:`)throw Error(`--server-url must be http: (got '${t.protocol}//') — the UI proxy speaks plain HTTP; terminate TLS at your ingress`);let n=t.port===``?80:Number(t.port);return{host:t.hostname.replace(/^\[(.+)\]$/,`$1`),port:n}}async function w(a){let{existsSync:o}=await import(`node:fs`),{createServer:s}=await import(`node:http`),{resolve:c}=await import(`node:path`),{acquireUiLock:l,buildIngressPolicy:u,createAssetServeMiddleware:d,createContentFilter:f,readServerLock:m,releaseUiLock:g,updateUiLockPort:y}=await import(`./src-
|
|
3
|
-
//# sourceMappingURL=ui-
|
|
1
|
+
import{Q as e,it as t,tt as n}from"./sleep-CEs13Om_.mjs";import{ft as r,ls as i,yo as a}from"./src-BimG4LM6.mjs";import{In as o,Ln as s,Rn as c}from"./src-8LdfqLwC.mjs";import{randomUUID as l}from"node:crypto";import{createServer as u,request as d}from"node:http";import{connect as f}from"node:net";function p(e,t,n,r,i){let o=`urn:uuid:${l()}`;if(e.headersSent||e.writableEnded||e.destroyed){console.error(`[ok ui] emitProblem called after headers sent — suppressed`,{type:n,status:t,instance:o});return}let s={type:n,title:r,status:t,instance:o,...i===void 0?{}:{detail:i}},c=a.safeParse(s);if(!c.success){console.error(`[ok ui] emitProblem produced an invalid ProblemDetails body:`,{issues:c.error.issues,originalStatus:t,body:s}),e.writeHead(500,{"Content-Type":`application/problem+json`,"X-Content-Type-Options":`nosniff`,"Cache-Control":`no-store`}),e.end(JSON.stringify({type:`urn:ok:error:internal-server-error`,title:`Internal server error.`,status:500,instance:o}));return}e.writeHead(t,{"Content-Type":`application/problem+json`,"X-Content-Type-Options":`nosniff`,"Cache-Control":`no-store`}),e.end(JSON.stringify(s))}const m=1e4;function h(e,t){let n=e.socket?.remoteAddress;if(n!==void 0&&!s(n))return p(t,403,`urn:ok:error:loopback-required`,`Request must originate from a loopback address.`),!0;if(!o(e.headers.host))return p(t,403,`urn:ok:error:host-not-allowed`,`Host header is not in the loopback allowlist.`),!0;let r=e.headers.origin;return r!==void 0&&!c(r)?(p(t,403,`urn:ok:error:invalid-origin`,`Origin header is not in the loopback allowlist.`),!0):!1}const g=3e4;function _(e,t){let n=e.socket?.remoteAddress;if(n!==void 0&&!s(n)||!o(e.headers.host))return t.destroy(),!0;let r=e.headers.origin;return typeof r==`string`&&!c(r)?(t.destroy(),!0):!1}function v(e,t,n,r,i,a){a.add(t),t.once(`close`,()=>a.delete(t));let o=f({host:r,port:i,timeout:m});a.add(o),o.once(`close`,()=>a.delete(o));let s=!1,c=n=>{if(!s){if(s=!0,n!==void 0){let t=n.err;console.warn(JSON.stringify({event:n.event,upstreamHost:r,upstreamPort:i,url:e.url,code:t instanceof Error?t.code:void 0,message:t instanceof Error?t.message:void 0}))}try{o.destroy()}catch{}try{t.destroy()}catch{}}};o.once(`connect`,()=>{o.setTimeout(0);let a=[`${e.method??`GET`} ${e.url??`/`} HTTP/1.1`,`host: ${r}:${i}`];for(let[t,n]of Object.entries(e.headers))if(t.toLowerCase()!==`host`&&n!==void 0)if(Array.isArray(n))for(let e of n)a.push(`${t}: ${e}`);else a.push(`${t}: ${n}`);try{o.write(`${a.join(`\r
|
|
2
|
+
`)}\r\n\r\n`),n.length>0&&o.write(n)}catch(e){c({event:`proxy-upgrade-handshake-write-failed`,err:e});return}o.on(`data`,e=>{t.writable&&t.write(e)}),t.on(`data`,e=>{o.writable&&o.write(e)})}),o.once(`timeout`,()=>{c({event:`proxy-upgrade-upstream-connect-timeout`})}),o.on(`error`,e=>c({event:`proxy-upgrade-upstream-error`,err:e})),t.on(`error`,e=>c({event:`proxy-upgrade-client-error`,err:e})),o.once(`close`,()=>c()),t.once(`close`,()=>c())}const y=[`connection`,`keep-alive`,`proxy-authenticate`,`proxy-authorization`,`te`,`trailer`,`transfer-encoding`,`upgrade`,`cookie`,`set-cookie`];async function b(e){let t=e.upstreamTimeoutMs??m,n=new Set,r=u((n,r)=>{h(n,r)||x(n,r,e.upstreamHost,e.upstreamPort,t)});r.on(`upgrade`,(t,r,i)=>{_(t,r)||v(t,r,i,e.upstreamHost,e.upstreamPort,n)}),await new Promise((t,n)=>{let i=e=>n(e);r.once(`error`,i),r.listen(e.listenPort,e.host,()=>{r.off(`error`,i),t()})});let i=r.address();return{httpServer:r,port:typeof i==`object`&&i?i.port:e.listenPort,close:()=>new Promise(e=>{for(let e of n)try{e.destroy()}catch{}n.clear(),r.close(()=>e()),r.closeIdleConnections()})}}function ee(e,t,n){x(e,t,n.upstreamHost,n.upstreamPort,n.upstreamTimeoutMs??m)}function x(e,t,n,r,i){let a={...e.headers};delete a.host;for(let e of y)delete a[e];e.setTimeout(g,()=>{if(t.headersSent)try{t.end()}catch{}else try{p(t,408,`urn:ok:error:request-timeout`,`Proxy request exceeded the per-request deadline.`,`Slow-loris-class: client did not finish within ${g/1e3}s.`)}catch{}try{e.socket?.destroy()}catch{}});let o=d({host:n,port:r,method:e.method,path:e.url,headers:{...a,host:`${n}:${r}`}},e=>{let n={...e.headers};for(let e of y)delete n[e];t.writeHead(e.statusCode??502,n),e.pipe(t),e.once(`error`,()=>{try{t.end()}catch{}})});i>0&&o.setTimeout(i,()=>{if(!t.headersSent)p(t,504,`urn:ok:error:gateway-timeout`,`Upstream did not respond before the gateway deadline.`,`Upstream timeout: ${i/1e3}s elapsed without a response.`);else try{t.end()}catch{}o.destroy()}),o.on(`error`,()=>{if(!t.headersSent)p(t,502,`urn:ok:error:collab-server-not-running`,`Collab server is unreachable.`,`Upstream connection failed or dropped before a response was received.`);else try{t.end()}catch{}}),e.on(`error`,()=>{o.destroy()}),e.pipe(o)}async function S(e){await Promise.all(e.map(e=>new Promise(t=>{e.close(()=>t())})))}function C(e){let t;try{t=new URL(e)}catch{throw Error(`Invalid --server-url '${e}' — expected e.g. http://127.0.0.1:24550`)}if(t.protocol!==`http:`)throw Error(`--server-url must be http: (got '${t.protocol}//') — the UI proxy speaks plain HTTP; terminate TLS at your ingress`);let n=t.port===``?80:Number(t.port);return{host:t.hostname.replace(/^\[(.+)\]$/,`$1`),port:n}}async function w(a){let{existsSync:o}=await import(`node:fs`),{createServer:s}=await import(`node:http`),{resolve:c}=await import(`node:path`),{acquireUiLock:l,buildIngressPolicy:u,createAssetServeMiddleware:d,createContentFilter:f,readServerLock:m,releaseUiLock:g,updateUiLockPort:y}=await import(`./src-DorV8gmN.mjs`),{default:b}=await import(`./build-BcDJ6qQ2.mjs`),{resolveContentDir:x,resolveLockDir:S}=await import(`./src-DorV8gmN.mjs`),w=x(a.config,a.cwd),E=S(a.cwd);l(E,{port:0,worktreeRoot:a.cwd});let D=import.meta.dirname??new URL(`.`,import.meta.url).pathname,O=[c(D,`public`),c(D,`../../app/dist`),c(D,`../../../app/dist`)],k=a.assetDir??O.find(e=>o(e)),A=k?b(k,{single:!0,gzip:!0,etag:!0,dev:!0,extensions:[]}):null,j=o(w)?d({contentFilter:f({projectDir:a.cwd,contentDir:w}),contentSirv:b(w,{dotfiles:!1,dev:!0,extensions:[]}),inlineExtensions:t,assetExtensions:e,blocklistExtensions:n,ingressPolicy:u({})}):null,M=a.upstreamUrl===void 0?null:C(a.upstreamUrl),N=()=>{if(M!==null)return M;let e=m(E);return!e||e.port<=0?null:{host:i,port:e.port}},P=a.port,F=null,I=(e,t)=>{let n=e.url?.split(`?`)[0];if((n===`/`||n===``)&&(e.url=`/index.html`),!(n?.startsWith(`/api/`)&&h(e,t))){if(n===`/api/config`&&(e.method===`GET`||e.method===`HEAD`)){F?.();let n=e.headers.host??`localhost:${P}`,r=N()===null?null:`ws://${n}/collab`,i=JSON.stringify({collabUrl:r,previewUrl:null,port:P});t.setHeader(`Content-Type`,`application/json`),t.setHeader(`Cache-Control`,`no-store`),t.setHeader(`X-Content-Type-Options`,`nosniff`),t.statusCode=200,e.method===`HEAD`?t.end():t.end(i);return}if(n?.startsWith(`/api/`)){F?.();let r=N();if(r===null){p(t,503,`urn:ok:error:collab-server-not-running`,"Collab server not running. Start `ok start` or run `ok status`.",`Path: ${n}`);return}ee(e,t,{upstreamHost:r.host,upstreamPort:r.port});return}if(A&&(n?.startsWith(`/assets/`)||n?.startsWith(`/excalidraw-assets/`))){A(e,t,()=>{j?j(e,t,()=>T(t)):T(t)});return}if(j){j(e,t,()=>{A?A(e,t):T(t)});return}if(A){A(e,t);return}T(t)}},L=new Set,R=(e,t,n)=>{if(_(e,t))return;let r=e.url?.split(`?`)[0]??``;if(r!==`/collab`&&!r.startsWith(`/collab/`)){t.destroy();return}let i=N();if(i===null){console.warn(JSON.stringify({event:`ok-ui-upgrade-no-collab-lock`,url:r,reason:"server.lock missing or port unbound — is `ok start` running?"})),t.destroy();return}v(e,t,n,i.host,i.port,L)},z=()=>{for(let e of L)try{e.destroy()}catch{}L.clear()},te=a.host===void 0?[`::1`,`127.0.0.1`]:[a.host],B=[],V=a.port,ne=e=>e instanceof Error&&e.code===`EADDRINUSE`,H=async()=>{await Promise.all(B.splice(0).map(e=>new Promise(t=>{try{e.close(()=>t())}catch{t()}})))},U=async e=>{V=e;for(let e of te){let t=s(I);t.on(`upgrade`,R),B.push(t),await new Promise((n,r)=>{let i=e=>r(e);t.once(`error`,i),t.listen(V,e,()=>{t.off(`error`,i);let e=t.address();typeof e==`object`&&e&&(V=e.port),n()})})}};try{try{await U(a.port)}catch(e){if(a.fallbackToKernel===!0&&ne(e))await H(),await U(0);else throw e}}catch(e){await H();try{g(E)}catch{}throw e}let W=V;P=W,y(E,W,`http://localhost:${W}`);let G=a.scheduler??r,K=a.safetyNetMs??432e5,q=null,J=!1,Y=!1,X=()=>{J||(J=!0,q!==null&&(G.clearTimeout(q),q=null))},Z=()=>{if(X(),!Y){Y=!0;try{g(E)}catch{}}},Q=()=>{J||K<=0||(q!==null&&(G.clearTimeout(q),q=null),q=G.setTimeout(()=>{q=null,console.warn(`[ui] safety-net (${K}ms) reached — shutting down (D-025 backstop)`);try{a.onSafetyNet?.()}catch{}z();for(let e of B)try{e.close()}catch{}Z()},K))},$=()=>{J||K<=0||Q()};return F=$,Q(),{httpServers:B,port:W,release:Z,detachSafetyNet:X,nudgeSafetyNet:$,drainUpgradeSockets:z}}function T(e){e.headersSent||e.writableEnded||e.destroyed||(e.setHeader(`X-Content-Type-Options`,`nosniff`),e.setHeader(`Cache-Control`,`no-store`),e.statusCode=404,e.end())}function E(e,t){if(e!==void 0){let t=Number.parseInt(e,10);if(Number.isNaN(t)||t<0||t>65535)throw Error(`Invalid --port value '${e}'`);return{port:t,fallbackToKernel:!1}}if(t!==void 0&&t!==``){let e=Number.parseInt(t,10);if(Number.isNaN(e)||e<0||e>65535)throw Error(`Invalid PORT env value '${t}'`);return{port:e,fallbackToKernel:!1}}return{port:39847,fallbackToKernel:!0}}async function D(e){let t=e.readLock??(async()=>{let{readUiLock:t}=await import(`./src-DorV8gmN.mjs`);return t(e.lockDir)}),n=await t();if(!n)throw Error(`UI lock collision reported but the lock disappeared before handling — retry acquiring.`);if(n.port===e.requestedPort&&n.port>0)return{mode:`already-running`,port:n.port};let r=n.port;if(r===0){let n=Date.now()+(e.pollDeadlineMs??2e3),i=e.pollIntervalMs??100;for(;Date.now()<n;){await new Promise(e=>{setTimeout(e,i)});let e=await t();if(e&&e.port>0){r=e.port;break}}if(r===0)throw Error("UI did not bind within 2s; run `ok clean`");if(r===e.requestedPort)return{mode:`already-running`,port:r}}return{mode:`proxy`,handle:await b({listenPort:e.requestedPort,host:e.host,upstreamHost:`localhost`,upstreamPort:r}),upstreamPort:r}}async function O(e,t){let{dim:n}=await import(`./colors-MGDi6UGf.mjs`),{UiLockCollisionError:r}=await import(`./src-DorV8gmN.mjs`),{resolveLockDir:i}=await import(`./src-DorV8gmN.mjs`),a=t.host;if(t.upstreamUrl!==void 0)try{C(t.upstreamUrl)}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(2)}let o;try{o=E(t.port,process.env.PORT)}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(2)}let s=o.port;try{let r=await w({config:e,cwd:process.cwd(),port:s,fallbackToKernel:o.fallbackToKernel,host:a,...t.upstreamUrl===void 0?{}:{upstreamUrl:t.upstreamUrl}}),i=a===void 0||a===`::`||a===`0.0.0.0`?`localhost`:a;console.log(`${n(`[ui]`)} listening on http://${i}:${r.port}`);let c=!1,l=e=>{if(c)return;c=!0,console.log(n(`\n[ui] Shutting down (${e})`)),r.detachSafetyNet();let t=()=>{try{r.release()}finally{process.exit(process.exitCode??0)}};r.drainUpgradeSockets(),S(r.httpServers).then(t,t),setTimeout(t,2e3).unref()};process.once(`SIGINT`,()=>l(`SIGINT`)),process.once(`SIGTERM`,()=>l(`SIGTERM`));return}catch(e){if(!(e instanceof r))throw e;let t=i(process.cwd()),o=a??`localhost`,c;try{c=await D({requestedPort:s,host:o,lockDir:t})}catch(e){console.error(e instanceof Error?e.message:String(e)),process.exit(1)}if(c.mode===`already-running`){if(console.log(`UI already running at http://${o}:${c.port}`),k(process)){await new Promise(e=>{let t=t=>{console.log(n(`\n[ui-keepalive] Shutting down (${t})`)),e()};process.once(`SIGINT`,()=>t(`SIGINT`)),process.once(`SIGTERM`,()=>t(`SIGTERM`))});return}process.exit(0)}console.log(`UI running at http://${o}:${c.upstreamPort}; acting as HTTP proxy on port ${c.handle.port}`);let l=!1,u=e=>{l||(l=!0,console.log(n(`\n[ui-proxy] Shutting down (${e})`)),c.handle.close().finally(()=>process.exit(process.exitCode??0)),setTimeout(()=>process.exit(process.exitCode??0),2e3).unref())};process.once(`SIGINT`,()=>u(`SIGINT`)),process.once(`SIGTERM`,()=>u(`SIGTERM`))}}function k(e){let t=e.stdout.isTTY===!0,n=typeof e.env.PORT==`string`&&e.env.PORT!==``;return!t||n}export{O as runUiCommand};
|
|
3
|
+
//# sourceMappingURL=ui-DRrmB9yI.mjs.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inkeep/open-knowledge",
|
|
3
|
-
"version": "0.59.0-beta.
|
|
3
|
+
"version": "0.59.0-beta.14",
|
|
4
4
|
"description": "Local-first, agent-friendly Markdown knowledge base with a cross-platform CLI and web editor",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"knowledge-base",
|
|
@@ -72,10 +72,10 @@
|
|
|
72
72
|
"ajv-formats": "^3.0.1",
|
|
73
73
|
"tsdown": "^0.21.7",
|
|
74
74
|
"typescript": "^5.9.3",
|
|
75
|
-
"@inkeep/open-knowledge-app": "0.59.0-beta.
|
|
76
|
-
"@inkeep/open-knowledge-
|
|
77
|
-
"@inkeep/open-knowledge-
|
|
78
|
-
"@inkeep/open-knowledge-
|
|
75
|
+
"@inkeep/open-knowledge-app": "0.59.0-beta.14",
|
|
76
|
+
"@inkeep/open-knowledge-core": "0.59.0-beta.14",
|
|
77
|
+
"@inkeep/open-knowledge-native-config": "0.0.0",
|
|
78
|
+
"@inkeep/open-knowledge-server": "0.59.0-beta.14"
|
|
79
79
|
},
|
|
80
80
|
"scripts": {
|
|
81
81
|
"build:cli": "rm -rf dist && tsdown",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e,c as t}from"./fs-traced-CJ0NSnI0.mjs";export{t as tracedMkdir,e as tracedWriteFile};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e}from"./git-handle-DDFppGcc.mjs";export{e as createGitInstance};
|
package/dist/init-DRcsYZFT.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./src-BjgAn2Yr.mjs";import{g as e}from"./init-DBtz-4P6.mjs";export{e as runInit};
|
package/dist/loader-D8NZH1TL.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./loader-DLrxB82t.mjs";export{e as loadConfig};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,t}from"./preview-B53ZHVpa.mjs";export{t as formatPreviewBlock,e as previewContent};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./index-8x_9u23T.js";export{e as FeedbackForm};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./ManagedArtifactProperties-B-0nFc46.js";export{e as ManagedArtifactProperties};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{An as e,jn as t}from"./dist-DGemBD_J.js";var n={BASE_URL:`./`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_VERSION:`0.58.6`}?.VITE_APP_VERSION??`0.0.0-unknown`;function r(){return e({kind:`web`,runtimeVersion:n})}function i(){return t({kind:`web`,runtimeVersion:n})}export{r as n,i as r,n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./dist-DGemBD_J.js";import{t as e}from"./dist-XgwTV-oh2.js";import{t}from"./messages-B1AtMu4g.js";e.load(`en`,t.messages),e.activate(`en`);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./repair-skills-9uic_lvC.mjs";export{e as repairSkills};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,o as t,r as n}from"./server-lock-BmwIVWMl.mjs";export{n as markServerLockDraining,e as releaseServerLock,t as updateServerLockPort};
|
package/dist/src-BPIgs9KB.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./src-BxdlvOrw.mjs";import"./resolve-project-root-DxuF_Wkh.mjs";import"./src-CBP82hxm.mjs";import"./acp-harness-probe-BLS1nK2w.mjs";import"./init-DBtz-4P6.mjs";import{n as e}from"./loader-DLrxB82t.mjs";import"./skill-teardown-BAqBOmoz.mjs";import"./preview-B53ZHVpa.mjs";import"./mcp-migrate-event-B1gJf6bG.mjs";export{e as loadConfig};
|
package/dist/start-DzWMYSvd.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{T as e,_ as t,m as n,n as r}from"./start-CI1yLDi9.mjs";export{r as bootStartServer,n as resolveBundledReactShellDir,t as resolveHost,e as startCommand};
|
|
File without changes
|