@vetta-org/plugin-sdk 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/agent.d.ts +0 -12
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js.map +1 -1
  4. package/dist/ai.d.ts +13 -0
  5. package/dist/ai.d.ts.map +1 -1
  6. package/dist/ai.js.map +1 -1
  7. package/dist/app-actions.d.ts +0 -1
  8. package/dist/app-actions.d.ts.map +1 -1
  9. package/dist/app-actions.js.map +1 -1
  10. package/dist/cli-provider.d.ts +18 -0
  11. package/dist/cli-provider.d.ts.map +1 -0
  12. package/dist/cli-provider.js +2 -0
  13. package/dist/cli-provider.js.map +1 -0
  14. package/dist/context.d.ts +13 -2
  15. package/dist/context.d.ts.map +1 -1
  16. package/dist/context.js.map +1 -1
  17. package/dist/index.d.ts +10 -5
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/manifest-schema.d.ts +454 -51
  22. package/dist/manifest-schema.d.ts.map +1 -1
  23. package/dist/manifest-schema.js +139 -33
  24. package/dist/manifest-schema.js.map +1 -1
  25. package/dist/manifest.d.ts +2 -2
  26. package/dist/manifest.d.ts.map +1 -1
  27. package/dist/manifest.js +164 -38
  28. package/dist/manifest.js.map +1 -1
  29. package/dist/models.d.ts +35 -0
  30. package/dist/models.d.ts.map +1 -0
  31. package/dist/models.js +2 -0
  32. package/dist/models.js.map +1 -0
  33. package/dist/ocr.d.ts +78 -0
  34. package/dist/ocr.d.ts.map +1 -0
  35. package/dist/ocr.js +2 -0
  36. package/dist/ocr.js.map +1 -0
  37. package/dist/official.d.ts +1 -0
  38. package/dist/official.d.ts.map +1 -1
  39. package/dist/official.js.map +1 -1
  40. package/dist/permissions.d.ts +1 -1
  41. package/dist/permissions.d.ts.map +1 -1
  42. package/dist/permissions.js +8 -0
  43. package/dist/permissions.js.map +1 -1
  44. package/dist/secrets.d.ts +27 -0
  45. package/dist/secrets.d.ts.map +1 -0
  46. package/dist/secrets.js +2 -0
  47. package/dist/secrets.js.map +1 -0
  48. package/dist/service-provider.d.ts +62 -0
  49. package/dist/service-provider.d.ts.map +1 -0
  50. package/dist/service-provider.js +2 -0
  51. package/dist/service-provider.js.map +1 -0
  52. package/dist/storage.d.ts +39 -6
  53. package/dist/storage.d.ts.map +1 -1
  54. package/dist/storage.js +8 -1
  55. package/dist/storage.js.map +1 -1
  56. package/dist/ui.d.ts +118 -7
  57. package/dist/ui.d.ts.map +1 -1
  58. package/dist/ui.js.map +1 -1
  59. package/package.json +2 -1
  60. package/dist/settings.d.ts +0 -13
  61. package/dist/settings.d.ts.map +0 -1
  62. package/dist/settings.js +0 -2
  63. package/dist/settings.js.map +0 -1
@@ -3,36 +3,138 @@ export declare const PluginIdSchema: import("@sinclair/typebox").TString;
3
3
  export declare const PluginVersionSchema: import("@sinclair/typebox").TString;
4
4
  export declare const PluginCommandNameSchema: import("@sinclair/typebox").TString;
5
5
  export declare const PluginCommandNamesSchema: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
