@downcity/plugins 1.0.59 → 1.0.60

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.
@@ -7,16 +7,38 @@
7
7
  * - 调用方需要完整内建集合时,显式调用 `createBuiltinPlugins()` 并传给 Agent 或通用 helper。
8
8
  */
9
9
  import type { BasePlugin } from "@downcity/agent/internal/plugin/core/BasePlugin.js";
10
+ import type { ImagePluginOptions } from "./image/types/ImagePlugin.js";
11
+ import type { AsrPluginOptions } from "./asr/types/AsrPlugin.js";
12
+ import type { TtsPluginOptions } from "./tts/types/TtsPlugin.js";
10
13
  /**
11
14
  * 内建 plugin class 构造器。
12
15
  */
13
16
  export type BuiltinPluginClass<T extends BasePlugin = BasePlugin> = new () => T;
14
17
  /**
15
- * 全部内建 plugin classes。
18
+ * 可直接无参创建的内建 plugin classes。
19
+ *
20
+ * 关键点(中文):image / asr / tts 需要宿主注入 City AI 能力,不能放入无参 class 列表。
16
21
  */
17
22
  export declare const BUILTIN_PLUGIN_CLASSES: BuiltinPluginClass[];
23
+ /**
24
+ * 内建 plugin 工厂参数。
25
+ */
26
+ export interface BuiltinPluginOptions {
27
+ /**
28
+ * 图片生成 plugin 的 City AI 能力注入。
29
+ */
30
+ image?: ImagePluginOptions;
31
+ /**
32
+ * 语音转写 plugin 的 City AI 能力注入。
33
+ */
34
+ asr?: AsrPluginOptions;
35
+ /**
36
+ * 文本转语音 plugin 的 City AI 能力注入。
37
+ */
38
+ tts?: TtsPluginOptions;
39
+ }
18
40
  /**
19
41
  * 创建完整内建 plugin 实例集合。
20
42
  */
21
- export declare function createBuiltinPlugins(): BasePlugin[];
43
+ export declare function createBuiltinPlugins(options?: BuiltinPluginOptions): BasePlugin[];
22
44
  //# sourceMappingURL=BuiltinPlugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BuiltinPlugins.d.ts","sourceRoot":"","sources":["../src/BuiltinPlugins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAUrF;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,UAAU,CAAC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,kBAAkB,EAStD,CAAC;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,UAAU,EAAE,CAEnD"}
