@cicctencent/agent-core 1.0.17 → 1.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/cjs/agent/compaction.d.ts +26 -0
  2. package/dist/cjs/agent/compaction.d.ts.map +1 -0
  3. package/dist/cjs/agent/compaction.js +95 -0
  4. package/dist/cjs/agent/compaction.js.map +1 -0
  5. package/dist/cjs/agent/engine.d.ts +8 -9
  6. package/dist/cjs/agent/engine.d.ts.map +1 -1
  7. package/dist/cjs/agent/engine.js +37 -75
  8. package/dist/cjs/agent/engine.js.map +1 -1
  9. package/dist/cjs/agent/history-manager.d.ts.map +1 -1
  10. package/dist/cjs/agent/history-manager.js +1 -4
  11. package/dist/cjs/agent/history-manager.js.map +1 -1
  12. package/dist/cjs/agent/types.d.ts +2 -0
  13. package/dist/cjs/agent/types.d.ts.map +1 -1
  14. package/dist/cjs/agent/types.js.map +1 -1
  15. package/dist/cjs/index.d.ts +3 -1
  16. package/dist/cjs/index.d.ts.map +1 -1
  17. package/dist/cjs/index.js +9 -4
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/skill/frontmatter.d.ts +18 -0
  20. package/dist/cjs/skill/frontmatter.d.ts.map +1 -0
  21. package/dist/cjs/skill/frontmatter.js +332 -0
  22. package/dist/cjs/skill/frontmatter.js.map +1 -0
  23. package/dist/cjs/skill/manager.d.ts +33 -6
  24. package/dist/cjs/skill/manager.d.ts.map +1 -1
  25. package/dist/cjs/skill/manager.js +234 -81
  26. package/dist/cjs/skill/manager.js.map +1 -1
  27. package/dist/cjs/skill/types.d.ts +26 -0
  28. package/dist/cjs/skill/types.d.ts.map +1 -1
  29. package/dist/cjs/store/file-tool-result-store.d.ts +5 -0
  30. package/dist/cjs/store/file-tool-result-store.d.ts.map +1 -1
  31. package/dist/cjs/store/file-tool-result-store.js +14 -0
  32. package/dist/cjs/store/file-tool-result-store.js.map +1 -1
  33. package/dist/cjs/utils/token-counter.d.ts.map +1 -1
  34. package/dist/cjs/utils/token-counter.js +20 -16
  35. package/dist/cjs/utils/token-counter.js.map +1 -1
  36. package/dist/esm/agent/compaction.d.ts +26 -0
  37. package/dist/esm/agent/compaction.d.ts.map +1 -0
  38. package/dist/esm/agent/compaction.js +91 -0
  39. package/dist/esm/agent/compaction.js.map +1 -0
  40. package/dist/esm/agent/engine.d.ts +8 -9
  41. package/dist/esm/agent/engine.d.ts.map +1 -1
  42. package/dist/esm/agent/engine.js +36 -74
  43. package/dist/esm/agent/engine.js.map +1 -1
  44. package/dist/esm/agent/history-manager.d.ts.map +1 -1
  45. package/dist/esm/agent/history-manager.js +1 -4
  46. package/dist/esm/agent/history-manager.js.map +1 -1
  47. package/dist/esm/agent/types.d.ts +2 -0
  48. package/dist/esm/agent/types.d.ts.map +1 -1
  49. package/dist/esm/agent/types.js.map +1 -1
  50. package/dist/esm/index.d.ts +3 -1
  51. package/dist/esm/index.d.ts.map +1 -1
  52. package/dist/esm/index.js +1 -0
  53. package/dist/esm/index.js.map +1 -1
  54. package/dist/esm/skill/frontmatter.d.ts +18 -0
  55. package/dist/esm/skill/frontmatter.d.ts.map +1 -0
  56. package/dist/esm/skill/frontmatter.js +326 -0
  57. package/dist/esm/skill/frontmatter.js.map +1 -0
  58. package/dist/esm/skill/manager.d.ts +33 -6
  59. package/dist/esm/skill/manager.d.ts.map +1 -1
  60. package/dist/esm/skill/manager.js +234 -81
  61. package/dist/esm/skill/manager.js.map +1 -1
  62. package/dist/esm/skill/types.d.ts +26 -0
  63. package/dist/esm/skill/types.d.ts.map +1 -1
  64. package/dist/esm/store/file-tool-result-store.d.ts +5 -0
  65. package/dist/esm/store/file-tool-result-store.d.ts.map +1 -1
  66. package/dist/esm/store/file-tool-result-store.js +14 -0
  67. package/dist/esm/store/file-tool-result-store.js.map +1 -1
  68. package/dist/esm/utils/token-counter.d.ts.map +1 -1
  69. package/dist/esm/utils/token-counter.js +20 -16
  70. package/dist/esm/utils/token-counter.js.map +1 -1
  71. package/package.json +7 -4