6
+ export declare const PluginCliProviderManifestSchema: import("@sinclair/typebox").TObject<{
7
+ id: import("@sinclair/typebox").TString;
8
+ command: import("@sinclair/typebox").TString;
9
+ probe: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
10
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
11
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
12
+ }>>;
13
+ install: import("@sinclair/typebox").TObject<{
14
+ command: import("@sinclair/typebox").TString;
15
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
16
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
17
+ }>;
18
+ }>;
19
+ export declare const PluginServiceArtifactSchema: import("@sinclair/typebox").TObject<{
20
+ sha256: import("@sinclair/typebox").TString;
21
+ archive: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"file">, import("@sinclair/typebox").TLiteral<"zip">, import("@sinclair/typebox").TLiteral<"tar.gz">]>;
22
+ /** Relative file (archive=file) or directory (archive=zip/tar.gz) below the managed runtime root. */
23
+ destination: import("@sinclair/typebox").TString;
24
+ }>;
25
+ export declare const PluginServicePlatformSchema: import("@sinclair/typebox").TObject<{
26
+ executable: import("@sinclair/typebox").TString;
27
+ artifacts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
28
+ sha256: import("@sinclair/typebox").TString;
29
+ archive: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"file">, import("@sinclair/typebox").TLiteral<"zip">, import("@sinclair/typebox").TLiteral<"tar.gz">]>;
30
+ /** Relative file (archive=file) or directory (archive=zip/tar.gz) below the managed runtime root. */
31
+ destination: import("@sinclair/typebox").TString;
32
+ }>>;
33
+ }>;
34
+ export declare const PluginServiceProviderManifestSchema: import("@sinclair/typebox").TObject<{
35
+ id: import("@sinclair/typebox").TString;
36
+ runtime: import("@sinclair/typebox").TObject<{
37
+ /** `managed-binary` is the backwards-compatible default. */
38
+ kind: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"managed-binary">, import("@sinclair/typebox").TLiteral<"host-node">]>>;
39
+ version: import("@sinclair/typebox").TString;
40
+ /** Entry script relative to the installed runtime (required for host-node). */
41
+ entry: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
42
+ platforms: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
43
+ executable: import("@sinclair/typebox").TString;
44
+ artifacts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
45
+ sha256: import("@sinclair/typebox").TString;
46
+ archive: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"file">, import("@sinclair/typebox").TLiteral<"zip">, import("@sinclair/typebox").TLiteral<"tar.gz">]>;
47
+ /** Relative file (archive=file) or directory (archive=zip/tar.gz) below the managed runtime root. */
48
+ destination: import("@sinclair/typebox").TString;
49
+ }>>;
50
+ }>>;
51
+ }>;
52
+ credentials: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
53
+ id: import("@sinclair/typebox").TString;
54
+ bytes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
55
+ }>>>;
56
+ templates: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
57
+ source: import("@sinclair/typebox").TString;
58
+ destination: import("@sinclair/typebox").TString;
59
+ /** create preserves a data file; render regenerates a cache file on every start. */
60
+ mode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"create">, import("@sinclair/typebox").TLiteral<"render">]>;
61
+ }>>>;
62
+ process: import("@sinclair/typebox").TObject<{
63
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
64
+ env: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
65
+ }>;
66
+ health: import("@sinclair/typebox").TObject<{
67
+ path: import("@sinclair/typebox").TString;
68
+ credentialId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
69
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
70
+ readiness: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
71
+ mode: import("@sinclair/typebox").TLiteral<"plugin">;
72
+ }>>;
73
+ }>;
74
+ }>;
75
+ export declare const PluginProvidersManifestSchema: import("@sinclair/typebox").TObject<{
76
+ cli: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
77
+ id: import("@sinclair/typebox").TString;
78
+ command: import("@sinclair/typebox").TString;
79
+ probe: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
80
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
81
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
82
+ }>>;
83
+ install: import("@sinclair/typebox").TObject<{
84
+ command: import("@sinclair/typebox").TString;
85
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
86
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
87
+ }>;
88
+ }>>>;
89
+ services: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
90
+ id: import("@sinclair/typebox").TString;
91
+ runtime: import("@sinclair/typebox").TObject<{
92
+ /** `managed-binary` is the backwards-compatible default. */
93
+ kind: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"managed-binary">, import("@sinclair/typebox").TLiteral<"host-node">]>>;
94
+ version: import("@sinclair/typebox").TString;
95
+ /** Entry script relative to the installed runtime (required for host-node). */
96
+ entry: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
97
+ platforms: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
98
+ executable: import("@sinclair/typebox").TString;
99
+ artifacts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
100
+ sha256: import("@sinclair/typebox").TString;
101
+ archive: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"file">, import("@sinclair/typebox").TLiteral<"zip">, import("@sinclair/typebox").TLiteral<"tar.gz">]>;
102
+ /** Relative file (archive=file) or directory (archive=zip/tar.gz) below the managed runtime root. */
103
+ destination: import("@sinclair/typebox").TString;
104
+ }>>;
105
+ }>>;
106
+ }>;
107
+ credentials: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
108
+ id: import("@sinclair/typebox").TString;
109
+ bytes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
110
+ }>>>;
111
+ templates: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
112
+ source: import("@sinclair/typebox").TString;
113
+ destination: import("@sinclair/typebox").TString;
114
+ /** create preserves a data file; render regenerates a cache file on every start. */
115
+ mode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"create">, import("@sinclair/typebox").TLiteral<"render">]>;
116
+ }>>>;
117
+ process: import("@sinclair/typebox").TObject<{
118
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
119
+ env: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
120
+ }>;
121
+ health: import("@sinclair/typebox").TObject<{
122
+ path: import("@sinclair/typebox").TString;
123
+ credentialId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
124
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
125
+ readiness: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
126
+ mode: import("@sinclair/typebox").TLiteral<"plugin">;
127
+ }>>;
128
+ }>;
129
+ }>>>;
130
+ }>;
6
131
  export declare const PluginNetworkManifestSchema: import("@sinclair/typebox").TObject<{
7
132
  allowedHosts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
8
133
  }>;
