@crewhaus/spec 0.4.2 → 0.5.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.
- package/dist/index.d.ts +422 -38
- package/dist/index.js +103 -2
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1421,6 +1421,22 @@ declare const thredzObject: z.ZodObject<{
|
|
|
1421
1421
|
api_key: z.ZodString;
|
|
1422
1422
|
base_url: z.ZodOptional<z.ZodString>;
|
|
1423
1423
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
1424
|
+
/**
|
|
1425
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
1426
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
1427
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
1428
|
+
* `individual` space only by the key that owns it.
|
|
1429
|
+
*
|
|
1430
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
1431
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
1432
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
1433
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
1434
|
+
*
|
|
1435
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
1436
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
1437
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
1438
|
+
*/
|
|
1439
|
+
space: z.ZodOptional<z.ZodString>;
|
|
1424
1440
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
1425
1441
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
1426
1442
|
/**
|
|
@@ -1435,6 +1451,7 @@ declare const thredzObject: z.ZodObject<{
|
|
|
1435
1451
|
api_key: string;
|
|
1436
1452
|
base_url?: string | undefined;
|
|
1437
1453
|
visibility?: "private" | "shared" | undefined;
|
|
1454
|
+
space?: string | undefined;
|
|
1438
1455
|
goals?: boolean | undefined;
|
|
1439
1456
|
agents?: string | boolean | undefined;
|
|
1440
1457
|
messaging?: boolean | undefined;
|
|
@@ -1442,6 +1459,7 @@ declare const thredzObject: z.ZodObject<{
|
|
|
1442
1459
|
api_key: string;
|
|
1443
1460
|
base_url?: string | undefined;
|
|
1444
1461
|
visibility?: "private" | "shared" | undefined;
|
|
1462
|
+
space?: string | undefined;
|
|
1445
1463
|
goals?: boolean | undefined;
|
|
1446
1464
|
agents?: string | boolean | undefined;
|
|
1447
1465
|
messaging?: boolean | undefined;
|
|
@@ -1450,6 +1468,22 @@ declare const thredzBlock: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString,
|
|
|
1450
1468
|
api_key: z.ZodString;
|
|
1451
1469
|
base_url: z.ZodOptional<z.ZodString>;
|
|
1452
1470
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
1471
|
+
/**
|
|
1472
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
1473
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
1474
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
1475
|
+
* `individual` space only by the key that owns it.
|
|
1476
|
+
*
|
|
1477
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
1478
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
1479
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
1480
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
1481
|
+
*
|
|
1482
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
1483
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
1484
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
1485
|
+
*/
|
|
1486
|
+
space: z.ZodOptional<z.ZodString>;
|
|
1453
1487
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
1454
1488
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
1455
1489
|
/**
|
|
@@ -1464,6 +1498,7 @@ declare const thredzBlock: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString,
|
|
|
1464
1498
|
api_key: string;
|
|
1465
1499
|
base_url?: string | undefined;
|
|
1466
1500
|
visibility?: "private" | "shared" | undefined;
|
|
1501
|
+
space?: string | undefined;
|
|
1467
1502
|
goals?: boolean | undefined;
|
|
1468
1503
|
agents?: string | boolean | undefined;
|
|
1469
1504
|
messaging?: boolean | undefined;
|
|
@@ -1471,6 +1506,7 @@ declare const thredzBlock: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString,
|
|
|
1471
1506
|
api_key: string;
|
|
1472
1507
|
base_url?: string | undefined;
|
|
1473
1508
|
visibility?: "private" | "shared" | undefined;
|
|
1509
|
+
space?: string | undefined;
|
|
1474
1510
|
goals?: boolean | undefined;
|
|
1475
1511
|
agents?: string | boolean | undefined;
|
|
1476
1512
|
messaging?: boolean | undefined;
|
|
@@ -3060,6 +3096,22 @@ declare const cliSchema: z.ZodObject<{
|
|
|
3060
3096
|
api_key: z.ZodString;
|
|
3061
3097
|
base_url: z.ZodOptional<z.ZodString>;
|
|
3062
3098
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
3099
|
+
/**
|
|
3100
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
3101
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
3102
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
3103
|
+
* `individual` space only by the key that owns it.
|
|
3104
|
+
*
|
|
3105
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
3106
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
3107
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
3108
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
3109
|
+
*
|
|
3110
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
3111
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
3112
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
3113
|
+
*/
|
|
3114
|
+
space: z.ZodOptional<z.ZodString>;
|
|
3063
3115
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
3064
3116
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
3065
3117
|
/**
|
|
@@ -3074,6 +3126,7 @@ declare const cliSchema: z.ZodObject<{
|
|
|
3074
3126
|
api_key: string;
|
|
3075
3127
|
base_url?: string | undefined;
|
|
3076
3128
|
visibility?: "private" | "shared" | undefined;
|
|
3129
|
+
space?: string | undefined;
|
|
3077
3130
|
goals?: boolean | undefined;
|
|
3078
3131
|
agents?: string | boolean | undefined;
|
|
3079
3132
|
messaging?: boolean | undefined;
|
|
@@ -3081,6 +3134,7 @@ declare const cliSchema: z.ZodObject<{
|
|
|
3081
3134
|
api_key: string;
|
|
3082
3135
|
base_url?: string | undefined;
|
|
3083
3136
|
visibility?: "private" | "shared" | undefined;
|
|
3137
|
+
space?: string | undefined;
|
|
3084
3138
|
goals?: boolean | undefined;
|
|
3085
3139
|
agents?: string | boolean | undefined;
|
|
3086
3140
|
messaging?: boolean | undefined;
|
|
@@ -3587,6 +3641,7 @@ declare const cliSchema: z.ZodObject<{
|
|
|
3587
3641
|
api_key: string;
|
|
3588
3642
|
base_url?: string | undefined;
|
|
3589
3643
|
visibility?: "private" | "shared" | undefined;
|
|
3644
|
+
space?: string | undefined;
|
|
3590
3645
|
goals?: boolean | undefined;
|
|
3591
3646
|
agents?: string | boolean | undefined;
|
|
3592
3647
|
messaging?: boolean | undefined;
|
|
@@ -3922,6 +3977,7 @@ declare const cliSchema: z.ZodObject<{
|
|
|
3922
3977
|
api_key: string;
|
|
3923
3978
|
base_url?: string | undefined;
|
|
3924
3979
|
visibility?: "private" | "shared" | undefined;
|
|
3980
|
+
space?: string | undefined;
|
|
3925
3981
|
goals?: boolean | undefined;
|
|
3926
3982
|
agents?: string | boolean | undefined;
|
|
3927
3983
|
messaging?: boolean | undefined;
|
|
@@ -8260,6 +8316,22 @@ declare const channelSchema: z.ZodObject<{
|
|
|
8260
8316
|
api_key: z.ZodString;
|
|
8261
8317
|
base_url: z.ZodOptional<z.ZodString>;
|
|
8262
8318
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
8319
|
+
/**
|
|
8320
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
8321
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
8322
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
8323
|
+
* `individual` space only by the key that owns it.
|
|
8324
|
+
*
|
|
8325
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
8326
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
8327
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
8328
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
8329
|
+
*
|
|
8330
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
8331
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
8332
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
8333
|
+
*/
|
|
8334
|
+
space: z.ZodOptional<z.ZodString>;
|
|
8263
8335
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
8264
8336
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
8265
8337
|
/**
|
|
@@ -8274,6 +8346,7 @@ declare const channelSchema: z.ZodObject<{
|
|
|
8274
8346
|
api_key: string;
|
|
8275
8347
|
base_url?: string | undefined;
|
|
8276
8348
|
visibility?: "private" | "shared" | undefined;
|
|
8349
|
+
space?: string | undefined;
|
|
8277
8350
|
goals?: boolean | undefined;
|
|
8278
8351
|
agents?: string | boolean | undefined;
|
|
8279
8352
|
messaging?: boolean | undefined;
|
|
@@ -8281,6 +8354,7 @@ declare const channelSchema: z.ZodObject<{
|
|
|
8281
8354
|
api_key: string;
|
|
8282
8355
|
base_url?: string | undefined;
|
|
8283
8356
|
visibility?: "private" | "shared" | undefined;
|
|
8357
|
+
space?: string | undefined;
|
|
8284
8358
|
goals?: boolean | undefined;
|
|
8285
8359
|
agents?: string | boolean | undefined;
|
|
8286
8360
|
messaging?: boolean | undefined;
|
|
@@ -8838,6 +8912,7 @@ declare const channelSchema: z.ZodObject<{
|
|
|
8838
8912
|
api_key: string;
|
|
8839
8913
|
base_url?: string | undefined;
|
|
8840
8914
|
visibility?: "private" | "shared" | undefined;
|
|
8915
|
+
space?: string | undefined;
|
|
8841
8916
|
goals?: boolean | undefined;
|
|
8842
8917
|
agents?: string | boolean | undefined;
|
|
8843
8918
|
messaging?: boolean | undefined;
|
|
@@ -9207,6 +9282,7 @@ declare const channelSchema: z.ZodObject<{
|
|
|
9207
9282
|
api_key: string;
|
|
9208
9283
|
base_url?: string | undefined;
|
|
9209
9284
|
visibility?: "private" | "shared" | undefined;
|
|
9285
|
+
space?: string | undefined;
|
|
9210
9286
|
goals?: boolean | undefined;
|
|
9211
9287
|
agents?: string | boolean | undefined;
|
|
9212
9288
|
messaging?: boolean | undefined;
|
|
@@ -11609,6 +11685,22 @@ declare const managedSchema: z.ZodObject<{
|
|
|
11609
11685
|
api_key: z.ZodString;
|
|
11610
11686
|
base_url: z.ZodOptional<z.ZodString>;
|
|
11611
11687
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
11688
|
+
/**
|
|
11689
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
11690
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
11691
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
11692
|
+
* `individual` space only by the key that owns it.
|
|
11693
|
+
*
|
|
11694
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
11695
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
11696
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
11697
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
11698
|
+
*
|
|
11699
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
11700
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
11701
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
11702
|
+
*/
|
|
11703
|
+
space: z.ZodOptional<z.ZodString>;
|
|
11612
11704
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
11613
11705
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
11614
11706
|
/**
|
|
@@ -11623,6 +11715,7 @@ declare const managedSchema: z.ZodObject<{
|
|
|
11623
11715
|
api_key: string;
|
|
11624
11716
|
base_url?: string | undefined;
|
|
11625
11717
|
visibility?: "private" | "shared" | undefined;
|
|
11718
|
+
space?: string | undefined;
|
|
11626
11719
|
goals?: boolean | undefined;
|
|
11627
11720
|
agents?: string | boolean | undefined;
|
|
11628
11721
|
messaging?: boolean | undefined;
|
|
@@ -11630,6 +11723,7 @@ declare const managedSchema: z.ZodObject<{
|
|
|
11630
11723
|
api_key: string;
|
|
11631
11724
|
base_url?: string | undefined;
|
|
11632
11725
|
visibility?: "private" | "shared" | undefined;
|
|
11726
|
+
space?: string | undefined;
|
|
11633
11727
|
goals?: boolean | undefined;
|
|
11634
11728
|
agents?: string | boolean | undefined;
|
|
11635
11729
|
messaging?: boolean | undefined;
|
|
@@ -12020,6 +12114,7 @@ declare const managedSchema: z.ZodObject<{
|
|
|
12020
12114
|
api_key: string;
|
|
12021
12115
|
base_url?: string | undefined;
|
|
12022
12116
|
visibility?: "private" | "shared" | undefined;
|
|
12117
|
+
space?: string | undefined;
|
|
12023
12118
|
goals?: boolean | undefined;
|
|
12024
12119
|
agents?: string | boolean | undefined;
|
|
12025
12120
|
messaging?: boolean | undefined;
|
|
@@ -12299,6 +12394,7 @@ declare const managedSchema: z.ZodObject<{
|
|
|
12299
12394
|
api_key: string;
|
|
12300
12395
|
base_url?: string | undefined;
|
|
12301
12396
|
visibility?: "private" | "shared" | undefined;
|
|
12397
|
+
space?: string | undefined;
|
|
12302
12398
|
goals?: boolean | undefined;
|
|
12303
12399
|
agents?: string | boolean | undefined;
|
|
12304
12400
|
messaging?: boolean | undefined;
|
|
@@ -14605,34 +14701,108 @@ declare const crewSchema: z.ZodObject<{
|
|
|
14605
14701
|
scope?: "auto" | "spec" | "session" | undefined;
|
|
14606
14702
|
focusMaxChars?: number | undefined;
|
|
14607
14703
|
}>]>>;
|
|
14608
|
-
thredz: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodObject<{
|
|
14609
|
-
api_key: z.ZodString;
|
|
14704
|
+
thredz: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodEffects<z.ZodObject<{
|
|
14610
14705
|
base_url: z.ZodOptional<z.ZodString>;
|
|
14611
14706
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
14707
|
+
space: z.ZodOptional<z.ZodString>;
|
|
14612
14708
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
14613
14709
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
14614
|
-
/**
|
|
14615
|
-
* Item 5 (G44) — enable the nine Thredz messaging tools (`message_send`
|
|
14616
|
-
* / `inbox_poll` / `message_ack` / `thread_get` / `agent_*`). DEFAULT
|
|
14617
|
-
* false: the send-side tools are destructive + justification-gated, so
|
|
14618
|
-
* they stay off unless the author asks. The Thredz server side is already
|
|
14619
|
-
* live (thredz-api) — this flips their registration on.
|
|
14620
|
-
*/
|
|
14621
14710
|
messaging: z.ZodOptional<z.ZodBoolean>;
|
|
14711
|
+
} & {
|
|
14712
|
+
api_key: z.ZodOptional<z.ZodString>;
|
|
14713
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
14714
|
+
api_key: z.ZodOptional<z.ZodString>;
|
|
14715
|
+
base_url: z.ZodOptional<z.ZodString>;
|
|
14716
|
+
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
14717
|
+
space: z.ZodOptional<z.ZodString>;
|
|
14718
|
+
goals: z.ZodOptional<z.ZodBoolean>;
|
|
14719
|
+
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
14720
|
+
messaging: z.ZodOptional<z.ZodBoolean>;
|
|
14721
|
+
}, "strict", z.ZodTypeAny, {
|
|
14722
|
+
api_key?: string | undefined;
|
|
14723
|
+
base_url?: string | undefined;
|
|
14724
|
+
visibility?: "private" | "shared" | undefined;
|
|
14725
|
+
space?: string | undefined;
|
|
14726
|
+
goals?: boolean | undefined;
|
|
14727
|
+
agents?: string | boolean | undefined;
|
|
14728
|
+
messaging?: boolean | undefined;
|
|
14729
|
+
}, {
|
|
14730
|
+
api_key?: string | undefined;
|
|
14731
|
+
base_url?: string | undefined;
|
|
14732
|
+
visibility?: "private" | "shared" | undefined;
|
|
14733
|
+
space?: string | undefined;
|
|
14734
|
+
goals?: boolean | undefined;
|
|
14735
|
+
agents?: string | boolean | undefined;
|
|
14736
|
+
messaging?: boolean | undefined;
|
|
14737
|
+
}>>>;
|
|
14622
14738
|
}, "strict", z.ZodTypeAny, {
|
|
14623
|
-
api_key
|
|
14739
|
+
api_key?: string | undefined;
|
|
14624
14740
|
base_url?: string | undefined;
|
|
14625
14741
|
visibility?: "private" | "shared" | undefined;
|
|
14742
|
+
space?: string | undefined;
|
|
14626
14743
|
goals?: boolean | undefined;
|
|
14627
14744
|
agents?: string | boolean | undefined;
|
|
14628
14745
|
messaging?: boolean | undefined;
|
|
14746
|
+
roles?: Record<string, {
|
|
14747
|
+
api_key?: string | undefined;
|
|
14748
|
+
base_url?: string | undefined;
|
|
14749
|
+
visibility?: "private" | "shared" | undefined;
|
|
14750
|
+
space?: string | undefined;
|
|
14751
|
+
goals?: boolean | undefined;
|
|
14752
|
+
agents?: string | boolean | undefined;
|
|
14753
|
+
messaging?: boolean | undefined;
|
|
14754
|
+
}> | undefined;
|
|
14629
14755
|
}, {
|
|
14630
|
-
api_key
|
|
14756
|
+
api_key?: string | undefined;
|
|
14757
|
+
base_url?: string | undefined;
|
|
14758
|
+
visibility?: "private" | "shared" | undefined;
|
|
14759
|
+
space?: string | undefined;
|
|
14760
|
+
goals?: boolean | undefined;
|
|
14761
|
+
agents?: string | boolean | undefined;
|
|
14762
|
+
messaging?: boolean | undefined;
|
|
14763
|
+
roles?: Record<string, {
|
|
14764
|
+
api_key?: string | undefined;
|
|
14765
|
+
base_url?: string | undefined;
|
|
14766
|
+
visibility?: "private" | "shared" | undefined;
|
|
14767
|
+
space?: string | undefined;
|
|
14768
|
+
goals?: boolean | undefined;
|
|
14769
|
+
agents?: string | boolean | undefined;
|
|
14770
|
+
messaging?: boolean | undefined;
|
|
14771
|
+
}> | undefined;
|
|
14772
|
+
}>, {
|
|
14773
|
+
api_key?: string | undefined;
|
|
14631
14774
|
base_url?: string | undefined;
|
|
14632
14775
|
visibility?: "private" | "shared" | undefined;
|
|
14776
|
+
space?: string | undefined;
|
|
14633
14777
|
goals?: boolean | undefined;
|
|
14634
14778
|
agents?: string | boolean | undefined;
|
|
14635
14779
|
messaging?: boolean | undefined;
|
|
14780
|
+
roles?: Record<string, {
|
|
14781
|
+
api_key?: string | undefined;
|
|
14782
|
+
base_url?: string | undefined;
|
|
14783
|
+
visibility?: "private" | "shared" | undefined;
|
|
14784
|
+
space?: string | undefined;
|
|
14785
|
+
goals?: boolean | undefined;
|
|
14786
|
+
agents?: string | boolean | undefined;
|
|
14787
|
+
messaging?: boolean | undefined;
|
|
14788
|
+
}> | undefined;
|
|
14789
|
+
}, {
|
|
14790
|
+
api_key?: string | undefined;
|
|
14791
|
+
base_url?: string | undefined;
|
|
14792
|
+
visibility?: "private" | "shared" | undefined;
|
|
14793
|
+
space?: string | undefined;
|
|
14794
|
+
goals?: boolean | undefined;
|
|
14795
|
+
agents?: string | boolean | undefined;
|
|
14796
|
+
messaging?: boolean | undefined;
|
|
14797
|
+
roles?: Record<string, {
|
|
14798
|
+
api_key?: string | undefined;
|
|
14799
|
+
base_url?: string | undefined;
|
|
14800
|
+
visibility?: "private" | "shared" | undefined;
|
|
14801
|
+
space?: string | undefined;
|
|
14802
|
+
goals?: boolean | undefined;
|
|
14803
|
+
agents?: string | boolean | undefined;
|
|
14804
|
+
messaging?: boolean | undefined;
|
|
14805
|
+
}> | undefined;
|
|
14636
14806
|
}>]>>;
|
|
14637
14807
|
learning: z.ZodOptional<z.ZodObject<{
|
|
14638
14808
|
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -14955,9 +15125,6 @@ declare const crewSchema: z.ZodObject<{
|
|
|
14955
15125
|
}>>;
|
|
14956
15126
|
}, "strict", z.ZodTypeAny, {
|
|
14957
15127
|
model: string;
|
|
14958
|
-
name: string;
|
|
14959
|
-
target: "crew";
|
|
14960
|
-
entry: string;
|
|
14961
15128
|
roles: Record<string, {
|
|
14962
15129
|
instructions: string;
|
|
14963
15130
|
tools?: string[] | undefined;
|
|
@@ -15027,6 +15194,9 @@ declare const crewSchema: z.ZodObject<{
|
|
|
15027
15194
|
}> | undefined;
|
|
15028
15195
|
tool_config?: Record<string, unknown> | undefined;
|
|
15029
15196
|
}>;
|
|
15197
|
+
name: string;
|
|
15198
|
+
target: "crew";
|
|
15199
|
+
entry: string;
|
|
15030
15200
|
permissions?: {
|
|
15031
15201
|
mode?: "default" | "plan" | "auto" | undefined;
|
|
15032
15202
|
rules?: {
|
|
@@ -15057,12 +15227,22 @@ declare const crewSchema: z.ZodObject<{
|
|
|
15057
15227
|
} | undefined;
|
|
15058
15228
|
} | undefined;
|
|
15059
15229
|
thredz?: string | boolean | {
|
|
15060
|
-
api_key
|
|
15230
|
+
api_key?: string | undefined;
|
|
15061
15231
|
base_url?: string | undefined;
|
|
15062
15232
|
visibility?: "private" | "shared" | undefined;
|
|
15233
|
+
space?: string | undefined;
|
|
15063
15234
|
goals?: boolean | undefined;
|
|
15064
15235
|
agents?: string | boolean | undefined;
|
|
15065
15236
|
messaging?: boolean | undefined;
|
|
15237
|
+
roles?: Record<string, {
|
|
15238
|
+
api_key?: string | undefined;
|
|
15239
|
+
base_url?: string | undefined;
|
|
15240
|
+
visibility?: "private" | "shared" | undefined;
|
|
15241
|
+
space?: string | undefined;
|
|
15242
|
+
goals?: boolean | undefined;
|
|
15243
|
+
agents?: string | boolean | undefined;
|
|
15244
|
+
messaging?: boolean | undefined;
|
|
15245
|
+
}> | undefined;
|
|
15066
15246
|
} | undefined;
|
|
15067
15247
|
version?: number | undefined;
|
|
15068
15248
|
mcp_servers?: Record<string, {
|
|
@@ -15223,9 +15403,6 @@ declare const crewSchema: z.ZodObject<{
|
|
|
15223
15403
|
} | undefined;
|
|
15224
15404
|
}, {
|
|
15225
15405
|
model: string;
|
|
15226
|
-
name: string;
|
|
15227
|
-
target: "crew";
|
|
15228
|
-
entry: string;
|
|
15229
15406
|
roles: Record<string, {
|
|
15230
15407
|
instructions: string;
|
|
15231
15408
|
tools?: string[] | undefined;
|
|
@@ -15295,6 +15472,9 @@ declare const crewSchema: z.ZodObject<{
|
|
|
15295
15472
|
}> | undefined;
|
|
15296
15473
|
tool_config?: Record<string, unknown> | undefined;
|
|
15297
15474
|
}>;
|
|
15475
|
+
name: string;
|
|
15476
|
+
target: "crew";
|
|
15477
|
+
entry: string;
|
|
15298
15478
|
permissions?: {
|
|
15299
15479
|
mode?: "default" | "plan" | "auto" | undefined;
|
|
15300
15480
|
rules?: {
|
|
@@ -15325,12 +15505,22 @@ declare const crewSchema: z.ZodObject<{
|
|
|
15325
15505
|
} | undefined;
|
|
15326
15506
|
} | undefined;
|
|
15327
15507
|
thredz?: string | boolean | {
|
|
15328
|
-
api_key
|
|
15508
|
+
api_key?: string | undefined;
|
|
15329
15509
|
base_url?: string | undefined;
|
|
15330
15510
|
visibility?: "private" | "shared" | undefined;
|
|
15511
|
+
space?: string | undefined;
|
|
15331
15512
|
goals?: boolean | undefined;
|
|
15332
15513
|
agents?: string | boolean | undefined;
|
|
15333
15514
|
messaging?: boolean | undefined;
|
|
15515
|
+
roles?: Record<string, {
|
|
15516
|
+
api_key?: string | undefined;
|
|
15517
|
+
base_url?: string | undefined;
|
|
15518
|
+
visibility?: "private" | "shared" | undefined;
|
|
15519
|
+
space?: string | undefined;
|
|
15520
|
+
goals?: boolean | undefined;
|
|
15521
|
+
agents?: string | boolean | undefined;
|
|
15522
|
+
messaging?: boolean | undefined;
|
|
15523
|
+
}> | undefined;
|
|
15334
15524
|
} | undefined;
|
|
15335
15525
|
version?: number | undefined;
|
|
15336
15526
|
mcp_servers?: Record<string, {
|
|
@@ -16165,6 +16355,22 @@ declare const researchSchema: z.ZodObject<{
|
|
|
16165
16355
|
api_key: z.ZodString;
|
|
16166
16356
|
base_url: z.ZodOptional<z.ZodString>;
|
|
16167
16357
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
16358
|
+
/**
|
|
16359
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
16360
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
16361
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
16362
|
+
* `individual` space only by the key that owns it.
|
|
16363
|
+
*
|
|
16364
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
16365
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
16366
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
16367
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
16368
|
+
*
|
|
16369
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
16370
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
16371
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
16372
|
+
*/
|
|
16373
|
+
space: z.ZodOptional<z.ZodString>;
|
|
16168
16374
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
16169
16375
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
16170
16376
|
/**
|
|
@@ -16179,6 +16385,7 @@ declare const researchSchema: z.ZodObject<{
|
|
|
16179
16385
|
api_key: string;
|
|
16180
16386
|
base_url?: string | undefined;
|
|
16181
16387
|
visibility?: "private" | "shared" | undefined;
|
|
16388
|
+
space?: string | undefined;
|
|
16182
16389
|
goals?: boolean | undefined;
|
|
16183
16390
|
agents?: string | boolean | undefined;
|
|
16184
16391
|
messaging?: boolean | undefined;
|
|
@@ -16186,6 +16393,7 @@ declare const researchSchema: z.ZodObject<{
|
|
|
16186
16393
|
api_key: string;
|
|
16187
16394
|
base_url?: string | undefined;
|
|
16188
16395
|
visibility?: "private" | "shared" | undefined;
|
|
16396
|
+
space?: string | undefined;
|
|
16189
16397
|
goals?: boolean | undefined;
|
|
16190
16398
|
agents?: string | boolean | undefined;
|
|
16191
16399
|
messaging?: boolean | undefined;
|
|
@@ -16424,6 +16632,7 @@ declare const researchSchema: z.ZodObject<{
|
|
|
16424
16632
|
api_key: string;
|
|
16425
16633
|
base_url?: string | undefined;
|
|
16426
16634
|
visibility?: "private" | "shared" | undefined;
|
|
16635
|
+
space?: string | undefined;
|
|
16427
16636
|
goals?: boolean | undefined;
|
|
16428
16637
|
agents?: string | boolean | undefined;
|
|
16429
16638
|
messaging?: boolean | undefined;
|
|
@@ -16616,6 +16825,7 @@ declare const researchSchema: z.ZodObject<{
|
|
|
16616
16825
|
api_key: string;
|
|
16617
16826
|
base_url?: string | undefined;
|
|
16618
16827
|
visibility?: "private" | "shared" | undefined;
|
|
16828
|
+
space?: string | undefined;
|
|
16619
16829
|
goals?: boolean | undefined;
|
|
16620
16830
|
agents?: string | boolean | undefined;
|
|
16621
16831
|
messaging?: boolean | undefined;
|
|
@@ -21387,6 +21597,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
21387
21597
|
api_key: z.ZodString;
|
|
21388
21598
|
base_url: z.ZodOptional<z.ZodString>;
|
|
21389
21599
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
21600
|
+
/**
|
|
21601
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
21602
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
21603
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
21604
|
+
* `individual` space only by the key that owns it.
|
|
21605
|
+
*
|
|
21606
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
21607
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
21608
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
21609
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
21610
|
+
*
|
|
21611
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
21612
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
21613
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
21614
|
+
*/
|
|
21615
|
+
space: z.ZodOptional<z.ZodString>;
|
|
21390
21616
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
21391
21617
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
21392
21618
|
/**
|
|
@@ -21401,6 +21627,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
21401
21627
|
api_key: string;
|
|
21402
21628
|
base_url?: string | undefined;
|
|
21403
21629
|
visibility?: "private" | "shared" | undefined;
|
|
21630
|
+
space?: string | undefined;
|
|
21404
21631
|
goals?: boolean | undefined;
|
|
21405
21632
|
agents?: string | boolean | undefined;
|
|
21406
21633
|
messaging?: boolean | undefined;
|
|
@@ -21408,6 +21635,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
21408
21635
|
api_key: string;
|
|
21409
21636
|
base_url?: string | undefined;
|
|
21410
21637
|
visibility?: "private" | "shared" | undefined;
|
|
21638
|
+
space?: string | undefined;
|
|
21411
21639
|
goals?: boolean | undefined;
|
|
21412
21640
|
agents?: string | boolean | undefined;
|
|
21413
21641
|
messaging?: boolean | undefined;
|
|
@@ -21914,6 +22142,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
21914
22142
|
api_key: string;
|
|
21915
22143
|
base_url?: string | undefined;
|
|
21916
22144
|
visibility?: "private" | "shared" | undefined;
|
|
22145
|
+
space?: string | undefined;
|
|
21917
22146
|
goals?: boolean | undefined;
|
|
21918
22147
|
agents?: string | boolean | undefined;
|
|
21919
22148
|
messaging?: boolean | undefined;
|
|
@@ -22249,6 +22478,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
22249
22478
|
api_key: string;
|
|
22250
22479
|
base_url?: string | undefined;
|
|
22251
22480
|
visibility?: "private" | "shared" | undefined;
|
|
22481
|
+
space?: string | undefined;
|
|
22252
22482
|
goals?: boolean | undefined;
|
|
22253
22483
|
agents?: string | boolean | undefined;
|
|
22254
22484
|
messaging?: boolean | undefined;
|
|
@@ -25024,6 +25254,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
25024
25254
|
api_key: z.ZodString;
|
|
25025
25255
|
base_url: z.ZodOptional<z.ZodString>;
|
|
25026
25256
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
25257
|
+
/**
|
|
25258
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
25259
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
25260
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
25261
|
+
* `individual` space only by the key that owns it.
|
|
25262
|
+
*
|
|
25263
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
25264
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
25265
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
25266
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
25267
|
+
*
|
|
25268
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
25269
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
25270
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
25271
|
+
*/
|
|
25272
|
+
space: z.ZodOptional<z.ZodString>;
|
|
25027
25273
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
25028
25274
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
25029
25275
|
/**
|
|
@@ -25038,6 +25284,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
25038
25284
|
api_key: string;
|
|
25039
25285
|
base_url?: string | undefined;
|
|
25040
25286
|
visibility?: "private" | "shared" | undefined;
|
|
25287
|
+
space?: string | undefined;
|
|
25041
25288
|
goals?: boolean | undefined;
|
|
25042
25289
|
agents?: string | boolean | undefined;
|
|
25043
25290
|
messaging?: boolean | undefined;
|
|
@@ -25045,6 +25292,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
25045
25292
|
api_key: string;
|
|
25046
25293
|
base_url?: string | undefined;
|
|
25047
25294
|
visibility?: "private" | "shared" | undefined;
|
|
25295
|
+
space?: string | undefined;
|
|
25048
25296
|
goals?: boolean | undefined;
|
|
25049
25297
|
agents?: string | boolean | undefined;
|
|
25050
25298
|
messaging?: boolean | undefined;
|
|
@@ -25602,6 +25850,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
25602
25850
|
api_key: string;
|
|
25603
25851
|
base_url?: string | undefined;
|
|
25604
25852
|
visibility?: "private" | "shared" | undefined;
|
|
25853
|
+
space?: string | undefined;
|
|
25605
25854
|
goals?: boolean | undefined;
|
|
25606
25855
|
agents?: string | boolean | undefined;
|
|
25607
25856
|
messaging?: boolean | undefined;
|
|
@@ -25971,6 +26220,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
25971
26220
|
api_key: string;
|
|
25972
26221
|
base_url?: string | undefined;
|
|
25973
26222
|
visibility?: "private" | "shared" | undefined;
|
|
26223
|
+
space?: string | undefined;
|
|
25974
26224
|
goals?: boolean | undefined;
|
|
25975
26225
|
agents?: string | boolean | undefined;
|
|
25976
26226
|
messaging?: boolean | undefined;
|
|
@@ -28010,6 +28260,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
28010
28260
|
api_key: z.ZodString;
|
|
28011
28261
|
base_url: z.ZodOptional<z.ZodString>;
|
|
28012
28262
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
28263
|
+
/**
|
|
28264
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
28265
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
28266
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
28267
|
+
* `individual` space only by the key that owns it.
|
|
28268
|
+
*
|
|
28269
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
28270
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
28271
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
28272
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
28273
|
+
*
|
|
28274
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
28275
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
28276
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
28277
|
+
*/
|
|
28278
|
+
space: z.ZodOptional<z.ZodString>;
|
|
28013
28279
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
28014
28280
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
28015
28281
|
/**
|
|
@@ -28024,6 +28290,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
28024
28290
|
api_key: string;
|
|
28025
28291
|
base_url?: string | undefined;
|
|
28026
28292
|
visibility?: "private" | "shared" | undefined;
|
|
28293
|
+
space?: string | undefined;
|
|
28027
28294
|
goals?: boolean | undefined;
|
|
28028
28295
|
agents?: string | boolean | undefined;
|
|
28029
28296
|
messaging?: boolean | undefined;
|
|
@@ -28031,6 +28298,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
28031
28298
|
api_key: string;
|
|
28032
28299
|
base_url?: string | undefined;
|
|
28033
28300
|
visibility?: "private" | "shared" | undefined;
|
|
28301
|
+
space?: string | undefined;
|
|
28034
28302
|
goals?: boolean | undefined;
|
|
28035
28303
|
agents?: string | boolean | undefined;
|
|
28036
28304
|
messaging?: boolean | undefined;
|
|
@@ -28421,6 +28689,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
28421
28689
|
api_key: string;
|
|
28422
28690
|
base_url?: string | undefined;
|
|
28423
28691
|
visibility?: "private" | "shared" | undefined;
|
|
28692
|
+
space?: string | undefined;
|
|
28424
28693
|
goals?: boolean | undefined;
|
|
28425
28694
|
agents?: string | boolean | undefined;
|
|
28426
28695
|
messaging?: boolean | undefined;
|
|
@@ -28700,6 +28969,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
28700
28969
|
api_key: string;
|
|
28701
28970
|
base_url?: string | undefined;
|
|
28702
28971
|
visibility?: "private" | "shared" | undefined;
|
|
28972
|
+
space?: string | undefined;
|
|
28703
28973
|
goals?: boolean | undefined;
|
|
28704
28974
|
agents?: string | boolean | undefined;
|
|
28705
28975
|
messaging?: boolean | undefined;
|
|
@@ -30432,34 +30702,108 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
30432
30702
|
scope?: "auto" | "spec" | "session" | undefined;
|
|
30433
30703
|
focusMaxChars?: number | undefined;
|
|
30434
30704
|
}>]>>;
|
|
30435
|
-
thredz: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodObject<{
|
|
30436
|
-
api_key: z.ZodString;
|
|
30705
|
+
thredz: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString, z.ZodEffects<z.ZodObject<{
|
|
30437
30706
|
base_url: z.ZodOptional<z.ZodString>;
|
|
30438
30707
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
30708
|
+
space: z.ZodOptional<z.ZodString>;
|
|
30439
30709
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
30440
30710
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
30441
|
-
/**
|
|
30442
|
-
* Item 5 (G44) — enable the nine Thredz messaging tools (`message_send`
|
|
30443
|
-
* / `inbox_poll` / `message_ack` / `thread_get` / `agent_*`). DEFAULT
|
|
30444
|
-
* false: the send-side tools are destructive + justification-gated, so
|
|
30445
|
-
* they stay off unless the author asks. The Thredz server side is already
|
|
30446
|
-
* live (thredz-api) — this flips their registration on.
|
|
30447
|
-
*/
|
|
30448
30711
|
messaging: z.ZodOptional<z.ZodBoolean>;
|
|
30712
|
+
} & {
|
|
30713
|
+
api_key: z.ZodOptional<z.ZodString>;
|
|
30714
|
+
roles: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
30715
|
+
api_key: z.ZodOptional<z.ZodString>;
|
|
30716
|
+
base_url: z.ZodOptional<z.ZodString>;
|
|
30717
|
+
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
30718
|
+
space: z.ZodOptional<z.ZodString>;
|
|
30719
|
+
goals: z.ZodOptional<z.ZodBoolean>;
|
|
30720
|
+
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
30721
|
+
messaging: z.ZodOptional<z.ZodBoolean>;
|
|
30722
|
+
}, "strict", z.ZodTypeAny, {
|
|
30723
|
+
api_key?: string | undefined;
|
|
30724
|
+
base_url?: string | undefined;
|
|
30725
|
+
visibility?: "private" | "shared" | undefined;
|
|
30726
|
+
space?: string | undefined;
|
|
30727
|
+
goals?: boolean | undefined;
|
|
30728
|
+
agents?: string | boolean | undefined;
|
|
30729
|
+
messaging?: boolean | undefined;
|
|
30730
|
+
}, {
|
|
30731
|
+
api_key?: string | undefined;
|
|
30732
|
+
base_url?: string | undefined;
|
|
30733
|
+
visibility?: "private" | "shared" | undefined;
|
|
30734
|
+
space?: string | undefined;
|
|
30735
|
+
goals?: boolean | undefined;
|
|
30736
|
+
agents?: string | boolean | undefined;
|
|
30737
|
+
messaging?: boolean | undefined;
|
|
30738
|
+
}>>>;
|
|
30449
30739
|
}, "strict", z.ZodTypeAny, {
|
|
30450
|
-
api_key
|
|
30740
|
+
api_key?: string | undefined;
|
|
30451
30741
|
base_url?: string | undefined;
|
|
30452
30742
|
visibility?: "private" | "shared" | undefined;
|
|
30743
|
+
space?: string | undefined;
|
|
30453
30744
|
goals?: boolean | undefined;
|
|
30454
30745
|
agents?: string | boolean | undefined;
|
|
30455
30746
|
messaging?: boolean | undefined;
|
|
30747
|
+
roles?: Record<string, {
|
|
30748
|
+
api_key?: string | undefined;
|
|
30749
|
+
base_url?: string | undefined;
|
|
30750
|
+
visibility?: "private" | "shared" | undefined;
|
|
30751
|
+
space?: string | undefined;
|
|
30752
|
+
goals?: boolean | undefined;
|
|
30753
|
+
agents?: string | boolean | undefined;
|
|
30754
|
+
messaging?: boolean | undefined;
|
|
30755
|
+
}> | undefined;
|
|
30456
30756
|
}, {
|
|
30457
|
-
api_key
|
|
30757
|
+
api_key?: string | undefined;
|
|
30458
30758
|
base_url?: string | undefined;
|
|
30459
30759
|
visibility?: "private" | "shared" | undefined;
|
|
30760
|
+
space?: string | undefined;
|
|
30460
30761
|
goals?: boolean | undefined;
|
|
30461
30762
|
agents?: string | boolean | undefined;
|
|
30462
30763
|
messaging?: boolean | undefined;
|
|
30764
|
+
roles?: Record<string, {
|
|
30765
|
+
api_key?: string | undefined;
|
|
30766
|
+
base_url?: string | undefined;
|
|
30767
|
+
visibility?: "private" | "shared" | undefined;
|
|
30768
|
+
space?: string | undefined;
|
|
30769
|
+
goals?: boolean | undefined;
|
|
30770
|
+
agents?: string | boolean | undefined;
|
|
30771
|
+
messaging?: boolean | undefined;
|
|
30772
|
+
}> | undefined;
|
|
30773
|
+
}>, {
|
|
30774
|
+
api_key?: string | undefined;
|
|
30775
|
+
base_url?: string | undefined;
|
|
30776
|
+
visibility?: "private" | "shared" | undefined;
|
|
30777
|
+
space?: string | undefined;
|
|
30778
|
+
goals?: boolean | undefined;
|
|
30779
|
+
agents?: string | boolean | undefined;
|
|
30780
|
+
messaging?: boolean | undefined;
|
|
30781
|
+
roles?: Record<string, {
|
|
30782
|
+
api_key?: string | undefined;
|
|
30783
|
+
base_url?: string | undefined;
|
|
30784
|
+
visibility?: "private" | "shared" | undefined;
|
|
30785
|
+
space?: string | undefined;
|
|
30786
|
+
goals?: boolean | undefined;
|
|
30787
|
+
agents?: string | boolean | undefined;
|
|
30788
|
+
messaging?: boolean | undefined;
|
|
30789
|
+
}> | undefined;
|
|
30790
|
+
}, {
|
|
30791
|
+
api_key?: string | undefined;
|
|
30792
|
+
base_url?: string | undefined;
|
|
30793
|
+
visibility?: "private" | "shared" | undefined;
|
|
30794
|
+
space?: string | undefined;
|
|
30795
|
+
goals?: boolean | undefined;
|
|
30796
|
+
agents?: string | boolean | undefined;
|
|
30797
|
+
messaging?: boolean | undefined;
|
|
30798
|
+
roles?: Record<string, {
|
|
30799
|
+
api_key?: string | undefined;
|
|
30800
|
+
base_url?: string | undefined;
|
|
30801
|
+
visibility?: "private" | "shared" | undefined;
|
|
30802
|
+
space?: string | undefined;
|
|
30803
|
+
goals?: boolean | undefined;
|
|
30804
|
+
agents?: string | boolean | undefined;
|
|
30805
|
+
messaging?: boolean | undefined;
|
|
30806
|
+
}> | undefined;
|
|
30463
30807
|
}>]>>;
|
|
30464
30808
|
learning: z.ZodOptional<z.ZodObject<{
|
|
30465
30809
|
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -30782,9 +31126,6 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
30782
31126
|
}>>;
|
|
30783
31127
|
}, "strict", z.ZodTypeAny, {
|
|
30784
31128
|
model: string;
|
|
30785
|
-
name: string;
|
|
30786
|
-
target: "crew";
|
|
30787
|
-
entry: string;
|
|
30788
31129
|
roles: Record<string, {
|
|
30789
31130
|
instructions: string;
|
|
30790
31131
|
tools?: string[] | undefined;
|
|
@@ -30854,6 +31195,9 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
30854
31195
|
}> | undefined;
|
|
30855
31196
|
tool_config?: Record<string, unknown> | undefined;
|
|
30856
31197
|
}>;
|
|
31198
|
+
name: string;
|
|
31199
|
+
target: "crew";
|
|
31200
|
+
entry: string;
|
|
30857
31201
|
permissions?: {
|
|
30858
31202
|
mode?: "default" | "plan" | "auto" | undefined;
|
|
30859
31203
|
rules?: {
|
|
@@ -30884,12 +31228,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
30884
31228
|
} | undefined;
|
|
30885
31229
|
} | undefined;
|
|
30886
31230
|
thredz?: string | boolean | {
|
|
30887
|
-
api_key
|
|
31231
|
+
api_key?: string | undefined;
|
|
30888
31232
|
base_url?: string | undefined;
|
|
30889
31233
|
visibility?: "private" | "shared" | undefined;
|
|
31234
|
+
space?: string | undefined;
|
|
30890
31235
|
goals?: boolean | undefined;
|
|
30891
31236
|
agents?: string | boolean | undefined;
|
|
30892
31237
|
messaging?: boolean | undefined;
|
|
31238
|
+
roles?: Record<string, {
|
|
31239
|
+
api_key?: string | undefined;
|
|
31240
|
+
base_url?: string | undefined;
|
|
31241
|
+
visibility?: "private" | "shared" | undefined;
|
|
31242
|
+
space?: string | undefined;
|
|
31243
|
+
goals?: boolean | undefined;
|
|
31244
|
+
agents?: string | boolean | undefined;
|
|
31245
|
+
messaging?: boolean | undefined;
|
|
31246
|
+
}> | undefined;
|
|
30893
31247
|
} | undefined;
|
|
30894
31248
|
version?: number | undefined;
|
|
30895
31249
|
mcp_servers?: Record<string, {
|
|
@@ -31050,9 +31404,6 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
31050
31404
|
} | undefined;
|
|
31051
31405
|
}, {
|
|
31052
31406
|
model: string;
|
|
31053
|
-
name: string;
|
|
31054
|
-
target: "crew";
|
|
31055
|
-
entry: string;
|
|
31056
31407
|
roles: Record<string, {
|
|
31057
31408
|
instructions: string;
|
|
31058
31409
|
tools?: string[] | undefined;
|
|
@@ -31122,6 +31473,9 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
31122
31473
|
}> | undefined;
|
|
31123
31474
|
tool_config?: Record<string, unknown> | undefined;
|
|
31124
31475
|
}>;
|
|
31476
|
+
name: string;
|
|
31477
|
+
target: "crew";
|
|
31478
|
+
entry: string;
|
|
31125
31479
|
permissions?: {
|
|
31126
31480
|
mode?: "default" | "plan" | "auto" | undefined;
|
|
31127
31481
|
rules?: {
|
|
@@ -31152,12 +31506,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
31152
31506
|
} | undefined;
|
|
31153
31507
|
} | undefined;
|
|
31154
31508
|
thredz?: string | boolean | {
|
|
31155
|
-
api_key
|
|
31509
|
+
api_key?: string | undefined;
|
|
31156
31510
|
base_url?: string | undefined;
|
|
31157
31511
|
visibility?: "private" | "shared" | undefined;
|
|
31512
|
+
space?: string | undefined;
|
|
31158
31513
|
goals?: boolean | undefined;
|
|
31159
31514
|
agents?: string | boolean | undefined;
|
|
31160
31515
|
messaging?: boolean | undefined;
|
|
31516
|
+
roles?: Record<string, {
|
|
31517
|
+
api_key?: string | undefined;
|
|
31518
|
+
base_url?: string | undefined;
|
|
31519
|
+
visibility?: "private" | "shared" | undefined;
|
|
31520
|
+
space?: string | undefined;
|
|
31521
|
+
goals?: boolean | undefined;
|
|
31522
|
+
agents?: string | boolean | undefined;
|
|
31523
|
+
messaging?: boolean | undefined;
|
|
31524
|
+
}> | undefined;
|
|
31161
31525
|
} | undefined;
|
|
31162
31526
|
version?: number | undefined;
|
|
31163
31527
|
mcp_servers?: Record<string, {
|
|
@@ -31978,6 +32342,22 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
31978
32342
|
api_key: z.ZodString;
|
|
31979
32343
|
base_url: z.ZodOptional<z.ZodString>;
|
|
31980
32344
|
visibility: z.ZodOptional<z.ZodEnum<["private", "shared"]>>;
|
|
32345
|
+
/**
|
|
32346
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
32347
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
32348
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
32349
|
+
* `individual` space only by the key that owns it.
|
|
32350
|
+
*
|
|
32351
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
32352
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
32353
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
32354
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
32355
|
+
*
|
|
32356
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
32357
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
32358
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
32359
|
+
*/
|
|
32360
|
+
space: z.ZodOptional<z.ZodString>;
|
|
31981
32361
|
goals: z.ZodOptional<z.ZodBoolean>;
|
|
31982
32362
|
agents: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>;
|
|
31983
32363
|
/**
|
|
@@ -31992,6 +32372,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
31992
32372
|
api_key: string;
|
|
31993
32373
|
base_url?: string | undefined;
|
|
31994
32374
|
visibility?: "private" | "shared" | undefined;
|
|
32375
|
+
space?: string | undefined;
|
|
31995
32376
|
goals?: boolean | undefined;
|
|
31996
32377
|
agents?: string | boolean | undefined;
|
|
31997
32378
|
messaging?: boolean | undefined;
|
|
@@ -31999,6 +32380,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
31999
32380
|
api_key: string;
|
|
32000
32381
|
base_url?: string | undefined;
|
|
32001
32382
|
visibility?: "private" | "shared" | undefined;
|
|
32383
|
+
space?: string | undefined;
|
|
32002
32384
|
goals?: boolean | undefined;
|
|
32003
32385
|
agents?: string | boolean | undefined;
|
|
32004
32386
|
messaging?: boolean | undefined;
|
|
@@ -32237,6 +32619,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
32237
32619
|
api_key: string;
|
|
32238
32620
|
base_url?: string | undefined;
|
|
32239
32621
|
visibility?: "private" | "shared" | undefined;
|
|
32622
|
+
space?: string | undefined;
|
|
32240
32623
|
goals?: boolean | undefined;
|
|
32241
32624
|
agents?: string | boolean | undefined;
|
|
32242
32625
|
messaging?: boolean | undefined;
|
|
@@ -32429,6 +32812,7 @@ export declare const Spec: z.ZodDiscriminatedUnion<"target", [z.ZodObject<{
|
|
|
32429
32812
|
api_key: string;
|
|
32430
32813
|
base_url?: string | undefined;
|
|
32431
32814
|
visibility?: "private" | "shared" | undefined;
|
|
32815
|
+
space?: string | undefined;
|
|
32432
32816
|
goals?: boolean | undefined;
|
|
32433
32817
|
agents?: string | boolean | undefined;
|
|
32434
32818
|
messaging?: boolean | undefined;
|
package/dist/index.js
CHANGED
|
@@ -1110,7 +1110,8 @@ const continuityBlock = z.union([z.boolean(), continuityObject]).optional();
|
|
|
1110
1110
|
/**
|
|
1111
1111
|
* v0.3.0 Goal 3 (§4.1) — the top-level `thredz:` block: ONE knob that flips
|
|
1112
1112
|
* the memory fabric's wiki backend to a hosted Thredz wiki over the published
|
|
1113
|
-
* `thredz-mcp` stdio server (npm, v0.
|
|
1113
|
+
* `thredz-mcp` stdio server (npm, v0.3.0 — 27 tools incl. `goal_*`/`task_*`
|
|
1114
|
+
* and the `wiki_space_*` pair).
|
|
1114
1115
|
*
|
|
1115
1116
|
* Forms:
|
|
1116
1117
|
* - boolean shorthand: `thredz: true` ≡ `{ api_key: "$THREDZ_API_KEY" }`
|
|
@@ -1142,6 +1143,22 @@ const thredzObject = z
|
|
|
1142
1143
|
api_key: z.string().min(1),
|
|
1143
1144
|
base_url: z.string().url().optional(),
|
|
1144
1145
|
visibility: z.enum(["private", "shared"]).optional(),
|
|
1146
|
+
/**
|
|
1147
|
+
* 0.5.0 — a Thredz **wiki space** (Pro/Scale) to scope this agent's memory
|
|
1148
|
+
* to; becomes the synthesized server's `THREDZ_DEFAULT_SPACE`. A `shared`
|
|
1149
|
+
* space is readable by every wiki-enabled key on the account; an
|
|
1150
|
+
* `individual` space only by the key that owns it.
|
|
1151
|
+
*
|
|
1152
|
+
* The space TYPE is chosen when the space is created (over the API, or via
|
|
1153
|
+
* the model-callable `wiki_space_create`), not here — so this cannot be
|
|
1154
|
+
* validated at compile time and `visibility` is not cross-checked against
|
|
1155
|
+
* it. Inside a space the space's type decides visibility outright.
|
|
1156
|
+
*
|
|
1157
|
+
* ONE individual space per API KEY is a hard Thredz limit, so per-agent
|
|
1158
|
+
* private memory means a per-agent `api_key`. That is one `thredz:` block
|
|
1159
|
+
* per spec today; a crew gives each role its own (see the role-keyed form).
|
|
1160
|
+
*/
|
|
1161
|
+
space: z.string().min(1).optional(),
|
|
1145
1162
|
goals: z.boolean().optional(),
|
|
1146
1163
|
agents: z
|
|
1147
1164
|
.union([
|
|
@@ -1162,6 +1179,48 @@ const thredzObject = z
|
|
|
1162
1179
|
})
|
|
1163
1180
|
.strict();
|
|
1164
1181
|
const thredzBlock = z.union([z.boolean(), z.string().min(1), thredzObject]).optional();
|
|
1182
|
+
/**
|
|
1183
|
+
* 0.5.0 — the CREW-ONLY superset of {@link thredzObject}. `roles` fans the
|
|
1184
|
+
* block out per role so each role can carry its OWN `api_key` and its own
|
|
1185
|
+
* `space`; every other field at this level is the DEFAULT a role inherits and
|
|
1186
|
+
* may override.
|
|
1187
|
+
*
|
|
1188
|
+
* WHY THE MAP LIVES HERE, under `thredz.roles.<role>`, and NOT on the role as
|
|
1189
|
+
* `roles.<role>.thredz` — this is load-bearing, not taste. Two security
|
|
1190
|
+
* surfaces prefix-match on `["thredz"]`:
|
|
1191
|
+
*
|
|
1192
|
+
* - `@crewhaus/spec-patch`'s `OPTIMIZABLE_PATHS.crew` allows `["roles"]`
|
|
1193
|
+
* (whole-role replacement) and matches by PREFIX. Under `roles.*`, a
|
|
1194
|
+
* role's `api_key` would become optimizer-reachable and
|
|
1195
|
+
* `optimize --write-back` could rewrite a credential.
|
|
1196
|
+
* - the hangar's spec editor denies the `["thredz"]` prefix outright
|
|
1197
|
+
* ("thredz crosses the harness boundary to a hosted wiki"). Under
|
|
1198
|
+
* `roles.*`, `api_key` would be editable from a browser.
|
|
1199
|
+
*
|
|
1200
|
+
* Keeping the fan-out under `thredz.` inherits both protections with zero
|
|
1201
|
+
* code change. The `^thredz:` header/badge regexes keep matching too.
|
|
1202
|
+
*
|
|
1203
|
+
* `api_key` is optional ONLY here: a pure fan-out crew gives every role its
|
|
1204
|
+
* own key and needs no crew-wide one. The refinement below enforces that at
|
|
1205
|
+
* least one of the two exists.
|
|
1206
|
+
*/
|
|
1207
|
+
const crewThredzObject = thredzObject
|
|
1208
|
+
.extend({
|
|
1209
|
+
api_key: z.string().min(1).optional(),
|
|
1210
|
+
roles: z.record(safeName, thredzObject.partial({ api_key: true })).optional(),
|
|
1211
|
+
})
|
|
1212
|
+
.strict()
|
|
1213
|
+
.superRefine((t, ctx) => {
|
|
1214
|
+
const fanOut = t.roles !== undefined && Object.keys(t.roles).length > 0;
|
|
1215
|
+
if (!fanOut && t.api_key === undefined) {
|
|
1216
|
+
ctx.addIssue({
|
|
1217
|
+
code: "custom",
|
|
1218
|
+
message: "thredz.api_key is required unless thredz.roles gives each role its own key (one individual wiki space per API key is a hard Thredz limit, so per-role private memory needs per-role keys)",
|
|
1219
|
+
});
|
|
1220
|
+
}
|
|
1221
|
+
});
|
|
1222
|
+
/** The crew mount: the shorthands still work, plus the role-keyed superset. */
|
|
1223
|
+
const crewThredzBlock = z.union([z.boolean(), z.string().min(1), crewThredzObject]).optional();
|
|
1165
1224
|
/**
|
|
1166
1225
|
* v0.3.0 Goal 2 (§3.3, PR 17) — the top-level `learning:` block: continual
|
|
1167
1226
|
* learning as a first-class capability. Presence (with `enabled` not `false`)
|
|
@@ -2250,7 +2309,7 @@ const crewSchema = z
|
|
|
2250
2309
|
// surface, §2.7).
|
|
2251
2310
|
memory: memoryBlock,
|
|
2252
2311
|
continuity: continuityBlock,
|
|
2253
|
-
thredz:
|
|
2312
|
+
thredz: crewThredzBlock,
|
|
2254
2313
|
learning: learningBlock,
|
|
2255
2314
|
// Loop contract 0.4 (Batch C, G26) — crew joins the observability-carrying
|
|
2256
2315
|
// shapes (cli/channel/managed): the orchestrator's cost/trace/metrics/
|
|
@@ -2647,6 +2706,48 @@ function crossFieldIssues(data) {
|
|
|
2647
2706
|
if (roleNames.length > 0 && !roleNames.includes(data.entry)) {
|
|
2648
2707
|
custom(["entry"], `crew.entry "${data.entry}" must name one of crew.roles (got: ${roleNames.join(", ")})`);
|
|
2649
2708
|
}
|
|
2709
|
+
// 0.5.0 — the role-keyed thredz fan-out. Both checks are cross-field, so
|
|
2710
|
+
// they cannot live in the schema: `thredz.roles` and `roles` are siblings.
|
|
2711
|
+
const crewThredz = data.thredz;
|
|
2712
|
+
if (typeof crewThredz === "object" && crewThredz !== null && "roles" in crewThredz) {
|
|
2713
|
+
const fanOut = crewThredz.roles;
|
|
2714
|
+
const inheritedKey = crewThredz.api_key;
|
|
2715
|
+
if (fanOut !== undefined) {
|
|
2716
|
+
for (const name of Object.keys(fanOut)) {
|
|
2717
|
+
if (!roleNames.includes(name)) {
|
|
2718
|
+
custom(["thredz", "roles", name], `thredz.roles["${name}"]: no such role — crew.roles declares ${roleNames.join(", ")}`);
|
|
2719
|
+
}
|
|
2720
|
+
}
|
|
2721
|
+
// Every role must resolve to a key: its own, or the inherited one. A
|
|
2722
|
+
// role with neither would silently get NO hosted wiki while its
|
|
2723
|
+
// siblings got one, which is the kind of gap you find in production.
|
|
2724
|
+
if (inheritedKey === undefined) {
|
|
2725
|
+
for (const name of roleNames) {
|
|
2726
|
+
if (fanOut[name]?.api_key === undefined) {
|
|
2727
|
+
custom(["thredz", "roles", name], `role "${name}" has no Thredz api_key and thredz.api_key is not set — give it one, or set a crew-wide thredz.api_key for the roles that share a wiki`);
|
|
2728
|
+
}
|
|
2729
|
+
}
|
|
2730
|
+
}
|
|
2731
|
+
// Two role names that slugify to the same MCP server name would make
|
|
2732
|
+
// one silently overwrite the other's server entry.
|
|
2733
|
+
const slugs = new Map();
|
|
2734
|
+
for (const name of Object.keys(fanOut)) {
|
|
2735
|
+
const slug = name
|
|
2736
|
+
.toLowerCase()
|
|
2737
|
+
.replace(/[^a-z0-9]+/g, "-")
|
|
2738
|
+
.replace(/^-+|-+$/g, "");
|
|
2739
|
+
if (slug === "") {
|
|
2740
|
+
custom(["thredz", "roles", name], `thredz.roles["${name}"]: the role name has no characters usable in an MCP server name — rename the role`);
|
|
2741
|
+
continue;
|
|
2742
|
+
}
|
|
2743
|
+
const clash = slugs.get(slug);
|
|
2744
|
+
if (clash !== undefined) {
|
|
2745
|
+
custom(["thredz", "roles", name], `thredz.roles["${name}"] and thredz.roles["${clash}"] both reduce to the MCP server name "thredz-${slug}" — rename one`);
|
|
2746
|
+
}
|
|
2747
|
+
slugs.set(slug, name);
|
|
2748
|
+
}
|
|
2749
|
+
}
|
|
2750
|
+
}
|
|
2650
2751
|
if (data.routing !== undefined && data.routing.kind === "match" && data.routing.match) {
|
|
2651
2752
|
for (const [from, rules] of Object.entries(data.routing.match)) {
|
|
2652
2753
|
if (!roleNames.includes(from)) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crewhaus/spec",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "User-facing spec schema (Zod) + YAML parser",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"test": "bun test src"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@crewhaus/errors": "0.
|
|
18
|
+
"@crewhaus/errors": "0.5.0",
|
|
19
19
|
"yaml": "^2.6.0",
|
|
20
20
|
"zod": "^3.23.8",
|
|
21
21
|
"zod-to-json-schema": "^3.23.5"
|