@migor/agentia 0.4.2 → 0.5.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.
@@ -13,14 +13,18 @@ export function Prompt(spec) {
13
13
  };
14
14
  }
15
15
  /**
16
- * 收集容器实例(+ 其类上的静态方法)里所有 @Prompt,产出 AgentTool[]。
16
+ * 收集容器实例(+ 其类上的静态方法)里所有 @Prompt,产出 AgentTool[] 与版本表。
17
17
  * 实例方法沿原型链(含继承);静态方法同样沿构造函数原型链(含继承的父类静态 @Prompt)。
18
+ *
19
+ * collectPrompts 是公共面(只回 AgentTool[],历史形状不动);装配侧需要版本表,
20
+ * 故内核收两份 —— module 级 export,不进公共导出面(src/index.ts)。
18
21
  */
19
- export function collectPrompts(instance) {
22
+ export function collectPromptEntries(instance) {
20
23
  const tools = [];
24
+ const versions = {};
21
25
  // null/undefined/原始值 provider(useValue 合法形态):无装饰器能力可收,空结果
22
26
  if (!isScannableInstance(instance))
23
- return tools;
27
+ return { tools, versions };
24
28
  // 传 key 而非捕获的 fn:子类「未装饰地 override」时 spec 继承自父类,
25
29
  // 但实现必须取**实例/类上**的(否则会绕开子类实现,与 @Tool 语义不一致)。
26
30
  const pushTool = (name, target, key, spec) => {
@@ -30,6 +34,9 @@ export function collectPrompts(instance) {
30
34
  inputSchema: spec.schema ?? EMPTY_SCHEMA,
31
35
  run: (input) => Reflect.apply(target[key], target, [input]),
32
36
  });
37
+ // 版本表以最终菜单名(capabilityName 校验后的 name)为键;缺省无版本不进表
38
+ if (spec.version !== undefined)
39
+ versions[spec.name ?? name] = spec.version;
33
40
  };
34
41
  // 实例方法(沿原型链)
35
42
  const found = scanDecoratedMethods(instance, promptSpecs);
@@ -59,6 +66,13 @@ export function collectPrompts(instance) {
59
66
  }
60
67
  ctor = Object.getPrototypeOf(ctor);
61
68
  }
62
- return tools;
69
+ return { tools, versions };
70
+ }
71
+ /**
72
+ * 收集容器实例(+ 其类上的静态方法)里所有 @Prompt,产出 AgentTool[]。
73
+ * 实例方法沿原型链(含继承);静态方法同样沿构造函数原型链(含继承的父类静态 @Prompt)。
74
+ */
75
+ export function collectPrompts(instance) {
76
+ return collectPromptEntries(instance).tools;
63
77
  }
64
78
  //# sourceMappingURL=prompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/toolkit/prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/toolkit/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAgCtB,MAAM,WAAW,GAAG,IAAI,OAAO,EAAwB,CAAC;AAExD,MAAM,YAAY,GAAe;IAC/B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,EAAE;IACd,oBAAoB,EAAE,KAAK;CAC5B,CAAC;AAEF,sDAAsD;AACtD,MAAM,UAAU,MAAM,CAAC,IAAgB;IACrC,OAAO,CAAC,KAAe,EAAE,OAAmC,EAAQ,EAAE;QACpE,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACvC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AASD;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,0DAA0D;IAC1D,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC/D,gDAAgD;IAChD,6CAA6C;IAC7C,MAAM,QAAQ,GAAG,CACf,IAAY,EACZ,MAAwC,EACxC,GAAoB,EACpB,IAAgB,EACV,EAAE;QACR,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,MAAM,IAAI,YAAY;YACxC,GAAG,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAa,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;SACjF,CAAC,CAAC;QACH,iDAAiD;QACjD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7E,CAAC,CAAC;IAEF,aAAa;IACb,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,QAA4C,CAAC;IAC1D,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;QAClC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IAED,6DAA6D;IAC7D,oDAAoD;IACpD,0CAA0C;IAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAkB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAa,QAAsC,CAAC,WAAW,CAAC;IAC1E,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,OAAO,OAAO,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;QACjE,MAAM,GAAG,GAAG,IAAmD,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU;gBAAE,SAAS;YACxD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAiB,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI;gBAAE,SAAS,CAAC,uCAAuC;YAC5D,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,QAAQ,CACN,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,EACpC,IAAwC,EACxC,GAAG,EACH,IAAI,CACL,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;AAC9C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@migor/agentia",
3
- "version": "0.4.2",
3
+ "version": "0.5.0",
4
4
  "description": "面向应用开发的声明式 agent 服务开发框架:装饰器 + DI 声明四类能力,主 agent 编排执行;每次 run 产出结构化结果与可观测调用树(trace、成本、指标),交付可直接上线的服务。",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",