@claudexor/schema 3.6.0 → 3.8.1
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/agent-capabilities.d.ts +48 -16
- package/dist/agent-capabilities.d.ts.map +1 -1
- package/dist/agent-capabilities.js +4 -0
- package/dist/agent-capabilities.js.map +1 -1
- package/dist/config.d.ts +30 -28
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -6
- package/dist/config.js.map +1 -1
- package/dist/control-harness-list.d.ts +215 -19
- package/dist/control-harness-list.d.ts.map +1 -1
- package/dist/control-operation-responses.d.ts +16 -13
- package/dist/control-operation-responses.d.ts.map +1 -1
- package/dist/control-run-detail.d.ts +33 -46
- package/dist/control-run-detail.d.ts.map +1 -1
- package/dist/control-run-detail.js +10 -19
- package/dist/control-run-detail.js.map +1 -1
- package/dist/control-run-execution.d.ts +16 -0
- package/dist/control-run-execution.d.ts.map +1 -0
- package/dist/control-run-execution.js +19 -0
- package/dist/control-run-execution.js.map +1 -0
- package/dist/control-run-failure.d.ts +4 -4
- package/dist/control-run-failure.d.ts.map +1 -1
- package/dist/control-run-failure.js +6 -4
- package/dist/control-run-failure.js.map +1 -1
- package/dist/control-run-retry.d.ts +21 -0
- package/dist/control-run-retry.d.ts.map +1 -1
- package/dist/control-run-retry.js +6 -0
- package/dist/control-run-retry.js.map +1 -1
- package/dist/control-trust.d.ts +13 -13
- package/dist/control.d.ts +365 -36
- package/dist/control.d.ts.map +1 -1
- package/dist/control.js +12 -18
- package/dist/control.js.map +1 -1
- package/dist/credential-profile-snapshot.d.ts +486 -52
- package/dist/credential-profile-snapshot.d.ts.map +1 -1
- package/dist/credential-profile.d.ts +113 -42
- package/dist/credential-profile.d.ts.map +1 -1
- package/dist/credential-profile.js +58 -30
- package/dist/credential-profile.js.map +1 -1
- package/dist/harness-confinement.d.ts +37 -30
- package/dist/harness-confinement.d.ts.map +1 -1
- package/dist/harness-confinement.js +18 -26
- package/dist/harness-confinement.js.map +1 -1
- package/dist/harness.d.ts +265 -102
- package/dist/harness.d.ts.map +1 -1
- package/dist/harness.js +3 -38
- package/dist/harness.js.map +1 -1
- package/dist/mcp-run-result.d.ts +10 -10
- package/dist/platform-auth.d.ts +196 -0
- package/dist/platform-auth.d.ts.map +1 -0
- package/dist/platform-auth.js +142 -0
- package/dist/platform-auth.js.map +1 -0
- package/dist/primitives.d.ts +6 -1
- package/dist/primitives.d.ts.map +1 -1
- package/dist/primitives.js +8 -2
- package/dist/primitives.js.map +1 -1
- package/dist/quota.d.ts +9 -9
- package/dist/quota.d.ts.map +1 -1
- package/dist/quota.js +3 -0
- package/dist/quota.js.map +1 -1
- package/dist/readiness.d.ts +192 -15
- package/dist/readiness.d.ts.map +1 -1
- package/dist/readiness.js +12 -0
- package/dist/readiness.js.map +1 -1
- package/dist/run-strategy.d.ts +51 -3
- package/dist/run-strategy.d.ts.map +1 -1
- package/dist/run-strategy.js +58 -2
- package/dist/run-strategy.js.map +1 -1
- package/dist/setup-login.d.ts +5 -5
- package/dist/setup.d.ts +102 -95
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +29 -5
- package/dist/setup.js.map +1 -1
- package/dist/task.d.ts +641 -19
- package/dist/task.d.ts.map +1 -1
- package/dist/task.js +40 -5
- package/dist/task.js.map +1 -1
- package/dist/telemetry.d.ts +2 -2
- package/dist/telemetry.js +3 -3
- package/dist/telemetry.js.map +1 -1
- package/dist/thread.d.ts +1 -1
- package/dist/thread.js +2 -2
- package/dist/thread.js.map +1 -1
- package/generated/AgentCapabilityCatalog.schema.json +27 -2
- package/generated/ControlCredentialProfileCreateRequest.schema.json +1 -1
- package/generated/ControlCredentialProfileCreateResponse.schema.json +13 -4
- package/generated/ControlCredentialProfileDeleteResponse.schema.json +27 -3
- package/generated/ControlCredentialProfileUpdateResponse.schema.json +13 -4
- package/generated/ControlCredentialProfilesQueryResponse.schema.json +142 -8
- package/generated/ControlCredentialProfilesResponse.schema.json +13 -4
- package/generated/ControlCredentialProfilesSnapshotResponse.schema.json +142 -8
- package/generated/ControlHarnessListResponse.schema.json +127 -3
- package/generated/ControlQuotaResponse.schema.json +2 -1
- package/generated/ControlRunAgainDraft.schema.json +20 -3
- package/generated/ControlRunDetail.schema.json +10 -8
- package/generated/ControlRunListResponse.schema.json +6 -4
- package/generated/ControlRunStartRequest.schema.json +5 -2
- package/generated/ControlRunSummary.schema.json +6 -4
- package/generated/ControlSetupJob.schema.json +5 -1
- package/generated/ControlSetupJobCreateRequest.schema.json +1 -1
- package/generated/ControlSetupJobEvent.schema.json +5 -1
- package/generated/ControlSetupJobListResponse.schema.json +5 -1
- package/generated/ControlSetupJobSnapshot.schema.json +5 -1
- package/generated/ControlThread.schema.json +3 -3
- package/generated/ControlThreadCreateRequest.schema.json +0 -1
- package/generated/ControlThreadDetail.schema.json +3 -3
- package/generated/ControlThreadListResponse.schema.json +3 -3
- package/generated/ControlThreadTurnRequest.schema.json +0 -1
- package/generated/ControlThreadUpdateRequest.schema.json +1 -2
- package/generated/ControlTrustListResponse.schema.json +0 -1
- package/generated/ControlTrustState.schema.json +0 -1
- package/generated/ControlTrustUpdateRequest.schema.json +0 -1
- package/generated/CredentialProfile.schema.json +3 -3
- package/generated/CredentialProfileStatus.schema.json +10 -1
- package/generated/GlobalConfig.schema.json +4 -4
- package/generated/HarnessManifest.schema.json +101 -3
- package/generated/HarnessStatusDto.schema.json +127 -3
- package/generated/McpRunHandleResult.schema.json +4 -2
- package/generated/McpRunToolResult.schema.json +4 -2
- package/generated/RunFailure.schema.json +4 -2
- package/generated/RunTelemetry.schema.json +5 -5
- package/generated/TaskContract.schema.json +8 -8
- package/generated/Thread.schema.json +3 -3
- package/generated/TrustConfig.schema.json +0 -2
- package/package.json +2 -2
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"oauth_token",
|
|
37
37
|
"api_key"
|
|
38
38
|
],
|
|
39
|
-
"description": "
|
|
39
|
+
"description": "Binding kind for a profile: Claudexor-owned scoped vendor state, a managed OAuth secret, or a managed API-key secret; a vendor OS-user credential may remain outside that state."
|
|
40
40
|
},
|
|
41
41
|
"isolation_locator": {
|
|
42
42
|
"type": [
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"null"
|
|
45
45
|
],
|
|
46
46
|
"default": null,
|
|
47
|
-
"description": "Canonical absolute
|
|
47
|
+
"description": "Canonical absolute path to Claudexor-owned scoped vendor state for config_dir_login bindings; null for secret-ref kinds."
|
|
48
48
|
},
|
|
49
49
|
"secret_ref": {
|
|
50
50
|
"type": [
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"credential_kind"
|
|
82
82
|
],
|
|
83
83
|
"additionalProperties": false,
|
|
84
|
-
"description": "Durable non-secret
|
|
84
|
+
"description": "Durable non-secret named binding for one harness; credential material may live in Claudexor-owned scoped state, a managed secret store, or a platform-declared vendor/OS-user store, never in this row."
|
|
85
85
|
},
|
|
86
86
|
"status": {
|
|
87
87
|
"type": "object",
|
|
@@ -117,7 +117,16 @@
|
|
|
117
117
|
"vendor"
|
|
118
118
|
],
|
|
119
119
|
"default": "local_store",
|
|
120
|
-
"description": "How the verification verdict was reached: local_store = the
|
|
120
|
+
"description": "How the verification verdict was reached: local_store = the binding's required local state or managed secret is present (says nothing about a token being live); vendor = the vendor answered under the exact binding environment and effective platform credential policy."
|
|
121
|
+
},
|
|
122
|
+
"stale": {
|
|
123
|
+
"type": "boolean",
|
|
124
|
+
"description": "True only for a bounded stale last-known-good observation; stale is never a fresh passed verification."
|
|
125
|
+
},
|
|
126
|
+
"stale_age_ms": {
|
|
127
|
+
"type": "integer",
|
|
128
|
+
"minimum": 0,
|
|
129
|
+
"description": "Age in milliseconds of the bounded stale observation, when stale is true."
|
|
121
130
|
},
|
|
122
131
|
"detail": {
|
|
123
132
|
"type": "string",
|
|
@@ -514,6 +523,20 @@
|
|
|
514
523
|
},
|
|
515
524
|
"default": [],
|
|
516
525
|
"description": "Relocation levers that can move this transport into a scoped environment."
|
|
526
|
+
},
|
|
527
|
+
"platforms": {
|
|
528
|
+
"type": "array",
|
|
529
|
+
"items": {
|
|
530
|
+
"type": "string",
|
|
531
|
+
"enum": [
|
|
532
|
+
"darwin",
|
|
533
|
+
"linux",
|
|
534
|
+
"win32"
|
|
535
|
+
],
|
|
536
|
+
"description": "Host platform used to resolve credential and managed-login policy."
|
|
537
|
+
},
|
|
538
|
+
"minItems": 1,
|
|
539
|
+
"description": "Host platforms on which this physical credential transport applies; absent means every supported platform for backward compatibility."
|
|
517
540
|
}
|
|
518
541
|
},
|
|
519
542
|
"required": [
|
|
@@ -525,6 +548,90 @@
|
|
|
525
548
|
},
|
|
526
549
|
"default": [],
|
|
527
550
|
"description": "Declared credential transports per auth source."
|
|
551
|
+
},
|
|
552
|
+
"credential_profile_policies": {
|
|
553
|
+
"type": "array",
|
|
554
|
+
"items": {
|
|
555
|
+
"type": "object",
|
|
556
|
+
"properties": {
|
|
557
|
+
"source": {
|
|
558
|
+
"$ref": "#/definitions/ControlCredentialProfilesQueryResponse/anyOf/1/properties/harnesses/items/properties/manifest/anyOf/0/properties/capability_profile/properties/auth/properties/supported_sources/items"
|
|
559
|
+
},
|
|
560
|
+
"platforms": {
|
|
561
|
+
"type": "array",
|
|
562
|
+
"items": {
|
|
563
|
+
"$ref": "#/definitions/ControlCredentialProfilesQueryResponse/anyOf/1/properties/harnesses/items/properties/manifest/anyOf/0/properties/capability_profile/properties/auth/properties/credential_transports/items/properties/platforms/items"
|
|
564
|
+
},
|
|
565
|
+
"minItems": 1,
|
|
566
|
+
"description": "Nonempty host-platform set governed by this policy row."
|
|
567
|
+
},
|
|
568
|
+
"identity_scope": {
|
|
569
|
+
"type": "string",
|
|
570
|
+
"enum": [
|
|
571
|
+
"profile",
|
|
572
|
+
"os_user"
|
|
573
|
+
],
|
|
574
|
+
"description": "Identity boundary selected by a credential profile: the named profile itself or the host OS user/login vault."
|
|
575
|
+
},
|
|
576
|
+
"max_enabled_profiles": {
|
|
577
|
+
"anyOf": [
|
|
578
|
+
{
|
|
579
|
+
"type": "integer",
|
|
580
|
+
"exclusiveMinimum": 0
|
|
581
|
+
},
|
|
582
|
+
{
|
|
583
|
+
"type": "null"
|
|
584
|
+
}
|
|
585
|
+
],
|
|
586
|
+
"description": "Maximum enabled profile bindings on these platforms; null means unbounded."
|
|
587
|
+
},
|
|
588
|
+
"cleanup_owner": {
|
|
589
|
+
"type": "string",
|
|
590
|
+
"enum": [
|
|
591
|
+
"claudexor",
|
|
592
|
+
"vendor"
|
|
593
|
+
],
|
|
594
|
+
"description": "Who owns cleanup of the credential when its Claudexor profile binding is removed."
|
|
595
|
+
}
|
|
596
|
+
},
|
|
597
|
+
"required": [
|
|
598
|
+
"source",
|
|
599
|
+
"platforms",
|
|
600
|
+
"identity_scope",
|
|
601
|
+
"max_enabled_profiles",
|
|
602
|
+
"cleanup_owner"
|
|
603
|
+
],
|
|
604
|
+
"additionalProperties": false,
|
|
605
|
+
"description": "Platform-specific identity scope, enabled-profile cardinality, and credential cleanup ownership for one auth source."
|
|
606
|
+
},
|
|
607
|
+
"description": "Platform-specific profile identity/cardinality/cleanup policy; absent uses the backward-compatible profile-scoped, unbounded, Claudexor-owned defaults."
|
|
608
|
+
},
|
|
609
|
+
"managed_login": {
|
|
610
|
+
"anyOf": [
|
|
611
|
+
{
|
|
612
|
+
"type": "object",
|
|
613
|
+
"properties": {
|
|
614
|
+
"stdin": {
|
|
615
|
+
"type": "string",
|
|
616
|
+
"enum": [
|
|
617
|
+
"none",
|
|
618
|
+
"pipe",
|
|
619
|
+
"terminal"
|
|
620
|
+
],
|
|
621
|
+
"description": "Input transport the vendor login command requires."
|
|
622
|
+
}
|
|
623
|
+
},
|
|
624
|
+
"required": [
|
|
625
|
+
"stdin"
|
|
626
|
+
],
|
|
627
|
+
"additionalProperties": false,
|
|
628
|
+
"description": "Managed-login input requirement; command, argv, flow, and time window remain owned by the native-login registry."
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
"type": "null"
|
|
632
|
+
}
|
|
633
|
+
],
|
|
634
|
+
"description": "Managed subscription-login input requirement; null means this harness defines no managed login, absent is a legacy manifest."
|
|
528
635
|
}
|
|
529
636
|
},
|
|
530
637
|
"additionalProperties": false,
|
|
@@ -560,11 +667,12 @@
|
|
|
560
667
|
"enum": [
|
|
561
668
|
"env_or_file_injection",
|
|
562
669
|
"scoped_home_keychain_bridge",
|
|
670
|
+
"private_per_profile_keychain",
|
|
563
671
|
"host_user_context",
|
|
564
672
|
"process_sandbox",
|
|
565
673
|
"container"
|
|
566
674
|
],
|
|
567
|
-
"description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging to process sandboxes and containers."
|
|
675
|
+
"description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging or a private per-profile keychain to process sandboxes and containers."
|
|
568
676
|
},
|
|
569
677
|
"default": [
|
|
570
678
|
"env_or_file_injection"
|
|
@@ -869,10 +977,9 @@
|
|
|
869
977
|
"readonly",
|
|
870
978
|
"workspace_write",
|
|
871
979
|
"full",
|
|
872
|
-
"external_sandbox_full",
|
|
873
980
|
"inherit_native"
|
|
874
981
|
],
|
|
875
|
-
"description": "
|
|
982
|
+
"description": "Active filesystem/command access profile for a run: readonly (no writes), workspace_write (use the harness's native workspace-write policy), full (unrestricted; requires the per-repo trust allow), inherit_native (defer to the harness's own native settings)."
|
|
876
983
|
},
|
|
877
984
|
"default": [],
|
|
878
985
|
"description": "Access profiles the adapter can enforce."
|
|
@@ -1134,6 +1241,32 @@
|
|
|
1134
1241
|
],
|
|
1135
1242
|
"description": "Engine-owned Delegate capability for this harness and installed runtime; null on legacy status rows.",
|
|
1136
1243
|
"default": null
|
|
1244
|
+
},
|
|
1245
|
+
"setupLogin": {
|
|
1246
|
+
"anyOf": [
|
|
1247
|
+
{
|
|
1248
|
+
"type": "object",
|
|
1249
|
+
"properties": {
|
|
1250
|
+
"mode": {
|
|
1251
|
+
"type": "string",
|
|
1252
|
+
"enum": [
|
|
1253
|
+
"in_app",
|
|
1254
|
+
"external_terminal"
|
|
1255
|
+
],
|
|
1256
|
+
"description": "in_app requests the daemon-hosted login flow; external_terminal requests the existing client PTY flow."
|
|
1257
|
+
}
|
|
1258
|
+
},
|
|
1259
|
+
"required": [
|
|
1260
|
+
"mode"
|
|
1261
|
+
],
|
|
1262
|
+
"additionalProperties": false,
|
|
1263
|
+
"description": "Effective setup-login flow for this harness on the current host."
|
|
1264
|
+
},
|
|
1265
|
+
{
|
|
1266
|
+
"type": "null"
|
|
1267
|
+
}
|
|
1268
|
+
],
|
|
1269
|
+
"description": "Effective setup-login flow for this harness on the current host; current producers emit null or an object, while omission identifies a legacy row."
|
|
1137
1270
|
}
|
|
1138
1271
|
},
|
|
1139
1272
|
"required": [
|
|
@@ -1447,7 +1580,8 @@
|
|
|
1447
1580
|
"platform_unsupported",
|
|
1448
1581
|
"refresh_failed",
|
|
1449
1582
|
"no_source",
|
|
1450
|
-
"auth_revoked"
|
|
1583
|
+
"auth_revoked",
|
|
1584
|
+
"credential_profile_ambiguous"
|
|
1451
1585
|
],
|
|
1452
1586
|
"description": "Why a registered subject has no quota snapshot, in the source's own vocabulary."
|
|
1453
1587
|
},
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"oauth_token",
|
|
35
35
|
"api_key"
|
|
36
36
|
],
|
|
37
|
-
"description": "
|
|
37
|
+
"description": "Binding kind for a profile: Claudexor-owned scoped vendor state, a managed OAuth secret, or a managed API-key secret; a vendor OS-user credential may remain outside that state."
|
|
38
38
|
},
|
|
39
39
|
"isolation_locator": {
|
|
40
40
|
"type": [
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"null"
|
|
43
43
|
],
|
|
44
44
|
"default": null,
|
|
45
|
-
"description": "Canonical absolute
|
|
45
|
+
"description": "Canonical absolute path to Claudexor-owned scoped vendor state for config_dir_login bindings; null for secret-ref kinds."
|
|
46
46
|
},
|
|
47
47
|
"secret_ref": {
|
|
48
48
|
"type": [
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"credential_kind"
|
|
80
80
|
],
|
|
81
81
|
"additionalProperties": false,
|
|
82
|
-
"description": "Durable non-secret
|
|
82
|
+
"description": "Durable non-secret named binding for one harness; credential material may live in Claudexor-owned scoped state, a managed secret store, or a platform-declared vendor/OS-user store, never in this row."
|
|
83
83
|
},
|
|
84
84
|
"status": {
|
|
85
85
|
"type": "object",
|
|
@@ -115,7 +115,16 @@
|
|
|
115
115
|
"vendor"
|
|
116
116
|
],
|
|
117
117
|
"default": "local_store",
|
|
118
|
-
"description": "How the verification verdict was reached: local_store = the
|
|
118
|
+
"description": "How the verification verdict was reached: local_store = the binding's required local state or managed secret is present (says nothing about a token being live); vendor = the vendor answered under the exact binding environment and effective platform credential policy."
|
|
119
|
+
},
|
|
120
|
+
"stale": {
|
|
121
|
+
"type": "boolean",
|
|
122
|
+
"description": "True only for a bounded stale last-known-good observation; stale is never a fresh passed verification."
|
|
123
|
+
},
|
|
124
|
+
"stale_age_ms": {
|
|
125
|
+
"type": "integer",
|
|
126
|
+
"minimum": 0,
|
|
127
|
+
"description": "Age in milliseconds of the bounded stale observation, when stale is true."
|
|
119
128
|
},
|
|
120
129
|
"detail": {
|
|
121
130
|
"type": "string",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"oauth_token",
|
|
35
35
|
"api_key"
|
|
36
36
|
],
|
|
37
|
-
"description": "
|
|
37
|
+
"description": "Binding kind for a profile: Claudexor-owned scoped vendor state, a managed OAuth secret, or a managed API-key secret; a vendor OS-user credential may remain outside that state."
|
|
38
38
|
},
|
|
39
39
|
"isolation_locator": {
|
|
40
40
|
"type": [
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"null"
|
|
43
43
|
],
|
|
44
44
|
"default": null,
|
|
45
|
-
"description": "Canonical absolute
|
|
45
|
+
"description": "Canonical absolute path to Claudexor-owned scoped vendor state for config_dir_login bindings; null for secret-ref kinds."
|
|
46
46
|
},
|
|
47
47
|
"secret_ref": {
|
|
48
48
|
"type": [
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"credential_kind"
|
|
80
80
|
],
|
|
81
81
|
"additionalProperties": false,
|
|
82
|
-
"description": "Durable non-secret
|
|
82
|
+
"description": "Durable non-secret named binding for one harness; credential material may live in Claudexor-owned scoped state, a managed secret store, or a platform-declared vendor/OS-user store, never in this row."
|
|
83
83
|
},
|
|
84
84
|
"status": {
|
|
85
85
|
"type": "object",
|
|
@@ -115,7 +115,16 @@
|
|
|
115
115
|
"vendor"
|
|
116
116
|
],
|
|
117
117
|
"default": "local_store",
|
|
118
|
-
"description": "How the verification verdict was reached: local_store = the
|
|
118
|
+
"description": "How the verification verdict was reached: local_store = the binding's required local state or managed secret is present (says nothing about a token being live); vendor = the vendor answered under the exact binding environment and effective platform credential policy."
|
|
119
|
+
},
|
|
120
|
+
"stale": {
|
|
121
|
+
"type": "boolean",
|
|
122
|
+
"description": "True only for a bounded stale last-known-good observation; stale is never a fresh passed verification."
|
|
123
|
+
},
|
|
124
|
+
"stale_age_ms": {
|
|
125
|
+
"type": "integer",
|
|
126
|
+
"minimum": 0,
|
|
127
|
+
"description": "Age in milliseconds of the bounded stale observation, when stale is true."
|
|
119
128
|
},
|
|
120
129
|
"detail": {
|
|
121
130
|
"type": "string",
|
|
@@ -493,6 +502,20 @@
|
|
|
493
502
|
},
|
|
494
503
|
"default": [],
|
|
495
504
|
"description": "Relocation levers that can move this transport into a scoped environment."
|
|
505
|
+
},
|
|
506
|
+
"platforms": {
|
|
507
|
+
"type": "array",
|
|
508
|
+
"items": {
|
|
509
|
+
"type": "string",
|
|
510
|
+
"enum": [
|
|
511
|
+
"darwin",
|
|
512
|
+
"linux",
|
|
513
|
+
"win32"
|
|
514
|
+
],
|
|
515
|
+
"description": "Host platform used to resolve credential and managed-login policy."
|
|
516
|
+
},
|
|
517
|
+
"minItems": 1,
|
|
518
|
+
"description": "Host platforms on which this physical credential transport applies; absent means every supported platform for backward compatibility."
|
|
496
519
|
}
|
|
497
520
|
},
|
|
498
521
|
"required": [
|
|
@@ -504,6 +527,90 @@
|
|
|
504
527
|
},
|
|
505
528
|
"default": [],
|
|
506
529
|
"description": "Declared credential transports per auth source."
|
|
530
|
+
},
|
|
531
|
+
"credential_profile_policies": {
|
|
532
|
+
"type": "array",
|
|
533
|
+
"items": {
|
|
534
|
+
"type": "object",
|
|
535
|
+
"properties": {
|
|
536
|
+
"source": {
|
|
537
|
+
"$ref": "#/definitions/ControlCredentialProfilesSnapshotResponse/properties/harnesses/items/properties/manifest/anyOf/0/properties/capability_profile/properties/auth/properties/supported_sources/items"
|
|
538
|
+
},
|
|
539
|
+
"platforms": {
|
|
540
|
+
"type": "array",
|
|
541
|
+
"items": {
|
|
542
|
+
"$ref": "#/definitions/ControlCredentialProfilesSnapshotResponse/properties/harnesses/items/properties/manifest/anyOf/0/properties/capability_profile/properties/auth/properties/credential_transports/items/properties/platforms/items"
|
|
543
|
+
},
|
|
544
|
+
"minItems": 1,
|
|
545
|
+
"description": "Nonempty host-platform set governed by this policy row."
|
|
546
|
+
},
|
|
547
|
+
"identity_scope": {
|
|
548
|
+
"type": "string",
|
|
549
|
+
"enum": [
|
|
550
|
+
"profile",
|
|
551
|
+
"os_user"
|
|
552
|
+
],
|
|
553
|
+
"description": "Identity boundary selected by a credential profile: the named profile itself or the host OS user/login vault."
|
|
554
|
+
},
|
|
555
|
+
"max_enabled_profiles": {
|
|
556
|
+
"anyOf": [
|
|
557
|
+
{
|
|
558
|
+
"type": "integer",
|
|
559
|
+
"exclusiveMinimum": 0
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"type": "null"
|
|
563
|
+
}
|
|
564
|
+
],
|
|
565
|
+
"description": "Maximum enabled profile bindings on these platforms; null means unbounded."
|
|
566
|
+
},
|
|
567
|
+
"cleanup_owner": {
|
|
568
|
+
"type": "string",
|
|
569
|
+
"enum": [
|
|
570
|
+
"claudexor",
|
|
571
|
+
"vendor"
|
|
572
|
+
],
|
|
573
|
+
"description": "Who owns cleanup of the credential when its Claudexor profile binding is removed."
|
|
574
|
+
}
|
|
575
|
+
},
|
|
576
|
+
"required": [
|
|
577
|
+
"source",
|
|
578
|
+
"platforms",
|
|
579
|
+
"identity_scope",
|
|
580
|
+
"max_enabled_profiles",
|
|
581
|
+
"cleanup_owner"
|
|
582
|
+
],
|
|
583
|
+
"additionalProperties": false,
|
|
584
|
+
"description": "Platform-specific identity scope, enabled-profile cardinality, and credential cleanup ownership for one auth source."
|
|
585
|
+
},
|
|
586
|
+
"description": "Platform-specific profile identity/cardinality/cleanup policy; absent uses the backward-compatible profile-scoped, unbounded, Claudexor-owned defaults."
|
|
587
|
+
},
|
|
588
|
+
"managed_login": {
|
|
589
|
+
"anyOf": [
|
|
590
|
+
{
|
|
591
|
+
"type": "object",
|
|
592
|
+
"properties": {
|
|
593
|
+
"stdin": {
|
|
594
|
+
"type": "string",
|
|
595
|
+
"enum": [
|
|
596
|
+
"none",
|
|
597
|
+
"pipe",
|
|
598
|
+
"terminal"
|
|
599
|
+
],
|
|
600
|
+
"description": "Input transport the vendor login command requires."
|
|
601
|
+
}
|
|
602
|
+
},
|
|
603
|
+
"required": [
|
|
604
|
+
"stdin"
|
|
605
|
+
],
|
|
606
|
+
"additionalProperties": false,
|
|
607
|
+
"description": "Managed-login input requirement; command, argv, flow, and time window remain owned by the native-login registry."
|
|
608
|
+
},
|
|
609
|
+
{
|
|
610
|
+
"type": "null"
|
|
611
|
+
}
|
|
612
|
+
],
|
|
613
|
+
"description": "Managed subscription-login input requirement; null means this harness defines no managed login, absent is a legacy manifest."
|
|
507
614
|
}
|
|
508
615
|
},
|
|
509
616
|
"additionalProperties": false,
|
|
@@ -539,11 +646,12 @@
|
|
|
539
646
|
"enum": [
|
|
540
647
|
"env_or_file_injection",
|
|
541
648
|
"scoped_home_keychain_bridge",
|
|
649
|
+
"private_per_profile_keychain",
|
|
542
650
|
"host_user_context",
|
|
543
651
|
"process_sandbox",
|
|
544
652
|
"container"
|
|
545
653
|
],
|
|
546
|
-
"description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging to process sandboxes and containers."
|
|
654
|
+
"description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging or a private per-profile keychain to process sandboxes and containers."
|
|
547
655
|
},
|
|
548
656
|
"default": [
|
|
549
657
|
"env_or_file_injection"
|
|
@@ -848,10 +956,9 @@
|
|
|
848
956
|
"readonly",
|
|
849
957
|
"workspace_write",
|
|
850
958
|
"full",
|
|
851
|
-
"external_sandbox_full",
|
|
852
959
|
"inherit_native"
|
|
853
960
|
],
|
|
854
|
-
"description": "
|
|
961
|
+
"description": "Active filesystem/command access profile for a run: readonly (no writes), workspace_write (use the harness's native workspace-write policy), full (unrestricted; requires the per-repo trust allow), inherit_native (defer to the harness's own native settings)."
|
|
855
962
|
},
|
|
856
963
|
"default": [],
|
|
857
964
|
"description": "Access profiles the adapter can enforce."
|
|
@@ -1113,6 +1220,32 @@
|
|
|
1113
1220
|
],
|
|
1114
1221
|
"description": "Engine-owned Delegate capability for this harness and installed runtime; null on legacy status rows.",
|
|
1115
1222
|
"default": null
|
|
1223
|
+
},
|
|
1224
|
+
"setupLogin": {
|
|
1225
|
+
"anyOf": [
|
|
1226
|
+
{
|
|
1227
|
+
"type": "object",
|
|
1228
|
+
"properties": {
|
|
1229
|
+
"mode": {
|
|
1230
|
+
"type": "string",
|
|
1231
|
+
"enum": [
|
|
1232
|
+
"in_app",
|
|
1233
|
+
"external_terminal"
|
|
1234
|
+
],
|
|
1235
|
+
"description": "in_app requests the daemon-hosted login flow; external_terminal requests the existing client PTY flow."
|
|
1236
|
+
}
|
|
1237
|
+
},
|
|
1238
|
+
"required": [
|
|
1239
|
+
"mode"
|
|
1240
|
+
],
|
|
1241
|
+
"additionalProperties": false,
|
|
1242
|
+
"description": "Effective setup-login flow for this harness on the current host."
|
|
1243
|
+
},
|
|
1244
|
+
{
|
|
1245
|
+
"type": "null"
|
|
1246
|
+
}
|
|
1247
|
+
],
|
|
1248
|
+
"description": "Effective setup-login flow for this harness on the current host; current producers emit null or an object, while omission identifies a legacy row."
|
|
1116
1249
|
}
|
|
1117
1250
|
},
|
|
1118
1251
|
"required": [
|
|
@@ -1426,7 +1559,8 @@
|
|
|
1426
1559
|
"platform_unsupported",
|
|
1427
1560
|
"refresh_failed",
|
|
1428
1561
|
"no_source",
|
|
1429
|
-
"auth_revoked"
|
|
1562
|
+
"auth_revoked",
|
|
1563
|
+
"credential_profile_ambiguous"
|
|
1430
1564
|
],
|
|
1431
1565
|
"description": "Why a registered subject has no quota snapshot, in the source's own vocabulary."
|
|
1432
1566
|
},
|