@downcity/agent 1.1.152 → 1.1.157

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 (64) hide show
  1. package/bin/agent/local/services/AgentAssemblyService.d.ts.map +1 -1
  2. package/bin/agent/local/services/AgentAssemblyService.js +1 -0
  3. package/bin/agent/local/services/AgentAssemblyService.js.map +1 -1
  4. package/bin/executor/composer/system/default/assets/plugin.prompt.d.ts +1 -1
  5. package/bin/executor/composer/system/default/assets/plugin.prompt.d.ts.map +1 -1
  6. package/bin/executor/composer/system/default/assets/plugin.prompt.js +1 -1
  7. package/bin/executor/composer/system/default/assets/plugin.prompt.js.map +1 -1
  8. package/bin/executor/tools/plugin/PluginToolBridge.d.ts +6 -2
  9. package/bin/executor/tools/plugin/PluginToolBridge.d.ts.map +1 -1
  10. package/bin/executor/tools/plugin/PluginToolBridge.js +71 -17
  11. package/bin/executor/tools/plugin/PluginToolBridge.js.map +1 -1
  12. package/bin/executor/tools/plugin/PluginToolDefinition.d.ts +11 -0
  13. package/bin/executor/tools/plugin/PluginToolDefinition.d.ts.map +1 -1
  14. package/bin/executor/tools/plugin/PluginToolDefinition.js +12 -3
  15. package/bin/executor/tools/plugin/PluginToolDefinition.js.map +1 -1
  16. package/bin/executor/tools/plugin/PluginToolSchemas.d.ts +4 -0
  17. package/bin/executor/tools/plugin/PluginToolSchemas.d.ts.map +1 -1
  18. package/bin/executor/tools/plugin/PluginToolSchemas.js +11 -1
  19. package/bin/executor/tools/plugin/PluginToolSchemas.js.map +1 -1
  20. package/bin/executor/tools/plugin/types/PluginTool.d.ts +37 -0
  21. package/bin/executor/tools/plugin/types/PluginTool.d.ts.map +1 -1
  22. package/bin/index.d.ts +3 -1
  23. package/bin/index.d.ts.map +1 -1
  24. package/bin/index.js +1 -0
  25. package/bin/index.js.map +1 -1
  26. package/bin/plugin/core/PluginActionFactory.d.ts +99 -0
  27. package/bin/plugin/core/PluginActionFactory.d.ts.map +1 -0
  28. package/bin/plugin/core/PluginActionFactory.js +59 -0
  29. package/bin/plugin/core/PluginActionFactory.js.map +1 -0
  30. package/bin/plugin/core/PluginActionRunner.d.ts.map +1 -1
  31. package/bin/plugin/core/PluginActionRunner.js +14 -1
  32. package/bin/plugin/core/PluginActionRunner.js.map +1 -1
  33. package/bin/plugin/core/PluginLocalExecution.d.ts.map +1 -1
  34. package/bin/plugin/core/PluginLocalExecution.js +15 -1
  35. package/bin/plugin/core/PluginLocalExecution.js.map +1 -1
  36. package/bin/plugin/core/PluginRegistry.d.ts +18 -1
  37. package/bin/plugin/core/PluginRegistry.d.ts.map +1 -1
  38. package/bin/plugin/core/PluginRegistry.js +74 -1
  39. package/bin/plugin/core/PluginRegistry.js.map +1 -1
  40. package/bin/plugin/types/Plugin.d.ts +2 -2
  41. package/bin/plugin/types/Plugin.d.ts.map +1 -1
  42. package/bin/types/plugin/PluginAction.d.ts +40 -2
  43. package/bin/types/plugin/PluginAction.d.ts.map +1 -1
  44. package/bin/types/plugin/PluginRuntime.d.ts +44 -0
  45. package/bin/types/plugin/PluginRuntime.d.ts.map +1 -1
  46. package/package.json +3 -3
  47. package/scripts/image-plugin-job.test.mjs +308 -32
  48. package/scripts/plugin-tool-bridge.test.mjs +199 -0
  49. package/src/agent/local/services/AgentAssemblyService.ts +1 -0
  50. package/src/executor/composer/system/default/assets/plugin.prompt.ts +1 -1
  51. package/src/executor/composer/system/default/assets/plugin.prompt.ts.txt +3 -2
  52. package/src/executor/tools/plugin/PluginToolBridge.ts +84 -18
  53. package/src/executor/tools/plugin/PluginToolDefinition.ts +25 -4
  54. package/src/executor/tools/plugin/PluginToolSchemas.ts +12 -1
  55. package/src/executor/tools/plugin/types/PluginTool.ts +40 -0
  56. package/src/index.ts +11 -0
  57. package/src/plugin/core/PluginActionFactory.ts +185 -0
  58. package/src/plugin/core/PluginActionRunner.ts +14 -1
  59. package/src/plugin/core/PluginLocalExecution.ts +15 -1
  60. package/src/plugin/core/PluginRegistry.ts +89 -1
  61. package/src/plugin/types/Plugin.ts +5 -0
  62. package/src/types/plugin/PluginAction.ts +43 -2
  63. package/src/types/plugin/PluginRuntime.ts +44 -0
  64. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,99 @@
