CASCADE企业RAM
用于AI系统的6层结构化内存
亚毫秒级访问。重要性评分。双写持久性。你的AI会记住重要的事情。
______________________________________________________________________
它的作用
CASCADE为您的AI提供了一个具有六个专门层的存储系统:
| 层 | 目的 |
|---|---|
| 工作 | 当前会话上下文 |
| 间歇的 | 带有时间戳的基于事件的记忆 |
| 语义 | 事实和知识 |
| 程序性的 | 如何处理内存 |
| 元 | 关于记忆的记忆(反思) |
| 身份 | 高重要性持久存储 |
重要记忆会根据你分配的重要性分数而持续存在。更高的重要性=当您实施自己的保留策略时,保留时间更长。
______________________________________________________________________
特性
- 亚毫秒访问 通过可选的RAM磁盘加速
- 重要性评分 -根据你分配的分数,高价值的记忆会持续存在
- 双写 -RAM用于速度,SQLite用于持久性
- MCP服务器 -与Claude和其他MCP客户端的本地集成
- 六个专业层 -正确的记忆在正确的地方
- 时间衰减 -除非被访问或标记为重要,否则记忆会随着时间的推移而褪色。重要性>=0.9使记忆不朽。
______________________________________________________________________
平台支持
| 平台 | 架构 | 状态 |
|---|---|---|
| Windows x64 | 英特尔/AMD | 支持 |
| Windows ARM64 | 骁龙/高通 | 支持(v2.1.0+) |
| Linux x64 | 英特尔/AMD | 支持 |
| Linux ARM64 | ARM服务器,Raspberry Pi | 支持 |
| macOS x64 | 英特尔 | 支持 |
| macOS ARM64 | 苹果硅 | 支持 |
______________________________________________________________________
安装
三条路。选择合适的。
Windows(本机)
要求:Node.js>=18,Python>=3.10,RAM磁盘管理员权限
# Clone and install
git clone https://github.com/cipscorp/cascade-enterprise-ram.git
cd cascade-enterprise-ram
npm install
pip install .
# Create RAM disk (run as Administrator)
python -m ram_disk_manager init --disk-path ./data --size 512Linux/macOS(本机)
要求:Node.js>=18,Python>=3.10,RAM磁盘使用sudo访问
# Clone and install
git clone https://github.com/cipscorp/cascade-enterprise-ram.git
cd cascade-enterprise-ram
npm install
# Python dependencies (use virtual environment on modern Linux)
python3 -m venv .venv
source .venv/bin/activate
pip install .
# Create RAM disk (requires sudo - use full path to venv python)
sudo $(which python) -m ram_disk_manager init --disk-path ./data --size 512按平台划分的RAM磁盘路径:
- 视窗:使用ImDisk,挂载到
R:\默认情况下 - Linux:使用tmpfs,挂载到
/mnt/ramdisk/ - macOS:使用diskutil,挂载到
/Volumes/RAMDisk/
Docker(团队/企业)
要求:Docker、Docker编写
docker-compose up -d --build数据持续存在 ./data.Container内部使用tmpfs。看 README_DOCKER.md 了解详情。
______________________________________________________________________
MCP客户端配置
CASCADE是一个MCP服务器。它通过stdio而不是HTTP进行通信。
克劳德桌面
添加到您的 claude_desktop_config.json:
窗户:
{
"mcpServers": {
"cascade-memory": {
"command": "node",
"args": ["C:\\path\\to\\cascade-enterprise-ram\\server\\index.js"],
"env": {
"CASCADE_DB_PATH": "C:\\path\\to\\cascade-enterprise-ram\\data",
"CASCADE_RAM_PATH": "R:\\cascade"
}
}
}
}macOS/Linux:
{
"mcpServers": {
"cascade-memory": {
"command": "node",
"args": ["/path/to/cascade-enterprise-ram/server/index.js"],
"env": {
"CASCADE_DB_PATH": "/path/to/cascade-enterprise-ram/data",
"CASCADE_RAM_PATH": "/mnt/ramdisk/cascade"
}
}
}
}配置更改后重新启动MCP客户端。
验证
直接运行服务器进行测试:
node server/index.js您应该看到输出以以下开头:
{"message":"CASCADE Enterprise Memory MCP Server v2.2.2"}______________________________________________________________________
环境变量
复制 .env.example 到 .env 并配置:
# Persistent database location (source of truth)
CASCADE_DB_PATH=./data
# RAM disk mount point (sub-millisecond reads)
# Windows: R:\cascade
# Linux: /mnt/ramdisk/cascade
# macOS: /Volumes/RAMDisk/cascade
CASCADE_RAM_PATH=
# Logging
LOG_LEVEL=info
LOG_FORMAT=json
DEBUG=false
# Temporal Decay
DECAY_ENABLED=true # Enable/disable temporal decay
DECAY_BASE_RATE=0.01 # Decay speed per day (higher = faster fade)
DECAY_THRESHOLD=0.1 # Effective importance below this hides memories
DECAY_IMMORTAL_THRESHOLD=0.9 # Importance at or above this never decays
DECAY_SWEEP_INTERVAL=60 # Minutes between decay sweeps
DECAY_SWEEP_BATCH_SIZE=1000 # Max memories processed per layer per sweep______________________________________________________________________
API 参考
CASCADE公开了七个MCP工具:
记住
将内存存储在特定层中。
{
"tool": "remember",
"arguments": {
"content": "User prefers dark mode interfaces",
"layer": "semantic",
"importance": 0.8,
"metadata": {
"source": "user_preference"
}
}
}参数:
content(必填):内存内容layer(可选):情景、语义、程序、元、身份、工作。默认值:根据内容自动确定(回退:工作)importance(可选):0.0-1.0。值越高表示优先级越高。默认值:0.7metadata(可选):用于附加上下文的键值对
召回
在所有层或特定层中搜索记忆。
{
"tool": "recall",
"arguments": {
"query": "user interface preferences",
"layer": "semantic",
"limit": 10
}
}参数:
query(必填):搜索查询layer(可选):将搜索限制在特定图层limit(可选):最大结果。默认值:10include_decayed(可选):如果为真,则包括衰减到阈值以下的记忆。默认值:false
查询层
从特定层获取所有记忆。
{
"tool": "query_layer",
"arguments": {
"layer": "working",
"options": {
"limit": 50,
"order_by": "timestamp DESC"
}
}
}参数:
layer(必填):要查询的图层options(可选):对象filters,limit,order_byinclude_decayed(可选):如果为真,则包括腐烂的记忆。默认值:false
结果包括 effective_importance (根据衰减调整的重要性)。
获取状态
获取系统状态和统计数据。
{
"tool": "get_status",
"arguments": {}
}返回每层内存计数、运行状况、版本、双写配置和衰减引擎状态(启用、扫描间隔、阈值)。
get_stats
获取所有内存层的详细统计信息。
{
"tool": "get_stats",
"arguments": {}
}返回每层统计数据,包括内存计数、平均重要性、平均情绪强度、最近时间戳和衰减计数(不朽、活动、衰减)。
save_to_layer
将内存保存到特定层,并完全控制元数据。
{
"tool": "save_to_layer",
"arguments": {
"layer": "semantic",
"content": "Important fact to remember",
"metadata": {
"importance": 0.9,
"emotional_intensity": 0.3,
"context": "user knowledge base"
}
}
}参数:
layer(必填):目标层(情景、语义、程序、元、身份、工作)content(必填):要保存的内存内容metadata(可选):完整的元数据控制,包括重要性、情感强度、上下文
get_echo_stats
获取CASCADE回声比健康指标。只读监控,显示每层内容中有多少是派生(回声)的,而不是原始的。
{
"tool": "get_echo_stats",
"arguments": {}
}返回每层回声率、总体统计数据,以及当任何层的派生内容超过40%时的警告。
______________________________________________________________________
RAM磁盘管理
Python包跨平台管理RAM磁盘。
Windows(以管理员身份运行):
python -m ram_disk_manager init --disk-path ./data --size 512
python -m ram_disk_manager status
python -m ram_disk_manager sync --disk-path ./data --direction to-disk
python -m ram_disk_manager destroy --disk-path ./dataLinux/macOS(已激活venv):
# Create RAM disk (requires sudo with full python path)
sudo $(which python) -m ram_disk_manager init --disk-path ./data --size 512
# These don't need sudo
python -m ram_disk_manager status
python -m ram_disk_manager sync --disk-path ./data --direction to-disk
python -m ram_disk_manager destroy --disk-path ./dataRAM磁盘创建需要提升权限(Windows上的管理员,Linux/macOS上的sudo)。
______________________________________________________________________
演出
基准测试
在专用开发机器上测量。您的结果将根据硬件、磁盘类型和系统负载而有所不同。
| 操作 | RAM磁盘 | 仅磁盘 | 注意事项 |
|---|---|---|---|
| 单次读取 | \<1ms | 2-5ms | RAM路径使用tmpfs/ImDisk/diskutil |
| 单次写入 | 3-8ms | 2-5ms | 双次写入:先磁盘,后RAM |
| 搜索(100个结果) | 5-15ms | 10-30ms | SQLite LIKE跨层查询 |
| 衰减扫描(1000个内存) | 50-150ms | 100-300ms | 每层批量更新 |
基准硬件
| 组件 | 规格 |
|---|---|
| CPU | AMD/英特尔x64(多核) |
| RAM | 16GB+(512MB分配给RAM磁盘) |
| 磁盘 | NVMe SSD |
| 操作系统 | Ubuntu 22.04/Windows 11 |
| Node.js | v20 LTS |
方法论
使用以下方法测量性能数字:
- 读取延迟:
console.time/console.timeEnd大约better-sqlite3.get()调用具有1000+行的数据库。100次迭代的中位数,在数据库预热后测量(排除第一个查询)。
- 写入延迟:a的端到端时间
remember操作包括双写(磁盘+RAM)。从工具处理程序条目到返回值进行测量,100次迭代,报告中位数。
- 搜索延迟:
recall工具与LIKE查询匹配一个具有1000多个内存的层中的约100个结果。50次迭代的中位数。
- RAM磁盘与磁盘:RAM磁盘性能假定安装了tmpfs(Linux)、ImDisk(Windows)或diskutil(macOS),并且
CASCADE_RAM_PATH已设置。如果没有RAM磁盘,所有操作都只使用磁盘路径。
再现基准
使用以下命令运行服务器 DEBUG=true 在结构化日志中查看每个操作的时间:
DEBUG=true node server/index.js每次工具调用都会在审计跟踪中记录其持续时间。对于系统基准测试,使用MCP客户端发出重复的工具调用并收集 durationMs 审计日志条目中的字段。
______________________________________________________________________
故障排除
服务器无法启动
检查一下 npm install 已成功完成。缺少依赖关系会导致静默失败。
MCP工具未出现在Claude中
- 验证服务器是否独立运行:
node server/index.js - 检查配置中的路径是绝对的,而不是相对的
- 配置更改后重新启动Claude Desktop
- 检查Claude Desktop日志中的MCP连接错误
“数据库锁定”错误
SQLite不处理并发写入。解决:
- 确保每个数据库只运行一个CASCADE实例
- 杀死僵尸节点进程:
taskkill /F /IM node.exe(Windows)或pkill node(Linux/macOS)
重启后记忆不持久
RAM磁盘内容在重新启动时丢失。确保 CASCADE_DB_PATH 指向持久存储。双写系统同时写入两个位置,但您需要配置磁盘路径。
在ARM64 Windows上安装npm失败
旧版本(\<2.1.0)使用 sqlite3 npm包,需要通过node-gyp进行本机编译。由于缺少预构建的二进制文件,这在ARM64 Windows上失败。
v2.1.0已替换 sqlite3 随着 better-sqlite3,它为ARM64 Windows、x64 Windows、Linux和macOS提供预构建的二进制文件。跑 npm install 在v2.1.0+版本上,它工作正常。
RAM磁盘创建失败
- 视窗:需要ImDisk驱动程序。管理员会自动安装它,但您需要管理员权限。
- Linux:tmpfs是内核内置的。只需要sudo。
- macOS:diskutil是内置的。只需要sudo。
______________________________________________________________________
支持
- 文档: cipscorps.io
- 技术支持: support@cipscorps.io
- Bug报告: 包括CASCADE版本、操作系统和错误输出
______________________________________________________________________
许可证
MIT许可证。看 许可证 对于条款。
______________________________________________________________________
由……制造 CIPS公司
网站 | 商店 | | glass@cipscorps.io
人工智能系统的企业认知基础设施: PyTorch内存、灵魂矩阵、CMM和完整的CIPS栈.
版权所有(c)2025-2026 c.I.P.S.有限责任公司