9
134
  export declare const PluginBrowserManifestSchema: import("@sinclair/typebox").TObject<{
10
135
  allowedHosts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
11
136
  }>;
12
- export declare const PluginPermissionSchema: import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<"agent.command.run" | "agent.command.spawn" | "agent.continuation.register" | "agent.hookHandler.execute" | "agent.hooks.register" | "agent.mcp.control" | "agent.runtime.configure" | "agent.session.read" | "agent.session.write" | "agent.skills.control" | "agent.state.read" | "agent.state.write" | "agent.systemPrompt.fullControl" | "agent.systemPrompt.read" | "agent.systemPrompt.write" | "agent.toolHandler.execute" | "agent.tools.control" | "agent.tools.register" | "ai.complete" | "ai.models.list" | "app.actionHandler.execute" | "app.actions.register" | "browser.attach" | "browser.interact" | "browser.open" | "browser.profile.persist" | "browser.read" | "browser.runtime.manage" | "capture.offscreen" | "fs.read" | "fs.write" | "media.generate" | "media.provider.register" | "network.fetch" | "settings.read" | "settings.write" | "shell.openExternal" | "storage.read" | "storage.write" | "ui.file-explorer.context-menu" | "ui.file-explorer.decorations" | "ui.file-explorer.toolbar" | "ui.shortcuts.register" | "ui.slot.activity-tab" | "ui.slot.file-preview" | "ui.slot.global" | "ui.slot.input-action" | "ui.slot.message" | "ui.slot.tool-call" | "ui.slot.turn-card" | "ui.slot.workspace-view" | "workspace.read">[]>;
13
- export declare const PluginSettingDefinitionSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
14
- key: import("@sinclair/typebox").TString;
15
- description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
16
- default: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean]>>;
17
- enum: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
18
- visibleWhen: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
19
- key: import("@sinclair/typebox").TString;
20
- in: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
21
- }>>;
22
- type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"string">, import("@sinclair/typebox").TLiteral<"number">, import("@sinclair/typebox").TLiteral<"boolean">, import("@sinclair/typebox").TLiteral<"enum">, import("@sinclair/typebox").TLiteral<"secret">]>;
23
- title: import("@sinclair/typebox").TString;
24
- }>, import("@sinclair/typebox").TObject<{
25
- key: import("@sinclair/typebox").TString;
26
- description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
27
- default: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean]>>;
28
- enum: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
29
- visibleWhen: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
30
- key: import("@sinclair/typebox").TString;
31
- in: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
32
- }>>;
33
- type: import("@sinclair/typebox").TLiteral<"desc">;
34
- title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
35
- }>]>;
137
+ export declare const PluginPermissionSchema: import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<"agent.command.run" | "agent.command.spawn" | "agent.continuation.register" | "agent.hookHandler.execute" | "agent.hooks.register" | "agent.mcp.control" | "agent.runtime.configure" | "agent.session.read" | "agent.session.write" | "agent.skills.control" | "agent.state.read" | "agent.state.write" | "agent.systemPrompt.fullControl" | "agent.systemPrompt.read" | "agent.systemPrompt.write" | "agent.toolHandler.execute" | "agent.tools.control" | "agent.tools.register" | "ai.complete" | "ai.models.list" | "ai.ocr.provider.register" | "ai.ocr.recognize" | "app.actionHandler.execute" | "app.actions.register" | "browser.attach" | "browser.interact" | "browser.open" | "browser.profile.persist" | "browser.read" | "browser.runtime.manage" | "capture.offscreen" | "conversation.draft.read" | "fs.read" | "fs.write" | "media.generate" | "media.provider.register" | "models.manage" | "network.fetch" | "secrets.read" | "secrets.write" | "settings.read" | "settings.write" | "shell.openExternal" | "storage.read" | "storage.write" | "ui.file-explorer.context-menu" | "ui.file-explorer.decorations" | "ui.file-explorer.toolbar" | "ui.shortcuts.register" | "ui.slot.ability-detail" | "ui.slot.activity-tab" | "ui.slot.file-preview" | "ui.slot.global" | "ui.slot.input-action" | "ui.slot.message" | "ui.slot.new-session-context" | "ui.slot.tool-call" | "ui.slot.turn-card" | "ui.slot.workspace-view" | "workspace.read">[]>;
36
138
  export declare const PluginMcpStdioServerConfigSchema: import("@sinclair/typebox").TObject<{
37
139
  disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
38
140
  autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
@@ -62,6 +164,19 @@ export declare const PluginMcpHttpServerConfigSchema: import("@sinclair/typebox"
62
164
  oauthDeviceFlow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
63
165
  oauthScopes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
64
166
  }>;
167
+ /** HTTP MCP served by one of this plugin's managed local services. */
168
+ export declare const PluginMcpServiceServerConfigSchema: import("@sinclair/typebox").TObject<{
169
+ disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
170
+ autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
171
+ startupTimeout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
172
+ debug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
173
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
174
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
175
+ agent_mode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>>;
176
+ type: import("@sinclair/typebox").TLiteral<"service">;
177
+ serviceId: import("@sinclair/typebox").TString;
178
+ path: import("@sinclair/typebox").TString;
179
+ }>;
65
180
  export declare const PluginMcpServerConfigSchema: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
66
181
  disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
67
182
  autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
@@ -89,12 +204,174 @@ export declare const PluginMcpServerConfigSchema: import("@sinclair/typebox").TU
89
204
  oauthClientId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
90
205
  oauthDeviceFlow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
91
206
  oauthScopes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
207
+ }>, import("@sinclair/typebox").TObject<{
208
+ disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
209
+ autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
210
+ startupTimeout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
211
+ debug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
212
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
213
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
214
+ agent_mode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>>;
215
+ type: import("@sinclair/typebox").TLiteral<"service">;
216
+ serviceId: import("@sinclair/typebox").TString;
217
+ path: import("@sinclair/typebox").TString;
92
218
  }>]>;
