@downcity/plugins 1.0.57 → 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.
Files changed (145) hide show
  1. package/bin/BuiltinPlugins.d.ts +24 -2
  2. package/bin/BuiltinPlugins.d.ts.map +1 -1
  3. package/bin/BuiltinPlugins.js +18 -5
  4. package/bin/BuiltinPlugins.js.map +1 -1
  5. package/bin/auth/types/AuthPlugin.d.ts +12 -16
  6. package/bin/auth/types/AuthPlugin.d.ts.map +1 -1
  7. package/bin/auth/types/AuthPlugin.js +9 -13
  8. package/bin/auth/types/AuthPlugin.js.map +1 -1
  9. package/bin/chat/ChatPlugin.d.ts +37 -6
  10. package/bin/chat/ChatPlugin.d.ts.map +1 -1
  11. package/bin/chat/ChatPlugin.js +58 -80
  12. package/bin/chat/ChatPlugin.js.map +1 -1
  13. package/bin/chat/Index.d.ts +4 -1
  14. package/bin/chat/Index.d.ts.map +1 -1
  15. package/bin/chat/Index.js +2 -1
  16. package/bin/chat/Index.js.map +1 -1
  17. package/bin/chat/channels/Configuration.d.ts +1 -1
  18. package/bin/chat/channels/Configuration.js +1 -1
  19. package/bin/chat/channels/RuntimeChannel.d.ts +145 -0
  20. package/bin/chat/channels/RuntimeChannel.d.ts.map +1 -0
  21. package/bin/chat/channels/RuntimeChannel.js +148 -0
  22. package/bin/chat/channels/RuntimeChannel.js.map +1 -0
  23. package/bin/chat/runtime/ChatAuthorizationRuntime.d.ts +22 -0
  24. package/bin/chat/runtime/ChatAuthorizationRuntime.d.ts.map +1 -0
  25. package/bin/chat/runtime/ChatAuthorizationRuntime.js +189 -0
  26. package/bin/chat/runtime/ChatAuthorizationRuntime.js.map +1 -0
  27. package/bin/chat/runtime/ChatChannelActions.d.ts.map +1 -1
  28. package/bin/chat/runtime/ChatChannelActions.js +19 -9
  29. package/bin/chat/runtime/ChatChannelActions.js.map +1 -1
  30. package/bin/chat/runtime/ChatChannelConfig.d.ts +2 -18
  31. package/bin/chat/runtime/ChatChannelConfig.d.ts.map +1 -1
  32. package/bin/chat/runtime/ChatChannelConfig.js +2 -73
  33. package/bin/chat/runtime/ChatChannelConfig.js.map +1 -1
  34. package/bin/chat/runtime/ChatChannelCore.d.ts +22 -1
  35. package/bin/chat/runtime/ChatChannelCore.d.ts.map +1 -1
  36. package/bin/chat/runtime/ChatChannelCore.js +5 -5
  37. package/bin/chat/runtime/ChatChannelCore.js.map +1 -1
  38. package/bin/chat/runtime/ChatPluginActionRegistry.js +1 -1
  39. package/bin/chat/runtime/ChatPluginActionRegistry.js.map +1 -1
  40. package/bin/chat/runtime/PluginPoints.d.ts +3 -3
  41. package/bin/chat/runtime/PluginPoints.js +3 -3
  42. package/bin/chat/types/ChannelStatus.d.ts +1 -1
  43. package/bin/chat/types/ChatPluginOptions.d.ts +76 -0
  44. package/bin/chat/types/ChatPluginOptions.d.ts.map +1 -0
  45. package/bin/chat/types/ChatPluginOptions.js +10 -0
  46. package/bin/chat/types/ChatPluginOptions.js.map +1 -0
  47. package/bin/contact/ContactPlugin.d.ts +6 -1
  48. package/bin/contact/ContactPlugin.d.ts.map +1 -1
  49. package/bin/contact/ContactPlugin.js +9 -8
  50. package/bin/contact/ContactPlugin.js.map +1 -1
  51. package/bin/contact/types/ContactPluginOptions.d.ts +29 -0
  52. package/bin/contact/types/ContactPluginOptions.d.ts.map +1 -0
  53. package/bin/contact/types/ContactPluginOptions.js +9 -0
  54. package/bin/contact/types/ContactPluginOptions.js.map +1 -0
  55. package/bin/index.d.ts +7 -4
  56. package/bin/index.d.ts.map +1 -1
  57. package/bin/index.js +3 -2
  58. package/bin/index.js.map +1 -1
  59. package/bin/skill/Action.d.ts.map +1 -1
  60. package/bin/skill/Action.js +2 -2
  61. package/bin/skill/Action.js.map +1 -1
  62. package/bin/skill/Command.js +5 -5
  63. package/bin/skill/Command.js.map +1 -1
  64. package/bin/skill/Plugin.js +1 -1
  65. package/bin/skill/Plugin.js.map +1 -1
  66. package/bin/skill/runtime/Discovery.d.ts +4 -4
  67. package/bin/skill/runtime/Discovery.d.ts.map +1 -1
  68. package/bin/skill/runtime/Discovery.js +5 -5
  69. package/bin/skill/runtime/Discovery.js.map +1 -1
  70. package/bin/skill/runtime/Paths.d.ts +1 -5
  71. package/bin/skill/runtime/Paths.d.ts.map +1 -1
  72. package/bin/skill/runtime/Paths.js +1 -9
  73. package/bin/skill/runtime/Paths.js.map +1 -1
  74. package/bin/skill/runtime/Prompt.d.ts +2 -2
  75. package/bin/skill/runtime/Prompt.d.ts.map +1 -1
  76. package/bin/skill/runtime/Prompt.js +3 -3
  77. package/bin/skill/runtime/Prompt.js.map +1 -1
  78. package/bin/skill/runtime/Store.d.ts +2 -2
  79. package/bin/skill/runtime/Store.d.ts.map +1 -1
  80. package/bin/skill/runtime/Store.js.map +1 -1
  81. package/bin/skill/runtime/SystemProvider.js +4 -4
  82. package/bin/skill/runtime/SystemProvider.js.map +1 -1
  83. package/bin/skill/runtime/Types.d.ts +3 -3
  84. package/bin/skill/runtime/Types.d.ts.map +1 -1
  85. package/bin/skill/types/{ClaudeSkill.d.ts → SkillDefinition.d.ts} +4 -4
  86. package/bin/skill/types/SkillDefinition.d.ts.map +1 -0
  87. package/bin/skill/types/{ClaudeSkill.js → SkillDefinition.js} +2 -2
  88. package/bin/skill/types/SkillDefinition.js.map +1 -0
  89. package/bin/skill/types/SkillPlugin.d.ts +2 -2
  90. package/bin/skill/types/SkillPlugin.d.ts.map +1 -1
  91. package/bin/web/Plugin.js +1 -1
  92. package/bin/web/Plugin.js.map +1 -1
  93. package/bin/web/runtime/Install.js +2 -2
  94. package/bin/web/runtime/Install.js.map +1 -1
  95. package/bin/web/types/WebPlugin.d.ts +2 -1
  96. package/bin/web/types/WebPlugin.d.ts.map +1 -1
  97. package/bin/workboard/Plugin.d.ts +23 -3
  98. package/bin/workboard/Plugin.d.ts.map +1 -1
  99. package/bin/workboard/Plugin.js +66 -85
  100. package/bin/workboard/Plugin.js.map +1 -1
  101. package/package.json +2 -2
  102. package/src/BuiltinPlugins.ts +41 -5
  103. package/src/auth/types/AuthPlugin.ts +12 -17
  104. package/src/chat/ChatPlugin.ts +92 -89
  105. package/src/chat/Index.ts +18 -1
  106. package/src/chat/channels/Configuration.ts +1 -1
  107. package/src/chat/channels/RuntimeChannel.ts +264 -0
  108. package/src/chat/runtime/ChatAuthorizationRuntime.ts +229 -0
  109. package/src/chat/runtime/ChatChannelActions.ts +24 -9
  110. package/src/chat/runtime/ChatChannelConfig.ts +2 -100
  111. package/src/chat/runtime/ChatChannelCore.ts +20 -8
  112. package/src/chat/runtime/ChatPluginActionRegistry.ts +1 -1
  113. package/src/chat/runtime/PluginPoints.ts +3 -3
  114. package/src/chat/types/ChannelStatus.ts +1 -1
  115. package/src/chat/types/ChatPluginOptions.ts +79 -0
  116. package/src/contact/ContactPlugin.ts +17 -9
  117. package/src/contact/types/ContactPluginOptions.ts +30 -0
  118. package/src/index.ts +23 -7
  119. package/src/skill/Action.ts +10 -7
  120. package/src/skill/Command.ts +5 -5
  121. package/src/skill/Plugin.ts +1 -1
  122. package/src/skill/runtime/Discovery.ts +14 -11
  123. package/src/skill/runtime/Paths.ts +1 -13
  124. package/src/skill/runtime/Prompt.ts +5 -5
  125. package/src/skill/runtime/Store.ts +6 -3
  126. package/src/skill/runtime/SystemProvider.ts +4 -4
  127. package/src/skill/runtime/Types.ts +3 -3
  128. package/src/skill/types/{ClaudeSkill.ts → SkillDefinition.ts} +3 -3
  129. package/src/skill/types/SkillPlugin.ts +2 -2
  130. package/src/web/Plugin.ts +1 -1
  131. package/src/web/runtime/Install.ts +3 -3
  132. package/src/web/types/WebPlugin.ts +2 -2
  133. package/src/workboard/Plugin.ts +80 -95
  134. package/bin/auth/Plugin.d.ts +0 -17
  135. package/bin/auth/Plugin.d.ts.map +0 -1
  136. package/bin/auth/Plugin.js +0 -199
  137. package/bin/auth/Plugin.js.map +0 -1
  138. package/bin/chat/ChatPluginTypes.d.ts +0 -122
  139. package/bin/chat/ChatPluginTypes.d.ts.map +0 -1
  140. package/bin/chat/ChatPluginTypes.js +0 -10
  141. package/bin/chat/ChatPluginTypes.js.map +0 -1
  142. package/bin/skill/types/ClaudeSkill.d.ts.map +0 -1
  143. package/bin/skill/types/ClaudeSkill.js.map +0 -1
  144. package/src/auth/Plugin.ts +0 -237
  145. package/src/chat/ChatPluginTypes.ts +0 -126
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Claude Code-compatible skill 模型。
2
+ * Skill 定义模型。
3
3
  *
