@webskill/sdk 0.13.0 → 0.14.0
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/agent.d.ts +3 -3
- package/dist/agent.js +3 -3
- package/dist/browser.d.ts +225 -7
- package/dist/browser.js +659 -47
- package/dist/{catalogComponents-BgAJN0p8-CYEXSk45.js → catalogComponents-BgAJN0p8-Cr55ouOg.js} +2 -2
- package/dist/{dist-ExSQky4C.js → dist-Bfga1TmS.js} +45 -5
- package/dist/{dist-GK6dtjRv.js → dist-BnqAkSS6.js} +940 -49
- package/dist/{dist-DqcL6jKO.js → dist-CiaDIqkV.js} +2 -2
- package/dist/{dist-Bev6i6Ip.js → dist-D5YhlCdY.js} +59 -1
- package/dist/governance.d.ts +3 -3
- package/dist/governance.js +2 -2
- package/dist/{index-DkvBhJQy.d.ts → index-CWoKOFBP.d.ts} +47 -3
- package/dist/{index-iBm9tJL_.d.ts → index-DQwGvHAI.d.ts} +389 -9
- package/dist/{index-C3XdItd_.d.ts → index-sd-gVKey.d.ts} +2 -2
- package/dist/index.d.ts +4 -4
- package/dist/index.js +5 -5
- package/dist/mcp.d.ts +56 -3
- package/dist/mcp.js +36 -3
- package/dist/{memoryArtifactStore-52Zn9npI-LbCQaqyx.js → memoryArtifactStore-52Zn9npI-BxtUkrgV.js} +1 -1
- package/dist/node.d.ts +3 -3
- package/dist/node.js +6 -6
- package/dist/{openUiLibrary-BKXW7Iwx-CWWBVOkE.js → openUiLibrary-BKXW7Iwx-DjvEnMlJ.js} +2 -2
- package/dist/{skillVersionStore-D-qHk9ZE-DheTIwAB.d.ts → skillVersionStore-D-qHk9ZE-C0OFDTQY.d.ts} +1 -1
- package/dist/{testing-WPTyXQYt.js → testing-Cm8MseLF.js} +2 -2
- package/dist/testing.d.ts +1 -1
- package/dist/testing.js +2 -2
- package/dist/{types-DLctJep_-B5G4uk2u.d.ts → types-C3V6lAeO-BgeOvc1Y.d.ts} +63 -4
- package/dist/ui-react.d.ts +2 -2
- package/dist/ui-react.js +5 -5
- package/dist/ui-vue.d.ts +1 -1
- package/dist/ui-vue.js +1 -1
- package/dist/ui.d.ts +3 -3
- package/dist/ui.js +2 -2
- package/dist/{webskillLitCatalog-D_zCqeQF-C9lrvvMr.js → webskillLitCatalog-D_zCqeQF-swXsWoAe.js} +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { b as WebSkillError } from "./dist-D5YhlCdY.js";
|
|
2
2
|
import { toJSONSchema, z } from "zod";
|
|
3
3
|
|
|
4
4
|
//#region ../ui/dist/webskillCatalog-nTgkL9Xe.js
|
|
@@ -3481,7 +3481,7 @@ function fromA2uiSpecAction(event) {
|
|
|
3481
3481
|
*/
|
|
3482
3482
|
async function loadWebSkillLitCatalog() {
|
|
3483
3483
|
try {
|
|
3484
|
-
const { webskillLitCatalog } = await import("./webskillLitCatalog-D_zCqeQF-
|
|
3484
|
+
const { webskillLitCatalog } = await import("./webskillLitCatalog-D_zCqeQF-swXsWoAe.js");
|
|
3485
3485
|
return webskillLitCatalog();
|
|
3486
3486
|
} catch (cause) {
|
|
3487
3487
|
throw new WebSkillError("UI_UNAVAILABLE", "The WebSkill A2UI catalog is unavailable; install @a2ui/lit, @a2ui/web_core and lit to render catalog surfaces with A2UI", cause);
|
|
@@ -518,6 +518,64 @@ function assertRemoteUrlAllowed(rawUrl, policy = {}) {
|
|
|
518
518
|
if (!policy.allowPrivateHosts && isPrivateHost(url.hostname)) throw new WebSkillError("NETWORK_BLOCKED", `Refusing to connect to a private/loopback/link-local address: ${url.hostname}`);
|
|
519
519
|
return url;
|
|
520
520
|
}
|
|
521
|
+
/** 可作为图片分片外发的 MIME 类型 @experimental */
|
|
522
|
+
const IMAGE_MIME_TYPES = [
|
|
523
|
+
"image/png",
|
|
524
|
+
"image/jpeg",
|
|
525
|
+
"image/webp",
|
|
526
|
+
"image/gif"
|
|
527
|
+
];
|
|
528
|
+
/**
|
|
529
|
+
* 可按文本读取的扩展名。accept 白名单与判定白名单共用这一份——
|
|
530
|
+
* 0.5.x 两处不一致,`log`/`yaml`/`yml` 能通过判定却在文件选择器里选不到。
|
|
531
|
+
*/
|
|
532
|
+
const TEXT_EXTENSIONS = [
|
|
533
|
+
"txt",
|
|
534
|
+
"md",
|
|
535
|
+
"csv",
|
|
536
|
+
"json",
|
|
537
|
+
"log",
|
|
538
|
+
"yaml",
|
|
539
|
+
"yml"
|
|
540
|
+
];
|
|
541
|
+
/** 非文本非图片但仍可整体外发的类型(provider 的 file 分片) @experimental */
|
|
542
|
+
const FILE_MIME_TYPES = ["application/pdf"];
|
|
543
|
+
/**
|
|
544
|
+
* 需要**客户端先抽取成文本**才能外发的类型(FR-23.9 / 0.13.0 FR-12.5)。
|
|
545
|
+
* 不走直通的 `file`:docx / xlsx 发给 provider 会被当成二进制垃圾。
|
|
546
|
+
*/
|
|
547
|
+
const DOCX_MIME = "application/vnd.openxmlformats-officedocument.wordprocessingml.document";
|
|
548
|
+
const XLSX_MIME = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
|
|
549
|
+
/** 文本类附件进模型上下文的字符上限(0.6.0) @experimental */
|
|
550
|
+
const ATTACHMENT_TEXT_LIMIT = 32 * 1024;
|
|
551
|
+
const TEXT_EXTENSION_SET = new Set(TEXT_EXTENSIONS);
|
|
552
|
+
const IMAGE_MIME_SET = new Set(IMAGE_MIME_TYPES);
|
|
553
|
+
const FILE_MIME_SET = new Set(FILE_MIME_TYPES);
|
|
554
|
+
const EXTRACTED_MIME_SET = /* @__PURE__ */ new Set([DOCX_MIME, XLSX_MIME]);
|
|
555
|
+
const EXTRACTED_EXTENSION_SET = /* @__PURE__ */ new Set(["docx", "xlsx"]);
|
|
556
|
+
function extensionOf(fileName) {
|
|
557
|
+
return fileName.split(".").pop()?.toLowerCase() ?? "";
|
|
558
|
+
}
|
|
559
|
+
/** 分类集中一处,不散落在各 UI 分支里 @experimental */
|
|
560
|
+
function classifyAttachment(contentType, fileName) {
|
|
561
|
+
const type = contentType.toLowerCase();
|
|
562
|
+
if (IMAGE_MIME_SET.has(type)) return "image";
|
|
563
|
+
if (EXTRACTED_MIME_SET.has(type)) return "document-text";
|
|
564
|
+
if (FILE_MIME_SET.has(type)) return "file";
|
|
565
|
+
if (type.startsWith("text/") || type === "application/json") return "text";
|
|
566
|
+
if (type === "" && TEXT_EXTENSION_SET.has(extensionOf(fileName))) return "text";
|
|
567
|
+
if (type === "" && EXTRACTED_EXTENSION_SET.has(extensionOf(fileName))) return "document-text";
|
|
568
|
+
}
|
|
569
|
+
/**
|
|
570
|
+
* 文本类附件进模型上下文的最终形态。两条入口共用,差别只有出处那一段(0.14.0 D-20-6)。
|
|
571
|
+
* @experimental
|
|
572
|
+
*/
|
|
573
|
+
function formatAttachmentText(input) {
|
|
574
|
+
const clipped = input.body.length > 32768 ? `${input.body.slice(0, ATTACHMENT_TEXT_LIMIT)}\n[truncated]` : input.body;
|
|
575
|
+
const bodyOnly = input.kind === "document-text" ? ", body text only" : "";
|
|
576
|
+
const from = input.origin === "download" ? ", from this device's downloads" : "";
|
|
577
|
+
return `--- Attachment: ${input.name} (${input.contentType}${bodyOnly}${from}) ---\n${clipped}`;
|
|
578
|
+
}
|
|
521
579
|
const FRONTMATTER_RE = /^---[^\S\r\n]*\r?\n([\s\S]*?)\r?\n---[^\S\r\n]*(?:\r?\n|$)([\s\S]*)$/;
|
|
522
580
|
const invalid = (message, details) => {
|
|
523
581
|
throw new WebSkillError("SKILL_INVALID_METADATA", message, details);
|
|
@@ -1130,4 +1188,4 @@ const xmlRenderer = {
|
|
|
1130
1188
|
};
|
|
1131
1189
|
|
|
1132
1190
|
//#endregion
|
|
1133
|
-
export {
|
|
1191
|
+
export { unzipWithLimits as $, computeDigest as A, messageOf as B, assertSafePathSegment as C, checkDependencyCycles as D, buildManifest as E, formatAttachmentText as F, readSkillSignature as G, parseSkillMarkdown as H, isAtomicTempPath as I, resolveArchiveLimits as J, renderAvailableSkillsXml as K, isValidSkillName as L, detectSkillArchiveShapeFromFs as M, escapeXml as N, checkSkillRules as O, exportSkills as P, stripArchiveRoot as Q, jsonRenderer as R, assertRemoteUrlAllowed as S, buildCatalog as T, parseSkillPackManifest as U, normalizePath as V, readResponseWithLimit as W, signSkill as X, resolveInsideRoot as Y, signaturePayloadBytes as Z, SkillDiscovery as _, FILE_MIME_TYPES as a, WebSkillError as b, MANIFEST_EXCLUDED_FILES as c, SKILLS_LOCKFILE as d, validateSkills as et, SKILL_MANIFEST_FILE as f, SKILL_SIGNATURE_FILE as g, SKILL_PACK_FILE as h, DOCX_MIME as i, detectSkillArchiveShape as j, classifyAttachment as k, MemoryFS as l, SKILL_NAME_PATTERN as m, ATTACHMENT_TEXT_LIMIT as n, verifySkillSignature as nt, FsTrustedKeyStore as o, SKILL_NAME_MAX_LENGTH as p, renderCatalogJson as q, DEFAULT_ARCHIVE_LIMITS as r, xmlRenderer as rt, IMAGE_MIME_TYPES as s, ATOMIC_TMP_SUFFIX_PATTERN as t, verifyManifest as tt, SIGNATURE_SCHEMA_VERSION as u, SkillReader as v, atomicWriteText as w, XLSX_MIME as x, TEXT_EXTENSIONS as y, keyIdOf as z };
|
package/dist/governance.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { $t as
|
|
3
|
-
import { _ as SkillState, a as AuditLog, b as SkillVersionStore, c as CandidateFile, d as CandidateSkill, f as CandidateSource, g as SKILL_VERSION_PAGE_SIZE, h as CompositeApprovalPolicy, i as AuditEvent, l as CandidatePage, m as CandidateStore, n as ApprovalDecision, o as AuditQueryFilter, p as CandidateStatus, r as ApprovalPolicy, s as CANDIDATE_PAGE_SIZE, t as AlwaysHumanApprovalPolicy, u as CandidateRisk, v as SkillVersion, x as candidateToCatalogEntry, y as SkillVersionPage } from "./skillVersionStore-D-qHk9ZE-
|
|
1
|
+
import { S as UiBridge, U as FileSystemProvider, X as PageQuery, Y as Page, f as LlmMessage, ft as SkillDocument, gt as SkillManagerPort, l as LlmClient, ut as SkillCatalogEntry } from "./types-C3V6lAeO-BgeOvc1Y.js";
|
|
2
|
+
import { $t as SkillIntegrityGuard, Ft as RuntimeRun, Rn as WebSkillRuntime, X as IntegrityVerdict, en as SkillOutcomeReporter, in as SkillStateGuard } from "./index-CWoKOFBP.js";
|
|
3
|
+
import { _ as SkillState, a as AuditLog, b as SkillVersionStore, c as CandidateFile, d as CandidateSkill, f as CandidateSource, g as SKILL_VERSION_PAGE_SIZE, h as CompositeApprovalPolicy, i as AuditEvent, l as CandidatePage, m as CandidateStore, n as ApprovalDecision, o as AuditQueryFilter, p as CandidateStatus, r as ApprovalPolicy, s as CANDIDATE_PAGE_SIZE, t as AlwaysHumanApprovalPolicy, u as CandidateRisk, v as SkillVersion, x as candidateToCatalogEntry, y as SkillVersionPage } from "./skillVersionStore-D-qHk9ZE-C0OFDTQY.js";
|
|
4
4
|
//#region ../governance/dist/index.d.ts
|
|
5
5
|
//#region src/candidate/candidateNormalizer.d.ts
|
|
6
6
|
/** 剥 markdown fence 与 <think> 块、截取首尾 {};非对象 → CANDIDATE_INVALID */
|
package/dist/governance.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { a as textParts, n as partsToText } from "./memoryArtifactStore-52Zn9npI-
|
|
1
|
+
import { B as messageOf, C as assertSafePathSegment, L as isValidSkillName, b as WebSkillError, w as atomicWriteText } from "./dist-D5YhlCdY.js";
|
|
2
|
+
import { a as textParts, n as partsToText } from "./memoryArtifactStore-52Zn9npI-BxtUkrgV.js";
|
|
3
3
|
import { n as AUDIT_EVENT_TYPE_LIST, t as AUDIT_EVENT_TYPES } from "./eventTypes-FllCrX-Z-DNDeHWoG.js";
|
|
4
4
|
|
|
5
5
|
//#region ../governance/dist/index.js
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as
|
|
1
|
+
import { B as DiscoveryResult, Dt as UiSpecNode, K as JsonSchema, Mt as WebSkillErrorCode, O as UiSurfaceActionRequest, S as UiBridge, T as UiSpecEvent, U as FileSystemProvider, X as PageQuery, Y as Page, Z as RemoteUrlPolicy, _ as LlmToolSpec, _t as SkillManifest, b as RenderResultRequest, d as LlmContentPart, dt as SkillDiscovery, f as LlmMessage, ft as SkillDocument, g as LlmToolCall, h as LlmTokenUsage, i as FormField, kt as ValidationReport, l as LlmClient, lt as SkillCatalog, m as LlmStreamEvent, n as ArtifactStore, o as InteractionPolicy, p as LlmResponse, pt as SkillInstallSource, r as ChartSpec, s as InteractionRequest, t as Artifact, u as LlmCompleteInput, ut as SkillCatalogEntry, v as MemoryStore, w as UiSpecDrafts, y as RenderBlock } from "./types-C3V6lAeO-BgeOvc1Y.js";
|
|
2
2
|
//#region ../runtime/dist/index.d.ts
|
|
3
3
|
//#region src/llm/parts.d.ts
|
|
4
4
|
/** 纯文本消息内容的构造快捷方式(引擎内部绝大多数消息仍是纯文本) */
|
|
@@ -61,6 +61,25 @@ declare const DEFAULT_MAX_DOCUMENT_TEXT_BYTES = 512000;
|
|
|
61
61
|
* 结构化数据不是文档,量级差一个数量级;超出**只拒不截**——截断的 JSON 解不出来。
|
|
62
62
|
*/
|
|
63
63
|
declare const DEFAULT_MAX_DATA_SOURCE_BYTES = 1024000;
|
|
64
|
+
/**
|
|
65
|
+
* 宿主声明的一个数据源的**可公开部分**(0.14.0 分册 19)。
|
|
66
|
+
*
|
|
67
|
+
* `target` 不在这里,且不得被加进来:这条通路的终点是模型上下文,
|
|
68
|
+
* 而「地址不由脚本提供」正是 0.11.0 分册 16 §2.2 授权面的全部依据。
|
|
69
|
+
* @experimental
|
|
70
|
+
*/
|
|
71
|
+
interface DataSourceInfo {
|
|
72
|
+
id: string;
|
|
73
|
+
description: string;
|
|
74
|
+
/**
|
|
75
|
+
* 非宿主声明时的出处(0.14.0 分册 21)。缺省即宿主声明,不带标注。
|
|
76
|
+
*
|
|
77
|
+
* 有值意味着 `description` **来自页面**,模型看到的清单里必须随之出现「可能不准确」的标注,
|
|
78
|
+
* 否则一段由站点控制的文本会以宿主口吻进上下文。
|
|
79
|
+
* @experimental
|
|
80
|
+
*/
|
|
81
|
+
provenance?: 'page-declared' | 'tool-projection';
|
|
82
|
+
}
|
|
64
83
|
/**
|
|
65
84
|
* 工具结果的内容分片(0.6.0 §1.1)。
|
|
66
85
|
* `image` 分片不参与 `toolResultMaxBytes` 截断——那份预算是给文本的,
|
|
@@ -1341,6 +1360,8 @@ declare const UNSUPPORTED_DOCUMENT_MESSAGE: string;
|
|
|
1341
1360
|
* 入口拦会误伤 docx,它抽成文本后根本不需要文档能力。
|
|
1342
1361
|
*/
|
|
1343
1362
|
declare const READ_LINKED_DOCUMENT_TOOL: ToolDefinition;
|
|
1363
|
+
/** 二进制转 base64;`btoa` 只吃 latin1,必须逐字节喂而不是先 decode 成字符串 */
|
|
1364
|
+
declare function toBase64(bytes: Uint8Array): string;
|
|
1344
1365
|
//#endregion
|
|
1345
1366
|
//#region src/engine/toolStep.d.ts
|
|
1346
1367
|
/**
|
|
@@ -1412,6 +1433,17 @@ declare class FsToolStepStore implements ToolStepStore {
|
|
|
1412
1433
|
* **不影响可执行性**——要限制访问的宿主应当使用禁用(各来源自己的 enabled 通道)。
|
|
1413
1434
|
*/
|
|
1414
1435
|
type ToolDisclosure = 'always' | 'on-demand';
|
|
1436
|
+
/**
|
|
1437
|
+
* 一次工具调用的调用侧上下文(0.14.0 分册 22 FR-22.5)。
|
|
1438
|
+
*
|
|
1439
|
+
* 工具源不实现这个参数即行为不变:TypeScript 里参数更少的函数可以
|
|
1440
|
+
* 赋给参数更多的函数类型。它存在的唯一理由是「游标跨 run 一律失效」——
|
|
1441
|
+
* 宝宝在游标里编时间戳只能做到「基本失效」,做不到「一律失效」。
|
|
1442
|
+
* @experimental
|
|
1443
|
+
*/
|
|
1444
|
+
interface ToolCallContext {
|
|
1445
|
+
readonly runId: string;
|
|
1446
|
+
}
|
|
1415
1447
|
/**
|
|
1416
1448
|
* 外部工具来源(runtime 扩展点,mcp 包实现并插入)。
|
|
1417
1449
|
* LLM 可见名为已消毒名(如 endpoint__greet / mcp__search)。
|
|
@@ -1435,7 +1467,7 @@ interface ExternalToolSource {
|
|
|
1435
1467
|
*/
|
|
1436
1468
|
systemPrompt?(): Promise<string | undefined>;
|
|
1437
1469
|
canHandle(llmToolName: string): boolean;
|
|
1438
|
-
call(llmToolName: string, args: Record<string, unknown
|
|
1470
|
+
call(llmToolName: string, args: Record<string, unknown>, context?: ToolCallContext): Promise<ToolResult>;
|
|
1439
1471
|
/**
|
|
1440
1472
|
* 参数留存的信任判定(分册 30 / FR-30.3)。**不实现 ⇒ 该源全部工具按 untrusted 处理**(参数全脱敏)。
|
|
1441
1473
|
*
|
|
@@ -1581,6 +1613,13 @@ interface AgentLoopDeps {
|
|
|
1581
1613
|
* 所以这里只收一个函数,不收策略对象——否则依赖方向反了。
|
|
1582
1614
|
*/
|
|
1583
1615
|
fetchData?: (sourceId: string, params?: Record<string, unknown>) => Promise<unknown>;
|
|
1616
|
+
/**
|
|
1617
|
+
* 宿主声明的数据源清单(0.14.0 分册 19):技能声明了本宿主没有的源时,激活期据此说明缺什么。
|
|
1618
|
+
* 只含可公开字段——`target` 进不来,见 `DataSourceInfo`。
|
|
1619
|
+
*
|
|
1620
|
+
* 可传函数:宿主的源清单随用户配置变动时,惰性形式免去为一次配置改动重建引擎。
|
|
1621
|
+
*/
|
|
1622
|
+
dataSources?: readonly DataSourceInfo[] | (() => readonly DataSourceInfo[]);
|
|
1584
1623
|
/**
|
|
1585
1624
|
* 页面链接文档的读取实现(分册 22)。不注入即 `read_linked_document` 不注册——
|
|
1586
1625
|
* 模型连这个工具的存在都看不到,而不是看得到再被拒。
|
|
@@ -1767,6 +1806,11 @@ interface WebSkillRuntimeDeps {
|
|
|
1767
1806
|
* 通常由 `@webskill/agent` 的 `DataSourcePolicy.fetchData` 绑定过来。
|
|
1768
1807
|
*/
|
|
1769
1808
|
fetchData?: (sourceId: string, params?: Record<string, unknown>) => Promise<unknown>;
|
|
1809
|
+
/**
|
|
1810
|
+
* 宿主声明的数据源清单(0.14.0 分册 19);用 `DataSourcePolicy.publicSources` 取,不要自己传 `sources`。
|
|
1811
|
+
* 不注入即「宿主没说」,引擎不会断言某个源不存在。
|
|
1812
|
+
*/
|
|
1813
|
+
dataSources?: readonly DataSourceInfo[] | (() => readonly DataSourceInfo[]);
|
|
1770
1814
|
/**
|
|
1771
1815
|
* 读页面链接指向的文档(分册 22);不注入即 `read_linked_document` 不注册。
|
|
1772
1816
|
* 实现住在 `@webskill/browser`(docx 抽取要 `DOMParser`),由宿主装配。
|
|
@@ -2148,4 +2192,4 @@ interface RedactedArgs {
|
|
|
2148
2192
|
*/
|
|
2149
2193
|
declare function redactToolStepArgs(args: Record<string, unknown>, schema: JsonSchema | undefined, trust: ToolStepTrust): RedactedArgs;
|
|
2150
2194
|
//#endregion
|
|
2151
|
-
export {
|
|
2195
|
+
export { LifecycleEventInit as $, formatSkillScriptManifest as $n, SkillIntegrityGuard as $t, DataSourceInfo as A, UnsupportedRunSnapshot as An, textParts as Ar, RunTraceMetrics as At, FsRunSnapshotStore as B, XlsxTextExtractor as Bn, SUPPORTED_DOCUMENT_MIME as Bt, CapabilityApproval as C, TraceRecorder as Cn, sampleBehaviorRecords as Cr, RunSnapshot as Ct, DEFAULT_MAX_DOCUMENT_BYTES as D, USER_PROFILE_NO_INVENTION_RULE as Dn, sealToolCallPairs as Dr, RunToolCall as Dt, DEFAULT_MAX_DATA_SOURCE_BYTES as E, USER_PROFILE_KEY as En, scriptToolName as Er, RunTerminationReason as Et, ExternalSkillProvider as F, UserProfileLimits as Fn, validateUiSpecEvent as Fr, RuntimeRun as Ft, GoogleGenAiClient as G, createScriptContext as Gn, SealRecord as Gt, FsSessionStore as H, applyUserProfileImport as Hn, ScriptExecutionContext as Ht, ExternalToolSource as I, VercelToolSpec as In, validateUiSpecNode as Ir, RuntimeSession as It, HookRunnerOptions as J, exportUserProfile as Jn, SessionListPage as Jt, GoogleGenAiClientConfig as K, createWebSkillApi as Kn, SealResult as Kt, FS_SESSION_PAGE_SIZE as L, WebSkillApi as Ln, RuntimeSessionHandle as Lt, EMPTY_USER_PROFILE as M, UserProfileEntry as Mn, toLlmToolSpec as Mr, RunTraceSummary as Mt, EventBus as N, UserProfileExport as Nn, toRecordDigests as Nr, RunUsageSummary as Nt, DEFAULT_MAX_DOCUMENT_TEXT_BYTES as O, USER_PROFILE_PROMPT_HEADER as On, summarizeRunUsage as Or, RunTraceFile as Ot, ExecuteLifecycleData as P, UserProfileImportDiff as Pn, toVercelToolSpecs as Pr, RuntimePhase as Pt, LifecycleEvent as Q, findUnpairedToolCalls as Qn, SkillFailureReport as Qt, FsArtifactStore as R, WebSkillRuntime as Rn, SENSITIVE_ANNOTATION as Rt, BridgeResponse as S, TraceEventType as Sn, resolveToolName as Sr, RunResult as St, DEFAULT_LOOP_LIMITS as T, USER_PROFILE_EXPORT_VERSION as Tn, schemaToForm as Tr, RunSnapshotStore as Tt, FsToolStepStore as U, bridgeError as Un, ScriptExecutor as Ut, FsRunTraceStore as V, appendBehaviorRecords as Vn, SchemaInferer as Vt, FullDisclosureRouter as W, buildRenderResult as Wn, SealOptions as Wt, IntegrityVerdict as X, extractTodoTraceEvents as Xn, SessionRecord as Xt, InstalledSkillManifest as Y, extractChartSpec as Yn, SessionMeta as Yt, InteractLifecycleData as Z, extractUiSpecEvents as Zn, SessionStore as Zt, BehaviorRecordKind as _, ToolStepRecord as _n, readProfileEntries as _r, RedactedArgs as _t, ASK_USER_TOOL as a, SkillSuccessReport as an, listSkillScripts as ar, NetworkPolicy as at, BridgeCapability as b, TraceClock as bn, refineUserProfile as br, RouteResult as bt, AgentLoop as c, TextualToolContent as cn, networkPolicyLibSource as cr, PdfTextExtractor as ct, AnthropicClient as d, ToolContent as dn, normalizeToolContent as dr, READ_LINKED_DOCUMENT_TOOL_NAME as dt, SkillOutcomeReporter as en, fromVercelResult as er, LifecycleHook as et, AnthropicClientConfig as f, ToolDefinition as fn, normalizeToolError as fr, READ_SKILL_FILE_INPUT_SCHEMA as ft, BehaviorRecord as g, ToolStepReader as gn, readBehaviorRecords as gr, RUN_TRACE_SCHEMA_VERSION as gt, BEHAVIOR_RECORDS_KEY as h, ToolResult as hn, partsToText as hr, RUN_SNAPSHOT_SCHEMA_VERSION as ht, ASK_USER_MAX_FIELDS as i, SkillStateGuard as in, isUnsupportedRunSnapshot as ir, MAX_TOOL_STEP_ARG_BYTES as it, DocxTextExtractor as j, UserProfile as jn, toBase64 as jr, RunTraceStore as jt, DEFAULT_USER_PROFILE_LIMITS as k, USER_PROFILE_REFINE_PROMPT as kn, summarizeToolCalls as kr, RunTraceFilter as kt, AgentLoopConfig as l, TodoTraceEvent as ln, networkUrlHost as lr, ProgressiveRouter as lt, ApprovalScope as m, ToolResolution as mn, parseUserProfileExport as mr, READ_SKILL_FILE_TOOL_NAME as mt, ASK_USER_FIELD_TYPES as n, SkillScriptDescriptor as nn, interruptedToolResult as nr, LifecycleListener as nt, ASK_USER_TOOL_NAME as o, TEXT_BUDGETED_CONTENT_TYPES as on, mergeCatalogEntries as or, OpenAiCompatibleClient as ot, ApprovalDecision as p, ToolDisclosure as pn, parseBridgeRequest as pr, READ_SKILL_FILE_TOOL as pt, HookRunner as q, diffUserProfile as qn, SerializingMemoryStore as qt, ASK_USER_INPUT_SCHEMA as r, SkillScriptSchemaSource as rn, isNetworkAllowed as rr, LinkedDocumentReader as rt, ActivateLifecycleData as s, TerminalLifecycleData as sn, mergeProfileEntries as sr, OpenAiCompatibleClientConfig as st, ALLOWED_TOOLS_EXCLUSION_REASON as t, SkillRouter as tn, fromVercelStreamPart as tr, LifecycleHookContext as tt, AgentLoopDeps as u, ToolCallContext as un, normalizeErrorCode as ur, READ_LINKED_DOCUMENT_TOOL as ut, BehaviorScene as v, ToolStepStore as vn, readUserProfile as vr, RefineUserProfileInput as vt, CapabilityMode as w, UNSUPPORTED_DOCUMENT_MESSAGE as wn, schemaSourceLabel as wr, RunSnapshotListEntry as wt, BridgeRequest as x, TraceEvent as xn, renderUserProfileContext as xr, RunLimitErrorDetails as xt, BridgeCapabilities as y, ToolStepTrust as yn, redactToolStepArgs as yr, RouteLifecycleData as yt, FsMemoryStore as z, WebSkillRuntimeDeps as zn, SESSION_SCHEMA_VERSION as zt };
|