219
+ export declare const PluginSkillPresentationRuleSchema: import("@sinclair/typebox").TObject<{
220
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
221
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
222
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
223
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
224
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
225
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
226
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
227
+ }>>;
228
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
229
+ displayDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
230
+ }>;
231
+ export declare const PluginSkillPresentationSchema: import("@sinclair/typebox").TObject<{
232
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
233
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
234
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
235
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
236
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
237
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
238
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
239
+ }>>;
240
+ skills: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
241
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
242
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
243
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
244
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
245
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
246
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
247
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
248
+ }>>;
249
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
250
+ displayDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
251
+ }>>>;
252
+ }>;
253
+ /** 插件贡献的智能体(blueprint)。人设、头像、职责都由插件提供,宿主只负责铺档案。 */
254
+ export declare const PluginAgentProfileManifestSchema: import("@sinclair/typebox").TObject<{
255
+ /** 插件内唯一;全局 id 由宿主拼成 `plugin:<pluginId>:<id>`。 */
256
+ id: import("@sinclair/typebox").TString;
257
+ /** 支持 `%key%` 占位,按插件 locales 解析。 */
258
+ name: import("@sinclair/typebox").TString;
259
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
260
+ /** @ 提及用的短名;缺省用 `id`。 */
261
+ mentionHandle: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
262
+ /** 插件包内的相对路径,指向头像图片。 */
263
+ avatar: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
264
+ /** 插件包内的相对路径,指向系统提示词 Markdown。与 `systemPrompt` 二选一。 */
265
+ systemPromptPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
266
+ systemPrompt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
267
+ /**
268
+ * `all`(默认)继承宿主全部已启用能力;`own` 只用本插件的能力。
269
+ * 两种模式下本插件的能力都强制激活,用户关不掉。
270
+ */
271
+ abilities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"all">, import("@sinclair/typebox").TLiteral<"own">]>>;
272
+ /**
273
+ * 本智能体接管的历史 blueprint id。
274
+ *
275
+ * 用于「人设从别处迁进插件」:宿主解析不到这些 id 时折算到本智能体,回填时也据此
276
+ * 认领用户已有的同角色档案,而不是再铺一份新的。宿主因此不必知道是哪个插件接管了
277
+ * 哪个老角色。
278
+ */
279
+ legacyIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
280
+ }>;
281
+ /**
282
+ * 插件贡献的团队成员。
283
+ *
284
+ * `agent` 只能写本插件 `agents[]` 里的智能体 id。刻意不支持引用别的插件——那会让一个插件的
285
+ * 可用性取决于另一个插件是否安装;宿主也没有内置人设可引用,装机自带的那几位同样由预置
286
+ * 插件提供。引用不到的成员会让这一支团队整体被跳过。
287
+ */
288
+ export declare const PluginAgentTeamMemberManifestSchema: import("@sinclair/typebox").TObject<{
289
+ agent: import("@sinclair/typebox").TString;
290
+ responsibility: import("@sinclair/typebox").TString;
291
+ }>;
292
+ /** 插件贡献的团队。第一个成员即队长,也是用户在会话里唯一的对话入口。 */
293
+ export declare const PluginAgentTeamManifestSchema: import("@sinclair/typebox").TObject<{
294
+ id: import("@sinclair/typebox").TString;
295
+ name: import("@sinclair/typebox").TString;
296
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
297
+ members: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
298
+ agent: import("@sinclair/typebox").TString;
299
+ responsibility: import("@sinclair/typebox").TString;
300
+ }>>;
301
+ /** 队长的团队任务书:把这支团队的固定流水线写死。与 `workflowPath` 二选一。 */
302
+ workflow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
303
+ workflowPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
304
+ /** 本团队接管的历史团队 id,语义同 `agents[].legacyIds`。 */
305
+ legacyIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
306
+ }>;
93
307
  export declare const PluginAgentManifestSchema: import("@sinclair/typebox").TObject<{
94
308
  systemPrompt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
95
309
  promptPaths: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
96
310
  }>>;
