关于 lightning-memory
lightning-memory 是面向 Lightning 经济中 AI Agent 的持久化记忆服务,记录交易并跟踪商家信誉、支出和信任信息。它结合 Nostr 身份与同步、付款安全检查及可选的 L402 查询网关。
主要功能
- 01存储和搜索 Agent 记忆
- 02跟踪商家信誉与支出
- 03检测异常付款并执行预算检查
- 04通过 Nostr 中继同步记忆
- 05提供信任与合规工具
- 06运行 L402 付费查询网关
适用场景
- 01查询 Agent 的历史交易
- 02付款前检查商家和预算
- 03通过中继同步 Agent 记忆
- 04向其他 Agent 提供付费记忆查询
MCP 相关
作为 MCP 服务,lightning-memory 向 AI Agent 提供记忆、Lightning 商家情报、付款安全、信任合规及网关发现工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Lightning Memory
为 Lightning 经济中的 AI Agent 提供持久化记忆。
问题
AI Agent 通过 L402 在 Lightning 上支付 sats,却无法记住自己买了什么。每次会话都从零开始。每个商家都很陌生。每个价格都照单全收。昨天支付了 500 sats 的 Agent,不知道今天 5,000 sats 的发票是价格暴涨,还是正常水平。
解决方案
L1: Bitcoin — settles
L2: Lightning — pays
L3: Lightning Memory — remembers
Lightning Memory 为 Agent 提供持久化记忆、商家情报和支付安全关卡。Agent 可以从消费历史中学习、追踪商家信誉、检测价格异常、执行预算,并与其他 Agent 分享信任信号。
交互式演示 — 观看 Agent 如何学习、遭遇欺诈,并绕开不良行为者。
构建 Agent 经济 — 信任、预算、合规和记忆市场。
适用对象
- 使用 L402 付款的 Agent,需要商家信誉信息和消费纪律
- 在 Bitcoin/Lightning 上构建自主 Agent 的开发者
- 运行任何兼容 MCP 的 AI Agent 的人(Claude、GPT 或任何 MCP 客户端)
快速开始
pip install lightning-memory
lightning-memory # starts MCP server
在 Claude Code 中配置
{
"mcpServers": {
"lightning-memory": {
"command": "lightning-memory"
}
}
}
在 Claude Desktop 中配置
{
"mcpServers": {
"lightning-memory": {
"command": "python",
"args": ["-m", "lightning_memory.server"]
}
}
}
对比
| 功能 | Lightning Memory | Mem0 | 原始文件存储 | 无记忆 |
|---|---|---|---|---|
| Lightning/L402 感知能力 | 是 | 否 | 否 | 否 |
| 商家信誉追踪 | 是 | 否 | 手动 | 否 |
| 消费异常检测 | 是 | 否 | 否 | 否 |
| Nostr 身份(BIP-340) | 是 | 否 | 否 | 否 |
| Relay 同步(NIP-78) | 是 | 否 | 否 | 否 |
| 全文 + 语义搜索 | 是 | 是 | 否 | 否 |
| Agent 间知识市场 | 是(L402 网关) | 否 | 否 | 否 |
| 预算执行 | 是 | 否 | 否 | 否 |
| KYC/信任档案 | 是 | 否 | 否 | 否 |
| 付款前检查关卡 | 是 | 否 | 否 | 否 |
| 矛盾检测 | 是 | 否 | 否 | 否 |
| 本地优先 / 离线 | 是 | 云端 | 是 | 不适用 |
| 原生 MCP 支持 | 是 | 插件 | 否 | 否 |
| 零配置 | 是 | 需要 API 密钥 | 手动设置 | 不适用 |
工具(22 个)
记忆
| 工具 | 描述 |
|---|---|
memory_store | 存储记忆(交易、商家、偏好、错误、决策) |
memory_query | 按相关性搜索(FTS5 + 可选语义搜索) |
memory_list | 按类型/时间筛选并列出记忆 |
memory_edit | 编辑内容或元数据,并保留审计记录 |
memory_sync | 与 Nostr relays 同步(推送/拉取) |
memory_export | 导出为 NIP-78 Nostr 事件 |
memory_store(
content="Paid 500 sats to bitrefill.com for a $5 Amazon gift card via L402.",
type="transaction",
metadata='{"vendor": "bitrefill.com", "amount_sats": 500}'
)
memory_query(query="bitrefill payment history", limit=5)
# → recency-weighted results with dedup and contradiction alerts
Lightning 情报
| 工具 | 描述 |
|---|---|
ln_vendor_reputation | 根据交易历史计算信誉评分 |
ln_spending_summary | 按商家和协议划分消费情况 |
ln_anomaly_check | 检测付款金额是否异常偏高 |
ln_vendor_reputation(vendor="bitrefill.com")
# → {reputation: {total_txns: 12, success_rate: 0.92, avg_sats: 450}, recommendation: "reliable"}
ln_anomaly_check(vendor="bitrefill.com", amount_sats=5000)
# → {anomaly: {verdict: "high", context: "5000 sats is 11.1x the historical average..."}}
支付安全
| 工具 | 描述 |
|---|---|
ln_preflight | 付款前检查关卡:预算 + 异常 + 信任检查 |
ln_budget_set | 设置每个商家的消费限额(每笔交易、每日、每月) |
ln_budget_check | 检查消费是否超出限额 |
ln_budget_status | 网关收入和 L402 付款统计 |
ln_preflight(vendor="bitrefill.com", amount_sats=500)
# → {decision: {verdict: "approve", budget_remaining_today: 4500, trust_score: 0.89}}
# If the vendor suddenly charges 50x:
ln_preflight(vendor="bitrefill.com", amount_sats=25000)
# → {decision: {verdict: "reject", reasons: ["exceeds daily limit of 5000 sats"]}}
信任与合规
| 工具 | 描述 |
|---|---|
ln_vendor_trust | 完整的信任档案(KYC + 信誉 + 社区评分) |
ln_trust_attest | 向 Nostr 中继发布 NIP-85 信任证明 |
ln_agent_attest | 存储 KYA(了解你的 Agent)证明 |
ln_agent_verify | 查询 Agent 的合规状态 |
ln_auth_session | 存储 LNURL-auth 会话记录 |
ln_auth_lookup | 查询 LNURL-auth 会话 |
ln_compliance_report | 生成结构化合规导出 |
市场
| 工具 | 描述 |
|---|---|
ln_discover_gateways | 通过 Nostr 查找远程 Lightning Memory 网关 |
ln_remote_query | 通过 L402 小额支付查询远程网关 |
ln_discover_gateways(operation="memory_query")
# → {count: 2, gateways: [{url: "https://gw1.example.com", operations: {...}}, ...]}
ln_remote_query(
gateway_url="https://gw.example.com",
operation="ln_vendor_reputation",
params='{"vendor": "openai"}'
)
# → Pays 3 sats, returns remote agent's vendor intelligence
架构
- Nostr 身份:Agent 身份 = Nostr 密钥对(BIP-340)。无需账户或 API 密钥。
- 本地优先:使用 SQLite,支持 FTS5 全文搜索和可选的 ONNX 语义搜索。可离线运行。
- Nostr 同步:将记忆写入中继上的 NIP-78 事件。可移植且防篡改。
- L402 支付:按查询付费的网关。每次操作 1-10 sats。
- 记忆质量:去重、矛盾检测、噪声过滤、按时效加权排序、访问跟踪。
L402 网关
运行按查询付费的 L402 HTTP 网关。其他 Agent 通过 Lightning 小额支付访问你的 Agent 记忆,无需 API 密钥或账户。
pip install lightning-memory[gateway]
lightning-memory-gateway # Listening on 0.0.0.0:8402
L402 的工作原理
Agent Gateway Phoenixd
| | |
|-- GET /memory/query?q=... --->| |
|<-- 402 + Lightning invoice ---|--- create_invoice -------->|
| |<-- bolt11 + payment_hash --|
| | |
| [pay invoice via Lightning] | |
| | |
|-- GET + L402 token ---------->| |
| (macaroon:preimage) |--- verify preimage ------->|
|<-- 200 + query results -------| |
端点
| 端点 | 方法 | 价格 | 描述 |
|---|---|---|---|
/info | GET | 免费 | 网关状态、定价、节点信息 |
/health | GET | 免费 | 健康检查 |
/memory/store | POST | 3 sats | 存储一条记忆 |
/memory/query | GET | 2 sats | 按相关性搜索记忆 |
/memory/list | GET | 1 sat | 按筛选条件列出记忆 |
/ln/vendor/{name} | GET | 3 sats | 供应商信誉报告 |
/ln/spending | GET | 2 sats | 支出摘要 |
/ln/anomaly-check | POST | 3 sats | 支付异常检测 |
/ln/preflight | POST | 3 sats | 支付前置检查 |
/ln/trust/{name} | GET | 2 sats | 供应商信任档案 |
/ln/budget | GET | 1 sat | 预算规则与支出 |
/ln/compliance-report | GET | 10 sats | 合规报告导出 |
Phoenixd 设置
- 下载并运行 Phoenixd(监听
localhost:9740) - 为其注资约 10,000 sats,以便初始开通通道
- 配置:
~/.lightning-memory/config.json→{"phoenixd_password": "<from ~/.phoenix/phoenix.conf>"} - 启动:
lightning-memory-gateway
Docker
PHOENIXD_PASSWORD=your-password docker compose up
CLI 命令
lightning-memory # Start MCP server
lightning-memory stats # Memory statistics dashboard
lightning-memory export json # Export memories as JSON
lightning-memory export csv # Export memories as CSV
lightning-memory relay-status # Check Nostr relay connectivity
lightning-memory-gateway # Start L402 HTTP gateway
lightning-memory-manifest # Generate gateway discovery manifest
中继配置
默认中继:wss://relay.damus.io、wss://nos.lol、wss://relay.nostr.band
在 ~/.lightning-memory/config.json 中自定义:
{
"relays": ["wss://relay.damus.io", "wss://nos.lol", "wss://relay.primal.net"],
"sync_timeout_seconds": 30,
"max_events_per_sync": 500
}
| 中继 | 速度 | 可靠性 | 备注 |
|---|---|---|---|
wss://relay.damus.io | 快 | 高 | 最受欢迎,运行时间长 |
wss://nos.lol | 快 | 高 | 可靠,对 NIP-78 支持良好 |
wss://relay.nostr.band | 中 | 中 | 专注于搜索,可能较慢 |
wss://relay.primal.net | 快 | 高 | 维护良好 |
wss://nostr.wine | 快 | 高 | 付费中继,垃圾信息较少 |
可选:语义搜索
添加基于 ONNX 的语义相似度搜索,与 FTS5 关键词搜索并用:
pip install lightning-memory[semantic]
之后,查询会采用混合排序:FTS5 BM25 + 余弦相似度,并使用倒数排名融合。即使关键词没有精确重叠,“哪些供应商适合转录”也能匹配包含“whisper API”和“音频转文本”的记忆。
数据存储
~/.lightning-memory/
memories.db # SQLite database
keys/
private.key # Nostr private key (chmod 600)
public.key # Nostr public key (your agent identity)
路线图
- 阶段 1:使用本地 SQLite 存储的 MCP 服务
- 阶段 2:Lightning 智能功能(供应商信誉、支出摘要、异常检测)
- 阶段 3:Nostr 中继同步(NIP-78、Schnorr 签名、双向同步)
- 阶段 4:L402 支付网关(macaroons、Phoenixd、HTTP 网关)
- 阶段 5:合规与信任(预算执行、供应商 KYC、社区信誉、预检关卡)
- 阶段 6:记忆市场(网关发现、远程 L402 查询、网关客户端)
- 阶段 7:Agent 可靠性(语义搜索、去重、矛盾检测、断路器)
Star 历史
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。