Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.spellguard.ai/llms.txt

Use this file to discover all available pages before exploring further.

Logging Backends

AMP separates commitment logging (proof that message existed) from message archiving (storing encrypted content).

Commitment Backends

Commitment backends provide tamper-evident audit trails.
BackendDescriptionPropertiesCost
memoryIn-memory storeVolatile, fastFree
rekorSigstore transparency logImmutable, public, Merkle proofsFree

Archive Backends

Archive backends store encrypted message content.
BackendDescriptionPropertiesCost
memoryIn-memory storeVolatile, fastFree
s3AWS S3 with Object LockWORM compliance, supports S3-compatible servicesS3 pricing

Configuration

Backends are configured via environment variables:
# Commitment backend: 'memory' | 'rekor'
COMMITMENT_BACKEND=rekor

# Archive backend: 'memory' | 's3'
ARCHIVE_BACKEND=s3

Backend Interfaces

interface CommitmentBackend {
  readonly name: string;
  init(): Promise<void>;
  logCommitment(commitment: AuditCommitment): Promise<string | null>;
  verifyCommitment(commitmentHash: string): Promise<boolean>;
  isConnected(): boolean;
}

interface ArchiveBackend {
  readonly name: string;
  init(): Promise<void>;
  archive(message: SecureMessage, commitment: AuditCommitment): Promise<string | null>;
  retrieve(archiveId: string): Promise<ArchivePayload | SecureMessage | null>;
  isConnected(): boolean;
}