@1claw/openapi-spec 0.51.0 → 0.53.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/README.md CHANGED
@@ -40,7 +40,20 @@ openapi-generator generate \
40
40
  import spec from "@1claw/openapi-spec/openapi.json";
41
41
  ```
42
42
 
43
- ## What's in the spec (v0.48.0)
43
+ ## What's in the spec (v0.52.0)
44
+
45
+ ### Environment Variables (v0.51)
46
+ - **Per-key env vars** — `GET/POST /v1/vaults/{id}/env-vars`, `GET/PATCH/DELETE .../{key}`, `GET .../resolve` with three-tier precedence (org shared < vault < branch override)
47
+ - **Vault environments** — `GET/POST /v1/vaults/{id}/environments`, `DELETE .../{slug}` (built-in + tier-gated custom)
48
+ - **Org shared vars** — `GET/POST /v1/org/env-vars`, link/unlink to vaults
49
+ - **Sensitive vars** — write-only after creation; org setting `env.require_sensitive_prod`
50
+ - **Runtime injection** — resolved vars merged into Cloud Runtime container env at start/rebuild
51
+
52
+ ### Agent Environment Tagging (v0.52)
53
+ - **Agent fields** — `environment`, `environment_locked`, `env_auto_resolve`, `per_environment_guardrails` on create/update/response schemas
54
+ - **JWT claim** — Agent tokens include `environment` when the agent has a tag
55
+ - **Policy conditions** — `environment_in` array in built-in policy `conditions` JSON
56
+ - **Env var resolution** — `GET /v1/vaults/{id}/env-vars/resolve` accepts optional `environment`; auto-fills from agent tag when `env_auto_resolve` is true
44
57
 
45
58
  ### Cedar/OPA Enforcement v2 (v0.48)
46
59
  - **Policy backend** — `GET/PATCH /v1/org/settings/policy-backend`, `GET /v1/org/policy-shadow-report`
package/openapi.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "openapi": "3.1.0",
3
3
  "info": {
4
4
  "title": "1Claw API",
5
- "version": "0.51.0",
5
+ "version": "0.53.0",
6
6
  "description": "Secure secret management for AI agents. Provides vaults, secrets,\npolicy-based access control, agent identity, Intents API,\nsharing, billing, and audit logging. Automations (workflow_spec,\nwebhook tokens, event triggers, Assist), cloud runtimes with\ninteractive shell sessions, agent memory, and discovery.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
7
7
  "contact": {
8
8
  "email": "ops@1claw.xyz"
@@ -3107,7 +3107,7 @@
3107
3107
  "Environment Variables"
3108
3108
  ],
3109
3109
  "summary": "Resolve environment variables",
3110
- "description": "Resolve the final KEY=VALUE set for an environment with full precedence (shared < vault < branch override).",
3110
+ "description": "Resolve the final KEY=VALUE set for an environment with full precedence (shared < vault < branch override).\nWhen the caller is an agent with `env_auto_resolve: true`, the `environment` query parameter may be omitted —\nthe server uses the agent's tagged environment from the JWT. Org setting `env.enforce_agent_environment_scope`\nblocks agents from resolving vars outside their tagged environment.\n",
3111
3111
  "operationId": "resolveEnvVars",
3112
3112
  "parameters": [
3113
3113
  {
@@ -3116,17 +3116,19 @@
3116
3116
  {
3117
3117
  "name": "environment",
3118
3118
  "in": "query",
3119
- "required": true,
3119
+ "required": false,
3120
3120
  "schema": {
3121
3121
  "type": "string"
3122
- }
3122
+ },
3123
+ "description": "Target environment (production, preview, development, or custom). Required for human callers; optional for agents with env_auto_resolve when the agent has an environment tag."
3123
3124
  },
3124
3125
  {
3125
3126
  "name": "git_branch",
3126
3127
  "in": "query",
3127
3128
  "schema": {
3128
3129
  "type": "string"
3129
- }
3130
+ },
3131
+ "description": "Optional git branch for preview branch overrides"
3130
3132
  }
3131
3133
  ],
3132
3134
  "responses": {
@@ -6353,6 +6355,55 @@
6353
6355
  }
6354
6356
  }
6355
6357
  },
6358
+ "/v1/audit/verify": {
6359
+ "get": {
6360
+ "tags": [
6361
+ "Audit"
6362
+ ],
6363
+ "summary": "Verify audit hash chain integrity",
6364
+ "operationId": "verifyAuditChain",
6365
+ "description": "Verifies the HMAC-SHA256 integrity hash chain for audit events in the\ncalling organization. Returns whether the chain is valid, how many\nevents were verified, and the point of first break (if any).\n",
6366
+ "parameters": [
6367
+ {
6368
+ "name": "from",
6369
+ "in": "query",
6370
+ "schema": {
6371
+ "type": "string",
6372
+ "format": "date-time"
6373
+ }
6374
+ },
6375
+ {
6376
+ "name": "to",
6377
+ "in": "query",
6378
+ "schema": {
6379
+ "type": "string",
6380
+ "format": "date-time"
6381
+ }
6382
+ },
6383
+ {
6384
+ "name": "limit",
6385
+ "in": "query",
6386
+ "schema": {
6387
+ "type": "integer",
6388
+ "default": 1000,
6389
+ "maximum": 10000
6390
+ }
6391
+ }
6392
+ ],
6393
+ "responses": {
6394
+ "200": {
6395
+ "description": "Chain verification result",
6396
+ "content": {
6397
+ "application/json": {
6398
+ "schema": {
6399
+ "$ref": "#/components/schemas/AuditVerifyResponse"
6400
+ }
6401
+ }
6402
+ }
6403
+ }
6404
+ }
6405
+ }
6406
+ },
6356
6407
  "/v1/security/ip-rules": {
6357
6408
  "get": {
6358
6409
  "tags": [
@@ -8380,6 +8431,34 @@
8380
8431
  }
8381
8432
  }
8382
8433
  },
8434
+ "/v1/shroud/attestation": {
8435
+ "get": {
8436
+ "tags": [
8437
+ "Shroud"
8438
+ ],
8439
+ "summary": "TEE attestation proof (public)",
8440
+ "operationId": "getShroudAttestation",
8441
+ "security": [],
8442
+ "description": "Public endpoint returning the TEE attestation proof for Shroud.\nReturns the GCE Confidential VM identity token and image hash so\ncustomers can verify Shroud is running inside a Confidential VM\nbefore signing contracts. Served from shroud.1claw.xyz.\n",
8443
+ "servers": [
8444
+ {
8445
+ "url": "https://shroud.1claw.xyz"
8446
+ }
8447
+ ],
8448
+ "responses": {
8449
+ "200": {
8450
+ "description": "Attestation proof",
8451
+ "content": {
8452
+ "application/json": {
8453
+ "schema": {
8454
+ "$ref": "#/components/schemas/ShroudAttestationResponse"
8455
+ }
8456
+ }
8457
+ }
8458
+ }
8459
+ }
8460
+ }
8461
+ },
8383
8462
  "/v1/shroud/activity": {
8384
8463
  "get": {
8385
8464
  "tags": [
@@ -17419,6 +17498,16 @@
17419
17498
  },
17420
17499
  "tx_conditions": {
17421
17500
  "$ref": "#/components/schemas/TxConditions"
17501
+ },
17502
+ "approval_id": {
17503
+ "type": "string",
17504
+ "format": "uuid",
17505
+ "description": "Optional completed approval ID for control-plane consensus bypass. When control-plane consensus policies match, resubmit with this field after the approval has been executed.\n"
17506
+ },
17507
+ "policy_schema_version": {
17508
+ "type": "integer",
17509
+ "default": 2,
17510
+ "description": "Policy schema version. Version 1 = legacy field-matching only.\nVersion 2 = expression engine support in tx_conditions.\n"
17422
17511
  }
17423
17512
  }
17424
17513
  },
@@ -17461,6 +17550,11 @@
17461
17550
  },
17462
17551
  "tx_conditions": {
17463
17552
  "$ref": "#/components/schemas/TxConditions"
17553
+ },
17554
+ "approval_id": {
17555
+ "type": "string",
17556
+ "format": "uuid",
17557
+ "description": "Optional completed approval ID for control-plane consensus bypass.\n"
17464
17558
  }
17465
17559
  }
17466
17560
  },
@@ -17539,6 +17633,10 @@
17539
17633
  },
17540
17634
  "tx_conditions": {
17541
17635
  "$ref": "#/components/schemas/TxConditions"
17636
+ },
17637
+ "policy_schema_version": {
17638
+ "type": "integer",
17639
+ "description": "Policy schema version (1 = legacy, 2 = expression engine)"
17542
17640
  }
17543
17641
  }
17544
17642
  },
@@ -17789,6 +17887,25 @@
17789
17887
  "format": "date-time",
17790
17888
  "nullable": true,
17791
17889
  "description": "Optional expiration time for the agent's API key."
17890
+ },
17891
+ "environment": {
17892
+ "type": "string",
17893
+ "description": "Named environment for this agent (production, preview, development, or custom)."
17894
+ },
17895
+ "environment_locked": {
17896
+ "type": "boolean",
17897
+ "default": false,
17898
+ "description": "When true, the environment tag cannot be changed after creation."
17899
+ },
17900
+ "env_auto_resolve": {
17901
+ "type": "boolean",
17902
+ "default": false,
17903
+ "description": "When true, env var resolve endpoints auto-fill environment from this agent's tag."
17904
+ },
17905
+ "approval_id": {
17906
+ "type": "string",
17907
+ "format": "uuid",
17908
+ "description": "Optional completed approval ID for control-plane consensus bypass when creating an agent under a control-plane governance policy.\n"
17792
17909
  }
17793
17910
  }
17794
17911
  },
@@ -17976,6 +18093,24 @@
17976
18093
  "format": "date-time",
17977
18094
  "nullable": true,
17978
18095
  "description": "Optional expiration time for the agent's API key. Set to null to clear."
18096
+ },
18097
+ "environment": {
18098
+ "type": "string",
18099
+ "nullable": true,
18100
+ "description": "Named environment for this agent (production, preview, development, or custom)."
18101
+ },
18102
+ "environment_locked": {
18103
+ "type": "boolean",
18104
+ "description": "When true, the environment tag cannot be changed after creation."
18105
+ },
18106
+ "env_auto_resolve": {
18107
+ "type": "boolean",
18108
+ "description": "When true, env var resolve endpoints auto-fill environment from this agent's tag."
18109
+ },
18110
+ "per_environment_guardrails": {
18111
+ "type": "object",
18112
+ "additionalProperties": true,
18113
+ "description": "Per-environment guardrail overrides keyed by environment slug."
17979
18114
  }
17980
18115
  }
17981
18116
  },
@@ -18279,6 +18414,24 @@
18279
18414
  "items": {
18280
18415
  "$ref": "#/components/schemas/AgentSmartAccountResponse"
18281
18416
  }
18417
+ },
18418
+ "environment": {
18419
+ "type": "string",
18420
+ "nullable": true,
18421
+ "description": "Named environment this agent belongs to (production, preview, development, or custom)."
18422
+ },
18423
+ "environment_locked": {
18424
+ "type": "boolean",
18425
+ "description": "When true, the environment tag is locked and cannot be changed."
18426
+ },
18427
+ "env_auto_resolve": {
18428
+ "type": "boolean",
18429
+ "description": "When true, env var resolve endpoints auto-fill environment from this agent's tag."
18430
+ },
18431
+ "per_environment_guardrails": {
18432
+ "type": "object",
18433
+ "additionalProperties": true,
18434
+ "description": "Per-environment guardrail overrides keyed by environment slug."
18282
18435
  }
18283
18436
  }
18284
18437
  },
@@ -20887,6 +21040,99 @@
20887
21040
  }
20888
21041
  }
20889
21042
  },
21043
+ "AuditVerifyResponse": {
21044
+ "type": "object",
21045
+ "required": [
21046
+ "chain_valid",
21047
+ "events_verified",
21048
+ "events_checked",
21049
+ "scheme"
21050
+ ],
21051
+ "properties": {
21052
+ "chain_valid": {
21053
+ "type": "boolean",
21054
+ "description": "Whether the integrity hash chain is unbroken"
21055
+ },
21056
+ "events_verified": {
21057
+ "type": "integer",
21058
+ "format": "int64",
21059
+ "description": "Number of events with valid integrity hashes"
21060
+ },
21061
+ "events_checked": {
21062
+ "type": "integer",
21063
+ "description": "Total events examined"
21064
+ },
21065
+ "broken_at_event_id": {
21066
+ "type": "string",
21067
+ "format": "uuid",
21068
+ "nullable": true,
21069
+ "description": "First event where chain integrity broke (null if valid)"
21070
+ },
21071
+ "scheme": {
21072
+ "type": "object",
21073
+ "properties": {
21074
+ "algorithm": {
21075
+ "type": "string",
21076
+ "example": "HMAC-SHA256"
21077
+ },
21078
+ "chain_structure": {
21079
+ "type": "string"
21080
+ },
21081
+ "hash_field": {
21082
+ "type": "string"
21083
+ },
21084
+ "link_field": {
21085
+ "type": "string"
21086
+ },
21087
+ "documentation": {
21088
+ "type": "string",
21089
+ "format": "uri"
21090
+ }
21091
+ }
21092
+ }
21093
+ }
21094
+ },
21095
+ "ShroudAttestationResponse": {
21096
+ "type": "object",
21097
+ "required": [
21098
+ "attested",
21099
+ "image_hash",
21100
+ "identity_token",
21101
+ "verification"
21102
+ ],
21103
+ "properties": {
21104
+ "attested": {
21105
+ "type": "boolean",
21106
+ "description": "Whether TEE attestation was successfully fetched"
21107
+ },
21108
+ "image_hash": {
21109
+ "type": "string",
21110
+ "description": "Confidential VM image hash (compare against published Docker digest)"
21111
+ },
21112
+ "identity_token": {
21113
+ "type": "string",
21114
+ "description": "GCE metadata identity JWT (verify against Google public keys)"
21115
+ },
21116
+ "verification": {
21117
+ "type": "object",
21118
+ "properties": {
21119
+ "steps": {
21120
+ "type": "array",
21121
+ "items": {
21122
+ "type": "string"
21123
+ }
21124
+ },
21125
+ "google_certs_url": {
21126
+ "type": "string",
21127
+ "format": "uri"
21128
+ },
21129
+ "expected_audience": {
21130
+ "type": "string"
21131
+ }
21132
+ }
21133
+ }
21134
+ }
21135
+ },
20890
21136
  "AuditEvent": {
20891
21137
  "type": "object",
20892
21138
  "properties": {
@@ -26738,6 +26984,11 @@
26738
26984
  "type": "boolean",
26739
26985
  "default": false,
26740
26986
  "description": "When true, conditions are also evaluated against inner calls\nextracted from wrapper transactions (multicall, Safe execTransaction,\nERC-4337 handleOps). A match on any inner call counts as an overall match.\n"
26987
+ },
26988
+ "expression": {
26989
+ "type": "string",
26990
+ "maxLength": 1024,
26991
+ "description": "Mini expression DSL for policy conditions (schema version 2+).\nReferences transaction context fields (chain, value_wei, to_address,\nfunction_selector, etc.) with boolean operators. Fail-closed on parse\nor evaluation errors. Example: `chain == 'ethereum' && value_wei > 1000000000000000000`\n"
26741
26992
  }
26742
26993
  }
26743
26994
  },
@@ -26827,6 +27078,20 @@
26827
27078
  "always": {
26828
27079
  "type": "boolean",
26829
27080
  "description": "When true, this entry always matches regardless of other fields"
27081
+ },
27082
+ "action_in": {
27083
+ "type": "array",
27084
+ "items": {
27085
+ "type": "string"
27086
+ },
27087
+ "description": "Control-plane actions to match (e.g. policy.create, signing_key.export)"
27088
+ },
27089
+ "action_kind_in": {
27090
+ "type": "array",
27091
+ "items": {
27092
+ "type": "string"
27093
+ },
27094
+ "description": "Version-agnostic action kind groups (e.g. signing_key.*, policy.*, member.*)\n"
26830
27095
  }
26831
27096
  }
26832
27097
  },
@@ -27026,6 +27291,28 @@
27026
27291
  "description": "Control-plane actions to match, e.g. policy.create, policy.update,\npolicy.delete, signing_key.export, member.role_change, member.remove\n"
27027
27292
  }
27028
27293
  }
27294
+ },
27295
+ {
27296
+ "type": "object",
27297
+ "required": [
27298
+ "type",
27299
+ "action_kinds"
27300
+ ],
27301
+ "properties": {
27302
+ "type": {
27303
+ "type": "string",
27304
+ "enum": [
27305
+ "action_kind_in"
27306
+ ]
27307
+ },
27308
+ "action_kinds": {
27309
+ "type": "array",
27310
+ "items": {
27311
+ "type": "string"
27312
+ },
27313
+ "description": "Version-agnostic action kind groups, e.g. signing_key.*, policy.*, member.*\n"
27314
+ }
27315
+ }
27029
27316
  }
27030
27317
  ]
27031
27318
  },
package/openapi.yaml CHANGED
@@ -2,7 +2,7 @@ openapi: 3.1.0
2
2
 
3
3
  info:
4
4
  title: 1Claw API
5
- version: 0.51.0
5
+ version: 0.53.0
6
6
  description: |
7
7
  Secure secret management for AI agents. Provides vaults, secrets,
8
8
  policy-based access control, agent identity, Intents API,
@@ -2041,19 +2041,25 @@ paths:
2041
2041
  get:
2042
2042
  tags: [Environment Variables]
2043
2043
  summary: Resolve environment variables
2044
- description: Resolve the final KEY=VALUE set for an environment with full precedence (shared < vault < branch override).
2044
+ description: |
2045
+ Resolve the final KEY=VALUE set for an environment with full precedence (shared < vault < branch override).
2046
+ When the caller is an agent with `env_auto_resolve: true`, the `environment` query parameter may be omitted —
2047
+ the server uses the agent's tagged environment from the JWT. Org setting `env.enforce_agent_environment_scope`
2048
+ blocks agents from resolving vars outside their tagged environment.
2045
2049
  operationId: resolveEnvVars
2046
2050
  parameters:
2047
2051
  - $ref: "#/components/parameters/VaultId"
2048
2052
  - name: environment
2049
2053
  in: query
2050
- required: true
2054
+ required: false
2051
2055
  schema:
2052
2056
  type: string
2057
+ description: Target environment (production, preview, development, or custom). Required for human callers; optional for agents with env_auto_resolve when the agent has an environment tag.
2053
2058
  - name: git_branch
2054
2059
  in: query
2055
2060
  schema:
2056
2061
  type: string
2062
+ description: Optional git branch for preview branch overrides
2057
2063
  responses:
2058
2064
  "200":
2059
2065
  description: Resolved environment variables
@@ -4123,6 +4129,40 @@ paths:
4123
4129
  "402":
4124
4130
  $ref: "#/components/responses/PaymentRequired"
4125
4131
 
4132
+ /v1/audit/verify:
4133
+ get:
4134
+ tags: [Audit]
4135
+ summary: Verify audit hash chain integrity
4136
+ operationId: verifyAuditChain
4137
+ description: |
4138
+ Verifies the HMAC-SHA256 integrity hash chain for audit events in the
4139
+ calling organization. Returns whether the chain is valid, how many
4140
+ events were verified, and the point of first break (if any).
4141
+ parameters:
4142
+ - name: from
4143
+ in: query
4144
+ schema:
4145
+ type: string
4146
+ format: date-time
4147
+ - name: to
4148
+ in: query
4149
+ schema:
4150
+ type: string
4151
+ format: date-time
4152
+ - name: limit
4153
+ in: query
4154
+ schema:
4155
+ type: integer
4156
+ default: 1000
4157
+ maximum: 10000
4158
+ responses:
4159
+ "200":
4160
+ description: Chain verification result
4161
+ content:
4162
+ application/json:
4163
+ schema:
4164
+ $ref: "#/components/schemas/AuditVerifyResponse"
4165
+
4126
4166
  # ---------------------------------------------------------------------------
4127
4167
  # Security (IP Rules)
4128
4168
  # ---------------------------------------------------------------------------
@@ -5422,6 +5462,27 @@ paths:
5422
5462
 
5423
5463
  # --- Shroud Activity ---
5424
5464
 
5465
+ /v1/shroud/attestation:
5466
+ get:
5467
+ tags: [Shroud]
5468
+ summary: TEE attestation proof (public)
5469
+ operationId: getShroudAttestation
5470
+ security: []
5471
+ description: |
5472
+ Public endpoint returning the TEE attestation proof for Shroud.
5473
+ Returns the GCE Confidential VM identity token and image hash so
5474
+ customers can verify Shroud is running inside a Confidential VM
5475
+ before signing contracts. Served from shroud.1claw.xyz.
5476
+ servers:
5477
+ - url: https://shroud.1claw.xyz
5478
+ responses:
5479
+ "200":
5480
+ description: Attestation proof
5481
+ content:
5482
+ application/json:
5483
+ schema:
5484
+ $ref: "#/components/schemas/ShroudAttestationResponse"
5485
+
5425
5486
  /v1/shroud/activity:
5426
5487
  get:
5427
5488
  tags: [Shroud]
@@ -11174,6 +11235,19 @@ components:
11174
11235
  $ref: "#/components/schemas/ConsensusTrigger"
11175
11236
  tx_conditions:
11176
11237
  $ref: "#/components/schemas/TxConditions"
11238
+ approval_id:
11239
+ type: string
11240
+ format: uuid
11241
+ description: >
11242
+ Optional completed approval ID for control-plane consensus bypass.
11243
+ When control-plane consensus policies match, resubmit with this
11244
+ field after the approval has been executed.
11245
+ policy_schema_version:
11246
+ type: integer
11247
+ default: 2
11248
+ description: |
11249
+ Policy schema version. Version 1 = legacy field-matching only.
11250
+ Version 2 = expression engine support in tx_conditions.
11177
11251
 
11178
11252
  UpdatePolicyRequest:
11179
11253
  type: object
@@ -11203,6 +11277,11 @@ components:
11203
11277
  $ref: "#/components/schemas/ConsensusTrigger"
11204
11278
  tx_conditions:
11205
11279
  $ref: "#/components/schemas/TxConditions"
11280
+ approval_id:
11281
+ type: string
11282
+ format: uuid
11283
+ description: >
11284
+ Optional completed approval ID for control-plane consensus bypass.
11206
11285
 
11207
11286
  PolicyResponse:
11208
11287
  type: object
@@ -11261,6 +11340,9 @@ components:
11261
11340
  $ref: "#/components/schemas/ConsensusTrigger"
11262
11341
  tx_conditions:
11263
11342
  $ref: "#/components/schemas/TxConditions"
11343
+ policy_schema_version:
11344
+ type: integer
11345
+ description: Policy schema version (1 = legacy, 2 = expression engine)
11264
11346
 
11265
11347
  PolicyListResponse:
11266
11348
  type: object
@@ -11457,6 +11539,23 @@ components:
11457
11539
  format: date-time
11458
11540
  nullable: true
11459
11541
  description: Optional expiration time for the agent's API key.
11542
+ environment:
11543
+ type: string
11544
+ description: Named environment for this agent (production, preview, development, or custom).
11545
+ environment_locked:
11546
+ type: boolean
11547
+ default: false
11548
+ description: When true, the environment tag cannot be changed after creation.
11549
+ env_auto_resolve:
11550
+ type: boolean
11551
+ default: false
11552
+ description: When true, env var resolve endpoints auto-fill environment from this agent's tag.
11553
+ approval_id:
11554
+ type: string
11555
+ format: uuid
11556
+ description: >
11557
+ Optional completed approval ID for control-plane consensus bypass
11558
+ when creating an agent under a control-plane governance policy.
11460
11559
 
11461
11560
  UpdateAgentRequest:
11462
11561
  type: object
@@ -11609,6 +11708,20 @@ components:
11609
11708
  format: date-time
11610
11709
  nullable: true
11611
11710
  description: Optional expiration time for the agent's API key. Set to null to clear.
11711
+ environment:
11712
+ type: string
11713
+ nullable: true
11714
+ description: Named environment for this agent (production, preview, development, or custom).
11715
+ environment_locked:
11716
+ type: boolean
11717
+ description: When true, the environment tag cannot be changed after creation.
11718
+ env_auto_resolve:
11719
+ type: boolean
11720
+ description: When true, env var resolve endpoints auto-fill environment from this agent's tag.
11721
+ per_environment_guardrails:
11722
+ type: object
11723
+ additionalProperties: true
11724
+ description: Per-environment guardrail overrides keyed by environment slug.
11612
11725
 
11613
11726
  AgentResponse:
11614
11727
  type: object
@@ -11837,6 +11950,20 @@ components:
11837
11950
  description: Multi-chain; one Safe per chain
11838
11951
  items:
11839
11952
  $ref: "#/components/schemas/AgentSmartAccountResponse"
11953
+ environment:
11954
+ type: string
11955
+ nullable: true
11956
+ description: Named environment this agent belongs to (production, preview, development, or custom).
11957
+ environment_locked:
11958
+ type: boolean
11959
+ description: When true, the environment tag is locked and cannot be changed.
11960
+ env_auto_resolve:
11961
+ type: boolean
11962
+ description: When true, env var resolve endpoints auto-fill environment from this agent's tag.
11963
+ per_environment_guardrails:
11964
+ type: object
11965
+ additionalProperties: true
11966
+ description: Per-environment guardrail overrides keyed by environment slug.
11840
11967
 
11841
11968
  KnownToken:
11842
11969
  type: object
@@ -13660,6 +13787,67 @@ components:
13660
13787
  count:
13661
13788
  type: integer
13662
13789
 
13790
+ AuditVerifyResponse:
13791
+ type: object
13792
+ required: [chain_valid, events_verified, events_checked, scheme]
13793
+ properties:
13794
+ chain_valid:
13795
+ type: boolean
13796
+ description: Whether the integrity hash chain is unbroken
13797
+ events_verified:
13798
+ type: integer
13799
+ format: int64
13800
+ description: Number of events with valid integrity hashes
13801
+ events_checked:
13802
+ type: integer
13803
+ description: Total events examined
13804
+ broken_at_event_id:
13805
+ type: string
13806
+ format: uuid
13807
+ nullable: true
13808
+ description: First event where chain integrity broke (null if valid)
13809
+ scheme:
13810
+ type: object
13811
+ properties:
13812
+ algorithm:
13813
+ type: string
13814
+ example: HMAC-SHA256
13815
+ chain_structure:
13816
+ type: string
13817
+ hash_field:
13818
+ type: string
13819
+ link_field:
13820
+ type: string
13821
+ documentation:
13822
+ type: string
13823
+ format: uri
13824
+
13825
+ ShroudAttestationResponse:
13826
+ type: object
13827
+ required: [attested, image_hash, identity_token, verification]
13828
+ properties:
13829
+ attested:
13830
+ type: boolean
13831
+ description: Whether TEE attestation was successfully fetched
13832
+ image_hash:
13833
+ type: string
13834
+ description: Confidential VM image hash (compare against published Docker digest)
13835
+ identity_token:
13836
+ type: string
13837
+ description: GCE metadata identity JWT (verify against Google public keys)
13838
+ verification:
13839
+ type: object
13840
+ properties:
13841
+ steps:
13842
+ type: array
13843
+ items:
13844
+ type: string
13845
+ google_certs_url:
13846
+ type: string
13847
+ format: uri
13848
+ expected_audience:
13849
+ type: string
13850
+
13663
13851
  AuditEvent:
13664
13852
  type: object
13665
13853
  properties:
@@ -17613,6 +17801,14 @@ components:
17613
17801
  When true, conditions are also evaluated against inner calls
17614
17802
  extracted from wrapper transactions (multicall, Safe execTransaction,
17615
17803
  ERC-4337 handleOps). A match on any inner call counts as an overall match.
17804
+ expression:
17805
+ type: string
17806
+ maxLength: 1024
17807
+ description: |
17808
+ Mini expression DSL for policy conditions (schema version 2+).
17809
+ References transaction context fields (chain, value_wei, to_address,
17810
+ function_selector, etc.) with boolean operators. Fail-closed on parse
17811
+ or evaluation errors. Example: `chain == 'ethereum' && value_wei > 1000000000000000000`
17616
17812
 
17617
17813
  ConsensusTrigger:
17618
17814
  type: object
@@ -17686,6 +17882,17 @@ components:
17686
17882
  always:
17687
17883
  type: boolean
17688
17884
  description: When true, this entry always matches regardless of other fields
17885
+ action_in:
17886
+ type: array
17887
+ items:
17888
+ type: string
17889
+ description: Control-plane actions to match (e.g. policy.create, signing_key.export)
17890
+ action_kind_in:
17891
+ type: array
17892
+ items:
17893
+ type: string
17894
+ description: |
17895
+ Version-agnostic action kind groups (e.g. signing_key.*, policy.*, member.*)
17689
17896
 
17690
17897
  TimeWindow:
17691
17898
  type: object
@@ -17798,6 +18005,18 @@ components:
17798
18005
  description: |
17799
18006
  Control-plane actions to match, e.g. policy.create, policy.update,
17800
18007
  policy.delete, signing_key.export, member.role_change, member.remove
18008
+ - type: object
18009
+ required: [type, action_kinds]
18010
+ properties:
18011
+ type:
18012
+ type: string
18013
+ enum: [action_kind_in]
18014
+ action_kinds:
18015
+ type: array
18016
+ items:
18017
+ type: string
18018
+ description: |
18019
+ Version-agnostic action kind groups, e.g. signing_key.*, policy.*, member.*
17801
18020
 
17802
18021
  ApprovalRequirement:
17803
18022
  type: object
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1claw/openapi-spec",
3
- "version": "0.51.0",
3
+ "version": "0.53.0",
4
4
  "description": "OpenAPI 3.1.0 specification for the 1Claw Vault API — generate clients in any language",
5
5
  "license": "MIT",
6
6
  "repository": {