97
311
  skillPaths: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
312
+ skillPresentation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
313
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
314
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
315
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
316
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
317
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
318
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
319
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
320
+ }>>;
321
+ skills: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
322
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
323
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
324
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
325
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
326
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
327
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
328
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
329
+ }>>;
330
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
331
+ displayDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
332
+ }>>>;
333
+ }>>;
334
+ agents: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
335
+ /** 插件内唯一;全局 id 由宿主拼成 `plugin:<pluginId>:<id>`。 */
336
+ id: import("@sinclair/typebox").TString;
337
+ /** 支持 `%key%` 占位,按插件 locales 解析。 */
338
+ name: import("@sinclair/typebox").TString;
339
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
340
+ /** @ 提及用的短名;缺省用 `id`。 */
341
+ mentionHandle: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
342
+ /** 插件包内的相对路径,指向头像图片。 */
343
+ avatar: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
344
+ /** 插件包内的相对路径,指向系统提示词 Markdown。与 `systemPrompt` 二选一。 */
345
+ systemPromptPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
346
+ systemPrompt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
347
+ /**
348
+ * `all`(默认)继承宿主全部已启用能力;`own` 只用本插件的能力。
349
+ * 两种模式下本插件的能力都强制激活,用户关不掉。
350
+ */
351
+ abilities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"all">, import("@sinclair/typebox").TLiteral<"own">]>>;
352
+ /**
353
+ * 本智能体接管的历史 blueprint id。
354
+ *
355
+ * 用于「人设从别处迁进插件」:宿主解析不到这些 id 时折算到本智能体,回填时也据此
356
+ * 认领用户已有的同角色档案,而不是再铺一份新的。宿主因此不必知道是哪个插件接管了
357
+ * 哪个老角色。
358
+ */
359
+ legacyIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
360
+ }>>>;
361
+ teams: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
362
+ id: import("@sinclair/typebox").TString;
363
+ name: import("@sinclair/typebox").TString;
364
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
365
+ members: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
366
+ agent: import("@sinclair/typebox").TString;
367
+ responsibility: import("@sinclair/typebox").TString;
368
+ }>>;
369
+ /** 队长的团队任务书:把这支团队的固定流水线写死。与 `workflowPath` 二选一。 */
370
+ workflow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
371
+ workflowPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
372
+ /** 本团队接管的历史团队 id,语义同 `agents[].legacyIds`。 */
373
+ legacyIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
374
+ }>>>;
98
375
  mcpServers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
99
376
  disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
100
377
  autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
