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
engramjsSDK 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
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
npm install engramjsQuick Start
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 })What To Read Next
- Start with the Getting Started Guide
- Understand vocabulary in Concepts
- Configure production-safe settings in Configuration
- Understand operational flow in Memory Lifecycle
- Explore method signatures in SDK API
- Wire monitoring from Observability
- Prepare incident response with Operations Runbook