1
+ {"version":3,"file":"BuiltinPlugins.d.ts","sourceRoot":"","sources":["../src/BuiltinPlugins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAYrF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU,IAAI,UAAU,CAAC,CAAC;AAEhF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,kBAAkB,EAStD,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAE3B;;OAEG;IACH,GAAG,CAAC,EAAE,gBAAgB,CAAC;IAEvB;;OAEG;IACH,GAAG,CAAC,EAAE,gBAAgB,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,oBAAyB,GAAG,UAAU,EAAE,CAYrF"}
@@ -14,8 +14,13 @@ import { ContactPlugin } from "./contact/ContactPlugin.js";
14
14
  import { TaskPlugin } from "./task/TaskPlugin.js";
15
15
  import { MemoryPlugin } from "./memory/MemoryPlugin.js";
16
16
  import { ShellPlugin } from "./shell/ShellPlugin.js";
17
+ import { ImagePlugin } from "./image/ImagePlugin.js";
18
+ import { AsrPlugin } from "./asr/Plugin.js";
19
+ import { TtsPlugin } from "./tts/Plugin.js";
17
20
  /**
18
- * 全部内建 plugin classes。
21
+ * 可直接无参创建的内建 plugin classes。
22
+ *
23
+ * 关键点(中文):image / asr / tts 需要宿主注入 City AI 能力,不能放入无参 class 列表。
19
24
  */
20
25
  export const BUILTIN_PLUGIN_CLASSES = [
21
26
  SkillPlugin,
@@ -30,7 +35,17 @@ export const BUILTIN_PLUGIN_CLASSES = [
30
35
  /**
31
36
  * 创建完整内建 plugin 实例集合。
32
37
  */
33
- export function createBuiltinPlugins() {
34
- return BUILTIN_PLUGIN_CLASSES.map((PluginClass) => new PluginClass());
38
+ export function createBuiltinPlugins(options = {}) {
39
+ const plugins = BUILTIN_PLUGIN_CLASSES.map((PluginClass) => new PluginClass());
40
+ if (options.image?.image_create && options.image?.image_result) {
41
+ plugins.push(new ImagePlugin(options.image));
42
+ }
43
+ if (options.asr?.asr) {
44
+ plugins.push(new AsrPlugin(options.asr));
45
+ }
46
+ if (options.tts?.tts) {
47
+ plugins.push(new TtsPlugin(options.tts));
48
+ }
49
+ return plugins;
35
50
  }
36
51
  //# sourceMappingURL=BuiltinPlugins.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BuiltinPlugins.js","sourceRoot":"","sources":["../src/BuiltinPlugins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAOrD;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAyB;IAC1D,WAAW;IACX,SAAS;IACT,eAAe;IACf,UAAU;IACV,aAAa;IACb,UAAU;IACV,YAAY;IACZ,WAAW;CACZ,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,sBAAsB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"BuiltinPlugins.js","sourceRoot":"","sources":["../src/BuiltinPlugins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAU5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAyB;IAC1D,WAAW;IACX,SAAS;IACT,eAAe;IACf,UAAU;IACV,aAAa;IACb,UAAU;IACV,YAAY;IACZ,WAAW;CACZ,CAAC;AAsBF;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAgC,EAAE;IACrE,MAAM,OAAO,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;IAC/E,IAAI,OAAO,CAAC,KAAK,EAAE,YAAY,IAAI,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -8,6 +8,7 @@
8
8
  */
9
9
  import type { PluginActions } from "@downcity/agent/internal/plugin/types/Plugin.js";
10
10
  import { BasePlugin } from "@downcity/agent/internal/plugin/core/BasePlugin.js";
11
+ import type { ContactPluginOptions } from "../contact/types/ContactPluginOptions.js";
11
12
  /**
12
13
  * Contact plugin 类实现。
13
14
  */
@@ -20,7 +21,11 @@ export declare class ContactPlugin extends BasePlugin {
20
21
  * 当前 plugin action 定义表。
21
22
  */
22
23
  readonly actions: PluginActions;
23
- constructor();
24
+ /**
25
+ * 当前实例持有的显式配置。
26
+ */
27
+ readonly options: ContactPluginOptions;
28
+ constructor(options?: ContactPluginOptions);
24
29
  /**
25
30
  * contact system 文本。
26
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ContactPlugin.d.ts","sourceRoot":"","sources":["../../src/contact/ContactPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAyHhF;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C;;OAEG;IACH,QAAQ,CAAC,IAAI,aAAa;IAE1B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;;IA4BhC;;OAEG;IACH,MAAM,IAAI,MAAM;YAIF,IAAI;YAsCJ,OAAO;YAuGP,KAAK;YAwCL,IAAI;YAmCJ,KAAK;YA4BL,UAAU;YAqBV,aAAa;YAYb,aAAa;YAkBb,WAAW;CA0B1B"}
1
+ {"version":3,"file":"ContactPlugin.d.ts","sourceRoot":"","sources":["../../src/contact/ContactPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAoBhF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAsGpF;;GAEG;AACH,qBAAa,aAAc,SAAQ,UAAU;IAC3C;;OAEG;IACH,QAAQ,CAAC,IAAI,aAAa;IAE1B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;IAEhC;;OAEG;IACH,SAAgB,OAAO,EAAE,oBAAoB,CAAC;gBAElC,OAAO,CAAC,EAAE,oBAAoB;IAsB1C;;OAEG;IACH,MAAM,IAAI,MAAM;YAIF,IAAI;YA4CJ,OAAO;YAuGP,KAAK;YAwCL,IAAI;YAmCJ,KAAK;YA4BL,UAAU;YAqBV,aAAa;YAYb,aAAa;YAkBb,WAAW;CA0B1B"}
@@ -72,8 +72,13 @@ export class ContactPlugin extends BasePlugin {
72
72
  * 当前 plugin action 定义表。
73
73
  */
74
74
  actions;
75
- constructor() {
75
+ /**
76
+ * 当前实例持有的显式配置。
77
+ */
78
+ options;
79
+ constructor(options) {
76
80
  super();
81
+ this.options = options || {};
77
82
  this.actions = createContactActions({
78
83
  link: async (context, payload) => (await this.link(context, payload)),
79
84
  approve: async (context, payload) => (await this.approve(context, payload)),
@@ -85,10 +90,6 @@ export class ContactPlugin extends BasePlugin {
85
90
  remoteConfirm: (context, request) => this.remoteConfirm(context, request),
86
91
  remoteShare: async (context, payload) => (await this.remoteShare(context, payload)),
87
92
  });
88
- this.lifecycle = {
89
- start: () => undefined,
90
- stop: () => undefined,
91
- };
92
93
  }
93
94
  /**
94
95
  * contact system 文本。
@@ -98,10 +99,10 @@ export class ContactPlugin extends BasePlugin {
98
99
  }
99
100
  async link(context, payload) {
100
101
  const now = Date.now();
101
- const ttlSeconds = Math.max(60, Number(payload.ttlSeconds || 600));
102
+ const ttlSeconds = Math.max(60, Number(payload.ttlSeconds || this.options.ttlSeconds || 600));
102
103
  const linkId = createContactId("link");
103
104
  const secret = createContactToken();
104
- const endpoint = await resolveSelfEndpoint(context, payload.endpoint);
105
+ const endpoint = await resolveSelfEndpoint(context, payload.endpoint || this.options.endpoint);
105
106
  const agentName = getAgentName(context);
106
107
  await saveContactLinkRecord(context.rootPath, {
107
108
  id: linkId,
@@ -141,7 +142,7 @@ export class ContactPlugin extends BasePlugin {
141
142
  targetReachability === "loopback" ||
142
143
  targetReachability === "private";
143
144
  const requesterEndpointCandidate = shouldResolveRequesterEndpoint
144
- ? await resolveSelfEndpoint(context, payload.endpoint)
145
+ ? await resolveSelfEndpoint(context, payload.endpoint || this.options.endpoint)
145
146
  : undefined;
146
147
  const callbackDecision = buildContactApproveCallbackDecision({
147
148
  targetEndpoint: parsed.endpoint,
@@ -1 +1 @@
1
- {"version":3,"file":"ContactPlugin.js","sourceRoot":"","sources":["../../src/contact/ContactPlugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContactPlugin.js","sourceRoot":"","sources":["../../src/contact/ContactPlugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * ContactPluginOptions:ContactPlugin 构造参数。
3
+ *
4
+ * 关键点(中文)
5
+ * - 这里只保留 agent 运行时真正需要的显式配置。
6
+ * - contact token、link secret 等协议密钥都由运行时自动生成,不从 constructor 传入。
7
+ */
8
+ /**
9
+ * ContactPlugin 构造参数。
10
+ */
11
+ export interface ContactPluginOptions {
12
+ /**
13
+ * 当前 agent 对外可访问的 HTTP endpoint。
14
+ *
15
+ * 说明(中文)
16
+ * - 传入后会优先写入 `contact link` 生成的一次性联系码。
17
+ * - 适合反向代理、tunnel、公网域名等自动探测不可靠的环境。
18
+ */
19
+ endpoint?: string;
20
+ /**
21
+ * 默认 link 有效秒数。
22
+ *
23
+ * 说明(中文)
24
+ * - `contact link` action 没有显式传 `ttlSeconds` 时使用该值。
25
+ * - 最终运行时仍会强制不少于 60 秒,避免生成过短的人工转交 code。
26
+ */
27
+ ttlSeconds?: number;
28
+ }
29
+ //# sourceMappingURL=ContactPluginOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContactPluginOptions.d.ts","sourceRoot":"","sources":["../../../src/contact/types/ContactPluginOptions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * ContactPluginOptions:ContactPlugin 构造参数。
3
+ *
4
+ * 关键点(中文)
5
+ * - 这里只保留 agent 运行时真正需要的显式配置。
6
+ * - contact token、link secret 等协议密钥都由运行时自动生成,不从 constructor 传入。
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=ContactPluginOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContactPluginOptions.js","sourceRoot":"","sources":["../../../src/contact/types/ContactPluginOptions.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
package/bin/index.d.ts CHANGED
@@ -7,8 +7,9 @@
7
7
  * - 注册、目录、HTTP、CLI、action 执行都由 `@downcity/agent` 的通用能力处理。
8
8
  */
9
9
  export { BUILTIN_PLUGIN_CLASSES, createBuiltinPlugins, } from "./BuiltinPlugins.js";
10
- export type { BuiltinPluginClass } from "./BuiltinPlugins.js";
10
+ export type { BuiltinPluginClass, BuiltinPluginOptions, } from "./BuiltinPlugins.js";
11
11
  export { ChatPlugin } from "./chat/ChatPlugin.js";
12
+ export { ContactPlugin } from "./contact/ContactPlugin.js";
12
13
  export { FeishuChannel, QqChannel, TelegramChannel, } from "./chat/channels/RuntimeChannel.js";
13
14
  export { ImagePlugin } from "./image/ImagePlugin.js";
14
15
  export { ChatChannelAccountManager } from "./chat/accounts/ChannelAccountManager.js";
@@ -23,6 +24,7 @@ export { CHAT_AUTHORIZATION_ACTIONS, CHAT_AUTHORIZATION_CHANNELS, CHAT_AUTHORIZA
23
24
  export type { ChatChannelAccountListItem, } from "./chat/types/ChannelAccount.js";
24
25
  export type { BaseChatChannelOptions, ChatChannelEnv, FeishuChannelOptions, QqChannelOptions, TelegramChannelOptions, } from "./chat/channels/RuntimeChannel.js";
25
26
  export type { ChatChannel, ChatChannelRuntimePatch, ChatPluginOptions, } from "./chat/types/ChatPluginOptions.js";
27
+ export type { ContactPluginOptions } from "./contact/types/ContactPluginOptions.js";
26
28
  export type { AsrPluginInput, AsrPluginOptions, AsrPluginResult, } from "./asr/types/AsrPlugin.js";
27
29
  export type { TtsPluginInput, TtsPluginOptions, TtsPluginResult, TtsPluginSimpleAudioResult, TtsPluginUiMessageResult, } from "./tts/types/TtsPlugin.js";
28
30
  export type { ImagePluginContent, ImagePluginFileContent, ImagePluginInput, ImagePluginJobCreateResult, ImagePluginJobResult, ImagePluginJobStatus, ImagePluginMessage, ImagePluginOptions, ImagePluginResult, ImagePluginTextContent, } from "./image/types/ImagePlugin.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACL,aAAa,EACb,SAAS,EACT,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,0BAA0B,GAC3B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,sBAAsB,EACtB,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,WAAW,EACX,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,8BAA8B,EAC9B,+BAA+B,EAC/B,wCAAwC,EACxC,6BAA6B,EAC7B,6BAA6B,EAC7B,2BAA2B,EAC3B,+BAA+B,EAC/B,uCAAuC,EACvC,qBAAqB,EACrB,mCAAmC,EACnC,yBAAyB,EACzB,0BAA0B,EAC1B,mCAAmC,EACnC,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,aAAa,EACb,SAAS,EACT,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,0BAA0B,GAC3B,MAAM,gCAAgC,CAAC;AACxC,YAAY,EACV,sBAAsB,EACtB,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,WAAW,EACX,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AACpF,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,0BAA0B,EAC1B,wBAAwB,GACzB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,8BAA8B,EAC9B,+BAA+B,EAC/B,wCAAwC,EACxC,6BAA6B,EAC7B,6BAA6B,EAC7B,2BAA2B,EAC3B,+BAA+B,EAC/B,uCAAuC,EACvC,qBAAqB,EACrB,mCAAmC,EACnC,yBAAyB,EACzB,0BAA0B,EAC1B,mCAAmC,EACnC,8BAA8B,GAC/B,MAAM,4BAA4B,CAAC"}
package/bin/index.js CHANGED
@@ -8,6 +8,7 @@
8
8
  */
9
9
  export { BUILTIN_PLUGIN_CLASSES, createBuiltinPlugins, } from "./BuiltinPlugins.js";
10
10
  export { ChatPlugin } from "./chat/ChatPlugin.js";
11
+ export { ContactPlugin } from "./contact/ContactPlugin.js";
11
12
  export { FeishuChannel, QqChannel, TelegramChannel, } from "./chat/channels/RuntimeChannel.js";
12
13
  export { ImagePlugin } from "./image/ImagePlugin.js";
13
14
  export { ChatChannelAccountManager } from "./chat/accounts/ChannelAccountManager.js";
package/bin/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACL,aAAa,EACb,SAAS,EACT,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,aAAa,EACb,SAAS,EACT,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,yBAAyB,EACzB,mCAAmC,EACnC,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/plugins",
3
- "version": "1.0.59",
3
+ "version": "1.0.60",
4
4
  "type": "module",
5
5
  "description": "Downcity 内建 plugin 集合包",
6
6
  "main": "./bin/index.js",
@@ -22,7 +22,7 @@
22
22
  "node-cron": "^4.2.1",
23
23
  "ws": "^8.21.0",
24
24
  "zod": "^4.4.3",
25
- "@downcity/agent": "^1.1.105"
25
+ "@downcity/agent": "^1.1.106"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/better-sqlite3": "^7.6.13",
@@ -16,6 +16,12 @@ import { ContactPlugin } from "@/contact/ContactPlugin.js";
16
16
  import { TaskPlugin } from "@/task/TaskPlugin.js";
17
17
  import { MemoryPlugin } from "@/memory/MemoryPlugin.js";
18
18
  import { ShellPlugin } from "@/shell/ShellPlugin.js";
19
+ import { ImagePlugin } from "@/image/ImagePlugin.js";
20
+ import { AsrPlugin } from "@/asr/Plugin.js";
21
+ import { TtsPlugin } from "@/tts/Plugin.js";
22
+ import type { ImagePluginOptions } from "@/image/types/ImagePlugin.js";
23
+ import type { AsrPluginOptions } from "@/asr/types/AsrPlugin.js";
24
+ import type { TtsPluginOptions } from "@/tts/types/TtsPlugin.js";
19
25
 
20
26
  /**
21
27
  * 内建 plugin class 构造器。
@@ -23,7 +29,9 @@ import { ShellPlugin } from "@/shell/ShellPlugin.js";
23
29
  export type BuiltinPluginClass<T extends BasePlugin = BasePlugin> = new () => T;
24
30
 
25
31
  /**
26
- * 全部内建 plugin classes。
32
+ * 可直接无参创建的内建 plugin classes。
33
+ *
34
+ * 关键点(中文):image / asr / tts 需要宿主注入 City AI 能力,不能放入无参 class 列表。
27
35
  */
28
36
  export const BUILTIN_PLUGIN_CLASSES: BuiltinPluginClass[] = [
29
37
  SkillPlugin,
@@ -36,9 +44,39 @@ export const BUILTIN_PLUGIN_CLASSES: BuiltinPluginClass[] = [
36
44
  ShellPlugin,
37
45
  ];
38
46
 
47
+ /**
48
+ * 内建 plugin 工厂参数。
49
+ */
50
+ export interface BuiltinPluginOptions {
51
+ /**
52
+ * 图片生成 plugin 的 City AI 能力注入。
53
+ */
54
+ image?: ImagePluginOptions;
55
+
56
+ /**
57
+ * 语音转写 plugin 的 City AI 能力注入。
58
+ */
59
+ asr?: AsrPluginOptions;
60
+
61
+ /**
62
+ * 文本转语音 plugin 的 City AI 能力注入。
63
+ */
64
+ tts?: TtsPluginOptions;
65
+ }
66
+
39
67
  /**
40
68
  * 创建完整内建 plugin 实例集合。
41
69
  */
42
- export function createBuiltinPlugins(): BasePlugin[] {
43
- return BUILTIN_PLUGIN_CLASSES.map((PluginClass) => new PluginClass());
70
+ export function createBuiltinPlugins(options: BuiltinPluginOptions = {}): BasePlugin[] {
71
+ const plugins = BUILTIN_PLUGIN_CLASSES.map((PluginClass) => new PluginClass());
72
+ if (options.image?.image_create && options.image?.image_result) {
73
+ plugins.push(new ImagePlugin(options.image));
74
+ }
75
+ if (options.asr?.asr) {
76
+ plugins.push(new AsrPlugin(options.asr));
77
+ }
78
+ if (options.tts?.tts) {
79
+ plugins.push(new TtsPlugin(options.tts));
80
+ }
81
+ return plugins;
44
82
  }
@@ -30,6 +30,7 @@ import type { ContactPingResponse } from "@/contact/types/ContactCheck.js";
30
30
  import type { ContactChatResponse } from "@/contact/types/ContactChat.js";
31
31
  import type { AgentContact } from "@/contact/types/Contact.js";
32
32
  import type { SaveContactInboxShareInput } from "@/contact/types/ContactShare.js";
33
+ import type { ContactPluginOptions } from "@/contact/types/ContactPluginOptions.js";
33
34
  import {
34
35
  appendContactMessage,
35
36
  createStableContactId,
@@ -145,8 +146,14 @@ export class ContactPlugin extends BasePlugin {
145
146
  */
146
147
  readonly actions: PluginActions;
147
148
 
148
- constructor() {
149
+ /**
150
+ * 当前实例持有的显式配置。
151
+ */
152
+ public readonly options: ContactPluginOptions;
153
+
154
+ constructor(options?: ContactPluginOptions) {
149
155
  super();
156
+ this.options = options || {};
150
157
  this.actions = createContactActions({
151
158
  link: async (context, payload) =>
152
159
  (await this.link(context, payload)) as unknown as JsonValue,
@@ -164,11 +171,6 @@ export class ContactPlugin extends BasePlugin {
164
171
  remoteShare: async (context, payload) =>
165
172
  (await this.remoteShare(context, payload)) as unknown as JsonValue,
166
173
  });
167
-
168
- this.lifecycle = {
169
- start: () => undefined,
170
- stop: () => undefined,
171
- };
172
174
  }
173
175
 
174
176
  /**
@@ -180,10 +182,16 @@ export class ContactPlugin extends BasePlugin {
180
182
 
181
183
  private async link(context: AgentContext, payload: ContactLinkCommandPayload) {
182
184
  const now = Date.now();
183
- const ttlSeconds = Math.max(60, Number(payload.ttlSeconds || 600));
185
+ const ttlSeconds = Math.max(
186
+ 60,
187
+ Number(payload.ttlSeconds || this.options.ttlSeconds || 600),
188
+ );
184
189
  const linkId = createContactId("link");
185
190
  const secret = createContactToken();
186
- const endpoint = await resolveSelfEndpoint(context, payload.endpoint);
191
+ const endpoint = await resolveSelfEndpoint(
192
+ context,
193
+ payload.endpoint || this.options.endpoint,
194
+ );
187
195
  const agentName = getAgentName(context);
188
196
 
189
197
  await saveContactLinkRecord(context.rootPath, {
@@ -228,7 +236,7 @@ export class ContactPlugin extends BasePlugin {
228
236
  targetReachability === "loopback" ||
229
237
  targetReachability === "private";
230
238
  const requesterEndpointCandidate = shouldResolveRequesterEndpoint
231
- ? await resolveSelfEndpoint(context, payload.endpoint)
239
+ ? await resolveSelfEndpoint(context, payload.endpoint || this.options.endpoint)
232
240
  : undefined;
233
241
  const callbackDecision = buildContactApproveCallbackDecision({
234
242
  targetEndpoint: parsed.endpoint,
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ContactPluginOptions:ContactPlugin 构造参数。
3
+ *
4
+ * 关键点(中文)
5
+ * - 这里只保留 agent 运行时真正需要的显式配置。
6
+ * - contact token、link secret 等协议密钥都由运行时自动生成,不从 constructor 传入。
7
+ */
8
+
9
+ /**
10
+ * ContactPlugin 构造参数。
11
+ */
12
+ export interface ContactPluginOptions {
13
+ /**
14
+ * 当前 agent 对外可访问的 HTTP endpoint。
15
+ *
16
+ * 说明(中文)
17
+ * - 传入后会优先写入 `contact link` 生成的一次性联系码。
18
+ * - 适合反向代理、tunnel、公网域名等自动探测不可靠的环境。
19
+ */
20
+ endpoint?: string;
21
+
22
+ /**
23
+ * 默认 link 有效秒数。
24
+ *
25
+ * 说明(中文)
26
+ * - `contact link` action 没有显式传 `ttlSeconds` 时使用该值。
27
+ * - 最终运行时仍会强制不少于 60 秒,避免生成过短的人工转交 code。
28
+ */
29
+ ttlSeconds?: number;
30
+ }
package/src/index.ts CHANGED
@@ -11,8 +11,12 @@ export {
11
11
  BUILTIN_PLUGIN_CLASSES,
12
12
  createBuiltinPlugins,
13
13
  } from "./BuiltinPlugins.js";
14
- export type { BuiltinPluginClass } from "./BuiltinPlugins.js";
14
+ export type {
15
+ BuiltinPluginClass,
16
+ BuiltinPluginOptions,
17
+ } from "./BuiltinPlugins.js";
15
18
  export { ChatPlugin } from "./chat/ChatPlugin.js";
19
+ export { ContactPlugin } from "./contact/ContactPlugin.js";
16
20
  export {
17
21
  FeishuChannel,
18
22
  QqChannel,
@@ -54,6 +58,7 @@ export type {
54
58
  ChatChannelRuntimePatch,
55
59
  ChatPluginOptions,
56
60
  } from "./chat/types/ChatPluginOptions.js";
61
+ export type { ContactPluginOptions } from "./contact/types/ContactPluginOptions.js";
57
62
  export type {
58
63
  AsrPluginInput,
59
64
  AsrPluginOptions,