@@ -122,6 +399,17 @@ export declare const PluginAgentManifestSchema: import("@sinclair/typebox").TObj
122
399
  oauthClientId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
123
400
  oauthDeviceFlow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
124
401
  oauthScopes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
402
+ }>, import("@sinclair/typebox").TObject<{
403
+ disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
404
+ autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
405
+ startupTimeout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
406
+ debug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
407
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
408
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
409
+ agent_mode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>>;
410
+ type: import("@sinclair/typebox").TLiteral<"service">;
411
+ serviceId: import("@sinclair/typebox").TString;
412
+ path: import("@sinclair/typebox").TString;
125
413
  }>]>>]>>;
126
414
  toolPolicy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
127
415
  allow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
@@ -147,6 +435,69 @@ export declare const PluginManifestSchema: import("@sinclair/typebox").TObject<{
147
435
  promptPaths: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
148
436
  }>>;
149
437
  skillPaths: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
438
+ skillPresentation: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
439
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
440
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
441
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
442
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
443
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
444
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
445
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
446
+ }>>;
447
+ skills: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
448
+ defaultVisibility: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
449
+ surfaces: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
450
+ abilityCatalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
451
+ agentConfiguration: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
452
+ commandPalette: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
453
+ skillPicker: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
454
+ pluginDetail: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"visible">, import("@sinclair/typebox").TLiteral<"hidden">]>>;
455
+ }>>;
456
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
457
+ displayDescription: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
458
+ }>>>;
459
+ }>>;
460
+ agents: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
461
+ /** 插件内唯一;全局 id 由宿主拼成 `plugin:<pluginId>:<id>`。 */
462
+ id: import("@sinclair/typebox").TString;
463
+ /** 支持 `%key%` 占位,按插件 locales 解析。 */
464
+ name: import("@sinclair/typebox").TString;
465
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
466
+ /** @ 提及用的短名;缺省用 `id`。 */
467
+ mentionHandle: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
468
+ /** 插件包内的相对路径,指向头像图片。 */
469
+ avatar: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
470
+ /** 插件包内的相对路径,指向系统提示词 Markdown。与 `systemPrompt` 二选一。 */
471
+ systemPromptPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
472
+ systemPrompt: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
473
+ /**
474
+ * `all`(默认)继承宿主全部已启用能力;`own` 只用本插件的能力。
475
+ * 两种模式下本插件的能力都强制激活,用户关不掉。
476
+ */
477
+ abilities: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"all">, import("@sinclair/typebox").TLiteral<"own">]>>;
478
+ /**
479
+ * 本智能体接管的历史 blueprint id。
480
+ *
481
+ * 用于「人设从别处迁进插件」:宿主解析不到这些 id 时折算到本智能体,回填时也据此
482
+ * 认领用户已有的同角色档案,而不是再铺一份新的。宿主因此不必知道是哪个插件接管了
483
+ * 哪个老角色。
484
+ */
485
+ legacyIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
486
+ }>>>;
487
+ teams: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
488
+ id: import("@sinclair/typebox").TString;
489
+ name: import("@sinclair/typebox").TString;
490
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
491
+ members: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
492
+ agent: import("@sinclair/typebox").TString;
493
+ responsibility: import("@sinclair/typebox").TString;
494
+ }>>;
495
+ /** 队长的团队任务书:把这支团队的固定流水线写死。与 `workflowPath` 二选一。 */
496
+ workflow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
497
+ workflowPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
498
+ /** 本团队接管的历史团队 id,语义同 `agents[].legacyIds`。 */
499
+ legacyIds: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
500
+ }>>>;
150
501
  mcpServers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
151
502
  disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
152
503
  autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
@@ -174,14 +525,81 @@ export declare const PluginManifestSchema: import("@sinclair/typebox").TObject<{
174
525
  oauthClientId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
175
526
  oauthDeviceFlow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
176
527
  oauthScopes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
528
+ }>, import("@sinclair/typebox").TObject<{
529
+ disabled: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
530
+ autoApprove: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
531
+ startupTimeout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
532
+ debug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
533
+ displayName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
534
+ description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
535
+ agent_mode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>>;
536
+ type: import("@sinclair/typebox").TLiteral<"service">;
537
+ serviceId: import("@sinclair/typebox").TString;
538
+ path: import("@sinclair/typebox").TString;
177
539
  }>]>>]>>;
178
540
  toolPolicy: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
179
541
  allow: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
180
542
  deny: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
181
543
  }>>;
182
544
  }>>;
