@winmatrix/protocol 1.0.3 → 1.0.5

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.
@@ -0,0 +1,1063 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://winmatrix.local/schemas/agent-engine-host-wire/v1.json",
4
+ "title": "AgentEngineHostWire",
5
+ "description": "Server <-> Host (Sandbox API / daemon) wire protocol v1",
6
+ "protocolVersion": 1,
7
+ "definitions": {
8
+ "HostLaunchRequest": {
9
+ "type": "object",
10
+ "properties": {
11
+ "runKey": {
12
+ "type": "string",
13
+ "minLength": 1
14
+ },
15
+ "invocationFingerprint": {
16
+ "type": "string",
17
+ "minLength": 1
18
+ },
19
+ "launchSpec": {
20
+ "type": "object",
21
+ "properties": {
22
+ "schemaVersion": {
23
+ "type": "integer",
24
+ "exclusiveMinimum": 0
25
+ },
26
+ "engineId": {
27
+ "type": "string",
28
+ "enum": [
29
+ "claude-code",
30
+ "codex",
31
+ "hermes",
32
+ "openclaw",
33
+ "custom"
34
+ ]
35
+ },
36
+ "hostKind": {
37
+ "type": "string",
38
+ "enum": [
39
+ "workstation",
40
+ "external_computer"
41
+ ]
42
+ },
43
+ "input": {
44
+ "type": "object",
45
+ "properties": {
46
+ "blocks": {
47
+ "type": "array",
48
+ "items": {
49
+ "anyOf": [
50
+ {
51
+ "type": "object",
52
+ "properties": {
53
+ "kind": {
54
+ "type": "string",
55
+ "const": "text"
56
+ },
57
+ "text": {
58
+ "type": "string"
59
+ }
60
+ },
61
+ "required": [
62
+ "kind",
63
+ "text"
64
+ ],
65
+ "additionalProperties": false
66
+ },
67
+ {
68
+ "type": "object",
69
+ "properties": {
70
+ "kind": {
71
+ "type": "string",
72
+ "const": "image_ref"
73
+ },
74
+ "artifactRef": {
75
+ "type": "string",
76
+ "minLength": 1
77
+ },
78
+ "mimeType": {
79
+ "type": "string",
80
+ "minLength": 1
81
+ }
82
+ },
83
+ "required": [
84
+ "kind",
85
+ "artifactRef",
86
+ "mimeType"
87
+ ],
88
+ "additionalProperties": false
89
+ },
90
+ {
91
+ "type": "object",
92
+ "properties": {
93
+ "kind": {
94
+ "type": "string",
95
+ "const": "file_ref"
96
+ },
97
+ "artifactRef": {
98
+ "type": "string",
99
+ "minLength": 1
100
+ },
101
+ "name": {
102
+ "type": "string"
103
+ },
104
+ "mimeType": {
105
+ "type": "string"
106
+ }
107
+ },
108
+ "required": [
109
+ "kind",
110
+ "artifactRef"
111
+ ],
112
+ "additionalProperties": false
113
+ },
114
+ {
115
+ "type": "object",
116
+ "properties": {
117
+ "kind": {
118
+ "type": "string",
119
+ "const": "resource_ref"
120
+ },
121
+ "uri": {
122
+ "type": "string",
123
+ "minLength": 1
124
+ },
125
+ "mimeType": {
126
+ "type": "string"
127
+ }
128
+ },
129
+ "required": [
130
+ "kind",
131
+ "uri"
132
+ ],
133
+ "additionalProperties": false
134
+ }
135
+ ]
136
+ },
137
+ "minItems": 1
138
+ }
139
+ },
140
+ "required": [
141
+ "blocks"
142
+ ],
143
+ "additionalProperties": false
144
+ },
145
+ "model": {
146
+ "type": "object",
147
+ "properties": {
148
+ "modelId": {
149
+ "type": "string",
150
+ "minLength": 1
151
+ },
152
+ "reasoningEffort": {
153
+ "type": "string",
154
+ "minLength": 1
155
+ }
156
+ },
157
+ "required": [
158
+ "modelId"
159
+ ],
160
+ "additionalProperties": false
161
+ },
162
+ "permissionMode": {
163
+ "type": "string",
164
+ "minLength": 1
165
+ },
166
+ "engineOptions": {
167
+ "type": "object",
168
+ "properties": {
169
+ "modeId": {
170
+ "type": "string",
171
+ "minLength": 1
172
+ },
173
+ "values": {
174
+ "type": "object",
175
+ "additionalProperties": {
176
+ "type": [
177
+ "string",
178
+ "number",
179
+ "boolean"
180
+ ]
181
+ }
182
+ }
183
+ },
184
+ "additionalProperties": false
185
+ },
186
+ "systemPrompt": {
187
+ "type": "string"
188
+ },
189
+ "workDir": {
190
+ "type": "string"
191
+ },
192
+ "timeoutMs": {
193
+ "type": "integer",
194
+ "exclusiveMinimum": 0
195
+ },
196
+ "allowedTools": {
197
+ "type": "array",
198
+ "items": {
199
+ "type": "string"
200
+ }
201
+ },
202
+ "session": {
203
+ "anyOf": [
204
+ {
205
+ "type": "object",
206
+ "properties": {
207
+ "mode": {
208
+ "type": "string",
209
+ "const": "ephemeral"
210
+ }
211
+ },
212
+ "required": [
213
+ "mode"
214
+ ],
215
+ "additionalProperties": false
216
+ },
217
+ {
218
+ "type": "object",
219
+ "properties": {
220
+ "mode": {
221
+ "type": "string",
222
+ "const": "new"
223
+ }
224
+ },
225
+ "required": [
226
+ "mode"
227
+ ],
228
+ "additionalProperties": false
229
+ },
230
+ {
231
+ "type": "object",
232
+ "properties": {
233
+ "mode": {
234
+ "type": "string",
235
+ "const": "resume"
236
+ },
237
+ "session": {
238
+ "type": "object",
239
+ "properties": {
240
+ "instance": {
241
+ "type": "object",
242
+ "properties": {
243
+ "instanceId": {
244
+ "type": "string",
245
+ "minLength": 1
246
+ },
247
+ "hostKind": {
248
+ "$ref": "#/properties/launchSpec/properties/hostKind"
249
+ }
250
+ },
251
+ "required": [
252
+ "instanceId",
253
+ "hostKind"
254
+ ],
255
+ "additionalProperties": false
256
+ },
257
+ "engineId": {
258
+ "$ref": "#/properties/launchSpec/properties/engineId"
259
+ },
260
+ "sessionId": {
261
+ "type": "string",
262
+ "minLength": 1
263
+ }
264
+ },
265
+ "required": [
266
+ "instance",
267
+ "engineId",
268
+ "sessionId"
269
+ ],
270
+ "additionalProperties": false
271
+ }
272
+ },
273
+ "required": [
274
+ "mode",
275
+ "session"
276
+ ],
277
+ "additionalProperties": false
278
+ },
279
+ {
280
+ "type": "object",
281
+ "properties": {
282
+ "mode": {
283
+ "type": "string",
284
+ "const": "fork"
285
+ },
286
+ "session": {
287
+ "$ref": "#/properties/launchSpec/properties/session/anyOf/2/properties/session"
288
+ }
289
+ },
290
+ "required": [
291
+ "mode",
292
+ "session"
293
+ ],
294
+ "additionalProperties": false
295
+ }
296
+ ]
297
+ },
298
+ "engineHookProfiles": {
299
+ "type": "array",
300
+ "items": {
301
+ "type": "object",
302
+ "properties": {
303
+ "profileId": {
304
+ "type": "string",
305
+ "minLength": 1
306
+ },
307
+ "version": {
308
+ "type": "string",
309
+ "minLength": 1
310
+ },
311
+ "policyRevision": {
312
+ "type": "string",
313
+ "minLength": 1
314
+ }
315
+ },
316
+ "required": [
317
+ "profileId",
318
+ "version",
319
+ "policyRevision"
320
+ ],
321
+ "additionalProperties": false
322
+ }
323
+ },
324
+ "nonSensitiveEnv": {
325
+ "type": "object",
326
+ "additionalProperties": {
327
+ "type": "string"
328
+ }
329
+ },
330
+ "artifactPolicy": {
331
+ "type": "object",
332
+ "additionalProperties": {}
333
+ }
334
+ },
335
+ "required": [
336
+ "schemaVersion",
337
+ "engineId",
338
+ "hostKind",
339
+ "input",
340
+ "timeoutMs",
341
+ "allowedTools",
342
+ "session",
343
+ "engineHookProfiles",
344
+ "nonSensitiveEnv",
345
+ "artifactPolicy"
346
+ ],
347
+ "additionalProperties": false
348
+ },
349
+ "privateBindings": {
350
+ "anyOf": [
351
+ {
352
+ "type": "object",
353
+ "properties": {
354
+ "hostKind": {
355
+ "type": "string",
356
+ "const": "workstation"
357
+ },
358
+ "callback": {
359
+ "type": "object",
360
+ "properties": {
361
+ "url": {
362
+ "type": "string",
363
+ "minLength": 1
364
+ },
365
+ "token": {
366
+ "type": "string",
367
+ "minLength": 1
368
+ }
369
+ },
370
+ "required": [
371
+ "url",
372
+ "token"
373
+ ],
374
+ "additionalProperties": false
375
+ },
376
+ "dynamicSecrets": {
377
+ "type": "object",
378
+ "additionalProperties": {
379
+ "type": "string"
380
+ }
381
+ }
382
+ },
383
+ "required": [
384
+ "hostKind"
385
+ ],
386
+ "additionalProperties": false
387
+ },
388
+ {
389
+ "type": "object",
390
+ "properties": {
391
+ "hostKind": {
392
+ "type": "string",
393
+ "const": "external_computer"
394
+ },
395
+ "secrets": {
396
+ "type": "object",
397
+ "properties": {
398
+ "mcpCapabilityToken": {
399
+ "type": "string",
400
+ "minLength": 1
401
+ },
402
+ "credentialReferences": {
403
+ "type": "array",
404
+ "items": {
405
+ "type": "string",
406
+ "minLength": 1
407
+ }
408
+ }
409
+ },
410
+ "additionalProperties": false
411
+ }
412
+ },
413
+ "required": [
414
+ "hostKind"
415
+ ],
416
+ "additionalProperties": false
417
+ }
418
+ ]
419
+ }
420
+ },
421
+ "required": [
422
+ "runKey",
423
+ "invocationFingerprint",
424
+ "launchSpec"
425
+ ],
426
+ "additionalProperties": false,
427
+ "$schema": "http://json-schema.org/draft-07/schema#"
428
+ },
429
+ "HostLaunchAck": {
430
+ "type": "object",
431
+ "properties": {
432
+ "disposition": {
433
+ "type": "string",
434
+ "enum": [
435
+ "accepted",
436
+ "existing"
437
+ ]
438
+ },
439
+ "ref": {
440
+ "type": "object",
441
+ "properties": {
442
+ "instance": {
443
+ "type": "object",
444
+ "properties": {
445
+ "instanceId": {
446
+ "type": "string",
447
+ "minLength": 1
448
+ },
449
+ "hostKind": {
450
+ "type": "string",
451
+ "enum": [
452
+ "workstation",
453
+ "external_computer"
454
+ ]
455
+ }
456
+ },
457
+ "required": [
458
+ "instanceId",
459
+ "hostKind"
460
+ ],
461
+ "additionalProperties": false
462
+ },
463
+ "executionSnapshot": {
464
+ "type": "object",
465
+ "properties": {
466
+ "hostProfile": {
467
+ "anyOf": [
468
+ {
469
+ "type": "string",
470
+ "enum": [
471
+ "coding",
472
+ "sre"
473
+ ]
474
+ },
475
+ {
476
+ "type": "string",
477
+ "minLength": 1
478
+ }
479
+ ]
480
+ },
481
+ "digitalEmployeeId": {
482
+ "type": "string"
483
+ },
484
+ "projectId": {
485
+ "type": "string"
486
+ },
487
+ "configurationRevision": {
488
+ "type": "string"
489
+ },
490
+ "imageDigest": {
491
+ "type": "string"
492
+ }
493
+ },
494
+ "additionalProperties": false
495
+ },
496
+ "runKey": {
497
+ "type": "string",
498
+ "minLength": 1
499
+ },
500
+ "engineId": {
501
+ "type": "string",
502
+ "enum": [
503
+ "claude-code",
504
+ "codex",
505
+ "hermes",
506
+ "openclaw",
507
+ "custom"
508
+ ]
509
+ },
510
+ "invocationFingerprint": {
511
+ "type": "string",
512
+ "minLength": 1
513
+ }
514
+ },
515
+ "required": [
516
+ "instance",
517
+ "executionSnapshot",
518
+ "runKey",
519
+ "engineId",
520
+ "invocationFingerprint"
521
+ ],
522
+ "additionalProperties": false
523
+ },
524
+ "sessionRef": {
525
+ "type": "object",
526
+ "properties": {
527
+ "instance": {
528
+ "$ref": "#/properties/ref/properties/instance"
529
+ },
530
+ "engineId": {
531
+ "$ref": "#/properties/ref/properties/engineId"
532
+ },
533
+ "sessionId": {
534
+ "type": "string",
535
+ "minLength": 1
536
+ }
537
+ },
538
+ "required": [
539
+ "instance",
540
+ "engineId",
541
+ "sessionId"
542
+ ],
543
+ "additionalProperties": false
544
+ },
545
+ "executionDurability": {
546
+ "type": "string",
547
+ "enum": [
548
+ "connection_bound",
549
+ "host_persistent"
550
+ ]
551
+ },
552
+ "eventStreamMode": {
553
+ "type": "string",
554
+ "enum": [
555
+ "live_only",
556
+ "replay",
557
+ "snapshot_fallback"
558
+ ]
559
+ },
560
+ "eventRetention": {
561
+ "type": "object",
562
+ "properties": {
563
+ "maxEvents": {
564
+ "type": "integer",
565
+ "exclusiveMinimum": 0
566
+ },
567
+ "maxAgeSeconds": {
568
+ "type": "integer",
569
+ "exclusiveMinimum": 0
570
+ }
571
+ },
572
+ "additionalProperties": false
573
+ },
574
+ "runtimeVersion": {
575
+ "type": "string"
576
+ },
577
+ "protocolVersion": {
578
+ "type": "string"
579
+ }
580
+ },
581
+ "required": [
582
+ "disposition",
583
+ "ref",
584
+ "executionDurability",
585
+ "eventStreamMode"
586
+ ],
587
+ "additionalProperties": false,
588
+ "$schema": "http://json-schema.org/draft-07/schema#"
589
+ },
590
+ "EngineLaunchSpec": {
591
+ "type": "object",
592
+ "properties": {
593
+ "schemaVersion": {
594
+ "type": "integer",
595
+ "exclusiveMinimum": 0
596
+ },
597
+ "engineId": {
598
+ "type": "string",
599
+ "enum": [
600
+ "claude-code",
601
+ "codex",
602
+ "hermes",
603
+ "openclaw",
604
+ "custom"
605
+ ]
606
+ },
607
+ "hostKind": {
608
+ "type": "string",
609
+ "enum": [
610
+ "workstation",
611
+ "external_computer"
612
+ ]
613
+ },
614
+ "input": {
615
+ "type": "object",
616
+ "properties": {
617
+ "blocks": {
618
+ "type": "array",
619
+ "items": {
620
+ "anyOf": [
621
+ {
622
+ "type": "object",
623
+ "properties": {
624
+ "kind": {
625
+ "type": "string",
626
+ "const": "text"
627
+ },
628
+ "text": {
629
+ "type": "string"
630
+ }
631
+ },
632
+ "required": [
633
+ "kind",
634
+ "text"
635
+ ],
636
+ "additionalProperties": false
637
+ },
638
+ {
639
+ "type": "object",
640
+ "properties": {
641
+ "kind": {
642
+ "type": "string",
643
+ "const": "image_ref"
644
+ },
645
+ "artifactRef": {
646
+ "type": "string",
647
+ "minLength": 1
648
+ },
649
+ "mimeType": {
650
+ "type": "string",
651
+ "minLength": 1
652
+ }
653
+ },
654
+ "required": [
655
+ "kind",
656
+ "artifactRef",
657
+ "mimeType"
658
+ ],
659
+ "additionalProperties": false
660
+ },
661
+ {
662
+ "type": "object",
663
+ "properties": {
664
+ "kind": {
665
+ "type": "string",
666
+ "const": "file_ref"
667
+ },
668
+ "artifactRef": {
669
+ "type": "string",
670
+ "minLength": 1
671
+ },
672
+ "name": {
673
+ "type": "string"
674
+ },
675
+ "mimeType": {
676
+ "type": "string"
677
+ }
678
+ },
679
+ "required": [
680
+ "kind",
681
+ "artifactRef"
682
+ ],
683
+ "additionalProperties": false
684
+ },
685
+ {
686
+ "type": "object",
687
+ "properties": {
688
+ "kind": {
689
+ "type": "string",
690
+ "const": "resource_ref"
691
+ },
692
+ "uri": {
693
+ "type": "string",
694
+ "minLength": 1
695
+ },
696
+ "mimeType": {
697
+ "type": "string"
698
+ }
699
+ },
700
+ "required": [
701
+ "kind",
702
+ "uri"
703
+ ],
704
+ "additionalProperties": false
705
+ }
706
+ ]
707
+ },
708
+ "minItems": 1
709
+ }
710
+ },
711
+ "required": [
712
+ "blocks"
713
+ ],
714
+ "additionalProperties": false
715
+ },
716
+ "model": {
717
+ "type": "object",
718
+ "properties": {
719
+ "modelId": {
720
+ "type": "string",
721
+ "minLength": 1
722
+ },
723
+ "reasoningEffort": {
724
+ "type": "string",
725
+ "minLength": 1
726
+ }
727
+ },
728
+ "required": [
729
+ "modelId"
730
+ ],
731
+ "additionalProperties": false
732
+ },
733
+ "permissionMode": {
734
+ "type": "string",
735
+ "minLength": 1
736
+ },
737
+ "engineOptions": {
738
+ "type": "object",
739
+ "properties": {
740
+ "modeId": {
741
+ "type": "string",
742
+ "minLength": 1
743
+ },
744
+ "values": {
745
+ "type": "object",
746
+ "additionalProperties": {
747
+ "type": [
748
+ "string",
749
+ "number",
750
+ "boolean"
751
+ ]
752
+ }
753
+ }
754
+ },
755
+ "additionalProperties": false
756
+ },
757
+ "systemPrompt": {
758
+ "type": "string"
759
+ },
760
+ "workDir": {
761
+ "type": "string"
762
+ },
763
+ "timeoutMs": {
764
+ "type": "integer",
765
+ "exclusiveMinimum": 0
766
+ },
767
+ "allowedTools": {
768
+ "type": "array",
769
+ "items": {
770
+ "type": "string"
771
+ }
772
+ },
773
+ "session": {
774
+ "anyOf": [
775
+ {
776
+ "type": "object",
777
+ "properties": {
778
+ "mode": {
779
+ "type": "string",
780
+ "const": "ephemeral"
781
+ }
782
+ },
783
+ "required": [
784
+ "mode"
785
+ ],
786
+ "additionalProperties": false
787
+ },
788
+ {
789
+ "type": "object",
790
+ "properties": {
791
+ "mode": {
792
+ "type": "string",
793
+ "const": "new"
794
+ }
795
+ },
796
+ "required": [
797
+ "mode"
798
+ ],
799
+ "additionalProperties": false
800
+ },
801
+ {
802
+ "type": "object",
803
+ "properties": {
804
+ "mode": {
805
+ "type": "string",
806
+ "const": "resume"
807
+ },
808
+ "session": {
809
+ "type": "object",
810
+ "properties": {
811
+ "instance": {
812
+ "type": "object",
813
+ "properties": {
814
+ "instanceId": {
815
+ "type": "string",
816
+ "minLength": 1
817
+ },
818
+ "hostKind": {
819
+ "$ref": "#/properties/hostKind"
820
+ }
821
+ },
822
+ "required": [
823
+ "instanceId",
824
+ "hostKind"
825
+ ],
826
+ "additionalProperties": false
827
+ },
828
+ "engineId": {
829
+ "$ref": "#/properties/engineId"
830
+ },
831
+ "sessionId": {
832
+ "type": "string",
833
+ "minLength": 1
834
+ }
835
+ },
836
+ "required": [
837
+ "instance",
838
+ "engineId",
839
+ "sessionId"
840
+ ],
841
+ "additionalProperties": false
842
+ }
843
+ },
844
+ "required": [
845
+ "mode",
846
+ "session"
847
+ ],
848
+ "additionalProperties": false
849
+ },
850
+ {
851
+ "type": "object",
852
+ "properties": {
853
+ "mode": {
854
+ "type": "string",
855
+ "const": "fork"
856
+ },
857
+ "session": {
858
+ "$ref": "#/properties/session/anyOf/2/properties/session"
859
+ }
860
+ },
861
+ "required": [
862
+ "mode",
863
+ "session"
864
+ ],
865
+ "additionalProperties": false
866
+ }
867
+ ]
868
+ },
869
+ "engineHookProfiles": {
870
+ "type": "array",
871
+ "items": {
872
+ "type": "object",
873
+ "properties": {
874
+ "profileId": {
875
+ "type": "string",
876
+ "minLength": 1
877
+ },
878
+ "version": {
879
+ "type": "string",
880
+ "minLength": 1
881
+ },
882
+ "policyRevision": {
883
+ "type": "string",
884
+ "minLength": 1
885
+ }
886
+ },
887
+ "required": [
888
+ "profileId",
889
+ "version",
890
+ "policyRevision"
891
+ ],
892
+ "additionalProperties": false
893
+ }
894
+ },
895
+ "nonSensitiveEnv": {
896
+ "type": "object",
897
+ "additionalProperties": {
898
+ "type": "string"
899
+ }
900
+ },
901
+ "artifactPolicy": {
902
+ "type": "object",
903
+ "additionalProperties": {}
904
+ }
905
+ },
906
+ "required": [
907
+ "schemaVersion",
908
+ "engineId",
909
+ "hostKind",
910
+ "input",
911
+ "timeoutMs",
912
+ "allowedTools",
913
+ "session",
914
+ "engineHookProfiles",
915
+ "nonSensitiveEnv",
916
+ "artifactPolicy"
917
+ ],
918
+ "additionalProperties": false,
919
+ "$schema": "http://json-schema.org/draft-07/schema#"
920
+ },
921
+ "EngineRunPrivateBindings": {
922
+ "anyOf": [
923
+ {
924
+ "type": "object",
925
+ "properties": {
926
+ "hostKind": {
927
+ "type": "string",
928
+ "const": "workstation"
929
+ },
930
+ "callback": {
931
+ "type": "object",
932
+ "properties": {
933
+ "url": {
934
+ "type": "string",
935
+ "minLength": 1
936
+ },
937
+ "token": {
938
+ "type": "string",
939
+ "minLength": 1
940
+ }
941
+ },
942
+ "required": [
943
+ "url",
944
+ "token"
945
+ ],
946
+ "additionalProperties": false
947
+ },
948
+ "dynamicSecrets": {
949
+ "type": "object",
950
+ "additionalProperties": {
951
+ "type": "string"
952
+ }
953
+ }
954
+ },
955
+ "required": [
956
+ "hostKind"
957
+ ],
958
+ "additionalProperties": false
959
+ },
960
+ {
961
+ "type": "object",
962
+ "properties": {
963
+ "hostKind": {
964
+ "type": "string",
965
+ "const": "external_computer"
966
+ },
967
+ "secrets": {
968
+ "type": "object",
969
+ "properties": {
970
+ "mcpCapabilityToken": {
971
+ "type": "string",
972
+ "minLength": 1
973
+ },
974
+ "credentialReferences": {
975
+ "type": "array",
976
+ "items": {
977
+ "type": "string",
978
+ "minLength": 1
979
+ }
980
+ }
981
+ },
982
+ "additionalProperties": false
983
+ }
984
+ },
985
+ "required": [
986
+ "hostKind"
987
+ ],
988
+ "additionalProperties": false
989
+ }
990
+ ],
991
+ "$schema": "http://json-schema.org/draft-07/schema#"
992
+ },
993
+ "WorkstationRunPrivateBindings": {
994
+ "type": "object",
995
+ "properties": {
996
+ "hostKind": {
997
+ "type": "string",
998
+ "const": "workstation"
999
+ },
1000
+ "callback": {
1001
+ "type": "object",
1002
+ "properties": {
1003
+ "url": {
1004
+ "type": "string",
1005
+ "minLength": 1
1006
+ },
1007
+ "token": {
1008
+ "type": "string",
1009
+ "minLength": 1
1010
+ }
1011
+ },
1012
+ "required": [
1013
+ "url",
1014
+ "token"
1015
+ ],
1016
+ "additionalProperties": false
1017
+ },
1018
+ "dynamicSecrets": {
1019
+ "type": "object",
1020
+ "additionalProperties": {
1021
+ "type": "string"
1022
+ }
1023
+ }
1024
+ },
1025
+ "required": [
1026
+ "hostKind"
1027
+ ],
1028
+ "additionalProperties": false,
1029
+ "$schema": "http://json-schema.org/draft-07/schema#"
1030
+ },
1031
+ "ExternalRunPrivateBindings": {
1032
+ "type": "object",
1033
+ "properties": {
1034
+ "hostKind": {
1035
+ "type": "string",
1036
+ "const": "external_computer"
1037
+ },
1038
+ "secrets": {
1039
+ "type": "object",
1040
+ "properties": {
1041
+ "mcpCapabilityToken": {
1042
+ "type": "string",
1043
+ "minLength": 1
1044
+ },
1045
+ "credentialReferences": {
1046
+ "type": "array",
1047
+ "items": {
1048
+ "type": "string",
1049
+ "minLength": 1
1050
+ }
1051
+ }
1052
+ },
1053
+ "additionalProperties": false
1054
+ }
1055
+ },
1056
+ "required": [
1057
+ "hostKind"
1058
+ ],
1059
+ "additionalProperties": false,
1060
+ "$schema": "http://json-schema.org/draft-07/schema#"
1061
+ }
1062
+ }
1063
+ }