1
+ /**
2
+ * PluginActionFactory:创建带 metadata 和 schema 的 plugin/action。
3
+ *
4
+ * 关键点(中文)
5
+ * - `createAction` 让 action 的运行时 schema 与 TypeScript 输入类型保持一致。
6
+ * - `createPlugin` 只做轻量对象装配,不强制继承 BasePlugin。
7
+ * - 旧的 class extends BasePlugin 写法仍可继续使用。
8
+ */
9
+ import type { z } from "zod";
10
+ import type { AgentContext } from "../../types/runtime/agent/AgentContext.js";
11
+ import type { JsonValue } from "../../types/common/Json.js";
12
+ import type { PluginAction, PluginActionApi, PluginActionCommand, PluginActionExample, PluginActionInputSchema, PluginActionResult, PluginActions } from "../../types/plugin/PluginAction.js";
13
+ import type { Plugin } from "../../types/plugin/PluginDefinition.js";
14
+ import type { PluginAvailability, PluginConfigDefinition, PluginHooks, PluginResolves } from "../../types/plugin/PluginRuntime.js";
15
+ import type { PluginCommandContext, PluginLifecycle } from "../../types/plugin/PluginCommand.js";
16
+ import type { PluginSetupDefinition, PluginUsageDefinition } from "../../types/plugin/PluginSetup.js";
17
+ import type { PluginHttpDefinition } from "../../types/plugin/PluginHttp.js";
18
+ import type { StructuredConfig } from "../../types/runtime/agent/AgentContext.js";
19
+ /**
20
+ * 从 Zod schema 推导 JSON 输入类型。
21
+ */
22
+ type InferZodJson<TSchema extends z.ZodTypeAny> = z.infer<TSchema> extends JsonValue ? z.infer<TSchema> : JsonValue;
23
+ /**
24
+ * createAction 参数。
25
+ */
26
+ export interface CreatePluginActionOptions<P extends JsonValue, R extends JsonValue> {
27
+ /** Action 用途说明。 */
28
+ description?: string;
29
+ /** Zod 输入 schema。 */
30
+ input_schema?: z.ZodTypeAny | PluginActionInputSchema<P>;
31
+ /** Action 调用示例。 */
32
+ examples?: PluginActionExample<P>[];
33
+ /** disabled 状态下是否仍允许执行。 */
34
+ allowWhenDisabled?: boolean;
35
+ /** CLI 定义。 */
36
+ command?: PluginActionCommand<P>;
37
+ /** HTTP 定义。 */
38
+ api?: PluginActionApi<P>;
39
+ /** Action 执行器。 */
40
+ execute: (params: {
41
+ /** 当前执行上下文。 */
42
+ context: AgentContext;
43
+ /** 已通过 schema 校验后的输入。 */
44
+ input: P;
45
+ /** 兼容旧命名的 payload。 */
46
+ payload: P;
47
+ /** 当前插件名称。 */
48
+ pluginName: string;
49
+ /** 当前 Action 名称。 */
50
+ actionName: string;
51
+ }) => Promise<PluginActionResult<R>> | PluginActionResult<R>;
52
+ }
53
+ /**
54
+ * createPlugin 参数。
55
+ */
56
+ export interface CreatePluginOptions<TActions extends PluginActions> {
57
+ /** Plugin 稳定名称。 */
58
+ name: string;
59
+ /** Plugin 展示标题。 */
60
+ title?: string;
61
+ /** Plugin 用途说明。 */
62
+ description?: string;
63
+ /** Plugin 显式 action 集合。 */
64
+ actions?: TActions;
65
+ /** Plugin 配置定义。 */
66
+ config?: PluginConfigDefinition<StructuredConfig>;
67
+ /** Plugin setup 定义。 */
68
+ setup?: PluginSetupDefinition;
69
+ /** Plugin usage 定义。 */
70
+ usage?: PluginUsageDefinition;
71
+ /** Plugin hook 集合。 */
72
+ hooks?: PluginHooks;
73
+ /** Plugin resolve 集合。 */
74
+ resolves?: PluginResolves;
75
+ /** Plugin system 文本构建器。 */
76
+ system?: (context: AgentContext) => string | Promise<string>;
77
+ /** 旧生命周期兼容定义。 */
78
+ lifecycle?: PluginLifecycle;
79
+ /** Plugin 可用性检查。 */
80
+ availability?: (context: PluginCommandContext | AgentContext) => Promise<PluginAvailability> | PluginAvailability;
81
+ /** Plugin HTTP 注入定义。 */
82
+ http?: PluginHttpDefinition;
83
+ }
84
+ /**
85
+ * 创建带 metadata 的 action。
86
+ */
87
+ export declare function createAction<TSchema extends z.ZodTypeAny, R extends JsonValue = JsonValue>(options: CreatePluginActionOptions<InferZodJson<TSchema>, R> & {
88
+ /** Zod 输入 schema。 */
89
+ input_schema?: TSchema | PluginActionInputSchema<InferZodJson<TSchema>>;
90
+ }): PluginAction<InferZodJson<TSchema>, R>;
91
+ export declare function createAction<R extends JsonValue = JsonValue>(options: CreatePluginActionOptions<JsonValue, R>): PluginAction<JsonValue, R>;
92
+ /**
93
+ * 创建 plugin 对象。
94
+ */
95
+ export declare function createPlugin<TActions extends PluginActions>(options: CreatePluginOptions<TActions>): Plugin & {
96
+ actions: TActions;
97
+ };
98
+ export {};
99
+ //# sourceMappingURL=PluginActionFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginActionFactory.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginActionFactory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * PluginActionFactory:创建带 metadata 和 schema 的 plugin/action。
3
+ *
4
+ * 关键点(中文)
5
+ * - `createAction` 让 action 的运行时 schema 与 TypeScript 输入类型保持一致。
6
+ * - `createPlugin` 只做轻量对象装配,不强制继承 BasePlugin。
7
+ * - 旧的 class extends BasePlugin 写法仍可继续使用。
8
+ */
9
+ /**
10
+ * 归一化输入 schema。
11
+ */
12
+ function normalize_input_schema(input_schema) {
13
+ if (!input_schema)
14
+ return undefined;
15
+ if (typeof input_schema.safeParse === "function") {
16
+ return { zod: input_schema };
17
+ }
18
+ return input_schema;
19
+ }
20
+ export function createAction(options) {
21
+ return {
22
+ ...(options.description ? { description: options.description } : {}),
23
+ ...(options.input_schema
24
+ ? { input_schema: normalize_input_schema(options.input_schema) }
25
+ : {}),
26
+ ...(options.examples ? { examples: options.examples } : {}),
27
+ ...(typeof options.allowWhenDisabled === "boolean"
28
+ ? { allowWhenDisabled: options.allowWhenDisabled }
29
+ : {}),
30
+ ...(options.command ? { command: options.command } : {}),
31
+ ...(options.api ? { api: options.api } : {}),
32
+ execute: options.execute,
33
+ };
34
+ }
35
+ /**
36
+ * 创建 plugin 对象。
37
+ */
38
+ export function createPlugin(options) {
39
+ const name = String(options.name || "").trim();
40
+ if (!name) {
41
+ throw new Error("createPlugin requires a non-empty name");
42
+ }
43
+ return {
44
+ name,
45
+ title: String(options.title || name).trim(),
46
+ description: String(options.description || "").trim(),
47
+ actions: options.actions || {},
48
+ ...(options.config ? { config: options.config } : {}),
49
+ ...(options.setup ? { setup: options.setup } : {}),
50
+ ...(options.usage ? { usage: options.usage } : {}),
51
+ ...(options.hooks ? { hooks: options.hooks } : {}),
52
+ ...(options.resolves ? { resolves: options.resolves } : {}),
53
+ ...(options.system ? { system: options.system } : {}),
54
+ ...(options.lifecycle ? { lifecycle: options.lifecycle } : {}),
55
+ ...(options.availability ? { availability: options.availability } : {}),
56
+ ...(options.http ? { http: options.http } : {}),
57
+ };
58
+ }
59
+ //# sourceMappingURL=PluginActionFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginActionFactory.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginActionFactory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PluginActionRunner.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginActionRunner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EAEnB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAgBxD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,MAAM,GACjB,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,IAAI,CAI3C;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAsBzC;AA4DD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,GAAG,yBAAyB,CAAC;IACjD,OAAO,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,mBAAmB,GAAG;IAAE,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC,CA6HlE"}
1
+ {"version":3,"file":"PluginActionRunner.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginActionRunner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EAEnB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAgBxD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,MAAM,GACjB,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,IAAI,CAI3C;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE;IAC/C,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAmCzC;AA4DD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,GAAG,yBAAyB,CAAC;IACjD,OAAO,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,mBAAmB,GAAG;IAAE,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC,CA6HlE"}
@@ -28,9 +28,22 @@ export async function invokePluginAction(params) {
28
28
  };