545
+ providers: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
546
+ cli: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
547
+ id: import("@sinclair/typebox").TString;
548
+ command: import("@sinclair/typebox").TString;
549
+ probe: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
550
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
551
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
552
+ }>>;
553
+ install: import("@sinclair/typebox").TObject<{
554
+ command: import("@sinclair/typebox").TString;
555
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
556
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
557
+ }>;
558
+ }>>>;
559
+ services: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
560
+ id: import("@sinclair/typebox").TString;
561
+ runtime: import("@sinclair/typebox").TObject<{
562
+ /** `managed-binary` is the backwards-compatible default. */
563
+ kind: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"managed-binary">, import("@sinclair/typebox").TLiteral<"host-node">]>>;
564
+ version: import("@sinclair/typebox").TString;
565
+ /** Entry script relative to the installed runtime (required for host-node). */
566
+ entry: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
567
+ platforms: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TObject<{
568
+ executable: import("@sinclair/typebox").TString;
569
+ artifacts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
570
+ sha256: import("@sinclair/typebox").TString;
571
+ archive: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"file">, import("@sinclair/typebox").TLiteral<"zip">, import("@sinclair/typebox").TLiteral<"tar.gz">]>;
572
+ /** Relative file (archive=file) or directory (archive=zip/tar.gz) below the managed runtime root. */
573
+ destination: import("@sinclair/typebox").TString;
574
+ }>>;
575
+ }>>;
576
+ }>;
577
+ credentials: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
578
+ id: import("@sinclair/typebox").TString;
579
+ bytes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
580
+ }>>>;
581
+ templates: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
582
+ source: import("@sinclair/typebox").TString;
583
+ destination: import("@sinclair/typebox").TString;
584
+ /** create preserves a data file; render regenerates a cache file on every start. */
585
+ mode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"create">, import("@sinclair/typebox").TLiteral<"render">]>;
586
+ }>>>;
587
+ process: import("@sinclair/typebox").TObject<{
588
+ args: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
589
+ env: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
590
+ }>;
591
+ health: import("@sinclair/typebox").TObject<{
592
+ path: import("@sinclair/typebox").TString;
593
+ credentialId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
594
+ timeoutMs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
595
+ readiness: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
596
+ mode: import("@sinclair/typebox").TLiteral<"plugin">;
597
+ }>>;
598
+ }>;
599
+ }>>>;
600
+ }>>;
183
601
  styles: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
184
- permissions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<"agent.command.run" | "agent.command.spawn" | "agent.continuation.register" | "agent.hookHandler.execute" | "agent.hooks.register" | "agent.mcp.control" | "agent.runtime.configure" | "agent.session.read" | "agent.session.write" | "agent.skills.control" | "agent.state.read" | "agent.state.write" | "agent.systemPrompt.fullControl" | "agent.systemPrompt.read" | "agent.systemPrompt.write" | "agent.toolHandler.execute" | "agent.tools.control" | "agent.tools.register" | "ai.complete" | "ai.models.list" | "app.actionHandler.execute" | "app.actions.register" | "browser.attach" | "browser.interact" | "browser.open" | "browser.profile.persist" | "browser.read" | "browser.runtime.manage" | "capture.offscreen" | "fs.read" | "fs.write" | "media.generate" | "media.provider.register" | "network.fetch" | "settings.read" | "settings.write" | "shell.openExternal" | "storage.read" | "storage.write" | "ui.file-explorer.context-menu" | "ui.file-explorer.decorations" | "ui.file-explorer.toolbar" | "ui.shortcuts.register" | "ui.slot.activity-tab" | "ui.slot.file-preview" | "ui.slot.global" | "ui.slot.input-action" | "ui.slot.message" | "ui.slot.tool-call" | "ui.slot.turn-card" | "ui.slot.workspace-view" | "workspace.read">[]>>>;
602
+ permissions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<import("@sinclair/typebox").TLiteral<"agent.command.run" | "agent.command.spawn" | "agent.continuation.register" | "agent.hookHandler.execute" | "agent.hooks.register" | "agent.mcp.control" | "agent.runtime.configure" | "agent.session.read" | "agent.session.write" | "agent.skills.control" | "agent.state.read" | "agent.state.write" | "agent.systemPrompt.fullControl" | "agent.systemPrompt.read" | "agent.systemPrompt.write" | "agent.toolHandler.execute" | "agent.tools.control" | "agent.tools.register" | "ai.complete" | "ai.models.list" | "ai.ocr.provider.register" | "ai.ocr.recognize" | "app.actionHandler.execute" | "app.actions.register" | "browser.attach" | "browser.interact" | "browser.open" | "browser.profile.persist" | "browser.read" | "browser.runtime.manage" | "capture.offscreen" | "conversation.draft.read" | "fs.read" | "fs.write" | "media.generate" | "media.provider.register" | "models.manage" | "network.fetch" | "secrets.read" | "secrets.write" | "settings.read" | "settings.write" | "shell.openExternal" | "storage.read" | "storage.write" | "ui.file-explorer.context-menu" | "ui.file-explorer.decorations" | "ui.file-explorer.toolbar" | "ui.shortcuts.register" | "ui.slot.ability-detail" | "ui.slot.activity-tab" | "ui.slot.file-preview" | "ui.slot.global" | "ui.slot.input-action" | "ui.slot.message" | "ui.slot.new-session-context" | "ui.slot.tool-call" | "ui.slot.turn-card" | "ui.slot.workspace-view" | "workspace.read">[]>>>;
185
603
  network: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
