Skip to content

Engram SDK

Persistent memory, autonomous funding, and verifiable actions for AI agents.

Engram SDK is a toolkit for building agents that can persist state to decentralized storage, manage memory costs with explicit guardrails, collaborate through delegation, and optionally leave on-chain receipts for auditability.

Instead of treating memory as app-local cache that disappears on restart, Engram treats memory as a first-class protocol primitive:

  • store agent state as content-addressed records (CID-first)
  • apply deterministic retention/encryption policy
  • manage lifecycle (store, retrieve, renew, prune)
  • support cross-agent handoff with signed capability tokens
  • expose the same operations through MCP for tool-native clients

Engram SDK gives agents four protocol-native primitives:

  • Remember with content-addressed storage on Filecoin
  • Pay with Vincent-powered smart wallets
  • Share context through signed capability delegation
  • Prove actions with ERC-8004 on-chain attestations

Who This Is For

Engram is a fit if you are building:

  • autonomous agents that must survive restarts and redeployments
  • multi-agent systems that need controlled memory sharing
  • agent infrastructure with spend controls and operational logging
  • products requiring verifiable action history ("agents with receipts")

What You Get

  • engramjs SDK runtime surface
  • provider abstraction (synapse, storacha, mock)
  • optional wallet/encryption integrations for confidential memory
  • optional on-chain identity and attestation workflows
  • MCP server (@engram-sdk/mcp) for no-glue integration in MCP clients

Contributor Intro

  • Documentation writing guide: skills.md
  • LLM context file for doc maintenance: llm.txt

Why Engram

Most agent systems still break on the same constraints:

  • Memory vanishes after process restarts
  • Operators manually fund or approve transactions
  • Action history is not cryptographically verifiable
  • Context handoff between agents requires centralized glue

Engram closes that gap with a framework-agnostic TypeScript SDK and an MCP server.

How It Fits In Your Stack

At runtime, your app or agent loop calls EngramSDK, which orchestrates policy resolution, budget checks, provider operations, and optional identity/attestation steps. You can integrate directly in code or through MCP tools, depending on your host environment.

Install

bash
npm install engramjs

Quick Start

ts
import { EngramSDK, delegate } from 'engramjs'
import { createProvider } from '@engram-sdk/providers'

const storageProvider = await createProvider('synapse')

const sdk = new EngramSDK({
  storageProvider,
  operatorPrivateKey: process.env.OPERATOR_PRIVATE_KEY,
  vincentApiKey: process.env.VINCENT_SECRET_API_KEY,
  network: 'calibration',
  maxSpendUSDFC: 10,
  attestOnChain: true
})

const receipt = await sdk.store(
  { decision: 'rebalance', confidence: 0.84 },
  { priority: 'critical', encrypt: true }
)

const restored = await sdk.retrieve(receipt.cid)

const { tokenCid } = await delegate(sdk, receipt.cid, 'did:key:z6Mkh...', { ttlHours: 24 })

Released under the MIT License.