@cubos/agent-sdk 0.0.1148891 → 0.0.1150186
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.
- package/dist/admin/agents.d.ts +10 -0
- package/dist/admin/global.d.ts +39 -0
- package/dist/admin/index.d.ts +2 -1
- package/dist/generated/schema.d.ts +369 -2
- package/dist/index.js +210 -195
- package/dist/index.js.map +7 -7
- package/dist/sse.js +4 -4
- package/dist/sse.js.map +2 -2
- package/package.json +2 -2
package/dist/admin/agents.d.ts
CHANGED
|
@@ -192,6 +192,16 @@ export declare function agentsApi(t: Transport, tenantSlug: string): {
|
|
|
192
192
|
addTaskTemplate: (agentSlug: string, templateSlug: string) => Promise<void>;
|
|
193
193
|
removeTaskTemplate: (agentSlug: string, templateSlug: string) => Promise<void>;
|
|
194
194
|
replaceTaskTemplateRoles: (agentSlug: string, templateSlug: string, roleSlugs: string[]) => Promise<void>;
|
|
195
|
+
listKnowledgeBases: (agentSlug: string, signal?: AbortSignal) => Promise<{
|
|
196
|
+
created_at: string;
|
|
197
|
+
display_name: string;
|
|
198
|
+
id: string;
|
|
199
|
+
pending_count: number;
|
|
200
|
+
slug: string;
|
|
201
|
+
updated_at: string;
|
|
202
|
+
}[]>;
|
|
203
|
+
attachKnowledgeBase: (agentSlug: string, kbSlug: string) => Promise<void>;
|
|
204
|
+
detachKnowledgeBase: (agentSlug: string, kbSlug: string) => Promise<void>;
|
|
195
205
|
listAutoCallTools: (agentSlug: string, signal?: AbortSignal) => Promise<{
|
|
196
206
|
available: import("../generated/schema.js").components["schemas"]["AutoCallableTool"][];
|
|
197
207
|
enabled_mcp_count: number;
|
package/dist/admin/global.d.ts
CHANGED
|
@@ -135,3 +135,42 @@ export declare function sharedProvidersApi(t: Transport): {
|
|
|
135
135
|
}[]>;
|
|
136
136
|
updateModel: (slug: string, modelId: string, input: Schemas["UpdateProviderModelInput"]) => Promise<void>;
|
|
137
137
|
};
|
|
138
|
+
/**
|
|
139
|
+
* The plugins this *instance* found on disk, and the switch that turns one on
|
|
140
|
+
* or off across every replica.
|
|
141
|
+
*
|
|
142
|
+
* Root-only, and global rather than per tenant: a plugin belongs to the
|
|
143
|
+
* deployment the way the container image does, so there is no `plugins:*` grant
|
|
144
|
+
* to scope it with. The list is an answer about one instance — during a partial
|
|
145
|
+
* deploy two replicas can legitimately report different sets.
|
|
146
|
+
*/
|
|
147
|
+
export declare function pluginsApi(t: Transport): {
|
|
148
|
+
list: (signal?: AbortSignal) => Promise<{
|
|
149
|
+
capabilities: import("../generated/schema.js").components["schemas"]["Capability"][];
|
|
150
|
+
description: string;
|
|
151
|
+
display_name: string;
|
|
152
|
+
enabled: boolean;
|
|
153
|
+
error: string | null;
|
|
154
|
+
restarts: number;
|
|
155
|
+
sandbox: string;
|
|
156
|
+
sandbox_detail: string | null;
|
|
157
|
+
sandbox_needs?: string[];
|
|
158
|
+
slug: string;
|
|
159
|
+
state: string;
|
|
160
|
+
}[]>;
|
|
161
|
+
/** Takes effect on every replica: the decision is a row, and a notification
|
|
162
|
+
* wakes each instance to start or stop its own copy. */
|
|
163
|
+
setEnabled: (slug: string, enabled: boolean) => Promise<{
|
|
164
|
+
capabilities: import("../generated/schema.js").components["schemas"]["Capability"][];
|
|
165
|
+
description: string;
|
|
166
|
+
display_name: string;
|
|
167
|
+
enabled: boolean;
|
|
168
|
+
error: string | null;
|
|
169
|
+
restarts: number;
|
|
170
|
+
sandbox: string;
|
|
171
|
+
sandbox_detail: string | null;
|
|
172
|
+
sandbox_needs?: string[];
|
|
173
|
+
slug: string;
|
|
174
|
+
state: string;
|
|
175
|
+
}>;
|
|
176
|
+
};
|
package/dist/admin/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { channelsApi } from "./channels.js";
|
|
|
7
7
|
import { clientToolsApi } from "./client-tools.js";
|
|
8
8
|
import { componentLibrariesApi } from "./component-libraries.js";
|
|
9
9
|
import { conversationsAdminApi } from "./conversations.js";
|
|
10
|
-
import { apiKeysApi, sharedProvidersApi, tenantsApi } from "./global.js";
|
|
10
|
+
import { apiKeysApi, pluginsApi, sharedProvidersApi, tenantsApi } from "./global.js";
|
|
11
11
|
import { knowledgeBasesApi } from "./knowledge-bases.js";
|
|
12
12
|
import { mcpsApi } from "./mcps.js";
|
|
13
13
|
import { skillsApi } from "./skills.js";
|
|
@@ -52,6 +52,7 @@ export interface AdminClient {
|
|
|
52
52
|
tenants: ReturnType<typeof tenantsApi>;
|
|
53
53
|
apiKeys: ReturnType<typeof apiKeysApi>;
|
|
54
54
|
sharedProviders: ReturnType<typeof sharedProvidersApi>;
|
|
55
|
+
plugins: ReturnType<typeof pluginsApi>;
|
|
55
56
|
tenant(slug: string): TenantScope;
|
|
56
57
|
/** Escape hatch for a route the SDK hasn't wrapped yet. Paths are absolute
|
|
57
58
|
* (`/api/v1/…`) and auth is applied for you. */
|
|
@@ -878,6 +878,120 @@ export interface paths {
|
|
|
878
878
|
patch?: never;
|
|
879
879
|
trace?: never;
|
|
880
880
|
};
|
|
881
|
+
"/api/v1/plugins": {
|
|
882
|
+
parameters: {
|
|
883
|
+
query?: never;
|
|
884
|
+
header?: never;
|
|
885
|
+
path?: never;
|
|
886
|
+
cookie?: never;
|
|
887
|
+
};
|
|
888
|
+
/**
|
|
889
|
+
* List the plugins this instance loaded
|
|
890
|
+
* @description Every plugin found on disk by the instance serving this request, with what it is doing right now. Root only — a plugin belongs to the deployment, not to a tenant, so there is no grant for it.
|
|
891
|
+
*/
|
|
892
|
+
get: {
|
|
893
|
+
parameters: {
|
|
894
|
+
query?: never;
|
|
895
|
+
header?: never;
|
|
896
|
+
path?: never;
|
|
897
|
+
cookie?: never;
|
|
898
|
+
};
|
|
899
|
+
requestBody?: never;
|
|
900
|
+
responses: {
|
|
901
|
+
200: {
|
|
902
|
+
headers: {
|
|
903
|
+
[name: string]: unknown;
|
|
904
|
+
};
|
|
905
|
+
content: {
|
|
906
|
+
"application/json": components["schemas"]["Plugin"][];
|
|
907
|
+
};
|
|
908
|
+
};
|
|
909
|
+
401: {
|
|
910
|
+
headers: {
|
|
911
|
+
[name: string]: unknown;
|
|
912
|
+
};
|
|
913
|
+
content?: never;
|
|
914
|
+
};
|
|
915
|
+
/** @description Only the `root` caller can list plugins. */
|
|
916
|
+
403: {
|
|
917
|
+
headers: {
|
|
918
|
+
[name: string]: unknown;
|
|
919
|
+
};
|
|
920
|
+
content?: never;
|
|
921
|
+
};
|
|
922
|
+
};
|
|
923
|
+
};
|
|
924
|
+
put?: never;
|
|
925
|
+
post?: never;
|
|
926
|
+
delete?: never;
|
|
927
|
+
options?: never;
|
|
928
|
+
head?: never;
|
|
929
|
+
patch?: never;
|
|
930
|
+
trace?: never;
|
|
931
|
+
};
|
|
932
|
+
"/api/v1/plugins/{slug}": {
|
|
933
|
+
parameters: {
|
|
934
|
+
query?: never;
|
|
935
|
+
header?: never;
|
|
936
|
+
path?: never;
|
|
937
|
+
cookie?: never;
|
|
938
|
+
};
|
|
939
|
+
get?: never;
|
|
940
|
+
put?: never;
|
|
941
|
+
post?: never;
|
|
942
|
+
delete?: never;
|
|
943
|
+
options?: never;
|
|
944
|
+
head?: never;
|
|
945
|
+
/**
|
|
946
|
+
* Enable or disable a plugin
|
|
947
|
+
* @description Takes effect on every replica: the row is updated and a notification wakes each instance to start or stop its own copy. Disabling one retracts the file types it reads, so `read_file` reports them as having no reader until it is enabled again. Root only. Returns 404 for a slug this instance did not find on disk.
|
|
948
|
+
*/
|
|
949
|
+
patch: {
|
|
950
|
+
parameters: {
|
|
951
|
+
query?: never;
|
|
952
|
+
header?: never;
|
|
953
|
+
path: {
|
|
954
|
+
/** @description Plugin slug. */
|
|
955
|
+
slug: string;
|
|
956
|
+
};
|
|
957
|
+
cookie?: never;
|
|
958
|
+
};
|
|
959
|
+
requestBody: {
|
|
960
|
+
content: {
|
|
961
|
+
"application/json": components["schemas"]["UpdatePluginInput"];
|
|
962
|
+
};
|
|
963
|
+
};
|
|
964
|
+
responses: {
|
|
965
|
+
200: {
|
|
966
|
+
headers: {
|
|
967
|
+
[name: string]: unknown;
|
|
968
|
+
};
|
|
969
|
+
content: {
|
|
970
|
+
"application/json": components["schemas"]["Plugin"];
|
|
971
|
+
};
|
|
972
|
+
};
|
|
973
|
+
401: {
|
|
974
|
+
headers: {
|
|
975
|
+
[name: string]: unknown;
|
|
976
|
+
};
|
|
977
|
+
content?: never;
|
|
978
|
+
};
|
|
979
|
+
403: {
|
|
980
|
+
headers: {
|
|
981
|
+
[name: string]: unknown;
|
|
982
|
+
};
|
|
983
|
+
content?: never;
|
|
984
|
+
};
|
|
985
|
+
404: {
|
|
986
|
+
headers: {
|
|
987
|
+
[name: string]: unknown;
|
|
988
|
+
};
|
|
989
|
+
content?: never;
|
|
990
|
+
};
|
|
991
|
+
};
|
|
992
|
+
};
|
|
993
|
+
trace?: never;
|
|
994
|
+
};
|
|
881
995
|
"/api/v1/tenants": {
|
|
882
996
|
parameters: {
|
|
883
997
|
query?: never;
|
|
@@ -1354,6 +1468,173 @@ export interface paths {
|
|
|
1354
1468
|
patch?: never;
|
|
1355
1469
|
trace?: never;
|
|
1356
1470
|
};
|
|
1471
|
+
"/api/v1/tenants/{tenantSlug}/agents/{agentSlug}/knowledge-bases": {
|
|
1472
|
+
parameters: {
|
|
1473
|
+
query?: never;
|
|
1474
|
+
header?: never;
|
|
1475
|
+
path?: never;
|
|
1476
|
+
cookie?: never;
|
|
1477
|
+
};
|
|
1478
|
+
/**
|
|
1479
|
+
* List an agent's knowledge bases
|
|
1480
|
+
* @description Lists the knowledge bases attached to the agent. These reach every conversation the agent runs, read-only: conversation material is never filed into a base reached only through its agent.
|
|
1481
|
+
*/
|
|
1482
|
+
get: {
|
|
1483
|
+
parameters: {
|
|
1484
|
+
query?: never;
|
|
1485
|
+
header?: never;
|
|
1486
|
+
path: {
|
|
1487
|
+
/** @description Agent slug. */
|
|
1488
|
+
agentSlug: string;
|
|
1489
|
+
/** @description Tenant slug. */
|
|
1490
|
+
tenantSlug: string;
|
|
1491
|
+
};
|
|
1492
|
+
cookie?: never;
|
|
1493
|
+
};
|
|
1494
|
+
requestBody?: never;
|
|
1495
|
+
responses: {
|
|
1496
|
+
200: {
|
|
1497
|
+
headers: {
|
|
1498
|
+
[name: string]: unknown;
|
|
1499
|
+
};
|
|
1500
|
+
content: {
|
|
1501
|
+
"application/json": components["schemas"]["KnowledgeBaseListItem"][];
|
|
1502
|
+
};
|
|
1503
|
+
};
|
|
1504
|
+
401: {
|
|
1505
|
+
headers: {
|
|
1506
|
+
[name: string]: unknown;
|
|
1507
|
+
};
|
|
1508
|
+
content?: never;
|
|
1509
|
+
};
|
|
1510
|
+
403: {
|
|
1511
|
+
headers: {
|
|
1512
|
+
[name: string]: unknown;
|
|
1513
|
+
};
|
|
1514
|
+
content?: never;
|
|
1515
|
+
};
|
|
1516
|
+
404: {
|
|
1517
|
+
headers: {
|
|
1518
|
+
[name: string]: unknown;
|
|
1519
|
+
};
|
|
1520
|
+
content?: never;
|
|
1521
|
+
};
|
|
1522
|
+
};
|
|
1523
|
+
};
|
|
1524
|
+
put?: never;
|
|
1525
|
+
post?: never;
|
|
1526
|
+
delete?: never;
|
|
1527
|
+
options?: never;
|
|
1528
|
+
head?: never;
|
|
1529
|
+
patch?: never;
|
|
1530
|
+
trace?: never;
|
|
1531
|
+
};
|
|
1532
|
+
"/api/v1/tenants/{tenantSlug}/agents/{agentSlug}/knowledge-bases/{kbSlug}": {
|
|
1533
|
+
parameters: {
|
|
1534
|
+
query?: never;
|
|
1535
|
+
header?: never;
|
|
1536
|
+
path?: never;
|
|
1537
|
+
cookie?: never;
|
|
1538
|
+
};
|
|
1539
|
+
get?: never;
|
|
1540
|
+
/**
|
|
1541
|
+
* Attach a knowledge base to an agent
|
|
1542
|
+
* @description Attaches a knowledge base to the agent so every conversation it runs searches it. Read-only from those conversations: `memory_write` files into a base only when it is also attached to the conversation or its user. Idempotent; takes effect on each conversation's next turn.
|
|
1543
|
+
*/
|
|
1544
|
+
put: {
|
|
1545
|
+
parameters: {
|
|
1546
|
+
query?: never;
|
|
1547
|
+
header?: never;
|
|
1548
|
+
path: {
|
|
1549
|
+
/** @description Agent slug. */
|
|
1550
|
+
agentSlug: string;
|
|
1551
|
+
/** @description Knowledge base slug. */
|
|
1552
|
+
kbSlug: string;
|
|
1553
|
+
/** @description Tenant slug. */
|
|
1554
|
+
tenantSlug: string;
|
|
1555
|
+
};
|
|
1556
|
+
cookie?: never;
|
|
1557
|
+
};
|
|
1558
|
+
requestBody?: never;
|
|
1559
|
+
responses: {
|
|
1560
|
+
204: {
|
|
1561
|
+
headers: {
|
|
1562
|
+
[name: string]: unknown;
|
|
1563
|
+
};
|
|
1564
|
+
content?: never;
|
|
1565
|
+
};
|
|
1566
|
+
401: {
|
|
1567
|
+
headers: {
|
|
1568
|
+
[name: string]: unknown;
|
|
1569
|
+
};
|
|
1570
|
+
content?: never;
|
|
1571
|
+
};
|
|
1572
|
+
403: {
|
|
1573
|
+
headers: {
|
|
1574
|
+
[name: string]: unknown;
|
|
1575
|
+
};
|
|
1576
|
+
content?: never;
|
|
1577
|
+
};
|
|
1578
|
+
404: {
|
|
1579
|
+
headers: {
|
|
1580
|
+
[name: string]: unknown;
|
|
1581
|
+
};
|
|
1582
|
+
content?: never;
|
|
1583
|
+
};
|
|
1584
|
+
};
|
|
1585
|
+
};
|
|
1586
|
+
post?: never;
|
|
1587
|
+
/**
|
|
1588
|
+
* Detach a knowledge base from an agent
|
|
1589
|
+
* @description Stops the agent's conversations from searching the knowledge base through the agent. Links to a conversation or a user are untouched.
|
|
1590
|
+
*/
|
|
1591
|
+
delete: {
|
|
1592
|
+
parameters: {
|
|
1593
|
+
query?: never;
|
|
1594
|
+
header?: never;
|
|
1595
|
+
path: {
|
|
1596
|
+
/** @description Agent slug. */
|
|
1597
|
+
agentSlug: string;
|
|
1598
|
+
/** @description Knowledge base slug. */
|
|
1599
|
+
kbSlug: string;
|
|
1600
|
+
/** @description Tenant slug. */
|
|
1601
|
+
tenantSlug: string;
|
|
1602
|
+
};
|
|
1603
|
+
cookie?: never;
|
|
1604
|
+
};
|
|
1605
|
+
requestBody?: never;
|
|
1606
|
+
responses: {
|
|
1607
|
+
204: {
|
|
1608
|
+
headers: {
|
|
1609
|
+
[name: string]: unknown;
|
|
1610
|
+
};
|
|
1611
|
+
content?: never;
|
|
1612
|
+
};
|
|
1613
|
+
401: {
|
|
1614
|
+
headers: {
|
|
1615
|
+
[name: string]: unknown;
|
|
1616
|
+
};
|
|
1617
|
+
content?: never;
|
|
1618
|
+
};
|
|
1619
|
+
403: {
|
|
1620
|
+
headers: {
|
|
1621
|
+
[name: string]: unknown;
|
|
1622
|
+
};
|
|
1623
|
+
content?: never;
|
|
1624
|
+
};
|
|
1625
|
+
404: {
|
|
1626
|
+
headers: {
|
|
1627
|
+
[name: string]: unknown;
|
|
1628
|
+
};
|
|
1629
|
+
content?: never;
|
|
1630
|
+
};
|
|
1631
|
+
};
|
|
1632
|
+
};
|
|
1633
|
+
options?: never;
|
|
1634
|
+
head?: never;
|
|
1635
|
+
patch?: never;
|
|
1636
|
+
trace?: never;
|
|
1637
|
+
};
|
|
1357
1638
|
"/api/v1/tenants/{tenantSlug}/agents/{agentSlug}/mcps": {
|
|
1358
1639
|
parameters: {
|
|
1359
1640
|
query?: never;
|
|
@@ -5632,7 +5913,7 @@ export interface paths {
|
|
|
5632
5913
|
};
|
|
5633
5914
|
/**
|
|
5634
5915
|
* List a conversation's knowledge bases
|
|
5635
|
-
* @description Lists the knowledge bases this conversation searches — those attached to the conversation directly plus those attached to its user. Deduplicated.
|
|
5916
|
+
* @description Lists the knowledge bases this conversation searches — those attached to the conversation directly plus those attached to its user or to its agent. Deduplicated.
|
|
5636
5917
|
*/
|
|
5637
5918
|
get: {
|
|
5638
5919
|
parameters: {
|
|
@@ -6280,7 +6561,7 @@ export interface paths {
|
|
|
6280
6561
|
put?: never;
|
|
6281
6562
|
/**
|
|
6282
6563
|
* Send a user message with images
|
|
6283
|
-
* @description Appends one `user_message` carrying up to 10 image attachments. `multipart/form-data` with repeated `file` parts (
|
|
6564
|
+
* @description Appends one `user_message` carrying up to 10 image attachments. `multipart/form-data` with repeated `file` parts (any `image/*` type), optional repeated `label` text parts (the i-th label names the i-th file — the model sees it next to that image and can refer to images by name), and an optional `caption` text part shared by the set. The harness shows the images to the model natively when the agent's chat model has vision, or describes them with the agent's fallback vision model — in both cases after the image plugin has normalized them (oriented, downscaled, re-encoded as PNG or JPEG); a type no plugin reads reaches the model as a placeholder. Same channel rule as the plain user-message route: channel-backed conversations return 409.
|
|
6284
6565
|
*/
|
|
6285
6566
|
post: {
|
|
6286
6567
|
parameters: {
|
|
@@ -11549,6 +11830,26 @@ export interface components {
|
|
|
11549
11830
|
*/
|
|
11550
11831
|
tools: number;
|
|
11551
11832
|
};
|
|
11833
|
+
/**
|
|
11834
|
+
* @description One kind of thing a plugin provides.
|
|
11835
|
+
*
|
|
11836
|
+
* Tagged by `kind` so that a plugin bringing providers or channels is a new
|
|
11837
|
+
* variant here, not new top-level fields on every plugin that has none.
|
|
11838
|
+
*/
|
|
11839
|
+
Capability: {
|
|
11840
|
+
/**
|
|
11841
|
+
* @description Claims another plugin already held, so this one does not serve them.
|
|
11842
|
+
*
|
|
11843
|
+
* Reported because a dropped claim is otherwise silent: the plugin is
|
|
11844
|
+
* `ready` and healthy, and simply never receives the file it was
|
|
11845
|
+
* installed for. Resolve it by disabling one of the two.
|
|
11846
|
+
*/
|
|
11847
|
+
conflicts?: components["schemas"]["Conflict"][];
|
|
11848
|
+
/** @enum {string} */
|
|
11849
|
+
kind: "file_formats";
|
|
11850
|
+
/** @description MIME types it is answering for — what it *won*. */
|
|
11851
|
+
mimes: string[];
|
|
11852
|
+
};
|
|
11552
11853
|
Channel: (components["schemas"]["TelegramChannel"] & {
|
|
11553
11854
|
/** @enum {string} */
|
|
11554
11855
|
type: "telegram";
|
|
@@ -11686,6 +11987,18 @@ export interface components {
|
|
|
11686
11987
|
/** Format: date-time */
|
|
11687
11988
|
updated_at: string;
|
|
11688
11989
|
};
|
|
11990
|
+
/** @description A claim this plugin lost to another. */
|
|
11991
|
+
Conflict: {
|
|
11992
|
+
/**
|
|
11993
|
+
* @description The slug that holds it. First in alphabetical order wins, so the outcome
|
|
11994
|
+
* is the same on every replica.
|
|
11995
|
+
*/
|
|
11996
|
+
held_by: string;
|
|
11997
|
+
/** @description `mime`, `mime_prefix` or `extension`. */
|
|
11998
|
+
kind: string;
|
|
11999
|
+
/** @description The MIME type, prefix or extension that was claimed twice. */
|
|
12000
|
+
value: string;
|
|
12001
|
+
};
|
|
11689
12002
|
Conversation: {
|
|
11690
12003
|
agent: null | components["schemas"]["AgentRef"];
|
|
11691
12004
|
/**
|
|
@@ -13072,6 +13385,57 @@ export interface components {
|
|
|
13072
13385
|
/** Format: date-time */
|
|
13073
13386
|
recorded_at: string;
|
|
13074
13387
|
};
|
|
13388
|
+
Plugin: {
|
|
13389
|
+
/**
|
|
13390
|
+
* @description What it is providing right now, one entry per kind. Empty unless
|
|
13391
|
+
* `ready`.
|
|
13392
|
+
*/
|
|
13393
|
+
capabilities: components["schemas"]["Capability"][];
|
|
13394
|
+
/**
|
|
13395
|
+
* @description What the plugin says it does, in its own words — it ships from its own
|
|
13396
|
+
* repository, so the core has nothing of its own to say here. Empty until
|
|
13397
|
+
* its first handshake.
|
|
13398
|
+
*/
|
|
13399
|
+
description: string;
|
|
13400
|
+
/**
|
|
13401
|
+
* @description Reported by the plugin at its handshake; empty until it has completed
|
|
13402
|
+
* one. Kept while it is disabled or failed, so the list never loses the
|
|
13403
|
+
* name of the thing an operator turned off.
|
|
13404
|
+
*/
|
|
13405
|
+
display_name: string;
|
|
13406
|
+
/**
|
|
13407
|
+
* @description Whether it is *meant* to run. `false` means someone turned it off; it
|
|
13408
|
+
* says nothing about whether it is currently healthy — that is `state`.
|
|
13409
|
+
*/
|
|
13410
|
+
enabled: boolean;
|
|
13411
|
+
/** @description Why it is not running, when `failed`. */
|
|
13412
|
+
error: string | null;
|
|
13413
|
+
/**
|
|
13414
|
+
* Format: int32
|
|
13415
|
+
* @description How many times it has been restarted in a row without staying up.
|
|
13416
|
+
*/
|
|
13417
|
+
restarts: number;
|
|
13418
|
+
/**
|
|
13419
|
+
* @description How contained this plugin's process is: `full`, `partial`, `none`, or
|
|
13420
|
+
* `unknown` before its first spawn.
|
|
13421
|
+
*
|
|
13422
|
+
* Reported because it is a property of the *deployment*, not of the
|
|
13423
|
+
* plugin: the same binary is fully sandboxed on one kernel and partly on
|
|
13424
|
+
* another, and an operator reading the card is the only one who can act on
|
|
13425
|
+
* that. See `plugins/sandbox.rs`.
|
|
13426
|
+
*/
|
|
13427
|
+
sandbox: string;
|
|
13428
|
+
/** @description Why it is not `full`, when it is not. */
|
|
13429
|
+
sandbox_detail: string | null;
|
|
13430
|
+
/**
|
|
13431
|
+
* @description What the plugin's manifest asked for beyond the default sandbox, in
|
|
13432
|
+
* words. Empty when it asked for nothing, which is the common case.
|
|
13433
|
+
*/
|
|
13434
|
+
sandbox_needs?: string[];
|
|
13435
|
+
slug: string;
|
|
13436
|
+
/** @description `disabled` | `starting` | `ready` | `failed`. */
|
|
13437
|
+
state: string;
|
|
13438
|
+
};
|
|
13075
13439
|
/**
|
|
13076
13440
|
* @description Reduced provider reference embedded into other resources' responses (e.g. the provider that
|
|
13077
13441
|
* served a conversation event's LLM call) in place of a bare `provider_id`.
|
|
@@ -13779,6 +14143,9 @@ export interface components {
|
|
|
13779
14143
|
*/
|
|
13780
14144
|
revision: number;
|
|
13781
14145
|
};
|
|
14146
|
+
UpdatePluginInput: {
|
|
14147
|
+
enabled: boolean;
|
|
14148
|
+
};
|
|
13782
14149
|
UpdateProviderModelInput: {
|
|
13783
14150
|
/**
|
|
13784
14151
|
* Format: int32
|