Skip to content

@codesoul-co/hypha-tools / secrets

模块用法

用于传递受控 Secret 引用与解析契约。Secrets 模块公开 5 接口。

从包入口导入

ts
import type {
  CredentialLease,
  SecretProvider,
  SecretResolutionContext,
  SecretResolver,
  ToolSecretResolver,
} from '@codesoul-co/hypha-tools';

使用要点

  • 5 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。

公共导出

Symbol种类签名说明
CredentialLease接口interface CredentialLeaseCredential Lease 接口,共包含 5 个公开字段或方法。
SecretProvider接口interface SecretProviderSecret Provider 接口,共包含 2 个公开字段或方法。
SecretResolutionContext接口interface SecretResolutionContextSecret Resolution Context 接口,共包含 2 个公开字段或方法。
SecretResolver接口interface SecretResolverProvider-neutral boundary for resolving opaque references at the last responsible moment. Implementations must never persist or log lease values.
ToolSecretResolver接口interface ToolSecretResolverProvider-neutral boundary for resolving opaque references at the last responsible moment. Implementations must never persist or log lease values.

CredentialLease

Credential Lease 接口,共包含 5 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { CredentialLease } from '@codesoul-co/hypha-tools';
  • 源码模块: secrets

声明

text
export interface CredentialLease {
    readonly expiresAt?: string;
    readonly renewable: boolean;
    read(): string;
    renew?(): Promise<CredentialLease>;
    release?(): Promise<void>;
}

契约成员

成员种类签名说明
expiresAt属性readonly expiresAt?: string公开属性;类型、只读和可选状态以签名列为准。
read方法read(): string公开方法;参数与返回类型以签名列为准。
release方法release?(): Promise<void>公开方法;参数与返回类型以签名列为准。
renew方法renew?(): Promise<CredentialLease>公开方法;参数与返回类型以签名列为准。
renewable属性readonly renewable: boolean公开属性;类型、只读和可选状态以签名列为准。

SecretProvider

Secret Provider 接口,共包含 2 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { SecretProvider } from '@codesoul-co/hypha-tools';
  • 源码模块: secrets

声明

text
export interface SecretProvider {
    readonly scheme: string;
    acquire(reference: string, context?: SecretResolutionContext): Promise<CredentialLease | null>;
}

契约成员

成员种类签名说明
acquire方法acquire(reference: string, context?: SecretResolutionContext): Promise<CredentialLease | null>公开方法;参数与返回类型以签名列为准。
scheme属性readonly scheme: string公开属性;类型、只读和可选状态以签名列为准。

SecretResolutionContext

Secret Resolution Context 接口,共包含 2 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { SecretResolutionContext } from '@codesoul-co/hypha-tools';
  • 源码模块: secrets

声明

text
export interface SecretResolutionContext {
    purpose?: 'tool' | 'mcp_authorization' | 'mcp_headers' | 'other';
    minimumValidityMs?: number;
}

契约成员

成员种类签名说明
minimumValidityMs属性minimumValidityMs?: number公开属性;类型、只读和可选状态以签名列为准。
purpose属性purpose?: "tool" | "other" | "mcp_authorization" | "mcp_headers"公开属性;类型、只读和可选状态以签名列为准。

SecretResolver

Provider-neutral boundary for resolving opaque references at the last responsible moment. Implementations must never persist or log lease values.

  • 种类: 接口
  • 导入: import type { SecretResolver } from '@codesoul-co/hypha-tools';
  • 源码模块: secrets

声明

text
export interface SecretResolver {
    acquire(reference: string, context?: SecretResolutionContext): Promise<CredentialLease | null>;
    resolve(reference: string, context?: SecretResolutionContext): Promise<string | null>;
}

契约成员

成员种类签名说明
acquire方法acquire(reference: string, context?: SecretResolutionContext): Promise<CredentialLease | null>公开方法;参数与返回类型以签名列为准。
resolve方法resolve(reference: string, context?: SecretResolutionContext): Promise<string | null>公开方法;参数与返回类型以签名列为准。

ToolSecretResolver

Provider-neutral boundary for resolving opaque references at the last responsible moment. Implementations must never persist or log lease values.

  • 种类: 接口
  • 导入: import type { ToolSecretResolver } from '@codesoul-co/hypha-tools';
  • 源码模块: secrets

声明

text
export interface SecretResolver {
    acquire(reference: string, context?: SecretResolutionContext): Promise<CredentialLease | null>;
    resolve(reference: string, context?: SecretResolutionContext): Promise<string | null>;
}

契约成员

成员种类签名说明
acquire方法acquire(reference: string, context?: SecretResolutionContext): Promise<CredentialLease | null>公开方法;参数与返回类型以签名列为准。
resolve方法resolve(reference: string, context?: SecretResolutionContext): Promise<string | null>公开方法;参数与返回类型以签名列为准。