186
604
  allowedHosts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
187
605
  }>>;
@@ -189,31 +607,6 @@ export declare const PluginManifestSchema: import("@sinclair/typebox").TObject<{
189
607
  allowedHosts: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
190
608
  }>>;
191
609
  commands: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
192
- contributes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
193
- settings: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
194
- key: import("@sinclair/typebox").TString;
195
- description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
196
- default: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean]>>;
197
- enum: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
198
- visibleWhen: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
199
- key: import("@sinclair/typebox").TString;
200
- in: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
201
- }>>;
202
- type: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"string">, import("@sinclair/typebox").TLiteral<"number">, import("@sinclair/typebox").TLiteral<"boolean">, import("@sinclair/typebox").TLiteral<"enum">, import("@sinclair/typebox").TLiteral<"secret">]>;
203
- title: import("@sinclair/typebox").TString;
204
- }>, import("@sinclair/typebox").TObject<{
205
- key: import("@sinclair/typebox").TString;
206
- description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
207
- default: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNumber, import("@sinclair/typebox").TBoolean]>>;
208
- enum: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
209
- visibleWhen: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
210
- key: import("@sinclair/typebox").TString;
211
- in: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
212
- }>>;
213
- type: import("@sinclair/typebox").TLiteral<"desc">;
214
- title: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
215
- }>]>>>;
216
- }>>;
217
610
  description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
218
611
  author: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
219
612
  icon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
@@ -224,9 +617,19 @@ export declare const PluginManifestSchema: import("@sinclair/typebox").TObject<{
224
617
  }>>;
225
618
  agent_mode: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>]>>;
226
619
  }>;
227
- export type PluginSettingSchema = Static<typeof PluginSettingDefinitionSchema>;
228
620
  export type PluginMcpServerConfig = Static<typeof PluginMcpServerConfigSchema>;
229
621
  export type PluginAgentManifest = Static<typeof PluginAgentManifestSchema>;
622
+ export type PluginAgentProfileManifest = Static<typeof PluginAgentProfileManifestSchema>;
623
+ export type PluginAgentTeamManifest = Static<typeof PluginAgentTeamManifestSchema>;
624
+ export type PluginAgentTeamMemberManifest = Static<typeof PluginAgentTeamMemberManifestSchema>;
625
+ export type PluginSkillPresentation = Static<typeof PluginSkillPresentationSchema>;
626
+ export type PluginSkillPresentationRule = Static<typeof PluginSkillPresentationRuleSchema>;
627
+ export type PluginCliProviderManifest = Static<typeof PluginCliProviderManifestSchema>;
628
+ export type PluginServiceArtifact = Static<typeof PluginServiceArtifactSchema>;
629
+ export type PluginServicePlatform = Static<typeof PluginServicePlatformSchema>;
630
+ export type PluginServiceProviderManifest = Static<typeof PluginServiceProviderManifestSchema>;
631
+ export type PluginServiceRuntimeKind = "managed-binary" | "host-node";
632
+ export type PluginProvidersManifest = Static<typeof PluginProvidersManifestSchema>;
230
633
  export type PluginNetworkManifest = Static<typeof PluginNetworkManifestSchema>;
231
634
  export type PluginBrowserManifest = Static<typeof PluginBrowserManifestSchema>;
232
635
  export type PluginManifestInput = Static<typeof PluginManifestSchema>;