@the-ai-company/cbio-node-runtime 1.55.1 → 1.57.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 +53 -29
- package/dist/clients/agent/client.d.ts +2 -2
- package/dist/clients/agent/contracts.d.ts +3 -2
- package/dist/clients/owner/client.d.ts +8 -11
- package/dist/clients/owner/client.js +61 -43
- package/dist/clients/owner/client.js.map +1 -1
- package/dist/clients/owner/contracts.d.ts +23 -10
- package/dist/clients/owner/index.d.ts +1 -1
- package/dist/runtime/index.d.ts +3 -1
- package/dist/runtime/index.js +1 -0
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/owner-session.d.ts +26 -0
- package/dist/runtime/owner-session.js +89 -0
- package/dist/runtime/owner-session.js.map +1 -0
- package/dist/vault-core/contracts.d.ts +48 -35
- package/dist/vault-core/contracts.js.map +1 -1
- package/dist/vault-core/core.d.ts +16 -21
- package/dist/vault-core/core.js +278 -159
- package/dist/vault-core/core.js.map +1 -1
- package/dist/vault-core/defaults.d.ts +8 -20
- package/dist/vault-core/defaults.js +14 -37
- package/dist/vault-core/defaults.js.map +1 -1
- package/dist/vault-core/index.d.ts +3 -3
- package/dist/vault-core/index.js +1 -1
- package/dist/vault-core/index.js.map +1 -1
- package/dist/vault-core/persistence.d.ts +8 -6
- package/dist/vault-core/persistence.js +17 -9
- package/dist/vault-core/persistence.js.map +1 -1
- package/dist/vault-core/ports.d.ts +8 -20
- package/dist/vault-ingress/defaults.d.ts +2 -2
- package/dist/vault-ingress/index.d.ts +14 -33
- package/dist/vault-ingress/index.js +18 -31
- package/dist/vault-ingress/index.js.map +1 -1
- package/dist/vault-ingress/remote-transport.d.ts +2 -2
- package/dist/vault-ingress/remote-transport.js.map +1 -1
- package/docs/MIGRATION-1.51.md +4 -1
- package/docs/REFERENCE.md +44 -30
- package/docs/api/README.md +7 -2
- package/docs/api/classes/IdentityError.md +1 -1
- package/docs/api/classes/OwnerClientError.md +1 -1
- package/docs/api/classes/VaultCore.md +34 -94
- package/docs/api/classes/VaultCoreError.md +1 -1
- package/docs/api/enumerations/IdentityErrorCode.md +1 -1
- package/docs/api/enumerations/OwnerClientErrorCode.md +1 -1
- package/docs/api/functions/createAgentClient.md +1 -1
- package/docs/api/functions/createIdentity.md +1 -1
- package/docs/api/functions/createOwnerHttpFlowBoundary.md +1 -1
- package/docs/api/functions/createOwnerSession.md +37 -0
- package/docs/api/functions/createPersistentVaultCoreDependencies.md +1 -1
- package/docs/api/functions/createStandardAcquireBoundary.md +1 -1
- package/docs/api/functions/createStandardDispatchBoundary.md +1 -1
- package/docs/api/functions/createVault.md +1 -1
- package/docs/api/functions/createVaultClient.md +1 -1
- package/docs/api/functions/createVaultCore.md +1 -1
- package/docs/api/functions/createVaultCoreDependencies.md +1 -1
- package/docs/api/functions/createVaultService.md +1 -1
- package/docs/api/functions/createWorkspaceStorage.md +1 -1
- package/docs/api/functions/deriveIdentityId.md +1 -1
- package/docs/api/functions/deriveVaultWorkingKeyFromPassword.md +1 -1
- package/docs/api/functions/getDefaultWorkspaceDir.md +1 -1
- package/docs/api/functions/handleVaultAgentControlHttp.md +1 -1
- package/docs/api/functions/handleVaultHttpDispatch.md +1 -1
- package/docs/api/functions/initializeVaultCustody.md +1 -1
- package/docs/api/functions/listVaults.md +1 -1
- package/docs/api/functions/readVaultProfile.md +1 -1
- package/docs/api/functions/recoverVault.md +1 -1
- package/docs/api/functions/recoverVaultWorkingKey.md +1 -1
- package/docs/api/functions/restoreIdentity.md +1 -1
- package/docs/api/functions/updateVaultMetadata.md +1 -1
- package/docs/api/functions/wrapVaultCoreAsVaultService.md +1 -1
- package/docs/api/functions/writeVaultProfile.md +1 -1
- package/docs/api/interfaces/AgentClient.md +5 -5
- package/docs/api/interfaces/AgentDispatchIntent.md +1 -1
- package/docs/api/interfaces/AgentDispatchTransport.md +5 -5
- package/docs/api/interfaces/AgentIdentity.md +1 -1
- package/docs/api/interfaces/AgentSigner.md +1 -1
- package/docs/api/interfaces/AgentSubmitCapabilityRequestInput.md +1 -1
- package/docs/api/interfaces/CbioRuntime.md +39 -1
- package/docs/api/interfaces/CreateAgentClientOptions.md +1 -1
- package/docs/api/interfaces/CreateIdentityOptions.md +1 -1
- package/docs/api/interfaces/CreateOwnerSessionOptions.md +245 -0
- package/docs/api/interfaces/CreatePersistentVaultCoreDependenciesOptions.md +1 -1
- package/docs/api/interfaces/CreateVaultClientOptions.md +1 -1
- package/docs/api/interfaces/CreateVaultOptions.md +1 -1
- package/docs/api/interfaces/CreatedVault.md +1 -1
- package/docs/api/interfaces/DefaultPolicyEngineOptions.md +1 -1
- package/docs/api/interfaces/IStorageProvider.md +1 -1
- package/docs/api/interfaces/InitializeVaultCustodyOptions.md +1 -1
- package/docs/api/interfaces/InitializedVaultCustody.md +1 -1
- package/docs/api/interfaces/OwnerAgentProvisionResult.md +1 -1
- package/docs/api/interfaces/OwnerDefineSecretTargetsInput.md +1 -1
- package/docs/api/interfaces/OwnerSecretTargetBinding.md +1 -1
- package/docs/api/interfaces/OwnerSensitiveActionConfirmation.md +1 -1
- package/docs/api/interfaces/OwnerSensitiveActionContext.md +1 -1
- package/docs/api/interfaces/OwnerSession.md +95 -0
- package/docs/api/interfaces/OwnerStoreSecretInput.md +1 -1
- package/docs/api/interfaces/OwnerWriteSecretInput.md +1 -1
- package/docs/api/interfaces/RecoverVaultOptions.md +5 -1
- package/docs/api/interfaces/RecoveredVault.md +1 -1
- package/docs/api/interfaces/RestoreIdentityOptions.md +1 -1
- package/docs/api/interfaces/Signer.md +1 -1
- package/docs/api/interfaces/VaultApproveCapabilityRequestInput.md +1 -1
- package/docs/api/interfaces/VaultApproveDispatchInput.md +1 -1
- package/docs/api/interfaces/VaultAuditQueryInput.md +1 -1
- package/docs/api/interfaces/VaultClient.md +41 -77
- package/docs/api/interfaces/VaultCoreDependenciesOptions.md +1 -1
- package/docs/api/interfaces/VaultCreateAgentInput.md +1 -1
- package/docs/api/interfaces/VaultDeleteSecretInput.md +1 -1
- package/docs/api/interfaces/VaultExportSecretInput.md +1 -1
- package/docs/api/interfaces/VaultGrantCapabilityInput.md +25 -1
- package/docs/api/interfaces/VaultGrantCapabilityRequest.md +23 -0
- package/docs/api/interfaces/VaultIdentity.md +1 -1
- package/docs/api/interfaces/VaultImportAgentInput.md +1 -1
- package/docs/api/interfaces/VaultIssueSessionTokenInput.md +1 -1
- package/docs/api/interfaces/VaultListAgentsInput.md +1 -1
- package/docs/api/interfaces/VaultListCapabilitiesInput.md +1 -1
- package/docs/api/interfaces/VaultListSecretsInput.md +1 -1
- package/docs/api/interfaces/VaultMetadata.md +1 -1
- package/docs/api/interfaces/VaultObject.md +1 -1
- package/docs/api/interfaces/VaultProfile.md +1 -1
- package/docs/api/interfaces/VaultReadAgentPrivateKeyInput.md +1 -1
- package/docs/api/interfaces/VaultReadSecretPlaintextInput.md +1 -1
- package/docs/api/interfaces/VaultRegisterFlowInput.md +1 -1
- package/docs/api/interfaces/VaultRevokeCapabilityInput.md +1 -1
- package/docs/api/interfaces/VaultRevokeSessionTokenInput.md +1 -1
- package/docs/api/interfaces/VaultSigner.md +1 -1
- package/docs/api/interfaces/VaultSubmitCapabilityRequestInput.md +1 -1
- package/docs/api/interfaces/VaultUpdateAgentInput.md +1 -1
- package/docs/api/type-aliases/AgentCapabilityEnvelope.md +1 -1
- package/docs/api/type-aliases/AgentVisibleSecretRecord.md +1 -1
- package/docs/api/type-aliases/CbioRuntimeModule.md +1 -1
- package/docs/api/type-aliases/OwnerGrantCapabilityInput.md +7 -0
- package/docs/api/variables/DEFAULT_VAULT_KEY_CUSTODY_BLOB_KEY.md +1 -1
- package/docs/es/README.md +6 -9
- package/docs/fr/README.md +6 -10
- package/docs/ja/README.md +6 -9
- package/docs/ko/README.md +6 -9
- package/docs/pt/README.md +6 -9
- package/docs/zh/README.md +101 -42
- package/package.json +1 -1
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { createVaultClient } from "../clients/owner/client.js";
|
|
2
|
+
import { FsStorageProvider } from "../storage/fs.js";
|
|
3
|
+
import { recoverVault } from "./bootstrap.js";
|
|
4
|
+
import { createWorkspaceStorage } from "./workspace-storage.js";
|
|
5
|
+
class DefaultOwnerSession {
|
|
6
|
+
storage;
|
|
7
|
+
_options;
|
|
8
|
+
_invalidated = false;
|
|
9
|
+
_cachedVaultPromise;
|
|
10
|
+
_nickname;
|
|
11
|
+
constructor(storage, _options) {
|
|
12
|
+
this.storage = storage;
|
|
13
|
+
this._options = _options;
|
|
14
|
+
}
|
|
15
|
+
get vaultId() {
|
|
16
|
+
return this._options.vaultId;
|
|
17
|
+
}
|
|
18
|
+
get nickname() {
|
|
19
|
+
return this._nickname;
|
|
20
|
+
}
|
|
21
|
+
isValid() {
|
|
22
|
+
return !this._invalidated;
|
|
23
|
+
}
|
|
24
|
+
invalidate() {
|
|
25
|
+
this._invalidated = true;
|
|
26
|
+
this._cachedVaultPromise = undefined;
|
|
27
|
+
}
|
|
28
|
+
async refresh() {
|
|
29
|
+
this._assertValid();
|
|
30
|
+
this._cachedVaultPromise = undefined;
|
|
31
|
+
return this.vault();
|
|
32
|
+
}
|
|
33
|
+
async vault() {
|
|
34
|
+
this._assertValid();
|
|
35
|
+
if (!this._cachedVaultPromise) {
|
|
36
|
+
this._cachedVaultPromise = recoverVault(this.storage, this._options).then((vault) => {
|
|
37
|
+
this._nickname = vault.nickname;
|
|
38
|
+
return vault;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return this._cachedVaultPromise;
|
|
42
|
+
}
|
|
43
|
+
async client() {
|
|
44
|
+
const vault = await this.vault();
|
|
45
|
+
this._assertValid();
|
|
46
|
+
return this._createClient(vault);
|
|
47
|
+
}
|
|
48
|
+
async withClient(callback) {
|
|
49
|
+
const vault = await this.vault();
|
|
50
|
+
this._assertValid();
|
|
51
|
+
return callback(this._createClient(vault), vault);
|
|
52
|
+
}
|
|
53
|
+
_assertValid() {
|
|
54
|
+
if (this._invalidated) {
|
|
55
|
+
throw new Error(`OwnerSession for vault '${this._options.vaultId}' has been invalidated`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
_createClient(vault) {
|
|
59
|
+
const clientOptions = {
|
|
60
|
+
vault: vault.vault,
|
|
61
|
+
ownerIdentity: this._options.ownerIdentity,
|
|
62
|
+
signer: this._options.signer,
|
|
63
|
+
clock: this._options.clock,
|
|
64
|
+
skipWarmup: this._options.skipWarmup,
|
|
65
|
+
passwordVerifier: vault.verifyPassword,
|
|
66
|
+
sensitiveActionVerifier: this._options.sensitiveActionVerifier,
|
|
67
|
+
};
|
|
68
|
+
return createVaultClient(clientOptions);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
function resolveOwnerSessionStorage(storageOrOptions, maybeOptions) {
|
|
72
|
+
if (maybeOptions) {
|
|
73
|
+
return {
|
|
74
|
+
storage: typeof storageOrOptions === "string"
|
|
75
|
+
? new FsStorageProvider(storageOrOptions)
|
|
76
|
+
: storageOrOptions,
|
|
77
|
+
options: maybeOptions,
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
return {
|
|
81
|
+
storage: createWorkspaceStorage(),
|
|
82
|
+
options: storageOrOptions,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
export function createOwnerSession(storageOrOptions, maybeOptions) {
|
|
86
|
+
const { storage, options } = resolveOwnerSessionStorage(storageOrOptions, maybeOptions);
|
|
87
|
+
return new DefaultOwnerSession(storage, options);
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=owner-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"owner-session.js","sourceRoot":"","sources":["../../src/runtime/owner-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -209,12 +209,53 @@ export interface AgentGetRuntimeManifestCommand {
|
|
|
209
209
|
};
|
|
210
210
|
requestedAt: string;
|
|
211
211
|
}
|
|
212
|
+
export interface AgentSelfContext {
|
|
213
|
+
agentId: string;
|
|
214
|
+
identityId: string;
|
|
215
|
+
publicKey: string;
|
|
216
|
+
nickname?: string;
|
|
217
|
+
metadata?: Record<string, any>;
|
|
218
|
+
}
|
|
219
|
+
export type AgentCapabilityStateStatus = "GRANTED" | "PENDING" | "REJECTED";
|
|
220
|
+
export type AgentCapabilityStateSource = "owner_grant" | "explicit_request" | "dispatch_discovery";
|
|
221
|
+
export interface AgentCapabilityState {
|
|
222
|
+
status: AgentCapabilityStateStatus;
|
|
223
|
+
source: AgentCapabilityStateSource;
|
|
224
|
+
agentId: string;
|
|
225
|
+
requestId?: string;
|
|
226
|
+
capabilityId?: string;
|
|
227
|
+
operation: "dispatch_http" | "custom_http";
|
|
228
|
+
secretIds?: readonly string[];
|
|
229
|
+
secretAliases?: readonly string[];
|
|
230
|
+
customFlowId?: string;
|
|
231
|
+
scope: string;
|
|
232
|
+
methods: readonly string[];
|
|
233
|
+
issuedAt?: string;
|
|
234
|
+
requestedAt: string;
|
|
235
|
+
expiresAt?: string;
|
|
236
|
+
rateLimit?: {
|
|
237
|
+
maxRequests: number;
|
|
238
|
+
windowMs: number;
|
|
239
|
+
};
|
|
240
|
+
skipAudit?: boolean;
|
|
241
|
+
justification?: string;
|
|
242
|
+
secretAlias?: string;
|
|
243
|
+
targetUrl?: string;
|
|
244
|
+
}
|
|
245
|
+
export interface CapabilityStateRecord extends AgentCapabilityState {
|
|
246
|
+
vaultId: VaultId;
|
|
247
|
+
proof?: AgentProof;
|
|
248
|
+
headers?: Record<string, string>;
|
|
249
|
+
body?: string;
|
|
250
|
+
decidedAt?: string;
|
|
251
|
+
}
|
|
212
252
|
export interface AgentRuntimeManifest {
|
|
213
253
|
agentId: string;
|
|
214
254
|
vaultId: string;
|
|
215
255
|
vaultNickname?: string;
|
|
216
256
|
issuedAt: string;
|
|
217
|
-
|
|
257
|
+
agent: AgentSelfContext;
|
|
258
|
+
capabilities: readonly AgentCapabilityState[];
|
|
218
259
|
tools: readonly VaultToolDefinition[];
|
|
219
260
|
}
|
|
220
261
|
export interface VaultToolDefinition {
|
|
@@ -251,30 +292,6 @@ export interface AgentSubmitCapabilityRequestCommand {
|
|
|
251
292
|
scope: CapabilityRequestScope;
|
|
252
293
|
justification?: string;
|
|
253
294
|
}
|
|
254
|
-
export interface PendingDispatchRecord {
|
|
255
|
-
requestId: string;
|
|
256
|
-
agentId: string;
|
|
257
|
-
capabilityId?: string;
|
|
258
|
-
secretAlias: string;
|
|
259
|
-
targetUrl: string;
|
|
260
|
-
method: string;
|
|
261
|
-
headers?: Record<string, string>;
|
|
262
|
-
body?: string;
|
|
263
|
-
requestedAt: string;
|
|
264
|
-
proof: AgentProof;
|
|
265
|
-
}
|
|
266
|
-
export interface OwnerApproveDispatchCommand {
|
|
267
|
-
vaultId: VaultId;
|
|
268
|
-
requestId: string;
|
|
269
|
-
owner: VaultPrincipal;
|
|
270
|
-
permanent?: boolean;
|
|
271
|
-
skipAudit?: boolean;
|
|
272
|
-
}
|
|
273
|
-
export interface OwnerRejectDispatchCommand {
|
|
274
|
-
vaultId: VaultId;
|
|
275
|
-
requestId: string;
|
|
276
|
-
owner: VaultPrincipal;
|
|
277
|
-
}
|
|
278
295
|
export interface CapabilityRequestScope {
|
|
279
296
|
operation: "dispatch_http" | "custom_http";
|
|
280
297
|
secretAliases?: readonly string[];
|
|
@@ -296,22 +313,18 @@ export interface SubmitCapabilityRequestCommand {
|
|
|
296
313
|
justification?: string;
|
|
297
314
|
requestedAt: string;
|
|
298
315
|
}
|
|
299
|
-
export interface
|
|
316
|
+
export interface OwnerListCapabilityStatesRequest {
|
|
300
317
|
vaultId: VaultId;
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
scope: CapabilityRequestScope;
|
|
305
|
-
justification?: string;
|
|
306
|
-
requestedAt: string;
|
|
318
|
+
owner: VaultPrincipal;
|
|
319
|
+
agentId?: string;
|
|
320
|
+
status?: AgentCapabilityStateStatus;
|
|
307
321
|
}
|
|
308
|
-
export interface
|
|
322
|
+
export interface OwnerExecuteCapabilityStateCommand {
|
|
309
323
|
vaultId: VaultId;
|
|
310
324
|
requestId: string;
|
|
311
325
|
owner: VaultPrincipal;
|
|
312
|
-
capabilityId?: string;
|
|
313
326
|
}
|
|
314
|
-
export interface
|
|
327
|
+
export interface OwnerRejectCapabilityStateCommand {
|
|
315
328
|
vaultId: VaultId;
|
|
316
329
|
requestId: string;
|
|
317
330
|
owner: VaultPrincipal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/vault-core/contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/vault-core/contracts.ts"],"names":[],"mappings":"AA+XA,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,yCAAuB,CAAA;IACvB,mCAAiB,CAAA;IACjB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;IACnB,qCAAmB,CAAA;AACrB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAoBD,MAAM,CAAN,IAAY,WAwBX;AAxBD,WAAY,WAAW;IACrB,kEAAmD,CAAA;IACnD,8DAA+C,CAAA;IAC/C,4DAA6C,CAAA;IAC7C,0DAA2C,CAAA;IAC3C,sEAAuD,CAAA;IACvD,wEAAyD,CAAA;IACzD,sEAAuD,CAAA;IACvD,sDAAuC,CAAA;IACvC,4CAA6B,CAAA;IAC7B,8DAA+C,CAAA;IAC/C,8CAA+B,CAAA;IAC/B,gDAAiC,CAAA;IACjC,8CAA+B,CAAA;IAC/B,wDAAyC,CAAA;IACzC,kDAAmC,CAAA;IACnC,0CAA2B,CAAA;IAC3B,sDAAuC,CAAA;IACvC,wCAAyB,CAAA;IACzB,0DAA2C,CAAA;IAC3C,4DAA6C,CAAA;IAC7C,oDAAqC,CAAA;IACrC,kDAAmC,CAAA;IACnC,gDAAiC,CAAA;AACnC,CAAC,EAxBW,WAAW,KAAX,WAAW,QAwBtB;AAED,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;IACjB,uCAAuB,CAAA;IACvB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;AACrB,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AgentListCapabilitiesRequest, AgentListSecretsRequest,
|
|
1
|
+
import type { AgentListCapabilitiesRequest, AgentListSecretsRequest, AgentGetRuntimeManifestRequest, AgentRuntimeManifest, AgentSubmitCapabilityRequestCommand, AgentVisibleSecretRecord, AuditEntry, AuditQuery, CustomHttpFlowDefinition, DispatchAuthorization, DispatchRequest, DispatchResult, OwnerExecuteCapabilityStateCommand, OwnerDefineSecretTargetsCommand, OwnerIssueSessionTokenRequest, OwnerRejectCapabilityStateCommand, OwnerDeleteSecretCommand, OwnerExportSecretRequest, OwnerRegisterAgentIdentityCommand, OwnerUpdateAgentIdentityCommand, OwnerRegisterCapabilityCommand, OwnerRegisterCustomHttpFlowCommand, OwnerRevokeCapabilityCommand, OwnerListAgentsRequest, OwnerListCapabilitiesRequest, OwnerListCapabilityStatesRequest, OwnerSecretExport, OwnerSessionToken, SecretRecord, SubmitCapabilityRequestCommand, VaultId, VaultPrincipal, VaultWriteSecretCommand, AgentIdentityRecord, AgentCapability, CapabilityStateRecord } from "./contracts.js";
|
|
2
2
|
import type { VaultCoreDependencies } from "./ports.js";
|
|
3
3
|
/**
|
|
4
4
|
* The Sovereign Vault Core.
|
|
@@ -6,20 +6,23 @@ import type { VaultCoreDependencies } from "./ports.js";
|
|
|
6
6
|
*/
|
|
7
7
|
export declare class VaultCore {
|
|
8
8
|
private readonly _deps;
|
|
9
|
-
private readonly
|
|
10
|
-
private readonly _pendingCapabilityObservers;
|
|
9
|
+
private readonly _capabilityStateObservers;
|
|
11
10
|
constructor(_deps: VaultCoreDependencies);
|
|
11
|
+
private _assertOwnerPrincipal;
|
|
12
|
+
private _stateToGrantedCapability;
|
|
13
|
+
private _buildAgentCapabilityStates;
|
|
14
|
+
private _isExecutablePendingState;
|
|
15
|
+
private _executePendingCapabilityState;
|
|
12
16
|
get vaultId(): VaultId;
|
|
13
17
|
private _appendAudit;
|
|
14
18
|
private _appendDecisionAudit;
|
|
15
19
|
private _verifyAgentControlProof;
|
|
16
20
|
private _listVisibleSecretsForAgent;
|
|
17
|
-
|
|
18
|
-
ownerOnPendingCapabilityRequest(callback: (record: PendingCapabilityRequestRecord) => void): () => void;
|
|
21
|
+
ownerOnCapabilityState(callback: (record: CapabilityStateRecord) => void): () => void;
|
|
19
22
|
ownerRegisterAgentIdentity(command: OwnerRegisterAgentIdentityCommand): Promise<void>;
|
|
20
23
|
ownerUpdateAgentIdentity(command: OwnerUpdateAgentIdentityCommand): Promise<AgentIdentityRecord>;
|
|
21
24
|
ownerRegisterCapability(command: OwnerRegisterCapabilityCommand): Promise<void>;
|
|
22
|
-
ownerSubmitCapabilityRequest(command: SubmitCapabilityRequestCommand): Promise<
|
|
25
|
+
ownerSubmitCapabilityRequest(command: SubmitCapabilityRequestCommand): Promise<CapabilityStateRecord>;
|
|
23
26
|
_getCapability(vaultId: import("./contracts.js").VaultId, agentId: string, capabilityId: string): Promise<AgentCapability | null>;
|
|
24
27
|
ownerRegisterCustomFlow(command: OwnerRegisterCustomHttpFlowCommand): Promise<void>;
|
|
25
28
|
_storeCustomFlowSecret(flow: CustomHttpFlowDefinition, alias: string, plaintext: string): Promise<SecretRecord>;
|
|
@@ -46,10 +49,10 @@ export declare class VaultCore {
|
|
|
46
49
|
}, request?: {
|
|
47
50
|
requestId?: string;
|
|
48
51
|
}): Promise<readonly AgentVisibleSecretRecord[]>;
|
|
49
|
-
agentListCapabilities(request: AgentListCapabilitiesRequest): Promise<readonly
|
|
52
|
+
agentListCapabilities(request: AgentListCapabilitiesRequest): Promise<readonly import("./contracts.js").AgentCapabilityState[]>;
|
|
50
53
|
agentListSecrets(request: AgentListSecretsRequest): Promise<readonly AgentVisibleSecretRecord[]>;
|
|
51
|
-
agentGetRuntimeManifest(command:
|
|
52
|
-
agentSubmitCapabilityRequest(command: AgentSubmitCapabilityRequestCommand): Promise<
|
|
54
|
+
agentGetRuntimeManifest(command: AgentGetRuntimeManifestRequest): Promise<AgentRuntimeManifest>;
|
|
55
|
+
agentSubmitCapabilityRequest(command: AgentSubmitCapabilityRequestCommand): Promise<CapabilityStateRecord>;
|
|
53
56
|
ownerRevokeCapability(command: OwnerRevokeCapabilityCommand): Promise<void>;
|
|
54
57
|
ownerIssueSessionToken(request: OwnerIssueSessionTokenRequest): Promise<OwnerSessionToken>;
|
|
55
58
|
ownerIssueAllAgentSessionTokens(actor: VaultPrincipal & {
|
|
@@ -62,17 +65,9 @@ export declare class VaultCore {
|
|
|
62
65
|
};
|
|
63
66
|
token: string;
|
|
64
67
|
}): Promise<void>;
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
ownerListPendingCapabilityRequests(command: {
|
|
70
|
-
vaultId: VaultId;
|
|
71
|
-
owner: VaultPrincipal;
|
|
72
|
-
}): Promise<readonly PendingCapabilityRequestRecord[]>;
|
|
73
|
-
ownerApproveCapabilityRequest(command: OwnerApproveCapabilityRequestCommand): Promise<AgentCapability>;
|
|
74
|
-
ownerRejectCapabilityRequest(command: OwnerRejectCapabilityRequestCommand): Promise<void>;
|
|
75
|
-
ownerApproveDispatch(command: import("./contracts.js").OwnerApproveDispatchCommand): Promise<DispatchResult>;
|
|
76
|
-
ownerRejectDispatch(command: import("./contracts.js").OwnerRejectDispatchCommand): Promise<void>;
|
|
68
|
+
ownerListCapabilityStates(command: OwnerListCapabilityStatesRequest): Promise<readonly CapabilityStateRecord[]>;
|
|
69
|
+
ownerExecuteCapabilityStateOnce(command: OwnerExecuteCapabilityStateCommand): Promise<DispatchResult>;
|
|
70
|
+
ownerExecuteCapabilityStateAndGrant(command: OwnerExecuteCapabilityStateCommand): Promise<DispatchResult>;
|
|
71
|
+
ownerRejectCapabilityState(command: OwnerRejectCapabilityStateCommand): Promise<CapabilityStateRecord>;
|
|
77
72
|
}
|
|
78
73
|
export declare function createVaultCore(deps: VaultCoreDependencies): VaultCore;
|