TypeScript SDK
由 @acosmi/sdk-ts 2.0.1 自动同步:TypeDoc API 参考 + 公开合规工作流指南。
安装
pnpm add @acosmi/sdk-tspnpm add @acosmi/sdk-ts快速开始
import {
Client,
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
} from "@acosmi/sdk-ts";
const client = await Client.create({
serverURL: process.env.ACOSMI_SERVER_URL!,
complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});
await client.login("Compliance App", [
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
]);import {
Client,
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
} from "@acosmi/sdk-ts";
const client = await Client.create({
serverURL: process.env.ACOSMI_SERVER_URL!,
complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});
await client.login("Compliance App", [
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
]);自动生成的参考面
- Classes:17
- Interfaces:200
- Type aliases:43
- Functions:55
- Variables:83
- Enumerations:1
- Compliance scopes:15
- ComplianceClient methods:54
核心类
AgentRunStreamError, AgentRunsClient, AnthropicAdapter, BusinessError, Client, ComplianceClient, CompliancePollError, FileTokenStore, HTTPError, InMemoryTokenStore, LocalStorageTokenStore, ModelNotFoundError, NetworkError, OpenAIAdapter, OrderTerminalError, RateLimitError, StreamError
常用接口
APIResponse, AgentRun, AgentRunArtifact, AgentRunArtifactList, AgentRunArtifactPolicy, AgentRunCreateRequest, AgentRunCreateResponse, AgentRunDownload, AgentRunErrorPayload, AgentRunLocalContextPolicy, AgentRunLocalToolHandlerContext, AgentRunLocalToolResult, AgentRunRunOptions, AgentRunSettlement, AgentRunStreamOptions, AgentRunUsage, AgentRunWithLocalToolsOptions, AnthropicContentBlock, AnthropicResponse, AnthropicUsage, ApiClientRef, ApproveSealApprovalQuery, AssignSeatRequest, AuthorizeResult
工具函数
allScopes, anthropicResponseTextContent, anthropicResponseThinkingContent, anthropicResponseToolUseBlocks, apiResponseBusinessError, apiResponseGetMessage, authorize, bucketInfoIsCommercial, bucketRowIsCommercial, buildBetas, classifyComplianceError, commerceScopes, completeWebAuthorizationRequest, complianceErrorToRetryAdvice, complianceScopes, computeBackoff, createWebAuthorizationRequest, defaultRetryable, defaultSafeToRetry, discover, discoverWebOAuthMetadata, discoverWithProfile, effectivePolicy, exchangeCode
Compliance scopes
compliance:evidence:read (ScopeComplianceEvidenceRead)compliance:evidence:write (ScopeComplianceEvidenceWrite)compliance:timestamp:issue (ScopeComplianceTimestampIssue)compliance:timestamp:verify (ScopeComplianceTimestampVerify)compliance:contract_signing:read (ScopeComplianceContractSigningRead)compliance:contract_signing:write (ScopeComplianceContractSigningWrite)compliance:seal:manage (ScopeComplianceSealManage)compliance:seal_approval:request (ScopeComplianceSealApprovalRequest)compliance:seal_approval:approve (ScopeComplianceSealApprovalApprove)compliance:seal_use:execute (ScopeComplianceSealUseExecute)compliance:reports:read (ScopeComplianceReportsRead)compliance:reports:write (ScopeComplianceReportsWrite)compliance:reports:publish (ScopeComplianceReportsPublish)compliance:contract_template:read (ScopeComplianceContractTemplateRead)compliance:contract_template:write (ScopeComplianceContractTemplateWrite)
ComplianceClient methods
getcreateEvidenceAssetgetEvidenceAssetlistEvidenceAssetsverifyEvidencePublicissueTimestampissueTimestampForAssetgetTimestamplistTimestampsverifyTimestamplistTsaProvidersgetTsaStatsbuildEvidencePackagelistEvidencePackagescreateReportgetReportlistReportspublishReportdownloadReportcreateSigningEnvelopegetSigningEnvelopelistSigningEnvelopessignEnvelopecreateH5SigningUrlsyncSigningEnvelopeStatuslistEnvelopeContractslistEnvelopeProviderRequestsvoidEnvelopesubmitSealApprovalapproveSealApprovalrejectSealApprovalcancelSealApprovallistPendingSealApprovalsgetSealApprovallistSealApprovalslistSealUsesgetProviderRequestgetCapabilitieslistOperationsgetOperationcreateContractTemplateupdateContractTemplatedeleteContractTemplategetContractTemplatelistContractTemplatesuploadContractTemplatePdfpublishContractTemplatearchiveContractTemplatelistContractTemplateVersionsclassifyErrorappendappendappendappend
需要服务端闸门闭合的方法
publishReportsignEnvelopecreateH5SigningUrlapproveSealApproval
完整 TypeDoc 清单
Classes
AgentRunStreamErrorAgentRunsClientAnthropicAdapterBusinessErrorClientComplianceClientCompliancePollErrorFileTokenStoreHTTPErrorInMemoryTokenStoreLocalStorageTokenStoreModelNotFoundErrorNetworkErrorOpenAIAdapterOrderTerminalErrorRateLimitErrorStreamError
Interfaces
APIResponseAgentRunAgentRunArtifactAgentRunArtifactListAgentRunArtifactPolicyAgentRunCreateRequestAgentRunCreateResponseAgentRunDownloadAgentRunErrorPayloadAgentRunLocalContextPolicyAgentRunLocalToolHandlerContextAgentRunLocalToolResultAgentRunRunOptionsAgentRunSettlementAgentRunStreamOptionsAgentRunUsageAgentRunWithLocalToolsOptionsAnthropicContentBlockAnthropicResponseAnthropicUsageApiClientRefApproveSealApprovalQueryAssignSeatRequestAuthorizeResultBalanceDetailBillingPreflightResultBlockMetaBookConsultationRequestBucketInfoBucketRowBugReportResultBugViewCancelSealApprovalQueryCaseLeadCaseMatterCertificationStatusChatContentBlockChatMessageChatRequestChatResponseChatUsageClientRegistrationComplianceCapabilityComplianceErrorInfoCompliancePollOptionsComplianceQuoteResponseComplianceReportComplianceSkuComplianceWriteOptionsConfigConsumeRecordConsumeRecordPageContractTemplateFieldContractTemplatePageItemContractTemplateRespContractTemplateVersionCorporateTransferCreateContractTemplateRequestCreateEvidenceAssetRequestCreateH5SigningUrlRequestCreateReportRequestCreateSigningEnvelopeRequestCreateWebAuthorizationRequestOptionsDeviceRegistrationEffortConfigEnterpriseKycMyStatusViewEnterpriseMemberEnterpriseSummaryEntitlementBalanceEntitlementItemEnvelopeContractItemEvidenceAssetEvidenceAssetPageItemEvidencePackageEvidencePackagePageItemFeatureGateStatusGateQuotaGenerateSkillRequestGenerateSkillResultGeoLocInitiateCorporateTransferInputInitiateCorporateTransferResultInviteMemberRequestInvoiceIssueTimestampRequestLawyerCredentialMyViewLawyerSummaryLegalConsultationLegalServiceOrderLegalServiceSkuListContractTemplatesRequestListEvidenceAssetsRequestListEvidencePackagesRequestListOperationsRequestListReportsRequestListSealApprovalsRequestListSealUsesRequestListSigningEnvelopesRequestListTimestampsRequestLoginEventLoginOptionsManagedModelModelBucketModelByQuotaResponseModelCapabilitiesModelCoefficientNotificationNotificationListNotificationPreferenceNotificationUnreadCountOpenAIChatChoiceOpenAIChatMessageOpenAIChatResponseOpenAIFunctionCallOpenAIStreamChoiceOpenAIStreamChunkOpenAIStreamDeltaOpenAIStreamToolCallOpenAIToolCallOpenAIUsageOperationDetailOperationPageItemOptimizeSkillRequestOptimizeSkillResultOrderOrderStatusOrgConsumeReportOrgSeatOrgSubscriptionOutputConfigPageRequestPayPayloadPrincipalRefProductProviderAdapterProviderRequestStatusViewPublicEvidenceVerifyResultPublicModelSummaryQuotaSummaryRefundPolicyRefundRecordRegisterWebOAuthClientOptionsRejectSealApprovalQueryReportDownloadReportPageItemRequestInvoiceInputRequestRefundInputRetryAdviceRetryPolicyRetryRequestInfoSealApprovalSealApprovalPageItemSealUsePageItemServerMetadataServerToolSignEnvelopeRequestSigningEnvelopeSigningEnvelopePageItemSkillBrowseListResponseSkillBrowseResponseSkillStoreItemSkillStoreListItemSkillStoreQuerySkillSummarySourcesEventStepUpStatusStreamEventStreamSettlementSubmitCaseLeadRequestSubmitSealApprovalRequestSubscriptionPlanTenantRefThinkingConfigTimestampPageItemTimestampTokenTimestampVerifyResultTokenPackageTokenResponseTokenSetTokenStoreToolListResponseToolProviderToolViewTransactionTsaProviderTsaStatsUpdateContractTemplateRequestUploadContractTemplatePdfRequestUserSubscriptionVerifyTimestampRequestVoidEnvelopeRequestWSConfigWSEventWalletStatsWebAuthorizationCallbackParamsWebAuthorizationPendingWebAuthorizationRequestWebSearchConfigWebSearchSourceYudaoPageResult
Type aliases
AgentRunLocalToolHandlerAgentRunStatusAgentRunStreamEventAudienceBillingModeBrowserRefreshModeComplianceAssetTypeComplianceBenefitTypeComplianceBillingDisplayStatusComplianceClientErrorCodeComplianceDigestSourceComplianceEnvelopeStatusComplianceErrorKeyComplianceHashAlgorithmCompliancePrivacyLevelComplianceProviderRequestStatusComplianceProviderStatusComplianceScopeComplianceSealApprovalStatusComplianceTimestampVerificationStatusContractTemplateFieldTypeContractTemplateStatusFeatureGateStateFilterStatusIdempotencyKeyInputModalityLegalSkuCodeLoginErrCodeLoginEventTypeOAuthMetadataProfileOperationIdOperationSourceOperationStatusPageResultPricingConfigProductFamilyProviderRequestStatusRegionScopeRetryAdviceReasonRolloverPolicySortDirectionSubscriptionAudienceVerifyStatus
Functions
allScopesanthropicResponseTextContentanthropicResponseThinkingContentanthropicResponseToolUseBlocksapiResponseBusinessErrorapiResponseGetMessageauthorizebucketInfoIsCommercialbucketRowIsCommercialbuildBetasclassifyComplianceErrorcommerceScopescompleteWebAuthorizationRequestcomplianceErrorToRetryAdvicecomplianceScopescomputeBackoffcreateWebAuthorizationRequestdefaultRetryabledefaultSafeToRetrydiscoverdiscoverWebOAuthMetadatadiscoverWithProfileeffectivePolicyexchangeCodeextractAnthropicBlockMetafindDesktopVisualUnderstandingModelfindFirstModelByInputModalitygenerateStategetAdaptergetAdapterForModelisBillingConfirmableisComplianceBusinessErrorisComplianceTerminalErrorisSSECommentLineisSSLErrormodelScopesmodelSupportsImageInputmodelSupportsInputModalitynewFileTokenStorenewThinkingConfignewTokenSetnewWebSearchToolparseNotificationEventparseSettlementparseSourcesEventrefreshTokenregisterregisterWebOAuthClientretryReasonForComplianceKeyretryReasonForOAuthErrorrevokeTokenskillScopestokenSetIsExpireduniqueMergevalidateEndUserId
原始英文合规工作流指南摘要
This guide covers the public TypeScript SDK surface for compliance workflows: timestamps, evidence assets, evidence packages, reports, signing envelopes, seal approvals, and provider request polling.
The SDK exposes Acosmi domain objects only. It does not expose provider credentials, provider endpoints, raw provider payloads, certificates, private keys, signing containers, or billing commit internals.
Quick Start
import {
Client,
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';
const client = await Client.create({
serverURL: process.env.ACOSMI_SERVER_URL!,
// Defaults to `${serverURL}/admin-api` when omitted.
complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});
await client.login('Compliance Example', [
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
]);
const idempotencyKey = await loadOrCreateIdempotencyKey('timestamp:order-123');
const asset = await client.compliance.createEvidenceAsset(
{
assetType: 'HASH_ONLY',
name: 'release-manifest',
hashAlgorithm: 'sha256',
declaredHash: process.env.RELEASE_MANIFEST_SHA256!,
digestSource: 'CLIENT',
privacyLevel: 'private',
},
{ idempotencyKey },
);
const token = await client.compliance.issueTimestampForAsset(asset.id, {
idempotencyKey: await loadOrCreateIdempotencyKey(`timestamp:${asset.evidenceNo}`),
});
const verified = await client.compliance.waitForTimestampVerified(token.id, {
timeoutMs: 60_000,
});
console.log(verified.verificationStatus);import {
Client,
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';
const client = await Client.create({
serverURL: process.env.ACOSMI_SERVER_URL!,
// Defaults to `${serverURL}/admin-api` when omitted.
complianceBaseURL: process.env.ACOSMI_COMPLIANCE_BASE_URL,
});
await client.login('Compliance Example', [
ScopeComplianceEvidenceRead,
ScopeComplianceEvidenceWrite,
ScopeComplianceTimestampIssue,
ScopeComplianceTimestampVerify,
]);
const idempotencyKey = await loadOrCreateIdempotencyKey('timestamp:order-123');
const asset = await client.compliance.createEvidenceAsset(
{
assetType: 'HASH_ONLY',
name: 'release-manifest',
hashAlgorithm: 'sha256',
declaredHash: process.env.RELEASE_MANIFEST_SHA256!,
digestSource: 'CLIENT',
privacyLevel: 'private',
},
{ idempotencyKey },
);
const token = await client.compliance.issueTimestampForAsset(asset.id, {
idempotencyKey: await loadOrCreateIdempotencyKey(`timestamp:${asset.evidenceNo}`),
});
const verified = await client.compliance.waitForTimestampVerified(token.id, {
timeoutMs: 60_000,
});
console.log(verified.verificationStatus);Scopes
Request the smallest scope set that matches the workflow. complianceScopes()
returns all compliance scopes, but production apps should usually choose a
subset:
import {
ScopeComplianceEvidenceRead,
ScopeComplianceReportsRead,
ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';
await client.login('Read-only Compliance App', [
ScopeComplianceEvidenceRead,
ScopeComplianceTimestampVerify,
ScopeComplianceReportsRead,
]);import {
ScopeComplianceEvidenceRead,
ScopeComplianceReportsRead,
ScopeComplianceTimestampVerify,
} from '@acosmi/sdk-ts';
await client.login('Read-only Compliance App', [
ScopeComplianceEvidenceRead,
ScopeComplianceTimestampVerify,
ScopeComplianceReportsRead,
]);Compliance scopes are independent from ScopeAI, ScopeSkills, and
ScopeAccount. Holding the general scopes does not grant compliance access.
Report scopes are split by action:
ScopeComplianceReportsRead—getReport,downloadReport.ScopeComplianceReportsWrite—createReport. This scope was added after the initial release; tokens issued before it existed do not carry it. An app that callscreateReportmust requestScopeComplianceReportsWriteatlogin()time, and existing users must re-authorize (run the OAuth flow again) so the new scope is granted.