@@ -0,0 +1,326 @@
1
+ // ============================================================
2
+ // 轻量 YAML Frontmatter 解析器
3
+ // ============================================================
4
+ // 支持 Agent Skills 规范(agentskills.io)所需的 YAML 子集:
5
+ // - 单行标量: `key: value`
6
+ // - 带引号字符串: `key: "value"` / `key: 'value'`
7
+ // - 多行折叠: `key: >-` / `key: >`(换行折叠为空格)
8
+ // - 多行保留: `key: |-` / `key: |`(保留换行)
9
+ // - 嵌套 map(一层): `metadata:` 后跟缩进的 `sub: value`
10
+ // - 行内数组: `key: [a, b, c]`
11
+ // - 块状数组: `key:` 后跟 `- item` 行
12
+ // - 数字/布尔/null 自动转型(version: 1.1.0 这类保留为字符串)
13
+ //
14
+ // 设计目标:零依赖、行为可预期、对非法输入降级为字符串而非抛错。
15
+ // ============================================================
16
+ /** 统计行首空格数(tab 按 2 空格计) */
17
+ function countIndent(line) {
18
+ let n = 0;
19
+ for (const ch of line) {
20
+ if (ch === ' ')
21
+ n += 1;
22
+ else if (ch === '\t')
23
+ n += 2;
24
+ else
25
+ break;
26
+ }
27
+ return n;
28
+ }
29
+ /** 去除行内注释(仅在值非引号包裹且 # 前有空格时) */
30
+ function stripInlineComment(value) {
31
+ const trimmed = value.trim();
32
+ if (trimmed.startsWith('"') || trimmed.startsWith("'"))
33
+ return value;
34
+ const idx = value.indexOf(' #');
35
+ return idx > 0 ? value.substring(0, idx) : value;
36
+ }
37
+ /** 解析标量:引号字符串 / 数字 / 布尔 / null / 行内数组 / 普通字符串 */
38
+ function parseScalar(raw) {
39
+ const v = stripInlineComment(raw).trim();
40
+ if (v === '')
41
+ return '';
42
+ // 行内数组 [a, b, c]
43
+ if (v.startsWith('[') && v.endsWith(']')) {
44
+ return parseInlineArray(v);
45
+ }
46
+ // 双引号
47
+ if (v.startsWith('"') && v.endsWith('"') && v.length >= 2) {
48
+ return v.slice(1, -1).replace(/\\"/g, '"').replace(/\\n/g, '\n');
49
+ }
50
+ // 单引号
51
+ if (v.startsWith("'") && v.endsWith("'") && v.length >= 2) {
52
+ return v.slice(1, -1).replace(/''/g, "'");
53
+ }
54
+ // null / 空
55
+ if (v === 'null' || v === '~')
56
+ return null;
57
+ // 布尔
58
+ if (v === 'true')
59
+ return true;
60
+ if (v === 'false')
61
+ return false;
62
+ // 数字(严格整数或小数;version: 1.1.0 不匹配,保留字符串)
63
+ if (/^-?\d+$/.test(v))
64
+ return parseInt(v, 10);
65
+ if (/^-?\d+\.\d+$/.test(v))
66
+ return parseFloat(v);
67
+ // 普通字符串
68
+ return v;
69
+ }
70
+ /** 解析行内数组 `[a, b, "c,d"]`,支持引号内逗号 */
71
+ function parseInlineArray(v) {
72
+ const inner = v.slice(1, -1).trim();
73
+ if (!inner)
74
+ return [];
75
+ const items = [];
76
+ let cur = '';
77
+ let inQuote = null;
78
+ for (let i = 0; i < inner.length; i++) {
79
+ const ch = inner[i];
80
+ if (inQuote) {
81
+ if (ch === inQuote && inner[i - 1] !== '\\')
82
+ inQuote = null;
83
+ else
84
+ cur += ch;
85
+ }
86
+ else if (ch === '"' || ch === "'") {
87
+ inQuote = ch;
88
+ }
89
+ else if (ch === ',') {
90
+ if (cur.trim())
91
+ items.push(cur.trim());
92
+ cur = '';
93
+ }
94
+ else {
95
+ cur += ch;
96
+ }
97
+ }
98
+ if (cur.trim())
99
+ items.push(cur.trim());
100
+ return items;
101
+ }
102
+ /**
103
+ * 读取多行标量(`>` 折叠 / `|` 保留),从 startIdx 开始读取所有缩进续行。
104
+ * 返回解析后的字符串与下一待处理行索引。
105
+ */
106
+ function readMultiline(lines, startIdx, folded, keepTrailingNewline) {
107
+ const collected = [];
108
+ let i = startIdx;
109
+ let baseIndent = -1;
110
+ while (i < lines.length) {
111
+ const line = lines[i];
112
+ const indent = countIndent(line);
113
+ // 遇到非空且顶格的行 → 多行块结束
114
+ if (line.trim() !== '' && indent === 0)
115
+ break;
116
+ if (line.trim() !== '') {
117
+ if (baseIndent === -1)
118
+ baseIndent = indent;
119
+ collected.push(line.substring(Math.min(baseIndent, line.length)));
120
+ }
121
+ else {
122
+ collected.push('');
123
+ }
124
+ i++;
125
+ }
126
+ // 去除尾部空行
127
+ while (collected.length > 0 && collected[collected.length - 1] === '') {
128
+ collected.pop();
129
+ }
130
+ let value;
131
+ if (folded) {
132
+ // 折叠:单换行变空格,空行变换行
133
+ const out = [];
134
+ for (let k = 0; k < collected.length; k++) {
135
+ const cur = collected[k];
136
+ if (cur === '') {
137
+ out.push('\n');
138
+ }
139
+ else {
140
+ out.push(cur);
141
+ const nextLine = collected[k + 1];
142
+ if (nextLine !== undefined && nextLine !== '')
143
+ out.push(' ');
144
+ }
145
+ }
146
+ value = out.join('');
147
+ }
148
+ else {
149
+ value = collected.join('\n');
150
+ }
151
+ if (keepTrailingNewline)
152
+ value += '\n';
153
+ return { value, next: i };
154
+ }
155
+ /**
156
+ * 读取嵌套结构(缩进的 map 或块状数组),从 startIdx 开始。
157
+ * 返回嵌套对象/数组与下一待处理行索引。
158
+ */
159
+ function readNested(lines, startIdx) {
160
+ // 探测:找到第一个非空缩进行,判断是 map(含冒号)还是数组(- 开头)
161
+ let i = startIdx;
162
+ let baseIndent = -1;
163
+ const blockLines = [];
164
+ while (i < lines.length) {
165
+ const line = lines[i];
166
+ const indent = countIndent(line);
167
+ if (line.trim() !== '' && indent === 0)
168
+ break;
169
+ if (line.trim() !== '') {
170
+ if (baseIndent === -1)
171
+ baseIndent = indent;
172
+ blockLines.push(line.substring(Math.min(baseIndent, line.length)));
173
+ }
174
+ else {
175
+ blockLines.push('');
176
+ }
177
+ i++;
178
+ }
179
+ const firstMeaningful = blockLines.find(l => l.trim() !== '');
180
+ if (firstMeaningful === undefined) {
181
+ return { value: null, next: i };
182
+ }
183
+ // 块状数组(- item)
184
+ if (firstMeaningful.trim().startsWith('- ')) {
185
+ const arr = blockLines
186
+ .map(l => l.trim())
187
+ .filter(l => l.startsWith('- '))
188
+ .map(l => parseScalar(l.substring(2)))
189
+ .map(v => (typeof v === 'string' ? v : String(v)));
190
+ return { value: arr, next: i };
191
+ }
192
+ // 嵌套 map
193
+ if (firstMeaningful.includes(':')) {
194
+ const obj = {};
195
+ let j = 0;
196
+ while (j < blockLines.length) {
197
+ const l = blockLines[j];
198
+ if (l.trim() === '') {
199
+ j++;
200
+ continue;
201
+ }
202
+ const m = l.match(/^([A-Za-z0-9_-]+)\s*:\s*(.*)$/);
203
+ if (!m) {
204
+ j++;
205
+ continue;
206
+ }
207
+ const subKey = m[1];
208
+ const subRest = m[2];
209
+ if (subRest === '>' || subRest === '>-' || subRest === '|' || subRest === '|-') {
210
+ const folded = subRest.startsWith('>');
211
+ const { value, next } = readMultiline(blockLines, j + 1, folded, subRest === '|');
212
+ obj[subKey] = value;
213
+ j = next;
214
+ continue;
215
+ }
216
+ if (subRest === '') {
217
+ const { value, next } = readNested(blockLines, j + 1);
218
+ obj[subKey] = value;
219
+ j = next;
220
+ continue;
221
+ }
222
+ obj[subKey] = parseScalar(subRest);
223
+ j++;
224
+ }
225
+ return { value: obj, next: i };
226
+ }
227
+ // 无法识别 → 返回 null
228
+ return { value: null, next: i };
229
+ }
230
+ /** 解析 YAML 块为键值对象 */
231
+ function parseYamlBlock(block) {
232
+ const lines = block.split('\n');
233
+ const root = {};
234
+ let i = 0;
235
+ while (i < lines.length) {
236
+ const line = lines[i];
237
+ if (line.trim() === '' || line.trim().startsWith('#')) {
238
+ i++;
239
+ continue;
240
+ }
241
+ const indent = countIndent(line);
242
+ if (indent !== 0) {
243
+ i++;
244
+ continue;
245
+ }
246
+ const m = line.match(/^([A-Za-z0-9_-]+)\s*:\s*(.*)$/);
247
+ if (!m) {
248
+ i++;
249
+ continue;
250
+ }
251
+ const key = m[1];
252
+ const rest = m[2].trimEnd();
253
+ if (rest === '>' || rest === '>-' || rest === '|' || rest === '|-') {
254
+ const folded = rest.startsWith('>');
255
+ const { value, next } = readMultiline(lines, i + 1, folded, rest === '|');
256
+ root[key] = value;
257
+ i = next;
258
+ continue;
259
+ }
260
+ if (rest === '') {
261
+ const { value, next } = readNested(lines, i + 1);
262
+ root[key] = value;
263
+ i = next;
264
+ continue;
265
+ }
266
+ root[key] = parseScalar(rest);
267
+ i++;
268
+ }
269
+ return root;
270
+ }
271
+ /**
272
+ * 解析含 frontmatter 的 Markdown 文本。
273
+ * 无 frontmatter 时返回 `{ data: {}, body: raw }`。
274
+ */
275
+ export function parseFrontmatter(raw) {
276
+ const normalized = (raw || '').replace(/\r\n/g, '\n');
277
+ const match = normalized.match(/^---\s*\n([\s\S]*?)\n---\s*\n?([\s\S]*)$/);
278
+ if (!match) {
279
+ return { data: {}, body: raw };
280
+ }
281
+ return { data: parseYamlBlock(match[1]), body: match[2] };
282
+ }
283
+ // ---- 字段读取辅助(统一处理命名变体与类型) ----
284
+ /** 读取字符串字段(兼容下划线/驼峰命名),缺失返回 '' */
285
+ export function fmString(data, ...keys) {
286
+ for (const k of keys) {
287
+ const v = data[k];
288
+ if (v === undefined || v === null)
289
+ continue;
290
+ return typeof v === 'string' ? v : String(v);
291
+ }
292
+ return '';
293
+ }
294
+ /** 读取字符串数组字段(兼容数组/逗号分隔/行内数组),缺失返回 [] */
295
+ export function fmStringArray(data, ...keys) {
296
+ for (const k of keys) {
297
+ const v = data[k];
298
+ if (v === undefined || v === null)
299
+ continue;
300
+ if (Array.isArray(v))
301
+ return v.map(String).filter(Boolean);
302
+ if (typeof v === 'string') {
303
+ const s = v.trim();
304
+ if (!s)
305
+ return [];
306
+ if (s.startsWith('[')) {
307
+ try {
308
+ return parseInlineArray(s);
309
+ }
310
+ catch { /* fallthrough */ }
311
+ }
312
+ return s.split(',').map(t => t.trim()).filter(Boolean);
313
+ }
314
+ return [String(v)];
315
+ }
316
+ return [];
317
+ }
318
+ /** 读取嵌套 map 字段(metadata),缺失返回 undefined */
319
+ export function fmMap(data, key) {
320
+ const v = data[key];
321
+ if (v && typeof v === 'object' && !Array.isArray(v)) {
322
+ return v;
323
+ }
324
+ return undefined;
325
+ }
326
+ //# sourceMappingURL=frontmatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../src/skill/frontmatter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Skill, SkillManifest, SkillSource } from './types.js';
1
+ import type { Skill, SkillManifest, SkillSource, SkillResources } from './types.js';
2
2
  /** 懒加载配置 */
3
3
  interface LazyLoadConfig {
4
4
  /** content LRU 缓存容量(默认 30) */
@@ -37,6 +37,13 @@ export declare class SkillManager {
37
37
  * - lazy=false(默认):全量读取,保持向后兼容
38
38
  */
39
39
  loadFromDir(dir: string, source: SkillSource, connectorId?: string): void;
40
+ /** 扫描目录包的资源清单(scripts/ references/ assets/),返回相对路径(POSIX 风格) */
41
+ static scanPackageResources(packageDir: string): SkillResources;
42
+ /**
43
+ * 加载单个标准目录包(含 SKILL.md 的目录)。
44
+ * 自动扫描资源目录并注册资源清单。
45
+ */
46
+ loadPackageDir(packageDir: string, source: SkillSource, connectorId?: string): void;
40
47
  /** 手动注册 Skill(全量,含 content) */
41
48
  register(skill: Skill): void;
42
49
  /**
@@ -81,6 +88,24 @@ export declare class SkillManager {
81
88
  cachedContentCount: number;
82
89
  lazyMode: boolean;
83
90
  };
91
+ /**
92
+ * 注册 Skill 包的资源清单与根目录(标准目录包形态)。
93
+ * 供管理端注入运行时 Skill 时调用,或 loadFromDir 扫描目录包时自动调用。
94
+ */
95
+ registerPackageResources(skillId: string, resources: SkillResources, packageDir: string): void;
96
+ /** 列出 Skill 的资源清单(无则返回 null) */
97
+ listResources(skillIdOrName: string): SkillResources | null;
98
+ /**
99
+ * 按需加载 Skill 资源文件文本内容(references/ assets/ 等)。
100
+ * 仅允许读取 packageDir 内的文件,含路径穿越防护。
101
+ */
102
+ loadResource(skillIdOrName: string, resourcePath: string): string | null;
103
+ /** 获取资源文件绝对路径(供执行/二进制读取),含路径穿越防护 */
104
+ resolveResourcePathByName(skillIdOrName: string, resourcePath: string): string | null;
105
+ /** 解析脚本绝对路径(scripts/ 下),供脚本执行工具调用 */
106
+ resolveScriptPath(skillIdOrName: string, scriptRel: string): string | null;
107
+ /** 内部:解析并校验资源路径,确保位于 packageDir 内(防路径穿越) */
108
+ private resolveResourcePath;
84
109
  /** 重新加载(文件变更后刷新) */
85
110
  reload(): void;
86
111
  /**
@@ -97,15 +122,17 @@ export declare class SkillManager {
97
122
  private toManifest;
98
123
  /**
99
124
  * 仅解析 front matter(不读 content),用于懒加载模式
100
- * 通过读取文件前 N 字节提取 YAML front matter,避免加载整个文件
125
+ * 通过读取文件前 32KB 提取 YAML front matter,避免加载整个文件。
126
+ * 使用标准解析器,兼容嵌套 map / 多行折叠语法。
101
127
  */
102
128
  private parseManifest;
129
+ /**
130
+ * 由解析后的 frontmatter data 构建 SkillManifest(公共逻辑,parse/parseManifest 复用)。
131
+ * content 字段由调用方按需补充(parse 全量 / parseManifest 仅清单)。
132
+ */
133
+ private buildManifest;
103
134
  /** 解析完整的 Markdown 文件(含 content),用于兼容模式 */
104
135
  private parse;
105
- /** 解析 referenced_skills 字段 */
106
- private parseReferencedSkills;
107
- private extractField;
108
- private parseTags;
109
136
  }
110
137
  export {};
111
138
  //# sourceMappingURL=manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/skill/manager.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAiDpE,YAAY;AACZ,UAAU,cAAc;IACtB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,qBAAa,YAAY;IACvB,wCAAwC;IACxC,OAAO,CAAC,SAAS,CAAoC;IACrD;;;OAGG;IACH,OAAO,CAAC,SAAS,CAA6B;IAC9C,+BAA+B;IAC/B,OAAO,CAAC,YAAY,CAAmB;IACvC,cAAc;IACd,OAAO,CAAC,IAAI,CAAU;IACtB,wBAAwB;IACxB,OAAO,CAAC,UAAU,CAAyE;gBAE/E,MAAM,CAAC,EAAE,cAAc;IAKnC;;;OAGG;IACH,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAItE;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAMnE;;;;;OAKG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IAqDzE,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAQ5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IASrB,eAAe;IACf,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAY5B;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAmBlC;;OAEG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIlD;;;OAGG;IACH,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,oBAAoB;IAS5B;;;OAGG;IACH,eAAe,IAAI,aAAa,EAAE;IAIlC,qCAAqC;IACrC,MAAM,IAAI,KAAK,EAAE;IAIjB,YAAY;IACZ,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,EAAE;IAM9B,sBAAsB;IACtB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAYlC,eAAe;IACf,aAAa,IAAI;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE;IAQzF,oBAAoB;IACpB,MAAM,IAAI,IAAI;IAad;;;OAGG;IACH,OAAO,CAAC,WAAW;IAiBnB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAY/B,iCAAiC;IACjC,OAAO,CAAC,UAAU;IASlB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyDrB,0CAA0C;IAC1C,OAAO,CAAC,KAAK;IA8Cb,8BAA8B;IAC9B,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,SAAS;CASlB"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/skill/manager.ts"],"names":[],"mappings":"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"}