4
4
  * 关键点(中文)
5
5
  * - skill 最小单元目录为 `<root>/<skill-id>/SKILL.md`。
@@ -7,4 +7,4 @@
7
7
  * - 该类型为 skill plugin、CLI 与内部辅助模块的共享事实源。
8
8
  */
9
9
  export {};
10
- //# sourceMappingURL=ClaudeSkill.js.map
10
+ //# sourceMappingURL=SkillDefinition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkillDefinition.js","sourceRoot":"","sources":["../../../src/skill/types/SkillDefinition.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
@@ -6,7 +6,7 @@
6
6
  * - constructor options 是 skill plugin 的唯一行为配置入口。
7
7
  * - 该文件只描述插件协议,不承载发现、安装或 system 组装逻辑。
8
8
  */
9
- import type { ClaudeSkill } from "../../skill/types/ClaudeSkill.js";
9
+ import type { SkillDefinition } from "../../skill/types/SkillDefinition.js";
10
10
  import type { SkillRootSource } from "../../skill/types/SkillRoot.js";
11
11
  /**
12
12
  * skill plugin action 名称常量。
@@ -71,7 +71,7 @@ export type SkillPluginLookupPayload = {
71
71
  /**
72
72
  * skill 忽略规则。
73
73
  */
74
- export type SkillPluginIgnoreRule = string | RegExp | ((skill: ClaudeSkill) => boolean);
74
+ export type SkillPluginIgnoreRule = string | RegExp | ((skill: SkillDefinition) => boolean);
75
75
  /**
76
76
  * SkillPlugin 构造参数。
77
77
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SkillPlugin.d.ts","sourceRoot":"","sources":["../../../src/skill/types/SkillPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEK,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,MAAM,GACN,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;IAC1D;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;IACzD;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;OAEG;IACH,MAAM,EAAE,qBAAqB,EAAE,CAAC;CACjC"}
1
+ {"version":3,"file":"SkillPlugin.d.ts","sourceRoot":"","sources":["../../../src/skill/types/SkillPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;CAEK,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,MAAM,GACN,MAAM,GACN,CAAC,CAAC,KAAK,EAAE,eAAe,KAAK,OAAO,CAAC,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;OAOG;IACH,GAAG,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;IAC1D;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,qBAAqB,EAAE,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;OAEG;IACH,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;IACzD;;OAEG;IACH,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB;;OAEG;IACH,MAAM,EAAE,qBAAqB,EAAE,CAAC;CACjC"}
package/bin/web/Plugin.js CHANGED
@@ -119,7 +119,7 @@ export class WebPlugin extends BasePlugin {
119
119
  .option("--target <target>", "web-access、agent-browser 或 all")
120
120
  .option("--scope <scope>", "安装位置:user 或 project")
121
121
  .option("-y, --yes", "跳过确认(默认 true)", true)
122
- .option("--agent <agent>", "skill installer 目标 agent", "claude-code");
122
+ .option("--agent <agent>", "skill installer 目标 agent");
123
123
  },
124
124
  mapInput({ opts }) {
125
125
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/web/Plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/web/Plugin.ts"],"names":[],"mappings":"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"}
@@ -148,7 +148,7 @@ export async function installWebPluginTargets(params) {
148
148
  const target = resolve_install_target(payload.target);
149
149
  const scope = resolve_install_scope(payload.scope);
150
150
  const yes = read_boolean(payload.yes) ?? true;
151
- const agent = read_string(payload.agent) || "claude-code";
151
+ const agent = read_string(payload.agent);
152
152
  const targets = target === "all" ? ["web-access", "agent-browser"] : [target];
153
153
  const steps = [];
154
154
  for (const item of targets) {
@@ -170,7 +170,7 @@ export async function installWebPluginTargets(params) {
170
170
  return {
171
171
  target,
172
172
  scope,
173
- agent,
173
+ ...(agent ? { agent } : {}),
174
174
  steps: serialize_steps(steps),
175
175
  nextAction: "Use SkillPlugin lookup/list to inspect installed skills, then let the agent choose the concrete web path during task execution.",
176
176
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Install.js","sourceRoot":"","sources":["../../../src/web/runtime/Install.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAyBzD;;GAEG;AACH,SAAS,WAAW,CAAC,KAA4B;IAC/C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,KAA4B;IAChD,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,KAA4B;IAC1D,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,YAAY,IAAI,MAAM,KAAK,eAAe,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC9E,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,KAA4B;IACzD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAAC,OAAe;IAC3C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE;YAC9C,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;QACH,OAAO,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB,CAAC,MAIlC;IACC,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,eAAe,GAAG,+BAA+B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC1E,MAAM,IAAI,GACR,eAAe,KAAK,MAAM;YACxB,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC;YACpC,CAAC,CAAC,eAAe,KAAK,MAAM;gBAC1B,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC;gBACpC,CAAC,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;QACvD,MAAM,KAAK,CAAC,eAAe,EAAE,IAAI,EAAE;YACjC,GAAG,EAAE,MAAM,CAAC,SAAS;YACrB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;QACzD,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,+BAA+B,CAAC,SAAiB;IACxD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IACzE,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC;IACpE,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,KAA6B;IACpD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,aAAa,CAAC,MAM5B;IACC,MAAM,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE;QACrC,MAAM,EAAE,MAAM,CAAC,KAAK,KAAK,MAAM;QAC/B,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAChB,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,QAAQ;QAC5B,OAAO,EAAE,IAAI;QACb,OAAO,EACL,MAAM,CAAC,KAAK,KAAK,MAAM;YACrB,CAAC,CAAC,aAAa,MAAM,CAAC,IAAI,uBAAuB;YACjD,CAAC,CAAC,aAAa,MAAM,CAAC,IAAI,0BAA0B;KACzD,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,yBAAyB,CAAC,MAIxC;IACC,IAAI,MAAM,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YAChB,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,yCAAyC;SACnD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,mBAAmB,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;QAClC,YAAY,EAAE,eAAe;QAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAChB,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,IAAI;QACb,OAAO,EACL,MAAM,CAAC,KAAK,KAAK,MAAM;YACrB,CAAC,CAAC,gDAAgD;YAClD,CAAC,CAAC,qDAAqD;KAC5D,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,MAG7C;IACC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAC9C,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC;IAC1D,MAAM,OAAO,GACX,MAAM,KAAK,KAAK,CAAC,CAAC,CAAE,CAAC,YAAY,EAAE,eAAe,CAAW,CAAC,CAAC,CAAE,CAAC,MAAM,CAAW,CAAC;IACtF,MAAM,KAAK,GAA2B,EAAE,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,aAAa,CAAC;YAClB,IAAI,EAAE,IAAI;YACV,KAAK;YACL,GAAG;YACH,KAAK;YACL,KAAK;SACN,CAAC,CAAC;QAEH,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;YAC7B,MAAM,yBAAyB,CAAC;gBAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,KAAK;gBACL,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,KAAK;QACL,KAAK;QACL,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;QAC7B,UAAU,EACR,iIAAiI;KACpI,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Install.js","sourceRoot":"","sources":["../../../src/web/runtime/Install.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,8 @@ export interface WebPluginInstallPayload {
50
50
  * skill installer 的目标 agent 名称。
51
51
  *
52
52
  * 说明(中文)
53
- * - 默认使用 `claude-code`,与现有 SkillPlugin 安装行为保持一致。
53
+ * - 留空时不向底层 skill installer 传递 `--agent`。
54
+ * - 只有需要显式指定 installer 目标时才传入。
54
55
  */
