@1claw/sdk 0.40.1 → 0.41.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/README.md CHANGED
@@ -300,6 +300,28 @@ Key properties:
300
300
  - **Every transaction is audit-logged** with full calldata
301
301
  - **Revocable instantly** — set `intents_api_enabled: false` to cut off access
302
302
 
303
+ ### TEE Enforcement (Pro+)
304
+
305
+ Lock down agents so signing and execution requests **must** route through the hardware enclave (Shroud TEE). Direct Vault API calls are rejected with 403.
306
+
307
+ ```typescript
308
+ await client.agents.update(agentId, {
309
+ intents_require_tee: true, // Only signs within the hardware enclave
310
+ execution_require_tee: true, // Only runs within the hardware enclave
311
+ });
312
+ ```
313
+
314
+ When `intents_require_tee` is true:
315
+ - Transaction submit/sign requests to `api.1claw.xyz` are rejected (403)
316
+ - Agents must route through `shroud.1claw.xyz` where signing happens inside TEE memory
317
+
318
+ When `execution_require_tee` is true:
319
+ - Execute requests to `api.1claw.xyz` are rejected (403)
320
+ - All direct secret reads by the agent are blocked — forces use of Execution Intent bindings
321
+ - Agents must route through `shroud.1claw.xyz`
322
+
323
+ Both require `intents_api_enabled` / `execution_intents_enabled` to be on first.
324
+
303
325
  ## OIDC Federation (Anthropic WIF, GCP STS, AWS STS)
304
326
 
305
327
  `https://api.1claw.xyz` is a fully OpenID Connect–compliant issuer. External relying parties — Anthropic Workload Identity Federation, GCP STS, AWS STS, Stytch, etc. — can validate 1claw-issued JWTs by fetching:
@@ -5012,6 +5012,16 @@ export interface components {
5012
5012
  execution_guardrails?: {
5013
5013
  [key: string]: unknown;
5014
5014
  };
5015
+ /**
5016
+ * @description When true, transaction/sign requests must arrive via a TEE host (Pro+ only)
5017
+ * @default false
5018
+ */
5019
+ intents_require_tee: boolean;
5020
+ /**
5021
+ * @description When true, execute requests must arrive via TEE and all direct secret reads are blocked (Pro+ only)
5022
+ * @default false
5023
+ */
5024
+ execution_require_tee: boolean;
5015
5025
  /** @description Token contract/mint addresses this agent may interact with. Empty = unrestricted. */
5016
5026
  tx_token_allowlist?: string[];
5017
5027
  /**
@@ -5069,6 +5079,10 @@ export interface components {
5069
5079
  execution_guardrails?: {
5070
5080
  [key: string]: unknown;
5071
5081
  };
5082
+ /** @description When true, transaction/sign requests must arrive via a TEE host (Pro+ only) */
5083
+ intents_require_tee?: boolean;
5084
+ /** @description When true, execute requests must arrive via TEE and all direct secret reads are blocked (Pro+ only) */
5085
+ execution_require_tee?: boolean;
5072
5086
  /**
5073
5087
  * @description Enable OIDC federation (RFC 8693 token-exchange) for this agent.
5074
5088
  * When true, the agent may call POST /v1/auth/federated-token to mint
@@ -5164,6 +5178,10 @@ export interface components {
5164
5178
  execution_guardrails?: {
5165
5179
  [key: string]: unknown;
5166
5180
  };
5181
+ /** @description When true, transaction/sign requests must arrive via a TEE host (Pro+ only) */
5182
+ intents_require_tee?: boolean;
5183
+ /** @description When true, execute requests must arrive via TEE and all direct secret reads are blocked (Pro+ only) */
5184
+ execution_require_tee?: boolean;
5167
5185
  /**
5168
5186
  * @description Whether this agent may mint OIDC federation tokens via
5169
5187
  * POST /v1/auth/federated-token. False by default.
@@ -7243,6 +7261,22 @@ export interface components {
7243
7261
  HoneytokenListResponse: {
7244
7262
  honeytokens: components["schemas"]["Honeytoken"][];
7245
7263
  };
7264
+ /** @description Credential source — inline value (stored in __agent-keys) or live pointer to a vault secret (resolved at execution time). */
7265
+ CredentialSource: {
7266
+ /** @enum {string} */
7267
+ type: "inline" | "vault_ref";
7268
+ /** @description For inline — the credential value object. */
7269
+ value?: {
7270
+ [key: string]: unknown;
7271
+ };
7272
+ /**
7273
+ * Format: uuid
7274
+ * @description For vault_ref — the vault containing the referenced secret.
7275
+ */
7276
+ vault_id?: string;
7277
+ /** @description For vault_ref — the secret path in the vault. */
7278
+ path?: string;
7279
+ };
7246
7280
  CreateBindingRequest: {
7247
7281
  name: string;
7248
7282
  /** @enum {string} */
@@ -7253,9 +7287,11 @@ export interface components {
7253
7287
  guardrails?: {
7254
7288
  [key: string]: unknown;
7255
7289
  };
7290
+ /** @description Legacy: inline credential value. Use credential_source for new integrations. */
7256
7291
  credential?: {
7257
7292
  [key: string]: unknown;
7258
7293
  };
7294
+ credential_source?: components["schemas"]["CredentialSource"];
7259
7295
  };
7260
7296
  UpdateBindingRequest: {
7261
7297
  config?: {
@@ -7265,9 +7301,11 @@ export interface components {
7265
7301
  [key: string]: unknown;
7266
7302
  };
7267
7303
  is_active?: boolean;
7304
+ /** @description Legacy: inline credential value. */
7268
7305
  credential?: {
7269
7306
  [key: string]: unknown;
7270
7307
  };
7308
+ credential_source?: components["schemas"]["CredentialSource"];
7271
7309
  };
7272
7310
  BindingResponse: {
7273
7311
  /** Format: uuid */
@@ -7286,6 +7324,18 @@ export interface components {
7286
7324
  is_active: boolean;
7287
7325
  /** @description Whether a credential is stored for this binding. The value itself is never returned. */
7288
7326
  credential_set?: boolean;
7327
+ /**
7328
+ * @description How the credential is sourced — inline (HSM-encrypted copy) or vault_ref (live pointer).
7329
+ * @enum {string|null}
7330
+ */
7331
+ credential_source_type?: "inline" | "vault_ref" | null;
7332
+ /**
7333
+ * Format: uuid
7334
+ * @description For vault_ref credentials — the vault containing the referenced secret.
7335
+ */
7336
+ credential_vault_id?: string | null;
7337
+ /** @description For vault_ref credentials — the secret path in the referenced vault. */
7338
+ credential_path?: string | null;
7289
7339
  /** Format: date-time */
7290
7340
  created_at: string;
7291
7341
  /** Format: date-time */