qlogicagent 2.20.7 → 2.20.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +1 -1
- package/dist/host-contract.js +1 -1
- package/dist/index.js +249 -249
- package/dist/types/host-contract/index.d.ts +6 -0
- package/package.json +1 -1
package/dist/host-contract.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{MODEL_PURPOSES as Jt}from"@xiaozhiclaw/module-sdk/model-access";function f(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function y(e,t){let n=new Set(t);return Object.keys(e).every(o=>n.has(o))}function l(e){return typeof e=="string"&&e.trim()===e&&e.length>0&&e.length<=512&&!e.includes("\0")}function h(e){return Number.isSafeInteger(e)&&Number(e)>0}function C(e){return f(e)&&y(e,["agentId","projectId","nativeId"])&&l(e.agentId)&&l(e.projectId)&&l(e.nativeId)}function M(e){if(!f(e)||!y(e,["resourceId","canonicalSessionId","source","projectId","agentId","title","titleSource","lastActiveAt","pinnedAt","lifecycle","availableCommands","nativeRef"])||!l(e.resourceId)||!l(e.projectId)||!l(e.agentId)||!l(e.lastActiveAt)||e.source!=="host"&&e.source!=="native-unadopted"||e.source==="host"&&!l(e.canonicalSessionId)||e.source==="native-unadopted"&&!C(e.nativeRef)||e.canonicalSessionId!==void 0&&!l(e.canonicalSessionId)||e.nativeRef!==void 0&&!C(e.nativeRef))return!1;let t=new Set(["host.setPinned","host.rename","host.setArchived","host.deleteRecord"]);return!Array.isArray(e.availableCommands)||!e.availableCommands.every(n=>typeof n=="string"&&t.has(n))||new Set(e.availableCommands).size!==e.availableCommands.length||e.source==="native-unadopted"&&e.availableCommands.length>0||e.title!==void 0&&typeof e.title!="string"||e.pinnedAt!==void 0&&!l(e.pinnedAt)||e.titleSource!==void 0&&e.titleSource!=="prompt"&&e.titleSource!=="generated"&&e.titleSource!=="user"&&e.titleSource!=="native"&&e.titleSource!=="repaired"?!1:e.lifecycle==="active"||e.lifecycle==="archived"||e.lifecycle==="source-missing"||e.lifecycle==="resume-unavailable"}function _(e){return f(e)&&y(e,["agentId","projectId","code","message","lastGoodRevision"])&&l(e.agentId)&&l(e.projectId)&&l(e.code)&&typeof e.message=="string"&&e.message.length>0&&e.message.length<=2e4&&(e.lastGoodRevision===void 0||h(e.lastGoodRevision))}function z(e){return typeof e=="string"&&e.length>0&&!Number.isNaN(Date.parse(e))}function $(e){return f(e)&&y(e,["id","role","content","createdAt"])&&Object.prototype.hasOwnProperty.call(e,"content")&&(e.id===void 0||l(e.id))&&(e.role==="user"||e.role==="assistant"||e.role==="tool")&&(e.createdAt===void 0||z(e.createdAt))}function X(e){return f(e)&&y(e,["messages","diagnostics"])&&Array.isArray(e.messages)&&e.messages.every($)&&(e.diagnostics===void 0||Array.isArray(e.diagnostics))}function W(e){return f(e)&&y(e,["revision","scopeGeneration","items","diagnostics"])&&h(e.revision)&&h(e.scopeGeneration)&&Array.isArray(e.items)&&e.items.every(M)&&Array.isArray(e.diagnostics)&&e.diagnostics.every(_)}function Q(e){return f(e)&&y(e,["revision","scopeGeneration","addedOrUpdated","removed","diagnostics"])&&h(e.revision)&&h(e.scopeGeneration)&&(e.addedOrUpdated===void 0||Array.isArray(e.addedOrUpdated)&&e.addedOrUpdated.every(M))&&(e.removed===void 0||Array.isArray(e.removed)&&e.removed.every(l))&&(e.diagnostics===void 0||Array.isArray(e.diagnostics)&&e.diagnostics.every(_))}var P="llmrouter";function T(e){return e.baseUrl??e.base_url}function O(e){return{zhipu:"Zhipu GLM","zhipu-openai":"Zhipu GLM OpenAI","zhipu-coding":"Zhipu GLM Coding",qwen:"Alibaba Qwen (DashScope)","qwen-coding":"Alibaba Qwen (Coding Plan)",volcengine:"Doubao / Volcengine","volcengine-plan":"Doubao / Volcengine Plan"}[e.id]??e.displayName??e.name??e.id}function A(e){return e.id===P?P:e.group?.trim()||e.id}function J(e){return e.id===A(e)}function E(e){return O({...e,id:A(e)})}function Z(e){return{volcengine:"\u5E38\u89C4 Ark API Key","volcengine-plan":"\u8BA2\u9605 / Plan \u901A\u9053",qwen:"\u5E38\u89C4 DashScope API Key","qwen-coding":"Coding Plan \u901A\u9053",zhipu:"Anthropic \u901A\u9053","zhipu-openai":"OpenAI \u517C\u5BB9\u901A\u9053","zhipu-coding":"Coding \u901A\u9053"}[e.id]??O(e)}function ee(e){return e.authType==="none"?!1:e.apiKeyEnvVars===void 0||e.apiKeyEnvVars.length>0}function te(e){return{id:e.id,displayName:Z(e),baseUrl:T(e)??"",modelCount:e.models?.length??0}}function dt(e){let t=new Map;for(let n of e){if(!ee(n))continue;let o=A(n);if(o===P)continue;let d=n.models?.length??0,u=te(n),c=t.get(o);if(!c){t.set(o,{id:o,displayName:E(n),baseUrl:T(n)??"",modelCount:d,variants:[u]});continue}c.modelCount+=d,c.variants??=[],c.variants.some(p=>p.id===u.id)||c.variants.push(u),J(n)&&(c.displayName=E(n),c.baseUrl=T(n)??c.baseUrl)}return Array.from(t.values()).map(({variants:n,...o})=>({...o,...n&&n.length>1?{variants:n}:{}}))}function ne(e){return e.defaultModel??e.models?.find(t=>!!t.id)?.id}function re(e){let t=e.replace(/\/+$/,"");return[...new Set([`${t}/models`,/\/v\d+$/.test(t)?`${t}/models`:`${t}/v1/models`])]}function ct(e){return e===404||e===405||e===410||e===501}function x(e){return{accept:"application/json",Authorization:`Bearer ${e}`}}function se(e,t){let n=e.trim(),o=t?.baseUrl?.trim();return t?.transport==="anthropic-messages"&&o&&/\/anthropic\/?$/.test(o)&&!/\/anthropic\/?$/.test(n)?o:n}function ie(e){let t=e.trim().replace(/\/+$/,"");return t.endsWith("/v1")?`${t}/models`:`${t}/v1/models`}function pt(e,t,n,o){if(e===P)return[{method:"GET",url:ie(n),headers:x(t)}];let d=se(n,o).replace(/\/+$/,""),u=o?.transport,c=ne(o??{id:e}),p=[];if(u==="anthropic-messages")return/\/anthropic$/.test(d)&&p.push({method:"GET",url:`${d.replace(/\/anthropic$/,"")}/models`,headers:x(t)}),c&&p.push({method:"POST",url:`${d}/v1/messages`,headers:{"Content-Type":"application/json","x-api-key":t,"anthropic-version":"2023-06-01"},body:{model:c,messages:[{role:"user",content:"ping"}],max_tokens:1,stream:!1}}),p;if(u==="gemini-generatecontent")return c?[{method:"POST",url:`${d}/models/${encodeURIComponent(c)}:generateContent`,headers:{"Content-Type":"application/json","x-goog-api-key":t},body:{contents:[{role:"user",parts:[{text:"ping"}]}],generationConfig:{maxOutputTokens:1}}}]:p;if(u==="volcengine-responses")return c?[{method:"POST",url:`${d.replace(/\/v\d+$/,"")}/v3/responses`,headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`},body:{model:c,input:[{role:"user",content:[{type:"input_text",text:"ping"}]}],max_output_tokens:1,stream:!1,store:!1}}]:p;for(let S of re(d))p.push({method:"GET",url:S,headers:x(t)});return p}var oe=["fact","preference","insight","lesson","decision","plan","event","pattern","context","procedure","general"],ae=new Set(oe),de=["equals","includes","excludes"],ce=new Set(de);function gt(e,t="general"){if(typeof e!="string")return t;let n=e.trim().toLowerCase().replace(/\s+/g,"_");return ae.has(n)?n:t}function ut(e,t="equals"){if(typeof e!="string")return t;let n=e.trim().toLowerCase();return ce.has(n)?n:t}import{createHash as pe}from"node:crypto";import{resolve as le}from"node:path";function ge(e){return pe("sha256").update(le(e).toLowerCase()).digest("hex").slice(0,16)}var ue=/[一-鿿]/;function D(e){let t=[],n=e.toLowerCase().match(/[\p{L}\p{N}_]+/gu)??[];for(let o of n){let d="",u=!1,c=()=>{if(d){if(u){d.length===1&&t.push(d);for(let p=0;p+1<d.length;p++)t.push(d.slice(p,p+2))}else t.push(d);d=""}};for(let p of o){let S=ue.test(p);d&&S!==u&&c(),u=S,d+=p}c()}return t}function me(e){return D(e).join(" ")}var j=["efficiency","dev","cloud","data","industrial","marketing","ecommerce","procurement","hr","accounting","finance","legal","lifestyle"],fe={efficiency:"\u529E\u516C\u534F\u4F5C",dev:"\u5F00\u53D1\u7F16\u7A0B",cloud:"\u4E91\u4E0E\u8FD0\u7EF4",data:"\u6570\u636E\u5206\u6790",industrial:"\u5DE5\u4E1A\u81EA\u52A8\u5316",marketing:"\u8425\u9500\u9500\u552E",ecommerce:"\u7535\u5546\u8FD0\u8425",procurement:"\u91C7\u8D2D\u4F9B\u5E94\u94FE",hr:"\u4EBA\u529B\u884C\u653F",accounting:"\u8D22\u52A1\u4F1A\u8BA1",finance:"\u91D1\u878D\u6295\u8D44",legal:"\u6CD5\u52A1\u5408\u89C4",lifestyle:"\u4E2A\u4EBA\u751F\u6D3B"},ye=new Set(j);function Ie(e){return typeof e=="string"&&ye.has(e)}var k=":";function kt(e){for(let[t,n]of[["kind",e.kind],["owner",e.owner],["name",e.name]])if(n.includes(k))throw new Error(`memberKey: field "${t}" contains reserved separator "${k}": ${n}`);return`${e.kind}${k}${e.owner}${k}${e.name}${k}${e.seq}`}function bt(e,t){return e.kind===t.kind&&e.owner===t.owner&&e.name===t.name&&e.seq===t.seq}var Pt=["CANCELLED","PROCESS_EXIT","HEARTBEAT_TIMEOUT","TURN_TIMEOUT","PROTOCOL_MISMATCH","UNKNOWN"],Se=1,Rt={request:"x/delegate",update:"x/delegate.update",respond:"x/delegate.respond",cancel:"x/delegate.cancel"},he=["search","embedText","ingestExtracted","proposeExtracted","consumePendingProposals","feedback","findRelatedEvents","synthesizeTimeline","getActivitySummary","getAllProfiles","setProfile","getAtlas","setMemoryArchived","triggerDecay","resolveConflicts","readProcedureUsage","writeProcedureUsage","readDistillCandidates","writeDistillCandidates","readPromotionProposals","writePromotionProposals","listActiveMemoriesByTag","readDistilledProcedure","promoteDistilledProcedure","demoteDistilledProcedure","recordInjectedAccess","recordRecallOutcome","enqueueExtractionTurn","claimPendingExtractionTurns","completeExtractionTurn","releaseExtractionTurn","recordExtractionTurnFailure"],ke=["initialize","getIndex","addToIndex","replaceInIndex","removeFromIndex","createFile","writeFile","readFile","deleteFile","listFiles","searchLocal"],be=["getSkillSnapshot","readSkillFile","recordSkillInvocation","commitSkillMutation","applyCuratorPlan","prepareSkillInstall","finalizeSkillInstall"],Pe=["loadForResume","appendTranscript","updateTitle","saveState","saveTaskSummary","groupSplit"],Re=["commitTurnTelemetry","listDistillableFeedback","markFeedbackDistilled","runUploadSweep"],xe=["getSnapshot","create","switch","update"],xt=1024*1024,Te=["resolveInstall","listResourceVersions"],Ae=["probeSession"],He=["list","get","diagnose"],we=["navigate","snapshot","click","type","screenshot","console","network"],Tt=["navigate","click","type"],At=["snapshot","screenshot","console","network"];function Ht(e){if(typeof e!="string")return!1;let t=/^preview:([1-9]\d*)$/.exec(e);return t!==null&&Number.isSafeInteger(Number(t[1]))}var Ce=["open","openWithCheckpoint","recordEvent","checkpoint","get","list","delete","getCheckpoint","listCheckpoints","restoreCheckpoint"],Me=["getTunables","updateTunable","clearTunable","appendDirectoryAllowRule"],wt={request:"x/host.request"},H=new Set(["memory","projectMemory","profile","preview","capability","session","feedback","project","runState","provider","community","cloudAuth"]),_e=new Set(he),Ee=new Set(ke),Oe=new Set(Me),De=new Set(be),je=new Set(Pe),Ne=new Set(Re),Fe=new Set(xe),Le=new Set(Ce),qe=new Set(He),Ue=new Set(Te),Be=new Set(Ae),Ve=new Set(we);function i(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function b(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function q(e,t){return t.every(n=>e[n]===void 0||typeof e[n]=="string")}function Ye(e){return i(e)?typeof e.name=="string"&&e.name.length>0&&(e.state==="active"||e.state==="stale"||e.state==="archived")&&typeof e.createdAt=="string"&&typeof e.pinned=="boolean"&&typeof e.useCount=="number"&&Number.isFinite(e.useCount)&&(e.source==="learned"||e.source==="created"||e.source==="installed"||e.source==="promoted")&&q(e,["lastUsedAt","lastViewedAt","lastPatchedAt","staleAt","archivedAt","resourceType","artifactDigest","contentTreeDigest","registryResourceId","registryVersion","registryKeptSignalAt"])&&["launcherRequired","manualReviewRequired"].every(t=>e[t]===void 0||typeof e[t]=="boolean")&&["positiveCount","negativeCount"].every(t=>e[t]===void 0||typeof e[t]=="number"&&Number.isFinite(e[t]))&&["sourceTier","registrySourceTier"].every(t=>e[t]===void 0||e[t]==="official"||e[t]==="community")&&["riskTier","registryRiskTier","registryEffectiveRiskTier"].every(t=>e[t]===void 0||e[t]==="R0"||e[t]==="R1"||e[t]==="R2"||e[t]==="R3"):!1}function ve(e){return i(e)?r(e,["name","filePath","baseDir","fileRevision","globallyDisabled","projectDisabled","active","systemGenerated","description","version","category","author","requiredTools","environments","source","registryVersion"])&&typeof e.name=="string"&&e.name.length>0&&typeof e.filePath=="string"&&e.filePath.length>0&&typeof e.baseDir=="string"&&e.baseDir.length>0&&typeof e.fileRevision=="string"&&e.fileRevision.length>0&&typeof e.globallyDisabled=="boolean"&&typeof e.projectDisabled=="boolean"&&typeof e.active=="boolean"&&typeof e.systemGenerated=="boolean"&&q(e,["description","version","category","author","registryVersion"])&&(e.source===void 0||e.source==="learned"||e.source==="created"||e.source==="installed"||e.source==="promoted")&&(e.requiredTools===void 0||b(e.requiredTools))&&(e.environments===void 0||b(e.environments)):!1}function Ke(e){return i(e)&&r(e,["name","skills","filePath"])&&typeof e.name=="string"&&e.name.length>0&&b(e.skills)&&typeof e.filePath=="string"&&e.filePath.length>0}function Ct(e){return!i(e)||typeof e.revision!="string"||e.revision.length===0?!1:e.notModified===!0?r(e,["revision","notModified"]):e.notModified!==!1||!r(e,["revision","notModified","skills","lifecycle","bundles"])?!1:Array.isArray(e.skills)&&e.skills.every(ve)&&Array.isArray(e.lifecycle)&&e.lifecycle.every(Ye)&&Array.isArray(e.bundles)&&e.bundles.every(Ke)}function Mt(e){return i(e)&&r(e,["name","relativePath","content","baseDir","revision"])&&typeof e.name=="string"&&e.name.length>0&&typeof e.relativePath=="string"&&e.relativePath.length>0&&typeof e.content=="string"&&typeof e.baseDir=="string"&&e.baseDir.length>0&&typeof e.revision=="string"&&e.revision.length>0}function _t(e){return i(e)&&r(e,["name","lastUsedAt","useCount","positiveCount","negativeCount"])&&m(e.name)&&typeof e.lastUsedAt=="string"&&e.lastUsedAt.length>0&&["useCount","positiveCount","negativeCount"].every(t=>typeof e[t]=="number"&&Number.isFinite(e[t])&&e[t]>=0)}function Et(e){return!i(e)||!m(e.name)||typeof e.kind!="string"?!1:e.kind==="create"||e.kind==="editContent"||e.kind==="editSupportingFile"?r(e,["kind","name","revision","changed"])&&typeof e.revision=="string"&&e.revision.length>0&&e.changed===!0:e.kind==="delete"?r(e,["kind","name","deleted"])&&e.deleted===!0:e.kind==="setGlobalDisabled"||e.kind==="setProjectDisabled"?r(e,["kind","name","disabled","changed"])&&typeof e.disabled=="boolean"&&typeof e.changed=="boolean":e.kind==="setPinned"?r(e,["kind","name","pinned","changed"])&&typeof e.pinned=="boolean"&&typeof e.changed=="boolean":e.kind==="promote"?r(e,["kind","name","promoted","changed"])&&e.promoted===!0&&typeof e.changed=="boolean":!1}function Ge(e,t){return e==="active"&&t==="stale"||e==="stale"&&(t==="archived"||t==="active")||e==="archived"&&t==="active"}function U(e){return i(e)&&r(e,["name","from","to"])&&m(e.name)&&Ge(e.from,e.to)}function Ot(e){return i(e)&&r(e,["revision","changed","transitioned"])&&typeof e.revision=="string"&&e.revision.length>0&&typeof e.changed=="boolean"&&Array.isArray(e.transitioned)&&e.transitioned.every(U)}function Dt(e){return i(e)&&r(e,["installationId","artifactPath","contentDir","expiresAt"])&&["installationId","artifactPath","contentDir","expiresAt"].every(t=>typeof e[t]=="string"&&e[t].length>0)}function jt(e){return i(e)?e.action==="discard"?r(e,["action","discarded"])&&e.discarded===!0:e.action==="adopt"&&r(e,["action","resourceId","version","skillName","installDir","checksum","replaced"])&&m(e.resourceId)&&e.skillName===e.resourceId&&typeof e.version=="string"&&e.version.length>0&&typeof e.installDir=="string"&&e.installDir.length>0&&typeof e.checksum=="string"&&/^[a-f0-9]{64}$/.test(e.checksum)&&typeof e.replaced=="boolean":!1}function r(e,t){let n=new Set(t);return Object.keys(e).every(o=>n.has(o))}function I(e,t){return e[t]===void 0||typeof e[t]=="string"}function g(e,t){return e[t]===void 0||typeof e[t]=="string"&&e[t].trim().length>0}function m(e){return typeof e=="string"&&/^[A-Za-z0-9_.-]+$/.test(e)&&e!=="."&&e!==".."}function B(e){return typeof e!="string"||e.trim()!==e||e.length===0||e.includes("\0")||/^(?:[A-Za-z]:[\\/]|[\\/])/.test(e)?!1:e.split(/[\\/]/).every(n=>n.length>0&&n!=="."&&n!=="..")}function N(e){return B(e)&&e.toLowerCase()!=="skill.md"}function ze(e,t){if(!i(t))return!1;if(e==="getSkillSnapshot")return r(t,["projectId","knownRevision"])&&g(t,"projectId")&&g(t,"knownRevision");if(e==="readSkillFile")return r(t,["name","relativePath","expectedRevision"])&&m(t.name)&&(t.relativePath===void 0||B(t.relativePath))&&g(t,"expectedRevision");if(e==="commitSkillMutation"){if(!r(t,["mutation"])||!i(t.mutation))return!1;let n=t.mutation;return!m(n.name)||typeof n.kind!="string"?!1:n.kind==="create"?!r(n,["kind","name","content","source","supportingFile"])||typeof n.content!="string"||n.source!==void 0&&n.source!=="created"&&n.source!=="learned"?!1:n.supportingFile===void 0?!0:i(n.supportingFile)&&r(n.supportingFile,["relativePath","content"])&&N(n.supportingFile.relativePath)&&typeof n.supportingFile.content=="string":n.kind==="editContent"?r(n,["kind","name","expectedRevision","content"])&&typeof n.expectedRevision=="string"&&n.expectedRevision.length>0&&typeof n.content=="string":n.kind==="editSupportingFile"?r(n,["kind","name","relativePath","expectedRevision","content"])&&N(n.relativePath)&&(n.expectedRevision===null||typeof n.expectedRevision=="string"&&n.expectedRevision.length>0)&&typeof n.content=="string":n.kind==="delete"?r(n,["kind","name"]):n.kind==="setGlobalDisabled"?r(n,["kind","name","disabled"])&&typeof n.disabled=="boolean":n.kind==="setProjectDisabled"?r(n,["kind","name","projectId","disabled"])&&typeof n.projectId=="string"&&n.projectId.length>0&&typeof n.disabled=="boolean":n.kind==="setPinned"?r(n,["kind","name","pinned"])&&typeof n.pinned=="boolean":n.kind==="promote"?r(n,["kind","name"]):!1}if(e==="applyCuratorPlan"){if(!r(t,["expectedRevision","transitions"])||typeof t.expectedRevision!="string"||t.expectedRevision.length===0||!Array.isArray(t.transitions)||t.transitions.length>500||!t.transitions.every(U))return!1;let n=t.transitions.map(o=>o.name);return new Set(n).size===n.length}if(e==="prepareSkillInstall"){if(!r(t,["name","version","checksum","sizeBytes","allowReplace","replacementPolicy","provenance"])||!m(t.name)||typeof t.version!="string"||!t.version.trim()||typeof t.checksum!="string"||!/^[a-f0-9]{64}$/.test(t.checksum)||!Number.isSafeInteger(t.sizeBytes)||t.sizeBytes<=0||t.sizeBytes>20*1024*1024||typeof t.allowReplace!="boolean"||(t.allowReplace===!0?t.replacementPolicy!=="managed-unmodified"&&t.replacementPolicy!=="user-confirmed":t.replacementPolicy!==void 0)||!i(t.provenance)||!r(t.provenance,["sourceTier","resourceRiskTier","effectiveRiskTier"]))return!1;let n=o=>o==="R0"||o==="R1"||o==="R2"||o==="R3";return(t.provenance.sourceTier==="official"||t.provenance.sourceTier==="community")&&n(t.provenance.resourceRiskTier)&&n(t.provenance.effectiveRiskTier)}return e==="finalizeSkillInstall"?r(t,["installationId","action"])&&typeof t.installationId=="string"&&t.installationId.trim().length>0&&(t.action==="adopt"||t.action==="discard"):r(t,["name","success"])&&m(t.name)&&typeof t.success=="boolean"}function s(e){return typeof e=="string"&&e.trim()===e&&e.length>0&&e.length<=512&&!e.includes("\0")}function a(e){return Number.isSafeInteger(e)&&e>=0}function V(e){return e==="installed"||e==="auth_required"||e==="ready"||e==="disabled"||e==="incompatible"||e==="unresponsive"||e==="failed"||e==="not_installed"}function $e(e){return V(e)&&e!=="not_installed"}function Xe(e){return!i(e)||!r(e,["providerId","state","stage","code","message","retryable","providerVersion","payloadVersion"])?!1:s(e.providerId)&&V(e.state)&&["install","manifest","auth","launch","initialize","models","native_sessions","request"].includes(String(e.stage))&&s(e.code)&&typeof e.message=="string"&&typeof e.retryable=="boolean"&&g(e,"providerVersion")&&g(e,"payloadVersion")}function F(e,t){return i(e)&&r(e,t)&&t.every(n=>typeof e[n]=="boolean")}function We(e){return i(e)?e.kind==="provider"?r(e,["kind","enumeration"])&&(e.enumeration==="protocol"||e.enumeration==="implicit-default"):e.kind==="host"&&r(e,["kind","managedPurposes"])&&b(e.managedPurposes):!1}function Y(e){if(!i(e)||!r(e,["providerId","displayName","version","state","capabilities","diagnostic"])||!s(e.providerId)||!s(e.displayName)||!s(e.version)||!$e(e.state)||e.diagnostic!==void 0&&!Xe(e.diagnostic)||!i(e.capabilities)||!r(e.capabilities,["execution","auth","models","nativeSessions","diagnostics"]))return!1;let t=e.capabilities;return!F(t.execution,["streaming","approvals","cancellation","resume"])||!i(t.auth)||!r(t.auth,["modes","terminal","logout"])||!Array.isArray(t.auth.modes)||!t.auth.modes.every(n=>n==="account"||n==="userKey"||n==="managed")||typeof t.auth.terminal!="boolean"||typeof t.auth.logout!="boolean"||!We(t.models)||!F(t.nativeSessions,["discover","transcript","resume"])?!1:i(t.diagnostics)&&r(t.diagnostics,["readiness","version","structuredErrors"])&&t.diagnostics.readiness===!0&&t.diagnostics.version===!0&&t.diagnostics.structuredErrors===!0}function Nt(e){return i(e)&&r(e,["revision","providers"])&&a(e.revision)&&Array.isArray(e.providers)&&e.providers.every(Y)}function Ft(e){return i(e)&&r(e,["revision","provider"])&&a(e.revision)&&(e.provider===null||Y(e.provider))}function R(e,t=0){return t>12?!1:e===null||typeof e=="string"||typeof e=="boolean"?!0:typeof e=="number"?Number.isFinite(e):Array.isArray(e)?e.length<=1e4&&e.every(n=>R(n,t+1)):!i(e)||Object.keys(e).length>1e3?!1:Object.values(e).every(n=>R(n,t+1))}function Qe(e){return e===void 0||b(e)}function v(e){return i(e)&&r(e,["inputTokens","outputTokens","totalTokens"])&&["inputTokens","outputTokens","totalTokens"].every(t=>e[t]===void 0||a(e[t]))}function K(e){if(!i(e)||!r(e,["role","content","tool_calls","tool_call_id","name","is_error","reasoning_content","toolReferences","thinkingBlocks","imageUrls","imageDetail","imagePixelLimit","videoUrls","videoFps","audioFormat","audioUrls","fileIds","blocks","attachmentEntries","timestamp","turnId","usage","displayMetadata"])||e.role!=="system"&&e.role!=="user"&&e.role!=="assistant"&&e.role!=="tool"||e.content!==null&&typeof e.content!="string"||!["tool_call_id","name","reasoning_content","timestamp","turnId"].every(t=>I(e,t))||e.is_error!==void 0&&typeof e.is_error!="boolean"||!["toolReferences","imageUrls","videoUrls","audioUrls"].every(t=>Qe(e[t]))||e.imageDetail!==void 0&&e.imageDetail!=="auto"&&e.imageDetail!=="low"&&e.imageDetail!=="high"&&e.imageDetail!=="xhigh"||e.audioFormat!==void 0&&e.audioFormat!=="mp3"&&e.audioFormat!=="wav"&&e.audioFormat!=="aac"&&e.audioFormat!=="m4a"||e.videoFps!==void 0&&(typeof e.videoFps!="number"||!Number.isFinite(e.videoFps)||e.videoFps<.2||e.videoFps>5)||e.tool_calls!==void 0&&(!Array.isArray(e.tool_calls)||!e.tool_calls.every(t=>i(t)&&r(t,["id","type","function"])&&s(t.id)&&t.type==="function"&&i(t.function)&&r(t.function,["name","arguments"])&&s(t.function.name)&&typeof t.function.arguments=="string"))||e.thinkingBlocks!==void 0&&(!Array.isArray(e.thinkingBlocks)||!e.thinkingBlocks.every(t=>i(t)&&r(t,["thinking","signature"])&&typeof t.thinking=="string"&&typeof t.signature=="string")))return!1;if(e.imagePixelLimit!==void 0){if(!i(e.imagePixelLimit))return!1;let t=e.imagePixelLimit;if(!r(t,["minPixels","maxPixels"])||!["minPixels","maxPixels"].every(n=>t[n]===void 0||a(t[n])))return!1}return e.fileIds!==void 0&&(!Array.isArray(e.fileIds)||!e.fileIds.every(t=>i(t)&&r(t,["id","mimeType","size"])&&s(t.id)&&I(t,"mimeType")&&(t.size===void 0||a(t.size))))||e.usage!==void 0&&!v(e.usage)?!1:["blocks","attachmentEntries","displayMetadata"].every(t=>e[t]===void 0||R(e[t]))}function Je(e,t){if(!i(t))return!1;if(e==="loadForResume")return r(t,["sessionId","projectId","includeMessages"])&&s(t.sessionId)&&g(t,"projectId")&&(t.includeMessages===void 0||typeof t.includeMessages=="boolean");if(e==="appendTranscript")return r(t,["sessionId","turnId","messageId","sequence","message","usage","displayMetadata"])&&s(t.sessionId)&&s(t.turnId)&&s(t.messageId)&&a(t.sequence)&&K(t.message)&&(t.usage===void 0||v(t.usage))&&(t.displayMetadata===void 0||R(t.displayMetadata));if(e==="updateTitle")return r(t,["sessionId","operationId","title"])&&s(t.sessionId)&&s(t.operationId)&&typeof t.title=="string"&&t.title.length<=2e3;if(e==="saveState"){if(!r(t,["sessionId","turnId","operationId","model","usage"])||!s(t.sessionId)||!s(t.turnId)||!s(t.operationId)||!I(t,"model")||!i(t.usage))return!1;let n=t.usage;return r(n,["turnCount","totalInputTokens","totalOutputTokens"])&&["turnCount","totalInputTokens","totalOutputTokens"].every(o=>a(n[o]))}return e==="saveTaskSummary"?r(t,["sessionId","operationId","summary","generatedAtTurn"])&&s(t.sessionId)&&s(t.operationId)&&typeof t.summary=="string"&&t.summary.length<=2e5&&a(t.generatedAtTurn):r(t,["sessionId","operationId","reason","expectedLastActiveAt","expectedTurnCount"])&&s(t.sessionId)&&s(t.operationId)&&(t.reason==="idle"||t.reason==="turn-limit")&&I(t,"expectedLastActiveAt")&&(t.expectedTurnCount===void 0||a(t.expectedTurnCount))}function Lt(e){if(!i(e)||!r(e,["session"]))return!1;if(e.session===null)return!0;if(!i(e.session)||!r(e.session,["metadata","messages","corruptLines"])||!i(e.session.metadata))return!1;let t=e.session.metadata;return r(t,["sessionId","projectId","createdAt","lastActiveAt","turnCount","messageCount","type","title","agentId","model","taskSummary","carryoverSummary","previousSessionId","pinnedAt","archivedAt","sealedAt"])&&["sessionId","projectId","createdAt","lastActiveAt"].every(n=>s(t[n]))&&["turnCount","messageCount"].every(n=>a(t[n]))&&(t.type===void 0||t.type==="personal"||t.type==="group")&&["title","agentId","model","taskSummary","carryoverSummary","previousSessionId","pinnedAt","archivedAt","sealedAt"].every(n=>I(t,n))&&Array.isArray(e.session.messages)&&e.session.messages.every(K)&&(e.session.corruptLines===void 0||a(e.session.corruptLines))}function qt(e){return i(e)&&r(e,["status","messageCount"])&&(e.status==="appended"||e.status==="duplicate"||e.status==="session-deleted")&&a(e.messageCount)}function Ut(e){return i(e)&&r(e,["status"])&&(e.status==="updated"||e.status==="duplicate"||e.status==="session-deleted")}function Bt(e){return i(e)&&r(e,["status","nextSessionId"])&&(e.status==="updated"||e.status==="duplicate"||e.status==="session-deleted")&&(e.nextSessionId===void 0||s(e.nextSessionId))}function Ze(e,t){if(!i(t)||!I(t,"viewId")||!g(t,"sessionId"))return!1;switch(e){case"navigate":return r(t,["url","viewId","sessionId"])&&typeof t.url=="string";case"click":return r(t,["ref","viewId","sessionId"])&&typeof t.ref=="string";case"type":return r(t,["ref","text","submit","viewId","sessionId"])&&typeof t.ref=="string"&&typeof t.text=="string"&&(t.submit===void 0||typeof t.submit=="boolean");case"snapshot":case"screenshot":case"console":case"network":return r(t,["viewId","sessionId"])}}function w(e,t){return e[t]===void 0||a(e[t])}function et(e){if(!i(e)||!r(e,["schemaVersion","launched","completed","failed","cancelled","backgroundCount","automaticDeliveryCount","byAgentType","decisionCounts","argumentCorrections","durationMs","tokenUsage"])||e.schemaVersion!==1)return!1;for(let t of["launched","completed","failed","cancelled","backgroundCount","automaticDeliveryCount"])if(!a(e[t]))return!1;return!i(e.byAgentType)||!r(e.byAgentType,["general","explore","plan","code","research","verify"])||!Object.values(e.byAgentType).every(a)||!i(e.decisionCounts)||!r(e.decisionCounts,["adopted","partiallyAdopted","rejected","unreported"])||!Object.values(e.decisionCounts).every(a)||!i(e.argumentCorrections)||!r(e.argumentCorrections,["roleAlias","promptAlias","backgroundAlias","agentValue","backgroundValue"])||!Object.values(e.argumentCorrections).every(a)||!i(e.durationMs)||!r(e.durationMs,["total","max"])||!a(e.durationMs.total)||!a(e.durationMs.max)?!1:i(e.tokenUsage)&&r(e.tokenUsage,["total"])&&a(e.tokenUsage.total)}function tt(e){if(!i(e)||!r(e,["model","provider","agentMode","sourceChannel","usage","toolSummary","fileContext","delegationSummary"]))return!1;for(let t of["model","provider","sourceChannel"])if(e[t]!==void 0&&!s(e[t]))return!1;if(e.agentMode!==void 0&&!["chat","solo","product","workflow","unknown"].includes(String(e.agentMode))||e.usage!==void 0&&(!i(e.usage)||!r(e.usage,["inputTokens","outputTokens","totalTokens"])||!["inputTokens","outputTokens","totalTokens"].every(t=>w(e.usage,t))))return!1;if(e.toolSummary!==void 0){if(!i(e.toolSummary)||!r(e.toolSummary,["calledTools","failedTools","blockedTools"]))return!1;for(let t of["calledTools","failedTools","blockedTools"]){let n=e.toolSummary[t];if(!Array.isArray(n)||!n.every(s))return!1}}return!(e.fileContext!==void 0&&(!i(e.fileContext)||!r(e.fileContext,["changedFileCount","changedPathsPreview","hasTurnFileChanges"])||!w(e.fileContext,"changedFileCount")||e.fileContext.changedPathsPreview!==void 0&&(!Array.isArray(e.fileContext.changedPathsPreview)||!e.fileContext.changedPathsPreview.every(s))||e.fileContext.hasTurnFileChanges!==void 0&&typeof e.fileContext.hasTurnFileChanges!="boolean")||e.delegationSummary!==void 0&&!et(e.delegationSummary))}function nt(e,t){return i(t)?e==="commitTurnTelemetry"?r(t,["projectId","sessionId","turnId","telemetry"])&&s(t.projectId)&&s(t.sessionId)&&s(t.turnId)&&tt(t.telemetry):e==="listDistillableFeedback"||e==="runUploadSweep"?r(t,["projectId"])&&s(t.projectId):r(t,["projectId","turnId","clusterKey","idempotencyKey"])&&s(t.projectId)&&s(t.turnId)&&s(t.clusterKey)&&s(t.idempotencyKey):!1}function rt(e,t){if(!i(t))return!1;if(e==="getSnapshot")return Object.keys(t).length===0;if(e==="switch")return r(t,["projectIdOrQuery"])&&s(t.projectIdOrQuery);if(e==="create"){let n=t.workspaceDir!==void 0||typeof t.name=="string"&&t.name!=="."&&t.name!==".."&&!/[\\/]/.test(t.name);return r(t,["name","workspaceDir","type","groupId"])&&s(t.name)&&n&&g(t,"workspaceDir")&&g(t,"groupId")&&(t.type===void 0||["personal","group","solo","product","automation"].includes(String(t.type)))}return!r(t,["projectId","planStatus","planAgents","planWinnerId","leaderSessionId","primaryWorkflowId"])||!s(t.projectId)||t.planStatus!==void 0&&!["creating","running","completed","failed","cancelled"].includes(String(t.planStatus))||t.planAgents!==void 0&&(!Array.isArray(t.planAgents)||!t.planAgents.every(s))?!1:["planWinnerId","leaderSessionId","primaryWorkflowId"].every(n=>g(t,n))}function st(e){if(!i(e)||!r(e,["schemaVersion","at","sequence","threadId","turnId","item"])||e.schemaVersion!==Se||!s(e.at)||!w(e,"sequence")||!s(e.threadId)||!s(e.turnId)||!i(e.item))return!1;let t=e.item;return r(t,["id","type","kind","domain","role","state","text","data"])&&s(t.id)&&["message","state","plan","task","checklist","budget","input_request","summary","tool_call","tool_result","artifact","receipt"].includes(String(t.type))&&s(t.kind)&&["chat","solo","product","goal","workflow","system"].includes(String(t.domain))&&["user","assistant","system","tool"].includes(String(t.role))&&["pending","in_progress","completed","failed","blocked","cancelled"].includes(String(t.state))&&(t.text===void 0||typeof t.text=="string")&&i(t.data)}function it(e,t){return!i(t)||!s(t.sessionId)?!1:e==="open"?r(t,["runId","kind","projectId","sessionId"])&&s(t.runId)&&s(t.projectId)&&(t.kind==="solo"||t.kind==="product"||t.kind==="goal"):e==="openWithCheckpoint"?r(t,["runId","kind","projectId","snapshot","checkpointId","sessionId"])&&s(t.runId)&&s(t.projectId)&&(t.kind==="solo"||t.kind==="product"||t.kind==="goal")&&g(t,"checkpointId")&&Object.prototype.hasOwnProperty.call(t,"snapshot")&&t.snapshot!==void 0:e==="recordEvent"?r(t,["runId","event","sessionId"])&&s(t.runId)&&st(t.event):e==="checkpoint"?r(t,["runId","checkpointId","snapshot","sessionId"])&&s(t.runId)&&g(t,"checkpointId")&&Object.prototype.hasOwnProperty.call(t,"snapshot")&&t.snapshot!==void 0:e==="list"?r(t,["projectId","kind","sessionId"])&&s(t.projectId)&&(t.kind===void 0||t.kind==="solo"||t.kind==="product"||t.kind==="goal"):e==="getCheckpoint"||e==="restoreCheckpoint"?r(t,["runId","checkpointId","sessionId"])&&s(t.runId)&&s(t.checkpointId):e==="listCheckpoints"?r(t,["runId","sessionId"])&&s(t.runId):(e==="get"||e==="delete")&&r(t,["runId","sessionId"])&&s(t.runId)}function L(e){return typeof e=="string"&&/^[a-z0-9][a-z0-9._-]*\.md$/i.test(e)&&e!=="INDEX.md"&&!e.includes("..")&&!e.includes("/")&&!e.includes("\\")}function ot(e,t){return!i(t)||typeof t.sessionId!="string"||t.sessionId.trim().length===0?!1:e==="initialize"||e==="getIndex"||e==="listFiles"?r(t,["sessionId"]):e==="addToIndex"?r(t,["sessionId","content"])&&typeof t.content=="string"&&t.content.length>0:e==="replaceInIndex"?r(t,["sessionId","oldText","newText"])&&typeof t.oldText=="string"&&t.oldText.length>0&&typeof t.newText=="string"&&t.newText.length>0:e==="removeFromIndex"?r(t,["sessionId","oldText"])&&typeof t.oldText=="string"&&t.oldText.length>0:e==="createFile"||e==="writeFile"?r(t,["sessionId","name","content"])&&L(t.name)&&typeof t.content=="string":e==="readFile"||e==="deleteFile"?r(t,["sessionId","name"])&&L(t.name):e==="searchLocal"&&r(t,["sessionId","query"])&&typeof t.query=="string"&&t.query.length>0}function Vt(e){if(!i(e)||!r(e,["service","method","params","sessionId"])||typeof e.service!="string"||!H.has(e.service)||typeof e.method!="string"||e.method.length===0)return!1;if(e.service==="memory")return _e.has(e.method)&&Array.isArray(e.params)&&(e.sessionId===void 0||s(e.sessionId));if(e.sessionId!==void 0)return!1;if(e.service==="projectMemory")return Ee.has(e.method)&&ot(e.method,e.params);if(e.service==="profile"){if(!Oe.has(e.method)||!Array.isArray(e.params))return!1;switch(e.method){case"getTunables":return e.params.length===0;case"updateTunable":return e.params.length===2&&typeof e.params[0]=="string"&&e.params[0].trim().length>0&&e.params[1]!==void 0;case"clearTunable":case"appendDirectoryAllowRule":return e.params.length===1&&typeof e.params[0]=="string"&&e.params[0].trim().length>0}}return e.service==="capability"?De.has(e.method)&&ze(e.method,e.params):e.service==="session"?je.has(e.method)&&Je(e.method,e.params):e.service==="feedback"?Ne.has(e.method)&&nt(e.method,e.params):e.service==="project"?Fe.has(e.method)&&rt(e.method,e.params):e.service==="runState"?Le.has(e.method)&&it(e.method,e.params):e.service==="provider"?!qe.has(e.method)||!Array.isArray(e.params)?!1:e.method==="list"?e.params.length===0:e.params.length===1&&s(e.params[0]):e.service==="community"?!Ue.has(e.method)||!i(e.params)?!1:e.method==="resolveInstall"?r(e.params,["resourceId","version"])&&s(e.params.resourceId)&&g(e.params,"version"):e.method==="listResourceVersions"?r(e.params,["resourceId"])&&s(e.params.resourceId):r(e.params,["id","platform"])&&s(e.params.id)&&s(e.params.platform):e.service==="cloudAuth"?Be.has(e.method)&&e.method==="probeSession"&&i(e.params)&&Object.keys(e.params).length===0:Ve.has(e.method)?Ze(e.method,e.params):!1}function Yt(e){return i(e)&&r(e,["ok"])&&e.ok===!0}function vt(e){return!i(e)||!r(e,["events"])||!Array.isArray(e.events)?!1:e.events.every(t=>i(t)&&r(t,["feedbackId","rating","reason","state","sessionId","turnId"])&&s(t.feedbackId)&&(t.rating==="up"||t.rating==="down")&&(t.reason===void 0||["missed_requirement","incomplete","broken_file_link_or_panel","code_or_test_failed","factually_wrong","too_verbose","too_short","wrong_style","other"].includes(String(t.reason)))&&t.state==="active"&&s(t.sessionId)&&s(t.turnId))}function Kt(e){return i(e)&&r(e,["ok","updated"])&&e.ok===!0&&typeof e.updated=="boolean"}function Gt(e){return i(e)&&r(e,["uploaded","queued","retried","exhausted"])&&["uploaded","queued","retried","exhausted"].every(t=>a(e[t]))}function G(e){return!i(e)||!r(e,["id","name","workspaceDir","type","status","groupId","createdAt","updatedAt","planStatus","planAgents","planWinnerId","leaderSessionId","primaryWorkflowId"])||!s(e.id)||!s(e.name)||!s(e.workspaceDir)||!["default","personal","group","solo","product","automation"].includes(String(e.type))||e.status!=="active"&&e.status!=="archived"||!s(e.createdAt)||!s(e.updatedAt)||!["groupId","planWinnerId","leaderSessionId","primaryWorkflowId"].every(t=>g(e,t))||e.planStatus!==void 0&&!["creating","running","completed","failed","cancelled"].includes(String(e.planStatus))?!1:e.planAgents===void 0||Array.isArray(e.planAgents)&&e.planAgents.every(s)}function zt(e){return i(e)&&r(e,["activeProjectId","projects"])&&(e.activeProjectId===null||s(e.activeProjectId))&&Array.isArray(e.projects)&&e.projects.every(G)}function $t(e){return i(e)&&r(e,["ok","project","deduplicated"])&&e.ok===!0&&G(e.project)&&(e.deduplicated===void 0||typeof e.deduplicated=="boolean")}function Xt(e,t){return!i(e)||e.version!==1||!Array.isArray(e.services)||typeof t!="string"||!H.has(t)||!e.services.every(n=>typeof n=="string"&&H.has(n))?!1:e.services.includes(t)}export{Rt as DELEGATE_WIRE_METHODS,be as HOST_CAPABILITY_PROXY_METHODS,Ae as HOST_CLOUD_AUTH_PROXY_METHODS,Te as HOST_COMMUNITY_PROXY_METHODS,Re as HOST_FEEDBACK_PROXY_METHODS,he as HOST_MEMORY_PROXY_METHODS,Me as HOST_PROFILE_PROXY_METHODS,ke as HOST_PROJECT_MEMORY_PROXY_METHODS,xe as HOST_PROJECT_PROXY_METHODS,He as HOST_PROVIDER_PROXY_METHODS,wt as HOST_REQUEST_WIRE_METHODS,Ce as HOST_RUN_STATE_PROXY_METHODS,Pe as HOST_SESSION_PROXY_METHODS,xt as HOST_SKILL_FILE_MAX_BYTES,j as HUB_SKILL_CATEGORIES,fe as HUB_SKILL_CATEGORY_LABELS,Pt as LIFECYCLE_CODES,oe as LONG_TERM_MEMORY_CATEGORIES,de as MEMORY_CLAIM_RELATIONS,Jt as MODEL_PURPOSES,we as PREVIEW_BROWSER_ACTIONS,Tt as PREVIEW_BROWSER_MUTATION_ACTIONS,At as PREVIEW_BROWSER_READ_ACTIONS,Se as THREAD_ITEM_PROTOCOL_VERSION,pt as buildProviderValidationProbes,ge as deriveProjectId,Xe as isHostAgentProviderDiagnostic,Ft as isHostAgentProviderGetResult,Nt as isHostAgentProviderListResult,Y as isHostAgentProviderSnapshot,Ot as isHostApplyCuratorPlanResult,vt as isHostDistillableFeedbackResult,Yt as isHostFeedbackCommitResult,Kt as isHostFeedbackMarkResult,Gt as isHostFeedbackSweepResult,jt as isHostFinalizeSkillInstallResult,Dt as isHostPrepareSkillInstallResult,$t as isHostProjectMutationResult,zt as isHostProjectSnapshotResult,Vt as isHostRequestParams,qt as isHostSessionAppendResult,Q as isHostSessionCollectionDelta,W as isHostSessionCollectionSnapshot,Bt as isHostSessionGroupSplitResult,Lt as isHostSessionLoadForResumeResult,Ut as isHostSessionMutationResult,Mt as isHostSkillFileResponse,_t as isHostSkillInvocationResult,Et as isHostSkillMutationResult,Ct as isHostSkillSnapshotResponse,Ie as isHubSkillCategory,X as isNativeTranscript,Ht as isPreviewTargetKey,ct as isProviderProbeEndpointUnavailable,dt as listSettingsProviderOptions,bt as memberEquals,kt as memberKey,gt as normalizeLongTermMemoryCategory,ut as normalizeMemoryClaimRelation,T as providerCatalogBaseUrl,O as providerCatalogDisplayName,D as segmentForFts,me as segmentTextForFts,Xt as supportsHostRequestService};
|
|
1
|
+
import{MODEL_PURPOSES as Zt}from"@xiaozhiclaw/module-sdk/model-access";function f(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function y(e,t){let n=new Set(t);return Object.keys(e).every(o=>n.has(o))}function l(e){return typeof e=="string"&&e.trim()===e&&e.length>0&&e.length<=512&&!e.includes("\0")}function h(e){return Number.isSafeInteger(e)&&Number(e)>0}function C(e){return f(e)&&y(e,["agentId","projectId","nativeId"])&&l(e.agentId)&&l(e.projectId)&&l(e.nativeId)}function M(e){if(!f(e)||!y(e,["resourceId","canonicalSessionId","source","projectId","agentId","title","titleSource","lastActiveAt","pinnedAt","lifecycle","availableCommands","nativeRef"])||!l(e.resourceId)||!l(e.projectId)||!l(e.agentId)||!l(e.lastActiveAt)||e.source!=="host"&&e.source!=="native-unadopted"||e.source==="host"&&!l(e.canonicalSessionId)||e.source==="native-unadopted"&&!C(e.nativeRef)||e.canonicalSessionId!==void 0&&!l(e.canonicalSessionId)||e.nativeRef!==void 0&&!C(e.nativeRef))return!1;let t=new Set(["host.setPinned","host.rename","host.setArchived","host.deleteRecord"]);return!Array.isArray(e.availableCommands)||!e.availableCommands.every(n=>typeof n=="string"&&t.has(n))||new Set(e.availableCommands).size!==e.availableCommands.length||e.source==="native-unadopted"&&e.availableCommands.length>0||e.title!==void 0&&typeof e.title!="string"||e.pinnedAt!==void 0&&!l(e.pinnedAt)||e.titleSource!==void 0&&e.titleSource!=="prompt"&&e.titleSource!=="generated"&&e.titleSource!=="user"&&e.titleSource!=="native"&&e.titleSource!=="repaired"?!1:e.lifecycle==="active"||e.lifecycle==="archived"||e.lifecycle==="source-missing"||e.lifecycle==="resume-unavailable"}function _(e){return f(e)&&y(e,["agentId","projectId","code","message","lastGoodRevision"])&&l(e.agentId)&&l(e.projectId)&&l(e.code)&&typeof e.message=="string"&&e.message.length>0&&e.message.length<=2e4&&(e.lastGoodRevision===void 0||h(e.lastGoodRevision))}function z(e){return typeof e=="string"&&e.length>0&&!Number.isNaN(Date.parse(e))}function $(e){return f(e)&&y(e,["id","role","content","createdAt"])&&Object.prototype.hasOwnProperty.call(e,"content")&&(e.id===void 0||l(e.id))&&(e.role==="user"||e.role==="assistant"||e.role==="tool")&&(e.createdAt===void 0||z(e.createdAt))}function X(e){return f(e)&&y(e,["messages","diagnostics"])&&Array.isArray(e.messages)&&e.messages.every($)&&(e.diagnostics===void 0||Array.isArray(e.diagnostics))}function W(e){return f(e)&&y(e,["revision","scopeGeneration","items","diagnostics"])&&h(e.revision)&&h(e.scopeGeneration)&&Array.isArray(e.items)&&e.items.every(M)&&Array.isArray(e.diagnostics)&&e.diagnostics.every(_)}function Q(e){return f(e)&&y(e,["revision","scopeGeneration","addedOrUpdated","removed","diagnostics"])&&h(e.revision)&&h(e.scopeGeneration)&&(e.addedOrUpdated===void 0||Array.isArray(e.addedOrUpdated)&&e.addedOrUpdated.every(M))&&(e.removed===void 0||Array.isArray(e.removed)&&e.removed.every(l))&&(e.diagnostics===void 0||Array.isArray(e.diagnostics)&&e.diagnostics.every(_))}var P="llmrouter";function T(e){return e.baseUrl??e.base_url}function O(e){return{zhipu:"Zhipu GLM","zhipu-openai":"Zhipu GLM OpenAI","zhipu-coding":"Zhipu GLM Coding",qwen:"Alibaba Qwen (DashScope)","qwen-coding":"Alibaba Qwen (Coding Plan)",volcengine:"Doubao / Volcengine","volcengine-plan":"Doubao / Volcengine Plan"}[e.id]??e.displayName??e.name??e.id}function A(e){return e.id===P?P:e.group?.trim()||e.id}function J(e){return e.id===A(e)}function E(e){return O({...e,id:A(e)})}function Z(e){return{volcengine:"\u5E38\u89C4 Ark API Key","volcengine-plan":"\u8BA2\u9605 / Plan \u901A\u9053",qwen:"\u5E38\u89C4 DashScope API Key","qwen-coding":"Coding Plan \u901A\u9053",zhipu:"Anthropic \u901A\u9053","zhipu-openai":"OpenAI \u517C\u5BB9\u901A\u9053","zhipu-coding":"Coding \u901A\u9053"}[e.id]??O(e)}function ee(e){return e.authType==="none"?!1:e.apiKeyEnvVars===void 0||e.apiKeyEnvVars.length>0}function te(e){return{id:e.id,displayName:Z(e),baseUrl:T(e)??"",modelCount:e.models?.length??0}}function dt(e){let t=new Map;for(let n of e){if(!ee(n))continue;let o=A(n);if(o===P)continue;let d=n.models?.length??0,u=te(n),c=t.get(o);if(!c){t.set(o,{id:o,displayName:E(n),baseUrl:T(n)??"",modelCount:d,variants:[u]});continue}c.modelCount+=d,c.variants??=[],c.variants.some(p=>p.id===u.id)||c.variants.push(u),J(n)&&(c.displayName=E(n),c.baseUrl=T(n)??c.baseUrl)}return Array.from(t.values()).map(({variants:n,...o})=>({...o,...n&&n.length>1?{variants:n}:{}}))}function ne(e){return e.defaultModel??e.models?.find(t=>!!t.id)?.id}function re(e){let t=e.replace(/\/+$/,"");return[...new Set([`${t}/models`,/\/v\d+$/.test(t)?`${t}/models`:`${t}/v1/models`])]}function ct(e){return e===404||e===405||e===410||e===501}function x(e){return{accept:"application/json",Authorization:`Bearer ${e}`}}function se(e,t){let n=e.trim(),o=t?.baseUrl?.trim();return t?.transport==="anthropic-messages"&&o&&/\/anthropic\/?$/.test(o)&&!/\/anthropic\/?$/.test(n)?o:n}function ie(e){let t=e.trim().replace(/\/+$/,"");return t.endsWith("/v1")?`${t}/models`:`${t}/v1/models`}function pt(e,t,n,o){if(e===P)return[{method:"GET",url:ie(n),headers:x(t)}];let d=se(n,o).replace(/\/+$/,""),u=o?.transport,c=ne(o??{id:e}),p=[];if(u==="anthropic-messages")return/\/anthropic$/.test(d)&&p.push({method:"GET",url:`${d.replace(/\/anthropic$/,"")}/models`,headers:x(t)}),c&&p.push({method:"POST",url:`${d}/v1/messages`,headers:{"Content-Type":"application/json","x-api-key":t,"anthropic-version":"2023-06-01"},body:{model:c,messages:[{role:"user",content:"ping"}],max_tokens:1,stream:!1}}),p;if(u==="gemini-generatecontent")return c?[{method:"POST",url:`${d}/models/${encodeURIComponent(c)}:generateContent`,headers:{"Content-Type":"application/json","x-goog-api-key":t},body:{contents:[{role:"user",parts:[{text:"ping"}]}],generationConfig:{maxOutputTokens:1}}}]:p;if(u==="volcengine-responses")return c?[{method:"POST",url:`${d.replace(/\/v\d+$/,"")}/v3/responses`,headers:{"Content-Type":"application/json",Authorization:`Bearer ${t}`},body:{model:c,input:[{role:"user",content:[{type:"input_text",text:"ping"}]}],max_output_tokens:1,stream:!1,store:!1}}]:p;for(let S of re(d))p.push({method:"GET",url:S,headers:x(t)});return p}var oe=["fact","preference","insight","lesson","decision","plan","event","pattern","context","procedure","general"],ae=new Set(oe),de=["equals","includes","excludes"],ce=new Set(de);function gt(e,t="general"){if(typeof e!="string")return t;let n=e.trim().toLowerCase().replace(/\s+/g,"_");return ae.has(n)?n:t}function ut(e,t="equals"){if(typeof e!="string")return t;let n=e.trim().toLowerCase();return ce.has(n)?n:t}import{createHash as pe}from"node:crypto";import{resolve as le}from"node:path";function ge(e){return pe("sha256").update(le(e).toLowerCase()).digest("hex").slice(0,16)}var ue=/[一-鿿]/;function D(e){let t=[],n=e.toLowerCase().match(/[\p{L}\p{N}_]+/gu)??[];for(let o of n){let d="",u=!1,c=()=>{if(d){if(u){d.length===1&&t.push(d);for(let p=0;p+1<d.length;p++)t.push(d.slice(p,p+2))}else t.push(d);d=""}};for(let p of o){let S=ue.test(p);d&&S!==u&&c(),u=S,d+=p}c()}return t}function me(e){return D(e).join(" ")}var j=["efficiency","dev","cloud","data","industrial","marketing","ecommerce","procurement","hr","accounting","finance","legal","lifestyle"],fe={efficiency:"\u529E\u516C\u534F\u4F5C",dev:"\u5F00\u53D1\u7F16\u7A0B",cloud:"\u4E91\u4E0E\u8FD0\u7EF4",data:"\u6570\u636E\u5206\u6790",industrial:"\u5DE5\u4E1A\u81EA\u52A8\u5316",marketing:"\u8425\u9500\u9500\u552E",ecommerce:"\u7535\u5546\u8FD0\u8425",procurement:"\u91C7\u8D2D\u4F9B\u5E94\u94FE",hr:"\u4EBA\u529B\u884C\u653F",accounting:"\u8D22\u52A1\u4F1A\u8BA1",finance:"\u91D1\u878D\u6295\u8D44",legal:"\u6CD5\u52A1\u5408\u89C4",lifestyle:"\u4E2A\u4EBA\u751F\u6D3B"},ye=new Set(j);function Ie(e){return typeof e=="string"&&ye.has(e)}var k=":";function kt(e){for(let[t,n]of[["kind",e.kind],["owner",e.owner],["name",e.name]])if(n.includes(k))throw new Error(`memberKey: field "${t}" contains reserved separator "${k}": ${n}`);return`${e.kind}${k}${e.owner}${k}${e.name}${k}${e.seq}`}function bt(e,t){return e.kind===t.kind&&e.owner===t.owner&&e.name===t.name&&e.seq===t.seq}var Pt=["CANCELLED","PROCESS_EXIT","HEARTBEAT_TIMEOUT","TURN_TIMEOUT","PROTOCOL_MISMATCH","UNKNOWN"],Rt=[["onboarding-v1","preference"],["onboarding-v1","boundary"],["onboarding-v1","workspace"],["onboarding-v1","identity"]],Se=1,xt={request:"x/delegate",update:"x/delegate.update",respond:"x/delegate.respond",cancel:"x/delegate.cancel"},he=["search","embedText","ingestExtracted","proposeExtracted","consumePendingProposals","feedback","findRelatedEvents","synthesizeTimeline","getActivitySummary","getAllProfiles","setProfile","getAtlas","setMemoryArchived","triggerDecay","resolveConflicts","readProcedureUsage","writeProcedureUsage","readDistillCandidates","writeDistillCandidates","readPromotionProposals","writePromotionProposals","listActiveMemoriesByTag","readDistilledProcedure","promoteDistilledProcedure","demoteDistilledProcedure","recordInjectedAccess","recordRecallOutcome","enqueueExtractionTurn","claimPendingExtractionTurns","completeExtractionTurn","releaseExtractionTurn","recordExtractionTurnFailure"],ke=["initialize","getIndex","addToIndex","replaceInIndex","removeFromIndex","createFile","writeFile","readFile","deleteFile","listFiles","searchLocal"],be=["getSkillSnapshot","readSkillFile","recordSkillInvocation","commitSkillMutation","applyCuratorPlan","prepareSkillInstall","finalizeSkillInstall"],Pe=["loadForResume","appendTranscript","updateTitle","saveState","saveTaskSummary","groupSplit"],Re=["commitTurnTelemetry","listDistillableFeedback","markFeedbackDistilled","runUploadSweep"],xe=["getSnapshot","create","switch","update"],Tt=1024*1024,Te=["resolveInstall","listResourceVersions"],Ae=["probeSession"],He=["list","get","diagnose"],we=["navigate","snapshot","click","type","screenshot","console","network"],At=["navigate","click","type"],Ht=["snapshot","screenshot","console","network"];function wt(e){if(typeof e!="string")return!1;let t=/^preview:([1-9]\d*)$/.exec(e);return t!==null&&Number.isSafeInteger(Number(t[1]))}var Ce=["open","openWithCheckpoint","recordEvent","checkpoint","get","list","delete","getCheckpoint","listCheckpoints","restoreCheckpoint"],Me=["getTunables","updateTunable","clearTunable","appendDirectoryAllowRule"],Ct={request:"x/host.request"},H=new Set(["memory","projectMemory","profile","preview","capability","session","feedback","project","runState","provider","community","cloudAuth"]),_e=new Set(he),Ee=new Set(ke),Oe=new Set(Me),De=new Set(be),je=new Set(Pe),Ne=new Set(Re),Fe=new Set(xe),Le=new Set(Ce),qe=new Set(He),Ue=new Set(Te),Be=new Set(Ae),ve=new Set(we);function i(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function b(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function q(e,t){return t.every(n=>e[n]===void 0||typeof e[n]=="string")}function Ye(e){return i(e)?typeof e.name=="string"&&e.name.length>0&&(e.state==="active"||e.state==="stale"||e.state==="archived")&&typeof e.createdAt=="string"&&typeof e.pinned=="boolean"&&typeof e.useCount=="number"&&Number.isFinite(e.useCount)&&(e.source==="learned"||e.source==="created"||e.source==="installed"||e.source==="promoted")&&q(e,["lastUsedAt","lastViewedAt","lastPatchedAt","staleAt","archivedAt","resourceType","artifactDigest","contentTreeDigest","registryResourceId","registryVersion","registryKeptSignalAt"])&&["launcherRequired","manualReviewRequired"].every(t=>e[t]===void 0||typeof e[t]=="boolean")&&["positiveCount","negativeCount"].every(t=>e[t]===void 0||typeof e[t]=="number"&&Number.isFinite(e[t]))&&["sourceTier","registrySourceTier"].every(t=>e[t]===void 0||e[t]==="official"||e[t]==="community")&&["riskTier","registryRiskTier","registryEffectiveRiskTier"].every(t=>e[t]===void 0||e[t]==="R0"||e[t]==="R1"||e[t]==="R2"||e[t]==="R3"):!1}function Ve(e){return i(e)?r(e,["name","filePath","baseDir","fileRevision","globallyDisabled","projectDisabled","active","systemGenerated","description","version","category","author","requiredTools","environments","source","registryVersion"])&&typeof e.name=="string"&&e.name.length>0&&typeof e.filePath=="string"&&e.filePath.length>0&&typeof e.baseDir=="string"&&e.baseDir.length>0&&typeof e.fileRevision=="string"&&e.fileRevision.length>0&&typeof e.globallyDisabled=="boolean"&&typeof e.projectDisabled=="boolean"&&typeof e.active=="boolean"&&typeof e.systemGenerated=="boolean"&&q(e,["description","version","category","author","registryVersion"])&&(e.source===void 0||e.source==="learned"||e.source==="created"||e.source==="installed"||e.source==="promoted")&&(e.requiredTools===void 0||b(e.requiredTools))&&(e.environments===void 0||b(e.environments)):!1}function Ke(e){return i(e)&&r(e,["name","skills","filePath"])&&typeof e.name=="string"&&e.name.length>0&&b(e.skills)&&typeof e.filePath=="string"&&e.filePath.length>0}function Mt(e){return!i(e)||typeof e.revision!="string"||e.revision.length===0?!1:e.notModified===!0?r(e,["revision","notModified"]):e.notModified!==!1||!r(e,["revision","notModified","skills","lifecycle","bundles"])?!1:Array.isArray(e.skills)&&e.skills.every(Ve)&&Array.isArray(e.lifecycle)&&e.lifecycle.every(Ye)&&Array.isArray(e.bundles)&&e.bundles.every(Ke)}function _t(e){return i(e)&&r(e,["name","relativePath","content","baseDir","revision"])&&typeof e.name=="string"&&e.name.length>0&&typeof e.relativePath=="string"&&e.relativePath.length>0&&typeof e.content=="string"&&typeof e.baseDir=="string"&&e.baseDir.length>0&&typeof e.revision=="string"&&e.revision.length>0}function Et(e){return i(e)&&r(e,["name","lastUsedAt","useCount","positiveCount","negativeCount"])&&m(e.name)&&typeof e.lastUsedAt=="string"&&e.lastUsedAt.length>0&&["useCount","positiveCount","negativeCount"].every(t=>typeof e[t]=="number"&&Number.isFinite(e[t])&&e[t]>=0)}function Ot(e){return!i(e)||!m(e.name)||typeof e.kind!="string"?!1:e.kind==="create"||e.kind==="editContent"||e.kind==="editSupportingFile"?r(e,["kind","name","revision","changed"])&&typeof e.revision=="string"&&e.revision.length>0&&e.changed===!0:e.kind==="delete"?r(e,["kind","name","deleted"])&&e.deleted===!0:e.kind==="setGlobalDisabled"||e.kind==="setProjectDisabled"?r(e,["kind","name","disabled","changed"])&&typeof e.disabled=="boolean"&&typeof e.changed=="boolean":e.kind==="setPinned"?r(e,["kind","name","pinned","changed"])&&typeof e.pinned=="boolean"&&typeof e.changed=="boolean":e.kind==="promote"?r(e,["kind","name","promoted","changed"])&&e.promoted===!0&&typeof e.changed=="boolean":!1}function Ge(e,t){return e==="active"&&t==="stale"||e==="stale"&&(t==="archived"||t==="active")||e==="archived"&&t==="active"}function U(e){return i(e)&&r(e,["name","from","to"])&&m(e.name)&&Ge(e.from,e.to)}function Dt(e){return i(e)&&r(e,["revision","changed","transitioned"])&&typeof e.revision=="string"&&e.revision.length>0&&typeof e.changed=="boolean"&&Array.isArray(e.transitioned)&&e.transitioned.every(U)}function jt(e){return i(e)&&r(e,["installationId","artifactPath","contentDir","expiresAt"])&&["installationId","artifactPath","contentDir","expiresAt"].every(t=>typeof e[t]=="string"&&e[t].length>0)}function Nt(e){return i(e)?e.action==="discard"?r(e,["action","discarded"])&&e.discarded===!0:e.action==="adopt"&&r(e,["action","resourceId","version","skillName","installDir","checksum","replaced"])&&m(e.resourceId)&&e.skillName===e.resourceId&&typeof e.version=="string"&&e.version.length>0&&typeof e.installDir=="string"&&e.installDir.length>0&&typeof e.checksum=="string"&&/^[a-f0-9]{64}$/.test(e.checksum)&&typeof e.replaced=="boolean":!1}function r(e,t){let n=new Set(t);return Object.keys(e).every(o=>n.has(o))}function I(e,t){return e[t]===void 0||typeof e[t]=="string"}function g(e,t){return e[t]===void 0||typeof e[t]=="string"&&e[t].trim().length>0}function m(e){return typeof e=="string"&&/^[A-Za-z0-9_.-]+$/.test(e)&&e!=="."&&e!==".."}function B(e){return typeof e!="string"||e.trim()!==e||e.length===0||e.includes("\0")||/^(?:[A-Za-z]:[\\/]|[\\/])/.test(e)?!1:e.split(/[\\/]/).every(n=>n.length>0&&n!=="."&&n!=="..")}function N(e){return B(e)&&e.toLowerCase()!=="skill.md"}function ze(e,t){if(!i(t))return!1;if(e==="getSkillSnapshot")return r(t,["projectId","knownRevision"])&&g(t,"projectId")&&g(t,"knownRevision");if(e==="readSkillFile")return r(t,["name","relativePath","expectedRevision"])&&m(t.name)&&(t.relativePath===void 0||B(t.relativePath))&&g(t,"expectedRevision");if(e==="commitSkillMutation"){if(!r(t,["mutation"])||!i(t.mutation))return!1;let n=t.mutation;return!m(n.name)||typeof n.kind!="string"?!1:n.kind==="create"?!r(n,["kind","name","content","source","supportingFile"])||typeof n.content!="string"||n.source!==void 0&&n.source!=="created"&&n.source!=="learned"?!1:n.supportingFile===void 0?!0:i(n.supportingFile)&&r(n.supportingFile,["relativePath","content"])&&N(n.supportingFile.relativePath)&&typeof n.supportingFile.content=="string":n.kind==="editContent"?r(n,["kind","name","expectedRevision","content"])&&typeof n.expectedRevision=="string"&&n.expectedRevision.length>0&&typeof n.content=="string":n.kind==="editSupportingFile"?r(n,["kind","name","relativePath","expectedRevision","content"])&&N(n.relativePath)&&(n.expectedRevision===null||typeof n.expectedRevision=="string"&&n.expectedRevision.length>0)&&typeof n.content=="string":n.kind==="delete"?r(n,["kind","name"]):n.kind==="setGlobalDisabled"?r(n,["kind","name","disabled"])&&typeof n.disabled=="boolean":n.kind==="setProjectDisabled"?r(n,["kind","name","projectId","disabled"])&&typeof n.projectId=="string"&&n.projectId.length>0&&typeof n.disabled=="boolean":n.kind==="setPinned"?r(n,["kind","name","pinned"])&&typeof n.pinned=="boolean":n.kind==="promote"?r(n,["kind","name"]):!1}if(e==="applyCuratorPlan"){if(!r(t,["expectedRevision","transitions"])||typeof t.expectedRevision!="string"||t.expectedRevision.length===0||!Array.isArray(t.transitions)||t.transitions.length>500||!t.transitions.every(U))return!1;let n=t.transitions.map(o=>o.name);return new Set(n).size===n.length}if(e==="prepareSkillInstall"){if(!r(t,["name","version","checksum","sizeBytes","allowReplace","replacementPolicy","provenance"])||!m(t.name)||typeof t.version!="string"||!t.version.trim()||typeof t.checksum!="string"||!/^[a-f0-9]{64}$/.test(t.checksum)||!Number.isSafeInteger(t.sizeBytes)||t.sizeBytes<=0||t.sizeBytes>20*1024*1024||typeof t.allowReplace!="boolean"||(t.allowReplace===!0?t.replacementPolicy!=="managed-unmodified"&&t.replacementPolicy!=="user-confirmed":t.replacementPolicy!==void 0)||!i(t.provenance)||!r(t.provenance,["sourceTier","resourceRiskTier","effectiveRiskTier"]))return!1;let n=o=>o==="R0"||o==="R1"||o==="R2"||o==="R3";return(t.provenance.sourceTier==="official"||t.provenance.sourceTier==="community")&&n(t.provenance.resourceRiskTier)&&n(t.provenance.effectiveRiskTier)}return e==="finalizeSkillInstall"?r(t,["installationId","action"])&&typeof t.installationId=="string"&&t.installationId.trim().length>0&&(t.action==="adopt"||t.action==="discard"):r(t,["name","success"])&&m(t.name)&&typeof t.success=="boolean"}function s(e){return typeof e=="string"&&e.trim()===e&&e.length>0&&e.length<=512&&!e.includes("\0")}function a(e){return Number.isSafeInteger(e)&&e>=0}function v(e){return e==="installed"||e==="auth_required"||e==="ready"||e==="disabled"||e==="incompatible"||e==="unresponsive"||e==="failed"||e==="not_installed"}function $e(e){return v(e)&&e!=="not_installed"}function Xe(e){return!i(e)||!r(e,["providerId","state","stage","code","message","retryable","providerVersion","payloadVersion"])?!1:s(e.providerId)&&v(e.state)&&["install","manifest","auth","launch","initialize","models","native_sessions","request"].includes(String(e.stage))&&s(e.code)&&typeof e.message=="string"&&typeof e.retryable=="boolean"&&g(e,"providerVersion")&&g(e,"payloadVersion")}function F(e,t){return i(e)&&r(e,t)&&t.every(n=>typeof e[n]=="boolean")}function We(e){return i(e)?e.kind==="provider"?r(e,["kind","enumeration"])&&(e.enumeration==="protocol"||e.enumeration==="implicit-default"):e.kind==="host"&&r(e,["kind","managedPurposes"])&&b(e.managedPurposes):!1}function Y(e){if(!i(e)||!r(e,["providerId","displayName","version","state","capabilities","diagnostic"])||!s(e.providerId)||!s(e.displayName)||!s(e.version)||!$e(e.state)||e.diagnostic!==void 0&&!Xe(e.diagnostic)||!i(e.capabilities)||!r(e.capabilities,["execution","auth","models","nativeSessions","diagnostics"]))return!1;let t=e.capabilities;return!F(t.execution,["streaming","approvals","cancellation","resume"])||!i(t.auth)||!r(t.auth,["modes","terminal","logout"])||!Array.isArray(t.auth.modes)||!t.auth.modes.every(n=>n==="account"||n==="userKey"||n==="managed")||typeof t.auth.terminal!="boolean"||typeof t.auth.logout!="boolean"||!We(t.models)||!F(t.nativeSessions,["discover","transcript","resume"])?!1:i(t.diagnostics)&&r(t.diagnostics,["readiness","version","structuredErrors"])&&t.diagnostics.readiness===!0&&t.diagnostics.version===!0&&t.diagnostics.structuredErrors===!0}function Ft(e){return i(e)&&r(e,["revision","providers"])&&a(e.revision)&&Array.isArray(e.providers)&&e.providers.every(Y)}function Lt(e){return i(e)&&r(e,["revision","provider"])&&a(e.revision)&&(e.provider===null||Y(e.provider))}function R(e,t=0){return t>12?!1:e===null||typeof e=="string"||typeof e=="boolean"?!0:typeof e=="number"?Number.isFinite(e):Array.isArray(e)?e.length<=1e4&&e.every(n=>R(n,t+1)):!i(e)||Object.keys(e).length>1e3?!1:Object.values(e).every(n=>R(n,t+1))}function Qe(e){return e===void 0||b(e)}function V(e){return i(e)&&r(e,["inputTokens","outputTokens","totalTokens"])&&["inputTokens","outputTokens","totalTokens"].every(t=>e[t]===void 0||a(e[t]))}function K(e){if(!i(e)||!r(e,["role","content","tool_calls","tool_call_id","name","is_error","reasoning_content","toolReferences","thinkingBlocks","imageUrls","imageDetail","imagePixelLimit","videoUrls","videoFps","audioFormat","audioUrls","fileIds","blocks","attachmentEntries","timestamp","turnId","usage","displayMetadata"])||e.role!=="system"&&e.role!=="user"&&e.role!=="assistant"&&e.role!=="tool"||e.content!==null&&typeof e.content!="string"||!["tool_call_id","name","reasoning_content","timestamp","turnId"].every(t=>I(e,t))||e.is_error!==void 0&&typeof e.is_error!="boolean"||!["toolReferences","imageUrls","videoUrls","audioUrls"].every(t=>Qe(e[t]))||e.imageDetail!==void 0&&e.imageDetail!=="auto"&&e.imageDetail!=="low"&&e.imageDetail!=="high"&&e.imageDetail!=="xhigh"||e.audioFormat!==void 0&&e.audioFormat!=="mp3"&&e.audioFormat!=="wav"&&e.audioFormat!=="aac"&&e.audioFormat!=="m4a"||e.videoFps!==void 0&&(typeof e.videoFps!="number"||!Number.isFinite(e.videoFps)||e.videoFps<.2||e.videoFps>5)||e.tool_calls!==void 0&&(!Array.isArray(e.tool_calls)||!e.tool_calls.every(t=>i(t)&&r(t,["id","type","function"])&&s(t.id)&&t.type==="function"&&i(t.function)&&r(t.function,["name","arguments"])&&s(t.function.name)&&typeof t.function.arguments=="string"))||e.thinkingBlocks!==void 0&&(!Array.isArray(e.thinkingBlocks)||!e.thinkingBlocks.every(t=>i(t)&&r(t,["thinking","signature"])&&typeof t.thinking=="string"&&typeof t.signature=="string")))return!1;if(e.imagePixelLimit!==void 0){if(!i(e.imagePixelLimit))return!1;let t=e.imagePixelLimit;if(!r(t,["minPixels","maxPixels"])||!["minPixels","maxPixels"].every(n=>t[n]===void 0||a(t[n])))return!1}return e.fileIds!==void 0&&(!Array.isArray(e.fileIds)||!e.fileIds.every(t=>i(t)&&r(t,["id","mimeType","size"])&&s(t.id)&&I(t,"mimeType")&&(t.size===void 0||a(t.size))))||e.usage!==void 0&&!V(e.usage)?!1:["blocks","attachmentEntries","displayMetadata"].every(t=>e[t]===void 0||R(e[t]))}function Je(e,t){if(!i(t))return!1;if(e==="loadForResume")return r(t,["sessionId","projectId","includeMessages"])&&s(t.sessionId)&&g(t,"projectId")&&(t.includeMessages===void 0||typeof t.includeMessages=="boolean");if(e==="appendTranscript")return r(t,["sessionId","turnId","messageId","sequence","message","usage","displayMetadata"])&&s(t.sessionId)&&s(t.turnId)&&s(t.messageId)&&a(t.sequence)&&K(t.message)&&(t.usage===void 0||V(t.usage))&&(t.displayMetadata===void 0||R(t.displayMetadata));if(e==="updateTitle")return r(t,["sessionId","operationId","title"])&&s(t.sessionId)&&s(t.operationId)&&typeof t.title=="string"&&t.title.length<=2e3;if(e==="saveState"){if(!r(t,["sessionId","turnId","operationId","model","usage"])||!s(t.sessionId)||!s(t.turnId)||!s(t.operationId)||!I(t,"model")||!i(t.usage))return!1;let n=t.usage;return r(n,["turnCount","totalInputTokens","totalOutputTokens"])&&["turnCount","totalInputTokens","totalOutputTokens"].every(o=>a(n[o]))}return e==="saveTaskSummary"?r(t,["sessionId","operationId","summary","generatedAtTurn"])&&s(t.sessionId)&&s(t.operationId)&&typeof t.summary=="string"&&t.summary.length<=2e5&&a(t.generatedAtTurn):r(t,["sessionId","operationId","reason","expectedLastActiveAt","expectedTurnCount"])&&s(t.sessionId)&&s(t.operationId)&&(t.reason==="idle"||t.reason==="turn-limit")&&I(t,"expectedLastActiveAt")&&(t.expectedTurnCount===void 0||a(t.expectedTurnCount))}function qt(e){if(!i(e)||!r(e,["session"]))return!1;if(e.session===null)return!0;if(!i(e.session)||!r(e.session,["metadata","messages","corruptLines"])||!i(e.session.metadata))return!1;let t=e.session.metadata;return r(t,["sessionId","projectId","createdAt","lastActiveAt","turnCount","messageCount","type","title","agentId","model","taskSummary","carryoverSummary","previousSessionId","pinnedAt","archivedAt","sealedAt"])&&["sessionId","projectId","createdAt","lastActiveAt"].every(n=>s(t[n]))&&["turnCount","messageCount"].every(n=>a(t[n]))&&(t.type===void 0||t.type==="personal"||t.type==="group")&&["title","agentId","model","taskSummary","carryoverSummary","previousSessionId","pinnedAt","archivedAt","sealedAt"].every(n=>I(t,n))&&Array.isArray(e.session.messages)&&e.session.messages.every(K)&&(e.session.corruptLines===void 0||a(e.session.corruptLines))}function Ut(e){return i(e)&&r(e,["status","messageCount"])&&(e.status==="appended"||e.status==="duplicate"||e.status==="session-deleted")&&a(e.messageCount)}function Bt(e){return i(e)&&r(e,["status"])&&(e.status==="updated"||e.status==="duplicate"||e.status==="session-deleted")}function vt(e){return i(e)&&r(e,["status","nextSessionId"])&&(e.status==="updated"||e.status==="duplicate"||e.status==="session-deleted")&&(e.nextSessionId===void 0||s(e.nextSessionId))}function Ze(e,t){if(!i(t)||!I(t,"viewId")||!g(t,"sessionId"))return!1;switch(e){case"navigate":return r(t,["url","viewId","sessionId"])&&typeof t.url=="string";case"click":return r(t,["ref","viewId","sessionId"])&&typeof t.ref=="string";case"type":return r(t,["ref","text","submit","viewId","sessionId"])&&typeof t.ref=="string"&&typeof t.text=="string"&&(t.submit===void 0||typeof t.submit=="boolean");case"snapshot":case"screenshot":case"console":case"network":return r(t,["viewId","sessionId"])}}function w(e,t){return e[t]===void 0||a(e[t])}function et(e){if(!i(e)||!r(e,["schemaVersion","launched","completed","failed","cancelled","backgroundCount","automaticDeliveryCount","byAgentType","decisionCounts","argumentCorrections","durationMs","tokenUsage"])||e.schemaVersion!==1)return!1;for(let t of["launched","completed","failed","cancelled","backgroundCount","automaticDeliveryCount"])if(!a(e[t]))return!1;return!i(e.byAgentType)||!r(e.byAgentType,["general","explore","plan","code","research","verify"])||!Object.values(e.byAgentType).every(a)||!i(e.decisionCounts)||!r(e.decisionCounts,["adopted","partiallyAdopted","rejected","unreported"])||!Object.values(e.decisionCounts).every(a)||!i(e.argumentCorrections)||!r(e.argumentCorrections,["roleAlias","promptAlias","backgroundAlias","agentValue","backgroundValue"])||!Object.values(e.argumentCorrections).every(a)||!i(e.durationMs)||!r(e.durationMs,["total","max"])||!a(e.durationMs.total)||!a(e.durationMs.max)?!1:i(e.tokenUsage)&&r(e.tokenUsage,["total"])&&a(e.tokenUsage.total)}function tt(e){if(!i(e)||!r(e,["model","provider","agentMode","sourceChannel","usage","toolSummary","fileContext","delegationSummary"]))return!1;for(let t of["model","provider","sourceChannel"])if(e[t]!==void 0&&!s(e[t]))return!1;if(e.agentMode!==void 0&&!["chat","solo","product","workflow","unknown"].includes(String(e.agentMode))||e.usage!==void 0&&(!i(e.usage)||!r(e.usage,["inputTokens","outputTokens","totalTokens"])||!["inputTokens","outputTokens","totalTokens"].every(t=>w(e.usage,t))))return!1;if(e.toolSummary!==void 0){if(!i(e.toolSummary)||!r(e.toolSummary,["calledTools","failedTools","blockedTools"]))return!1;for(let t of["calledTools","failedTools","blockedTools"]){let n=e.toolSummary[t];if(!Array.isArray(n)||!n.every(s))return!1}}return!(e.fileContext!==void 0&&(!i(e.fileContext)||!r(e.fileContext,["changedFileCount","changedPathsPreview","hasTurnFileChanges"])||!w(e.fileContext,"changedFileCount")||e.fileContext.changedPathsPreview!==void 0&&(!Array.isArray(e.fileContext.changedPathsPreview)||!e.fileContext.changedPathsPreview.every(s))||e.fileContext.hasTurnFileChanges!==void 0&&typeof e.fileContext.hasTurnFileChanges!="boolean")||e.delegationSummary!==void 0&&!et(e.delegationSummary))}function nt(e,t){return i(t)?e==="commitTurnTelemetry"?r(t,["projectId","sessionId","turnId","telemetry"])&&s(t.projectId)&&s(t.sessionId)&&s(t.turnId)&&tt(t.telemetry):e==="listDistillableFeedback"||e==="runUploadSweep"?r(t,["projectId"])&&s(t.projectId):r(t,["projectId","turnId","clusterKey","idempotencyKey"])&&s(t.projectId)&&s(t.turnId)&&s(t.clusterKey)&&s(t.idempotencyKey):!1}function rt(e,t){if(!i(t))return!1;if(e==="getSnapshot")return Object.keys(t).length===0;if(e==="switch")return r(t,["projectIdOrQuery"])&&s(t.projectIdOrQuery);if(e==="create"){let n=t.workspaceDir!==void 0||typeof t.name=="string"&&t.name!=="."&&t.name!==".."&&!/[\\/]/.test(t.name);return r(t,["name","workspaceDir","type","groupId"])&&s(t.name)&&n&&g(t,"workspaceDir")&&g(t,"groupId")&&(t.type===void 0||["personal","group","solo","product","automation"].includes(String(t.type)))}return!r(t,["projectId","planStatus","planAgents","planWinnerId","leaderSessionId","primaryWorkflowId"])||!s(t.projectId)||t.planStatus!==void 0&&!["creating","running","completed","failed","cancelled"].includes(String(t.planStatus))||t.planAgents!==void 0&&(!Array.isArray(t.planAgents)||!t.planAgents.every(s))?!1:["planWinnerId","leaderSessionId","primaryWorkflowId"].every(n=>g(t,n))}function st(e){if(!i(e)||!r(e,["schemaVersion","at","sequence","threadId","turnId","item"])||e.schemaVersion!==Se||!s(e.at)||!w(e,"sequence")||!s(e.threadId)||!s(e.turnId)||!i(e.item))return!1;let t=e.item;return r(t,["id","type","kind","domain","role","state","text","data"])&&s(t.id)&&["message","state","plan","task","checklist","budget","input_request","summary","tool_call","tool_result","artifact","receipt"].includes(String(t.type))&&s(t.kind)&&["chat","solo","product","goal","workflow","system"].includes(String(t.domain))&&["user","assistant","system","tool"].includes(String(t.role))&&["pending","in_progress","completed","failed","blocked","cancelled"].includes(String(t.state))&&(t.text===void 0||typeof t.text=="string")&&i(t.data)}function it(e,t){return!i(t)||!s(t.sessionId)?!1:e==="open"?r(t,["runId","kind","projectId","sessionId"])&&s(t.runId)&&s(t.projectId)&&(t.kind==="solo"||t.kind==="product"||t.kind==="goal"):e==="openWithCheckpoint"?r(t,["runId","kind","projectId","snapshot","checkpointId","sessionId"])&&s(t.runId)&&s(t.projectId)&&(t.kind==="solo"||t.kind==="product"||t.kind==="goal")&&g(t,"checkpointId")&&Object.prototype.hasOwnProperty.call(t,"snapshot")&&t.snapshot!==void 0:e==="recordEvent"?r(t,["runId","event","sessionId"])&&s(t.runId)&&st(t.event):e==="checkpoint"?r(t,["runId","checkpointId","snapshot","sessionId"])&&s(t.runId)&&g(t,"checkpointId")&&Object.prototype.hasOwnProperty.call(t,"snapshot")&&t.snapshot!==void 0:e==="list"?r(t,["projectId","kind","sessionId"])&&s(t.projectId)&&(t.kind===void 0||t.kind==="solo"||t.kind==="product"||t.kind==="goal"):e==="getCheckpoint"||e==="restoreCheckpoint"?r(t,["runId","checkpointId","sessionId"])&&s(t.runId)&&s(t.checkpointId):e==="listCheckpoints"?r(t,["runId","sessionId"])&&s(t.runId):(e==="get"||e==="delete")&&r(t,["runId","sessionId"])&&s(t.runId)}function L(e){return typeof e=="string"&&/^[a-z0-9][a-z0-9._-]*\.md$/i.test(e)&&e!=="INDEX.md"&&!e.includes("..")&&!e.includes("/")&&!e.includes("\\")}function ot(e,t){return!i(t)||typeof t.sessionId!="string"||t.sessionId.trim().length===0?!1:e==="initialize"||e==="getIndex"||e==="listFiles"?r(t,["sessionId"]):e==="addToIndex"?r(t,["sessionId","content"])&&typeof t.content=="string"&&t.content.length>0:e==="replaceInIndex"?r(t,["sessionId","oldText","newText"])&&typeof t.oldText=="string"&&t.oldText.length>0&&typeof t.newText=="string"&&t.newText.length>0:e==="removeFromIndex"?r(t,["sessionId","oldText"])&&typeof t.oldText=="string"&&t.oldText.length>0:e==="createFile"||e==="writeFile"?r(t,["sessionId","name","content"])&&L(t.name)&&typeof t.content=="string":e==="readFile"||e==="deleteFile"?r(t,["sessionId","name"])&&L(t.name):e==="searchLocal"&&r(t,["sessionId","query"])&&typeof t.query=="string"&&t.query.length>0}function Yt(e){if(!i(e)||!r(e,["service","method","params","sessionId"])||typeof e.service!="string"||!H.has(e.service)||typeof e.method!="string"||e.method.length===0)return!1;if(e.service==="memory")return _e.has(e.method)&&Array.isArray(e.params)&&(e.sessionId===void 0||s(e.sessionId));if(e.sessionId!==void 0)return!1;if(e.service==="projectMemory")return Ee.has(e.method)&&ot(e.method,e.params);if(e.service==="profile"){if(!Oe.has(e.method)||!Array.isArray(e.params))return!1;switch(e.method){case"getTunables":return e.params.length===0;case"updateTunable":return e.params.length===2&&typeof e.params[0]=="string"&&e.params[0].trim().length>0&&e.params[1]!==void 0;case"clearTunable":case"appendDirectoryAllowRule":return e.params.length===1&&typeof e.params[0]=="string"&&e.params[0].trim().length>0}}return e.service==="capability"?De.has(e.method)&&ze(e.method,e.params):e.service==="session"?je.has(e.method)&&Je(e.method,e.params):e.service==="feedback"?Ne.has(e.method)&&nt(e.method,e.params):e.service==="project"?Fe.has(e.method)&&rt(e.method,e.params):e.service==="runState"?Le.has(e.method)&&it(e.method,e.params):e.service==="provider"?!qe.has(e.method)||!Array.isArray(e.params)?!1:e.method==="list"?e.params.length===0:e.params.length===1&&s(e.params[0]):e.service==="community"?!Ue.has(e.method)||!i(e.params)?!1:e.method==="resolveInstall"?r(e.params,["resourceId","version"])&&s(e.params.resourceId)&&g(e.params,"version"):e.method==="listResourceVersions"?r(e.params,["resourceId"])&&s(e.params.resourceId):r(e.params,["id","platform"])&&s(e.params.id)&&s(e.params.platform):e.service==="cloudAuth"?Be.has(e.method)&&e.method==="probeSession"&&i(e.params)&&Object.keys(e.params).length===0:ve.has(e.method)?Ze(e.method,e.params):!1}function Vt(e){return i(e)&&r(e,["ok"])&&e.ok===!0}function Kt(e){return!i(e)||!r(e,["events"])||!Array.isArray(e.events)?!1:e.events.every(t=>i(t)&&r(t,["feedbackId","rating","reason","state","sessionId","turnId"])&&s(t.feedbackId)&&(t.rating==="up"||t.rating==="down")&&(t.reason===void 0||["missed_requirement","incomplete","broken_file_link_or_panel","code_or_test_failed","factually_wrong","too_verbose","too_short","wrong_style","other"].includes(String(t.reason)))&&t.state==="active"&&s(t.sessionId)&&s(t.turnId))}function Gt(e){return i(e)&&r(e,["ok","updated"])&&e.ok===!0&&typeof e.updated=="boolean"}function zt(e){return i(e)&&r(e,["uploaded","queued","retried","exhausted"])&&["uploaded","queued","retried","exhausted"].every(t=>a(e[t]))}function G(e){return!i(e)||!r(e,["id","name","workspaceDir","type","status","groupId","createdAt","updatedAt","planStatus","planAgents","planWinnerId","leaderSessionId","primaryWorkflowId"])||!s(e.id)||!s(e.name)||!s(e.workspaceDir)||!["default","personal","group","solo","product","automation"].includes(String(e.type))||e.status!=="active"&&e.status!=="archived"||!s(e.createdAt)||!s(e.updatedAt)||!["groupId","planWinnerId","leaderSessionId","primaryWorkflowId"].every(t=>g(e,t))||e.planStatus!==void 0&&!["creating","running","completed","failed","cancelled"].includes(String(e.planStatus))?!1:e.planAgents===void 0||Array.isArray(e.planAgents)&&e.planAgents.every(s)}function $t(e){return i(e)&&r(e,["activeProjectId","projects"])&&(e.activeProjectId===null||s(e.activeProjectId))&&Array.isArray(e.projects)&&e.projects.every(G)}function Xt(e){return i(e)&&r(e,["ok","project","deduplicated"])&&e.ok===!0&&G(e.project)&&(e.deduplicated===void 0||typeof e.deduplicated=="boolean")}function Wt(e,t){return!i(e)||e.version!==1||!Array.isArray(e.services)||typeof t!="string"||!H.has(t)||!e.services.every(n=>typeof n=="string"&&H.has(n))?!1:e.services.includes(t)}export{xt as DELEGATE_WIRE_METHODS,be as HOST_CAPABILITY_PROXY_METHODS,Ae as HOST_CLOUD_AUTH_PROXY_METHODS,Te as HOST_COMMUNITY_PROXY_METHODS,Re as HOST_FEEDBACK_PROXY_METHODS,he as HOST_MEMORY_PROXY_METHODS,Me as HOST_PROFILE_PROXY_METHODS,ke as HOST_PROJECT_MEMORY_PROXY_METHODS,xe as HOST_PROJECT_PROXY_METHODS,He as HOST_PROVIDER_PROXY_METHODS,Ct as HOST_REQUEST_WIRE_METHODS,Ce as HOST_RUN_STATE_PROXY_METHODS,Pe as HOST_SESSION_PROXY_METHODS,Tt as HOST_SKILL_FILE_MAX_BYTES,j as HUB_SKILL_CATEGORIES,fe as HUB_SKILL_CATEGORY_LABELS,Pt as LIFECYCLE_CODES,oe as LONG_TERM_MEMORY_CATEGORIES,de as MEMORY_CLAIM_RELATIONS,Rt as MEMORY_RESIDENT_TAG_GROUPS,Zt as MODEL_PURPOSES,we as PREVIEW_BROWSER_ACTIONS,At as PREVIEW_BROWSER_MUTATION_ACTIONS,Ht as PREVIEW_BROWSER_READ_ACTIONS,Se as THREAD_ITEM_PROTOCOL_VERSION,pt as buildProviderValidationProbes,ge as deriveProjectId,Xe as isHostAgentProviderDiagnostic,Lt as isHostAgentProviderGetResult,Ft as isHostAgentProviderListResult,Y as isHostAgentProviderSnapshot,Dt as isHostApplyCuratorPlanResult,Kt as isHostDistillableFeedbackResult,Vt as isHostFeedbackCommitResult,Gt as isHostFeedbackMarkResult,zt as isHostFeedbackSweepResult,Nt as isHostFinalizeSkillInstallResult,jt as isHostPrepareSkillInstallResult,Xt as isHostProjectMutationResult,$t as isHostProjectSnapshotResult,Yt as isHostRequestParams,Ut as isHostSessionAppendResult,Q as isHostSessionCollectionDelta,W as isHostSessionCollectionSnapshot,vt as isHostSessionGroupSplitResult,qt as isHostSessionLoadForResumeResult,Bt as isHostSessionMutationResult,_t as isHostSkillFileResponse,Et as isHostSkillInvocationResult,Ot as isHostSkillMutationResult,Mt as isHostSkillSnapshotResponse,Ie as isHubSkillCategory,X as isNativeTranscript,wt as isPreviewTargetKey,ct as isProviderProbeEndpointUnavailable,dt as listSettingsProviderOptions,bt as memberEquals,kt as memberKey,gt as normalizeLongTermMemoryCategory,ut as normalizeMemoryClaimRelation,T as providerCatalogBaseUrl,O as providerCatalogDisplayName,D as segmentForFts,me as segmentTextForFts,Wt as supportsHostRequestService};
|