29
29
  }
30
30
  try {
31
+ const payload = (params.payload ?? {});
32
+ const schema = action.input_schema?.zod;
33
+ const parsed_payload = schema ? schema.safeParse(payload) : null;
34
+ if (parsed_payload && !parsed_payload.success) {
35
+ return {
36
+ success: false,
37
+ error: `Invalid payload for ${params.plugin.name}.${params.actionName}: ${parsed_payload.error.message}`,
38
+ };
39
+ }
40
+ const input_payload = parsed_payload?.success
41
+ ? parsed_payload.data
42
+ : payload;
31
43
  return await action.execute({
32
44
  context: params.context,
33
- payload: (params.payload ?? {}),
45
+ payload: input_payload,
46
+ input: input_payload,
34
47
  pluginName: params.plugin.name,
35
48
  actionName: params.actionName,
36
49
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PluginActionRunner.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginActionRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginActionRunner.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginActionRunner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"PluginLocalExecution.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginLocalExecution.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EACV,MAAM,EACN,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAGlC;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CAmBzF;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,MAAM,EAAE;IACvD,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA6B9B;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAoDzC"}
1
+ {"version":3,"file":"PluginLocalExecution.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginLocalExecution.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EACV,MAAM,EACN,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAGlC;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CAmBzF;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,MAAM,EAAE;IACvD,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA6B9B;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAkEzC"}
@@ -98,9 +98,23 @@ export async function runLocalPluginAction(params) {
98
98
  };
99
99
  }
100
100
  try {
101
+ const payload = (params.payload ?? {});
102
+ const schema = action.input_schema?.zod;
103
+ const parsed_payload = schema ? schema.safeParse(payload) : null;
104
+ if (parsed_payload && !parsed_payload.success) {
105
+ return {
106
+ success: false,
107
+ error: `Invalid payload for ${plugin.name}.${actionName}: ${parsed_payload.error.message}`,
108
+ message: `Invalid payload for ${plugin.name}.${actionName}`,
109
+ };
110
+ }
111
+ const input_payload = parsed_payload?.success
112
+ ? parsed_payload.data
113
+ : payload;
101
114
  return await action.execute({
102
115
  context: context,
103
- payload: (params.payload ?? {}),
116
+ payload: input_payload,
117
+ input: input_payload,
104
118
  pluginName: plugin.name,
105
119
  actionName,
106
120
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PluginLocalExecution.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginLocalExecution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginLocalExecution.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginLocalExecution.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * - Plugin 自身不维护独立状态机;可用性由 enabled 配置与 plugin 自定义 availability 决定。
7
7
  */
8
8
  import type { HookRegistry } from "../../plugin/core/HookRegistry.js";
9
- import type { Plugin, PluginActionResult, AgentPlugins, PluginAvailability, PluginView } from "../../plugin/types/Plugin.js";
9
+ import type { Plugin, PluginActionResult, AgentPlugins, PluginAvailability, PluginReadView, PluginView } from "../../plugin/types/Plugin.js";
10
10
  import type { AgentContext } from "../../types/runtime/agent/AgentContext.js";
11
11
  import type { JsonValue } from "../../types/common/Json.js";
12
12
  type ContextResolver = () => AgentContext;
@@ -49,10 +49,27 @@ export declare class PluginRegistry implements AgentPlugins {
49
49
  * 列出全部 plugin 概览视图。
50
50
  */
51
51
  list(): PluginView[];
52
+ /**
53
+ * 读取 action metadata。
54
+ */
55
+ private readAction;
56
+ /**
57
+ * 读取 plugin / action metadata。
58
+ */
59
+ read(params: {
60
+ plugin?: string;
61
+ action?: string;
62
+ }): PluginReadView | {
63
+ plugins: PluginView[];
64
+ };
52
65
  /**
53
66
  * 检查 plugin 可用性。
54
67
  */
55
68
  availability(pluginName: string): Promise<PluginAvailability>;
69
+ /**
70
+ * 按 action schema 校验 payload。
71
+ */
72
+ private parseActionPayload;
56
73
  /**
57
74
  * 运行 plugin action。
58
75
  */
@@ -1 +1 @@
1
- {"version":3,"file":"PluginRegistry.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,KAAK,eAAe,GAAG,MAAM,YAAY,CAAC;AAE1C;;GAEG;AACH,qBAAa,cAAe,YAAW,YAAY;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAElD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;gBAEzC,MAAM,EAAE;QAClB,eAAe,EAAE,eAAe,CAAC;QACjC,YAAY,EAAE,YAAY,CAAC;KAC5B;IAKD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAuC9B;;OAEG;IACG,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAItE;;OAEG;IACG,KAAK,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE;;OAEG;IACG,MAAM,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;OAEG;IACG,OAAO,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,EACnD,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,CAAC;IAInB;;OAEG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAItC;;OAEG;IACH,IAAI,IAAI,UAAU,EAAE;IAMpB;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+BnE;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,SAAS,CAAC;KACrB,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;CAqD3C"}
1
+ {"version":3,"file":"PluginRegistry.d.ts","sourceRoot":"","sources":["../../../src/plugin/core/PluginRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EACV,MAAM,EACN,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAElB,cAAc,EACd,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,KAAK,eAAe,GAAG,MAAM,YAAY,CAAC;AAE1C;;GAEG;AACH,qBAAa,cAAe,YAAW,YAAY;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAElD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;gBAEzC,MAAM,EAAE;QAClB,eAAe,EAAE,eAAe,CAAC;QACjC,YAAY,EAAE,YAAY,CAAC;KAC5B;IAKD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAuC9B;;OAEG;IACG,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAItE;;OAEG;IACG,KAAK,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE;;OAEG;IACG,MAAM,CAAC,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;OAEG;IACG,OAAO,CAAC,MAAM,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,EACnD,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,CAAC;IAInB;;OAEG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAItC;;OAEG;IACH,IAAI,IAAI,UAAU,EAAE;IAMpB;;OAEG;IACH,OAAO,CAAC,UAAU;IAkBlB;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,cAAc,GAAG;QAAE,OAAO,EAAE,UAAU,EAAE,CAAA;KAAE;IA2B9C;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+BnE;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmB1B;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,SAAS,CAAC;KACrB,GAAG,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;CA+D3C"}
@@ -87,6 +87,52 @@ export class PluginRegistry {
87
87
  .map((plugin) => toPluginView(plugin))
88
88
  .sort((a, b) => a.name.localeCompare(b.name));
89
89
  }
90
+ /**
91
+ * 读取 action metadata。
92
+ */
93
+ readAction(actionName, action) {
94
+ return {
95
+ name: actionName,
96
+ description: String(action.description || "").trim(),
97
+ has_input_schema: Boolean(action.input_schema),
98
+ ...(action.input_schema?.json_schema
99
+ ? { input_schema: action.input_schema.json_schema }
100
+ : {}),
101
+ ...(action.examples ? { examples: action.examples } : {}),
102
+ allow_when_disabled: action.allowWhenDisabled === true,
103
+ has_command: Boolean(action.command),
104
+ has_api: Boolean(action.api),
105
+ };
106
+ }
107
+ /**
108
+ * 读取 plugin / action metadata。
109
+ */
110
+ read(params) {
111
+ const pluginName = String(params.plugin || "").trim();
112
+ if (!pluginName) {
113
+ return { plugins: this.list() };
114
+ }
115
+ const plugin = this.get(pluginName);
116
+ if (!plugin) {
117
+ return {
118
+ name: pluginName,
119
+ title: pluginName,
120
+ description: "",
121
+ actions: [],
122
+ };
123
+ }
124
+ const actionName = String(params.action || "").trim();
125
+ const actions = Object.entries(plugin.actions || {})
126
+ .filter(([name]) => !actionName || name === actionName)
127
+ .sort(([left], [right]) => left.localeCompare(right))
128
+ .map(([name, action]) => this.readAction(name, action));
129
+ return {
130
+ name: plugin.name,
131
+ title: String(plugin.title || plugin.name || "").trim(),
132
+ description: String(plugin.description || "").trim(),
133
+ actions,
134
+ };
135
+ }
90
136
  /**
91
137
  * 检查 plugin 可用性。
92
138
  */
@@ -117,6 +163,23 @@ export class PluginRegistry {
117
163
  reasons: [],
118
164
  };
119
165
  }
166
+ /**
167
+ * 按 action schema 校验 payload。
168
+ */
169
+ parseActionPayload(params) {
170
+ const schema = params.action.input_schema?.zod;
171
+ if (!schema)
172
+ return { input: params.payload };
173
+ const parsed = schema.safeParse(params.payload);
174
+ if (parsed.success) {
175
+ return { input: parsed.data };
176
+ }
177
+ return {
178
+ success: false,
179
+ error: `Invalid payload for ${params.pluginName}.${params.actionName}: ${parsed.error.message}`,
180
+ message: `Invalid payload for ${params.pluginName}.${params.actionName}`,
181
+ };
182
+ }
120
183
  /**
121
184
  * 运行 plugin action。
122
185
  */
@@ -155,9 +218,19 @@ export class PluginRegistry {
155
218
  };
156
219
  }
157
220
  try {
221
+ const parsed_payload = this.parseActionPayload({
222
+ pluginName: plugin.name,
223
+ actionName,
224
+ payload: (params.payload ?? {}),
225
+ action,
226
+ });
227
+ if (!("input" in parsed_payload)) {
228
+ return parsed_payload;
229
+ }
158
230
  return await action.execute({
159
231
  context,
160
- payload: (params.payload ?? {}),
232
+ payload: parsed_payload.input,
233
+ input: parsed_payload.input,
161
234
  pluginName: plugin.name,
162
235
  actionName,
163
236
  });
@@ -1 +1 @@
1
- {"version":3,"file":"PluginRegistry.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginRegistry.js","sourceRoot":"","sources":["../../../src/plugin/core/PluginRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAgB9D;;GAEG;AACH,MAAM,OAAO,cAAc;IACR,eAAe,CAAkB;IAEjC,YAAY,CAAe;IAE3B,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAErD,YAAY,MAGX;QACC,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAc;QACrB,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAE9B,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,CAC7B,EAAE,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAC/C,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAC1B,EAAE,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAC/C,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAC3B,EAAE,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC;YACzE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAgB,SAAiB,EAAE,KAAQ;QACvD,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAgB,SAAiB,EAAE,KAAQ;QACpD,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAgB,SAAiB,EAAE,KAAQ;QACrD,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,SAAiB,EACjB,KAAa;QAEb,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,CAAkB,SAAS,EAAE,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,UAAkB;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;aACrC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;aACrC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACK,UAAU,CAChB,UAAkB,EAClB,MAA8C;QAE9C,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACpD,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;YAC9C,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW;gBAClC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE;gBACnD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,mBAAmB,EAAE,MAAM,CAAC,iBAAiB,KAAK,IAAI;YACtD,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;YACpC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;SAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,MAGJ;QACC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAClC,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,EAAE;gBACf,OAAO,EAAE,EAAE;aACZ,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;aACjD,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI,KAAK,UAAU,CAAC;aACtD,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aACpD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1D,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACvD,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACpD,OAAO;SACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,CAAC,mBAAmB,UAAU,EAAE,CAAC;aAC3C,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO,MAAM,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAErD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,CAAC,WAAW,MAAM,CAAC,IAAI,eAAe,CAAC;aACjD,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,EAAE;SACZ,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,MAK1B;QACC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC;QAC/C,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAiB,EAAE,CAAC;QAC7C,CAAC;QACD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,uBAAuB,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE;YAC/F,OAAO,EAAE,uBAAuB,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE;SACzE,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,MAIf;QACC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,mBAAmB,MAAM,CAAC,MAAM,EAAE;gBACzC,OAAO,EAAE,mBAAmB,MAAM,CAAC,MAAM,EAAE;aAC5C,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,oBAAoB;gBAC3B,OAAO,EAAE,oBAAoB;aAC9B,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,WAAW,MAAM,CAAC,IAAI,gCAAgC,UAAU,GAAG;gBAC1E,OAAO,EAAE,WAAW,MAAM,CAAC,IAAI,gCAAgC,UAAU,GAAG;aAC7E,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,iBAAiB,KAAK,IAAI,EAAE,CAAC;YAClD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,WAAW,MAAM,CAAC,IAAI,eAAe;gBAC5C,OAAO,EAAE,WAAW,MAAM,CAAC,IAAI,eAAe;aAC/C,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC;gBAC7C,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,UAAU;gBACV,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAc;gBAC5C,MAAM;aACP,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,OAAO,IAAI,cAAc,CAAC,EAAE,CAAC;gBACjC,OAAO,cAAc,CAAC;YACxB,CAAC;YACD,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC;gBAC1B,OAAO;gBACP,OAAO,EAAE,cAAc,CAAC,KAAK;gBAC7B,KAAK,EAAE,cAAc,CAAC,KAAK;gBAC3B,UAAU,EAAE,MAAM,CAAC,IAAI;gBACvB,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;gBACpB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;aACvB,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -7,8 +7,8 @@
7
7
  */
8
8
  export type { PluginState, PluginStateControlAction, PluginStateControlResult, PluginStateRecord, PluginStateSnapshot, } from "../../types/plugin/PluginState.js";
9
9
  export type { PluginCommandContext, PluginCommandParams, PluginCommandResult, PluginLifecycle, } from "../../types/plugin/PluginCommand.js";
10
- export type { PluginAction, PluginActionApi, PluginActionCommand, PluginActionCommandInput, PluginActionInvokeParams, PluginActionInvokePort, PluginActionInvokeResult, PluginActionResult, PluginActions, } from "../../types/plugin/PluginAction.js";
11
- export type { PluginAvailability, PluginConfigDefinition, PluginEffectHook, PluginGuardHook, PluginHooks, PluginPipelineHook, AgentPlugins, PluginResolveHook, PluginResolves, PluginView, } from "../../types/plugin/PluginRuntime.js";
10
+ export type { PluginAction, PluginActionApi, PluginActionCommand, PluginActionCommandInput, PluginActionExample, PluginActionInvokeParams, PluginActionInvokePort, PluginActionInvokeResult, PluginActionInputSchema, PluginActionMetadata, PluginActionResult, PluginActions, } from "../../types/plugin/PluginAction.js";
11
+ export type { PluginAvailability, PluginConfigDefinition, PluginEffectHook, PluginGuardHook, PluginHooks, PluginPipelineHook, AgentPlugins, PluginActionReadView, PluginResolveHook, PluginResolves, PluginReadView, PluginView, } from "../../types/plugin/PluginRuntime.js";
12
12
  export type { PluginSetupDefinition, PluginSetupField, PluginSetupFieldOption, PluginUsageDefinition, PluginUsageField, PluginUsageFieldOption, } from "../../types/plugin/PluginSetup.js";
13
13
  export type { PluginHttpDefinition, PluginHttpRegistration, } from "../../types/plugin/PluginHttp.js";
14
14
  export type { Plugin } from "../../types/plugin/PluginDefinition.js";
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../../src/plugin/types/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACV,WAAW,EACX,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,GAChB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,aAAa,GACd,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,UAAU,GACX,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../../src/plugin/types/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACV,WAAW,EACX,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,GAChB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,GACd,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,UAAU,GACX,MAAM,iCAAiC,CAAC;AACzC,YAAY,EACV,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC"}
@@ -7,8 +7,9 @@
7
7
  */
8
8
  import type { Command } from "commander";
9
9
  import type { Context as HonoContext } from "hono";
10
+ import type { z } from "zod";
10
11
  import type { AgentContext } from "../../types/runtime/agent/AgentContext.js";
11
- import type { JsonValue } from "../../types/common/Json.js";
12
+ import type { JsonObject, JsonValue } from "../../types/common/Json.js";
12
13
  /**
13
14
  * Plugin action 调用参数。
14
15
  */
@@ -82,10 +83,45 @@ export interface PluginActionApi<P extends JsonValue = JsonValue> {
82
83
  /** 将 HTTP 输入映射为 payload(可选)。 */
83
84
  mapInput?: (ctx: HonoContext) => P | Promise<P>;
84
85
  }
86
+ /**
87
+ * Plugin Action 示例。
88
+ */
89
+ export interface PluginActionExample<P extends JsonValue = JsonValue> {
90
+ /** 示例标题。 */
91
+ title: string;
92
+ /** 示例说明。 */
93
+ description?: string;
94
+ /** 示例 payload。 */
95
+ payload: P;
96
+ }
97
+ /**
98
+ * Plugin Action 输入 schema。
99
+ *
100
+ * 关键点(中文)
101
+ * - 优先支持 Zod,运行时用 safeParse 做校验。
102
+ * - `json_schema` 用于给模型或 UI 读取;没有时仍可依赖 description/examples。
103
+ */
104
+ export interface PluginActionInputSchema<P extends JsonValue = JsonValue> {
105
+ /** Zod schema,负责运行时校验与 TypeScript 推导。 */
106
+ zod?: z.ZodTypeAny;
107
+ /** 面向模型和 UI 的 JSON Schema 描述。 */
108
+ json_schema?: JsonObject;
109
+ }
110
+ /**
111
+ * Plugin Action 元数据。
112
+ */
113
+ export interface PluginActionMetadata<P extends JsonValue = JsonValue> {
114
+ /** Action 用途说明。 */
115
+ description?: string;
116
+ /** Action 输入 schema。 */
117
+ input_schema?: PluginActionInputSchema<P>;
118
+ /** Action 调用示例。 */
119
+ examples?: PluginActionExample<P>[];
120
+ }
85
121
  /**
86
122
  * Plugin Action 定义。
87
123
  */
88
- export interface PluginAction<P extends JsonValue = JsonValue, R extends JsonValue = JsonValue> {
124
+ export interface PluginAction<P extends JsonValue = JsonValue, R extends JsonValue = JsonValue> extends PluginActionMetadata<P> {
89
125
  /**
90
126
  * disabled 状态下是否仍允许执行。
91
127
  *
@@ -104,6 +140,8 @@ export interface PluginAction<P extends JsonValue = JsonValue, R extends JsonVal
104
140
  context: AgentContext;
105
141
  /** 输入 payload。 */
106
142
  payload: P;
143
+ /** 已通过 schema 校验后的输入。 */
144
+ input: P;
107
145
  /** 当前插件名称。 */
108
146
  pluginName: string;
109
147
  /** 当前 Action 名称。 */
@@ -1 +1 @@
1
- {"version":3,"file":"PluginAction.d.ts","sourceRoot":"","sources":["../../../src/types/plugin/PluginAction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PluginAction.d.ts","sourceRoot":"","sources":["../../../src/types/plugin/PluginAction.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@
8
8
  import type { AgentContext, StructuredConfig } from "../../types/runtime/agent/AgentContext.js";
9
9
  import type { JsonValue } from "../../types/common/Json.js";
10
10
  import type { PluginActionResult } from "../../types/plugin/PluginAction.js";
11
+ import type { PluginActionExample } from "../../types/plugin/PluginAction.js";
11
12
  /**
12
13
  * Plugin 概览视图。
13
14
  */
@@ -33,6 +34,40 @@ export interface PluginView {
33
34
  /** 是否声明了 availability 检查。 */
34
35
  hasAvailability: boolean;
35
36
  }
37
+ /**
38
+ * Plugin Action 读取视图。
39
+ */
40
+ export interface PluginActionReadView {
41
+ /** Action 名称。 */
42
+ name: string;
43
+ /** Action 用途说明。 */
44
+ description: string;
45
+ /** 是否声明输入 schema。 */
46
+ has_input_schema: boolean;
47
+ /** JSON Schema 形式的输入说明。 */
48
+ input_schema?: JsonValue;
49
+ /** Action 调用示例。 */
50
+ examples?: PluginActionExample[];
51
+ /** disabled 状态下是否仍允许执行。 */
52
+ allow_when_disabled: boolean;
53
+ /** 是否声明 CLI command。 */
54
+ has_command: boolean;
55
+ /** 是否声明 HTTP API。 */
56
+ has_api: boolean;
57
+ }
58
+ /**
59
+ * Plugin 读取视图。
60
+ */
61
+ export interface PluginReadView {
62
+ /** Plugin 稳定名称。 */
63
+ name: string;
64
+ /** Plugin 展示标题。 */
65
+ title: string;
66
+ /** Plugin 用途说明。 */
67
+ description: string;
68
+ /** Action 列表或指定 action。 */
69
+ actions: PluginActionReadView[];
70
+ }
36
71
  /**
37
72
  * Plugin 可用性结果。
38
73
  */
@@ -50,6 +85,15 @@ export interface PluginAvailability {
50
85
  export interface AgentPlugins {
51
86
  /** 列出全部已注册 plugin。 */
52
87
  list(): PluginView[];
88
+ /** 读取 plugin / action metadata。 */
89
+ read(params: {
90
+ /** Plugin 名称。 */
91
+ plugin?: string;
92
+ /** Action 名称。 */
93
+ action?: string;
94
+ }): PluginReadView | {
95
+ plugins: PluginView[];
96
+ };
53
97
  /** 检查指定 plugin 可用性。 */
54
98
  availability(pluginName: string): Promise<PluginAvailability>;
55
99
  /** 运行指定 plugin action。 */