经 AI Skill Hub 精选评估,Rust自我学习记忆系统 获评「推荐使用」。这款Agent工作流在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 7.5 分,适合有一定技术背景的用户使用。
一个模块化的Rust-基于的自我学习 episodic 记忆系统,用于AI代理,突出其自我学习和记忆功能的独特之处。
Rust自我学习记忆系统 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
一个模块化的Rust-基于的自我学习 episodic 记忆系统,用于AI代理,突出其自我学习和记忆功能的独特之处。
Rust自我学习记忆系统 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。
# 方式一:cargo install(推荐) cargo install rust-self-learning-memory # 方式二:从源码编译 git clone https://github.com/d-o-hub/rust-self-learning-memory cd rust-self-learning-memory cargo build --release # 二进制在 ./target/release/rust-self-learning-memory
# 查看帮助 rust-self-learning-memory --help # 基本运行 rust-self-learning-memory [options] <input> # 详细使用说明请查阅文档 # https://github.com/d-o-hub/rust-self-learning-memory
# rust-self-learning-memory 配置说明 # 查看配置选项 rust-self-learning-memory --config-example > config.yml # 常见配置项 # output_dir: ./output # log_level: info # workers: 4 # 环境变量(覆盖配置文件) export RUST_SELF_LEARNING_MEMORY_CONFIG="/path/to/config.yml"
-yellow)
A self-learning episodic memory system with semantic pattern search, embeddings, MCP server, and optional sandboxed code execution.
Overview • Features • Quick Start • Documentation • Contributing • Quality Gates • License
</div>
The Rust Self-Learning Memory System provides persistent memory across agent interactions through a comprehensive MCP (Model Context Protocol) server. It captures, stores, and learns from episodic experiences to improve future performance.
Architecture: - do-memory-core: Core memory operations, pattern extraction, and reward scoring - do-memory-storage-turso: Primary database storage (libSQL) - do-memory-storage-redb: Fast embedded cache layer - do-memory-mcp: MCP server with secure WASM sandbox - do-memory-cli: Full-featured command-line interface (episode, pattern, storage, playbook, feedback, and more) - do-memory-test-utils: Shared testing utilities - do-memory-benches: Comprehensive benchmark suite - do-memory-examples: Usage examples and demonstrations
Tech Stack: Rust 2024 edition / Tokio + Turso/libSQL + redb cache + Wasmtime WASM + optional embeddings (OpenAI, Mistral, local)
Enable optional features via Cargo:
```bash
cargo build
cargo build --all-features
cargo build --features openai cargo build --features mistral cargo build --features local-embeddings cargo build --features embeddings-full ```
Available Features: - openai: OpenAI API embeddings support (do-memory-core) - mistral: Mistral AI embeddings support (do-memory-core) - local-embeddings: CPU-based local embeddings (do-memory-core) - csm: Chaotic Semantic Memory integration for cascading retrieval (do-memory-core) - embeddings-full: All embedding providers (do-memory-core) - turso: Turso cloud storage with keepalive pool (do-memory-cli) - redb: redb local cache layer (do-memory-cli, default) - full: All features combined (do-memory-cli) - wasmtime-backend: Wasmtime WASM sandbox (do-memory-mcp, default) - compression: Network compression — lz4, zstd, gzip (do-memory-storage-turso) - hybrid_search: FTS5 hybrid search (do-memory-storage-turso)
When the csm feature is enabled, semantic search uses a 4-tier cascade to minimize API calls:
| Tier | Method | CPU Cost | API Calls | When Used |
|---|---|---|---|---|
| 1 | BM25 exact match | O(n) Rayon scan | 0 | Keyword-heavy queries |
| 2 | HDC similarity | 10,240-bit SIMD | 0 | Semantic fallback |
| 3 | ConceptGraph expansion | Graph BFS | 0 | Known-domain synonyms |
| 4 | API embedding | Network call | 1 | Final fallback |
Target: 50-70% API call reduction for typical query workloads. See agent_docs/csm_integration.md for details.
```bash
cargo build --release
```bash
./scripts/setup-local-db.sh
cp memory-cli/.env.example .env mkdir -p ./data ./backups ```
use memory_core::{SelfLearningMemory, TaskContext, ComplexityLevel};
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let memory = SelfLearningMemory::new();
// Search for patterns using natural language
let context = TaskContext {
domain: "web-api".to_string(),
language: Some("rust".to_string()),
framework: None,
complexity: ComplexityLevel::Moderate,
tags: vec!["rest".to_string(), "async".to_string()],
};
let results = memory.search_patterns_semantic(
"How to handle API rate limiting with retries",
context,
5 // limit
).await?;
for result in results {
println!("Pattern: {:?}", result.pattern);
println!("Relevance: {:.2}", result.relevance_score);
println!("Success Rate: {:.1}%", result.pattern.success_rate() * 100.0);
}
// Get task-specific recommendations
let recommendations = memory.recommend_patterns_for_task(
"Build async HTTP client with connection pooling",
context,
3
).await?;
for rec in recommendations {
println!("Recommended: {:?}", rec.pattern);
}
// Generate an actionable playbook
let playbooks = memory.retrieve_playbooks(
"Implement user authentication",
"security",
TaskType::CodeGeneration,
context,
1, // max playbooks
5 // max steps
).await;
if let Some(playbook) = playbooks.first() {
println!("Playbook ID: {}", playbook.playbook_id);
for step in &playbook.ordered_steps {
println!("{}. {}", step.order, step.action);
}
}
Ok(())
}
Documentation: See memory-core/PATTERN_SEARCH_FEATURE.md for complete API reference and examples.
```bash
do-memory-cli config wizard
do-memory-cli config validate
do-memory-cli config check
Configuration Wizard provides interactive step-by-step setup with sensible defaults and validation.
#### CLI Interaction
bash
cargo run --bin do-memory-mcp-server -- --config mcp-config-memory.json
#### Programmatic Usage
rust use memory_core::{SelfLearningMemory, TaskContext, TaskType};
#[tokio::main] async fn main() -> anyhow::Result<()> { let memory = SelfLearningMemory::new(Default::default()).await?;
let context = TaskContext { language: "rust".to_string(), domain: "web".to_string(), tags: vec!["api".to_string()], };
let episode_id = memory.start_episode( "Build REST API endpoint".to_string(), context, TaskType::CodeGeneration, ).await;
Ok(()) } ```
```bash
MEMORY_MAX_EPISODES_CACHE=1000 MEMORY_CACHE_TTL_SECONDS=3600
MEMORY_CLI_CONFIG=./do-memory-cli.toml
MCP_USE_WASM=true JAVY_PLUGIN=./memory-mcp/javy-plugin.wasm ```
[database]
turso_url = "libsql://your-db.turso.io"
turso_token = "your-auth-token"
redb_path = "memory.redb"
[storage]
max_episodes_cache = 1000
cache_ttl_seconds = 3600
pool_size = 10
[sandbox]
max_execution_time_ms = 5000
max_memory_mb = 128
max_cpu_percent = 50
allow_network = false
allow_filesystem = false
[cli]
default_format = "human"
progress_bars = true
batch_size = 100
git checkout -b feature-name./scripts/quality-gates.shrust-self-learning-memory 是一个基于 Rust 构建的自我学习记忆系统。它通过实现全面的 MCP (Model Context Protocol) 服务,为 Agent 交互提供持久化记忆能力。系统能够捕获、存储并从片段式经验(episodic experiences)中学习,从而持续优化未来的执行性能。其架构分为核心层 do-memory-core(负责记忆操作、模式提取与奖励评分)以及存储层 do-memory-storage-turso(负责云端数据库持久化)。
本项目提供功能完备的 CLI 工具,支持对 episode(片段)、pattern(模式)、tag(标签)及 relationship(关系)进行全生命周期管理。用户可以通过命令行执行搜索、分析、批量更新及过滤等操作。此外,系统具备强大的模式分析与有效性追踪功能,支持通过 decay(衰减)机制管理记忆,并提供完整的备份、监控、日志及评估(eval)能力,确保记忆系统的可控性与智能化。
在开始开发或部署前,请确保您的环境已安装 Rust stable 版本(需支持 2024 edition)。本地开发环境需要安装 SQLite 以进行数据存储;若需使用云端数据库,则建议安装 Turso CLI。此外,项目对代码质量有严格要求,所有测试必须通过且不得出现 clippy 警告,测试覆盖率需逐步达到 ADR-042 定义的阶段性目标。
您可以通过源码编译的方式进行安装。首先克隆仓库后,使用 `cargo build --release` 命令构建项目。对于本地开发环境,需要配置好 SQLite 数据库;若需连接云端,请按照相关文档完成 Turso 的数据库设置。项目支持通过 Cargo 的 Feature Flags 来按需启用可选功能,以优化构建体积与性能。
项目提供了快速启动指南,帮助开发者快速上手。您可以直接在 Rust 代码中通过 `memory_core` 模块调用 `SelfLearningMemory` 接口,利用自然语言进行 Pattern Search(模式搜索),并结合 TaskContext(任务上下文)和 ComplexityLevel(复杂度等级)实现智能化的记忆检索。对于命令行用户,可以直接通过 CLI 工具进行交互式操作。
系统内置了交互式配置向导,开发者可以通过运行 `do-memory-cli config wizard` 命令,按照提示完成各项参数的配置。配置完成后,建议使用 `do-memory-cli config validate` 进行校验,以确保配置文件的正确性。配置项涵盖了 CLI 输出格式、进度条显示、批处理大小等关键参数,确保系统运行符合预期。
本项目提供了一套完整的接口体系,主要包括功能强大的 CLI 命令行接口,支持自定义输出格式、进度条显示及批处理规模(batch size)控制。同时,核心逻辑通过 Rust 模块化封装,为开发者提供了高度抽象的 API,方便在不同的 Agent 场景中集成记忆与学习能力。
项目遵循标准化的开发工作流:首先 Fork 仓库,然后创建独立的 feature 分支进行开发。在提交 Pull Request 之前,必须运行 `./scripts/quality-gates.sh` 脚本来通过质量门禁检查,确保代码符合测试覆盖率、安全审计��性能基准(performance benchmarks)的要求。
该项目是一个开源的Rust-基于的自我学习记忆系统,用于AI代理,具有独特的自我学习和记忆功能。然而,项目的质量和流行度还需要进一步评估。
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
AI Skill Hub 点评:Rust自我学习记忆系统 的核心功能完整,质量良好。对于自动化工程师和运维人员来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。
| 原始名称 | rust-self-learning-memory |
| 原始描述 | 开源AI工作流:A modular Rust-based self-learning episodic memory system for AI agents, featuri。⭐7 · Rust |
| Topics | workflowagent-memoryrust |
| GitHub | https://github.com/d-o-hub/rust-self-learning-memory |
| License | MIT |
| 语言 | Rust |
收录时间:2026-05-24 · 更新时间:2026-05-30 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端