55
56
  agent?: string;
56
57
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"WebPlugin.d.ts","sourceRoot":"","sources":["../../../src/web/types/WebPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,eAAe,GAAG,KAAK,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAC9B;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CACtC"}
1
+ {"version":3,"file":"WebPlugin.d.ts","sourceRoot":"","sources":["../../../src/web/types/WebPlugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAE/E;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,eAAe,GAAG,KAAK,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAC9B;;;;;;OAMG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CACtC"}
@@ -2,15 +2,35 @@
2
2
  * Workboard Plugin。
3
3
  *
4
4
  * 关键点(中文)
5
- * - workboard 是一个 runtime 观测面板插件,负责提供结构化工作快照。
6
- * - 当前同时通过 plugin action 与 HTTP 注入提供快照,供 Town RPC 与 Town HTTP gateway 复用。
5
+ * - workboard runtime 观测面板插件,负责提供结构化工作快照。
6
+ * - plugin action 与 HTTP route 共享同一份快照读取逻辑。
7
+ * - 是否启用由是否注册该 plugin 决定,不再读取项目配置做二次开关。
7
8
  */
8
9
  import { BasePlugin } from "@downcity/agent/internal/plugin/core/BasePlugin.js";
10
+ import type { PluginActions, PluginHttpDefinition } from "@downcity/agent/internal/plugin/types/Plugin.js";
9
11
  /**
10
12
  * WorkboardPlugin:运行态观测面板插件。
11
13
  */
12
14
  export declare class WorkboardPlugin extends BasePlugin {
15
+ /**
16
+ * 当前 plugin 稳定名称。
17
+ */
13
18
  readonly name = "workboard";
14
- constructor();
19
+ /**
20
+ * 插件标题。
21
+ */
22
+ readonly title = "Workboard Snapshot";
23
+ /**
24
+ * 插件说明。
25
+ */
26
+ readonly description = "Collects structured runtime activity snapshots so console surfaces can show what the current agent is doing now and what it recently worked on.";
27
+ /**
28
+ * Workboard 对外 action。
29
+ */
30
+ readonly actions: PluginActions;
31
+ /**
32
+ * Workboard HTTP route。
33
+ */
34
+ readonly http: PluginHttpDefinition;
15
35
  }
16
36
  //# sourceMappingURL=Plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/workboard/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAkGhF;;GAEG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,QAAQ,CAAC,IAAI,eAAe;;CAM7B"}
1
+ {"version":3,"file":"Plugin.d.ts","sourceRoot":"","sources":["../../src/workboard/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAChF,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACrB,MAAM,iDAAiD,CAAC;AAqBzD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC7C;;OAEG;IACH,QAAQ,CAAC,IAAI,eAAe;IAE5B;;OAEG;IACH,QAAQ,CAAC,KAAK,wBAAwB;IAEtC;;OAEG;IACH,QAAQ,CAAC,WAAW,qJACgI;IAEpJ;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,aAAa,CAY7B;IAEF;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CA0BjC;CACH"}
@@ -2,102 +2,83 @@
2
2
  * Workboard Plugin。
3
3
  *
4
4
  * 关键点(中文)
5
- * - workboard 是一个 runtime 观测面板插件,负责提供结构化工作快照。
6
- * - 当前同时通过 plugin action 与 HTTP 注入提供快照,供 Town RPC 与 Town HTTP gateway 复用。
5
+ * - workboard runtime 观测面板插件,负责提供结构化工作快照。
6
+ * - plugin action 与 HTTP route 共享同一份快照读取逻辑。
7
+ * - 是否启用由是否注册该 plugin 决定,不再读取项目配置做二次开关。
7
8
  */
8
9
  import { BasePlugin } from "@downcity/agent/internal/plugin/core/BasePlugin.js";
9
- import { isPluginEnabled } from "@downcity/agent/internal/plugin/core/Activation.js";
10
10
  import { getWorkboardSnapshotStore } from "../workboard/runtime/Store.js";
11
- function createWorkboardPluginDefinition(plugin) {
11
+ /**
12
+ * 读取 workboard 快照。
13
+ */
14
+ async function readWorkboardSnapshot(context) {
15
+ const snapshot = await getWorkboardSnapshotStore({
16
+ contextResolver: () => context,
17
+ }).readSnapshot();
12
18
  return {
13
- name: "workboard",
14
- title: "Workboard Snapshot",
15
- description: "Collects structured runtime activity snapshots so console surfaces can show what the current agent is doing now and what it recently worked on.",
16
- availability(context) {
17
- if (!isPluginEnabled({ plugin, context })) {
19
+ success: true,
20
+ snapshot,
21
+ };
22
+ }
23
+ /**
24
+ * WorkboardPlugin:运行态观测面板插件。
25
+ */
26
+ export class WorkboardPlugin extends BasePlugin {
27
+ /**
28
+ * 当前 plugin 稳定名称。
29
+ */
30
+ name = "workboard";
31
+ /**
32
+ * 插件标题。
33
+ */
34
+ title = "Workboard Snapshot";
35
+ /**
36
+ * 插件说明。
37
+ */
38
+ description = "Collects structured runtime activity snapshots so console surfaces can show what the current agent is doing now and what it recently worked on.";
39
+ /**
40
+ * Workboard 对外 action。
41
+ */
42
+ actions = {
43
+ snapshot: {
44
+ execute: async ({ context }) => {
45
+ const response = await readWorkboardSnapshot(context);
18
46
  return {
19
- enabled: false,
20
- available: false,
21
- reasons: ["workboard plugin disabled in project config"],
47
+ success: true,
48
+ data: {
49
+ snapshot: response.snapshot,
50
+ },
22
51
  };
23
- }
24
- return {
25
- enabled: true,
26
- available: true,
27
- reasons: [],
28
- };
29
- },
30
- actions: {
31
- snapshot: {
32
- execute: async ({ context }) => {
33
- const availability = await plugin.availability?.(context);
34
- if (availability && availability.available !== true) {
35
- return {
36
- success: false,
37
- error: availability.reasons.join("; ") || "workboard unavailable",
38
- };
39
- }
40
- const snapshot = await getWorkboardSnapshotStore({
41
- contextResolver: () => context,
42
- }).readSnapshot();
43
- return {
44
- success: true,
45
- data: {
46
- snapshot,
47
- },
48
- };
49
- },
50
52
  },
51
53
  },
52
- http: {
53
- server: {
54
- authPolicies: [
55
- {
56
- path: "/api/workboard/*",
57
- method: "GET",
58
- requireAuth: true,
59
- anyPermissions: ["agent.read"],
60
- },
61
- ],
62
- register({ app, getContext }) {
63
- app.get("/api/workboard/snapshot", async (c) => {
64
- try {
65
- const availability = await plugin.availability?.(getContext());
66
- if (availability && availability.available !== true) {
67
- return c.json({
68
- success: false,
69
- error: availability.reasons.join("; ") || "workboard unavailable",
70
- }, 503);
71
- }
72
- const snapshot = await getWorkboardSnapshotStore({
73
- contextResolver: getContext,
74
- }).readSnapshot();
75
- const payload = {
76
- success: true,
77
- snapshot,
78
- };
79
- return c.json(payload);
80
- }
81
- catch (error) {
82
- return c.json({
83
- success: false,
84
- error: error instanceof Error ? error.message : String(error),
85
- }, 500);
86
- }
87
- });
54
+ };
55
+ /**
56
+ * Workboard HTTP route。
57
+ */
58
+ http = {
59
+ server: {
60
+ authPolicies: [
61
+ {
62
+ path: "/api/workboard/*",
63
+ method: "GET",
64
+ requireAuth: true,
65
+ anyPermissions: ["agent.read"],
88
66
  },
67
+ ],
68
+ register({ app, getContext }) {
69
+ app.get("/api/workboard/snapshot", async (c) => {
70
+ try {
71
+ return c.json(await readWorkboardSnapshot(getContext()));
72
+ }
73
+ catch (error) {
74
+ return c.json({
75
+ success: false,
76
+ error: error instanceof Error ? error.message : String(error),
77
+ }, 500);
78
+ }
79
+ });
89
80
  },
90
81
  },
91
82
  };
92
83
  }
93
- /**
94
- * WorkboardPlugin:运行态观测面板插件。
95
- */
96
- export class WorkboardPlugin extends BasePlugin {
97
- name = "workboard";
98
- constructor() {
99
- super();
100
- Object.assign(this, createWorkboardPluginDefinition(this));
101
- }
102
- }
103
84
  //# sourceMappingURL=Plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/workboard/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAGhF,OAAO,EAAE,eAAe,EAAE,MAAM,oDAAoD,CAAC;AACrF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAGzE,SAAS,+BAA+B,CAAC,MAAc;IACrD,OAAO;QACL,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EACT,iJAAiJ;QACnJ,YAAY,CAAC,OAAO;YAClB,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC1C,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,KAAK;oBAChB,OAAO,EAAE,CAAC,6CAA6C,CAAC;iBACzD,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,EAAE;aACZ,CAAC;QACJ,CAAC;QACD,OAAO,EAAE;YACP,QAAQ,EAAE;gBACR,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;oBAC7B,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,CAAC;oBAC1D,IAAI,YAAY,IAAI,YAAY,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;wBACpD,OAAO;4BACL,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,uBAAuB;yBAClE,CAAC;oBACJ,CAAC;oBAED,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC;wBAC/C,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO;qBAC/B,CAAC,CAAC,YAAY,EAAE,CAAC;oBAClB,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE;4BACJ,QAAQ;yBACe;qBAC1B,CAAC;gBACJ,CAAC;aACF;SACF;QACD,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,kBAAkB;wBACxB,MAAM,EAAE,KAAK;wBACb,WAAW,EAAE,IAAI;wBACjB,cAAc,EAAE,CAAC,YAAY,CAAC;qBAC/B;iBACF;gBACD,QAAQ,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE;oBAC1B,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;wBAC7C,IAAI,CAAC;4BACH,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;4BAC/D,IAAI,YAAY,IAAI,YAAY,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;gCACpD,OAAO,CAAC,CAAC,IAAI,CACX;oCACE,OAAO,EAAE,KAAK;oCACd,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,uBAAuB;iCAClE,EACD,GAAG,CACJ,CAAC;4BACJ,CAAC;4BAED,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC;gCAC/C,eAAe,EAAE,UAAU;6BAC5B,CAAC,CAAC,YAAY,EAAE,CAAC;4BAClB,MAAM,OAAO,GAA8B;gCACzC,OAAO,EAAE,IAAI;gCACb,QAAQ;6BACT,CAAC;4BACF,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACzB,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,OAAO,CAAC,CAAC,IAAI,CACX;gCACE,OAAO,EAAE,KAAK;gCACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;6BAC9D,EACD,GAAG,CACJ,CAAC;wBACJ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,UAAU;IACpC,IAAI,GAAG,WAAW,CAAC;IAE5B;QACE,KAAK,EAAE,CAAC;QACR,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,+BAA+B,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"Plugin.js","sourceRoot":"","sources":["../../src/workboard/Plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAC;AAOhF,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAGzE;;GAEG;AACH,KAAK,UAAU,qBAAqB,CAClC,OAAqB;IAErB,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC;QAC/C,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO;KAC/B,CAAC,CAAC,YAAY,EAAE,CAAC;IAClB,OAAO;QACL,OAAO,EAAE,IAAI;QACb,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,UAAU;IAC7C;;OAEG;IACM,IAAI,GAAG,WAAW,CAAC;IAE5B;;OAEG;IACM,KAAK,GAAG,oBAAoB,CAAC;IAEtC;;OAEG;IACM,WAAW,GAClB,iJAAiJ,CAAC;IAEpJ;;OAEG;IACM,OAAO,GAAkB;QAChC,QAAQ,EAAE;YACR,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC7B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;gBACtD,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,QAAQ,EAAE,QAAQ,CAAC,QAAQ;qBACJ;iBAC1B,CAAC;YACJ,CAAC;SACF;KACF,CAAC;IAEF;;OAEG;IACM,IAAI,GAAyB;QACpC,MAAM,EAAE;YACN,YAAY,EAAE;gBACZ;oBACE,IAAI,EAAE,kBAAkB;oBACxB,MAAM,EAAE,KAAK;oBACb,WAAW,EAAE,IAAI;oBACjB,cAAc,EAAE,CAAC,YAAY,CAAC;iBAC/B;aACF;YACD,QAAQ,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE;gBAC1B,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC7C,IAAI,CAAC;wBACH,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,qBAAqB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;oBAC3D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,CAAC,IAAI,CACX;4BACE,OAAO,EAAE,KAAK;4BACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;yBAC9D,EACD,GAAG,CACJ,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;SACF;KACF,CAAC;CACH"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@downcity/plugins",
3
- "version": "1.0.57",
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",
@@ -8,7 +8,6 @@
8
8
  */
9
9
 
10
10
  import type { BasePlugin } from "@downcity/agent/internal/plugin/core/BasePlugin.js";
11
- import { ChatAuthorizationPlugin } from "@/auth/Plugin.js";
12
11
  import { SkillPlugin } from "@/skill/Plugin.js";
13
12
  import { WebPlugin } from "@/web/Plugin.js";
14
13
  import { WorkboardPlugin } from "@/workboard/Plugin.js";
@@ -17,6 +16,12 @@ import { ContactPlugin } from "@/contact/ContactPlugin.js";
17
16
  import { TaskPlugin } from "@/task/TaskPlugin.js";
18
17
  import { MemoryPlugin } from "@/memory/MemoryPlugin.js";
19
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";
20
25
 
21
26
  /**
22
27
  * 内建 plugin class 构造器。
@@ -24,10 +29,11 @@ import { ShellPlugin } from "@/shell/ShellPlugin.js";
24
29
  export type BuiltinPluginClass<T extends BasePlugin = BasePlugin> = new () => T;
25
30
 
26
31
  /**
27
- * 全部内建 plugin classes。
32
+ * 可直接无参创建的内建 plugin classes。
33
+ *
34
+ * 关键点(中文):image / asr / tts 需要宿主注入 City AI 能力,不能放入无参 class 列表。
28
35
  */
29
36
  export const BUILTIN_PLUGIN_CLASSES: BuiltinPluginClass[] = [
30
- ChatAuthorizationPlugin,
31
37
  SkillPlugin,
32
38
  WebPlugin,
33
39
  WorkboardPlugin,
@@ -38,9 +44,39 @@ export const BUILTIN_PLUGIN_CLASSES: BuiltinPluginClass[] = [
38
44
  ShellPlugin,
39
45
  ];
40
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
+
41
67
  /**
42
68
  * 创建完整内建 plugin 实例集合。
43
69
  */
44
- export function createBuiltinPlugins(): BasePlugin[] {
45
- 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;
46
82
  }
@@ -1,20 +1,15 @@
1
1
  /**
2
- * ChatAuthorizationPlugin 类型与契约定义。
2
+ * ChatAuthorization 类型与契约定义。
3
3
  *
4
4
  * 关键点(中文)
5
- * - 统一维护聊天授权 plugin 的领域类型、扩展点/action 名称、payload 契约。
6
- * - 业务层不应散落硬编码字符串,如 `chat.authorizeIncoming`、`set-user-role`。
7
- * - chat / console / plugin 执行链路都从这里共享同一份边界定义。
5
+ * - 统一维护 ChatPlugin 内置授权能力的领域类型、扩展点/action 名称、payload 契约。
6
+ * - 业务层不应散落硬编码字符串,如 `chat.authorizeIncoming`、`authorization-set-user-role`。
7
+ * - chat / console / plugin action 执行链路都从这里共享同一份边界定义。
8
8
  */
9
9
 
10
10
  import type { ChatDispatchChannel } from "@/chat/types/ChatDispatcher.js";
11
11
  import { CHAT_PLUGIN_POINTS } from "@/chat/runtime/PluginPoints.js";
12
12
 
13
- /**
14
- * 聊天授权 plugin 稳定名称。
15
- */
16
- export const CHAT_AUTHORIZATION_PLUGIN_NAME = "chat-authorization";
17
-
18
13
  /**
19
14
  * 聊天授权支持的渠道目录。
20
15
  */
@@ -28,7 +23,7 @@ export type ChatAuthorizationChannel = (typeof CHAT_AUTHORIZATION_CHANNELS)[numb
28
23
  /**
29
24
  * 聊天授权扩展点名称集合。
30
25
  */
31
- export const CHAT_AUTHORIZATION_PLUGIN_POINTS = {
26
+ export const CHAT_AUTHORIZATION_POINTS = {
32
27
  observePrincipal: CHAT_PLUGIN_POINTS.observePrincipal,
33
28
  authorizeIncoming: CHAT_PLUGIN_POINTS.authorizeIncoming,
34
29
  resolveUserRole: CHAT_PLUGIN_POINTS.resolveUserRole,
@@ -38,10 +33,10 @@ export const CHAT_AUTHORIZATION_PLUGIN_POINTS = {
38
33
  * 聊天授权 action 名称集合。
39
34
  */
40
35
  export const CHAT_AUTHORIZATION_ACTIONS = {
41
- snapshot: "snapshot",
42
- readConfig: "read-config",
43
- writeConfig: "write-config",
44
- setUserRole: "set-user-role",
36
+ snapshot: "authorization-snapshot",
37
+ readConfig: "authorization-read-config",
38
+ writeConfig: "authorization-write-config",
39
+ setUserRole: "authorization-set-user-role",
45
40
  } as const;
46
41
 
47
42
  /**
@@ -463,7 +458,7 @@ export interface ChatAuthorizationStateFile {
463
458
  }
464
459
 
465
460
  /**
466
- * plugin effect 输入:记录观测主体。
461
+ * ChatPlugin effect 输入:记录观测主体。
467
462
  */
468
463
  export interface ChatAuthorizationObservePrincipalPayload {
469
464
  /**
@@ -493,7 +488,7 @@ export interface ChatAuthorizationObservePrincipalPayload {
493
488
  }
494
489
 
495
490
  /**
496
- * plugin effect 输出:记录观测主体结果。
491
+ * ChatPlugin effect 输出:记录观测主体结果。
497
492
  */
498
493
  export interface ChatAuthorizationObservePrincipalResult {
499
494
  /**
@@ -503,7 +498,7 @@ export interface ChatAuthorizationObservePrincipalResult {
503
498
  }
504
499
 
505
500
  /**
506
- * plugin resolve 输入:查询用户角色。
501
+ * ChatPlugin resolve 输入:查询用户角色。
507
502
  */
508
503
  export interface ChatAuthorizationResolveUserRolePayload {
509
504
  /**