使用说明
ContextFS
Git用于您的AI对话 --具有MCP服务器支持的本地第一AI存储层。
项目代码后面的本地上下文
概述
ContextFS是一个开源的存储层,为每个AI对话提供持久、可搜索的上下文。它适用于Claude CLI、Claude Desktop和任何兼容MCP的AI工具。
主要特点
- 本地优先 --项目中存储的所有数据
.contextfs/目录 - MCP服务器 --与Claude CLI/桌面的原生集成
- 全文搜索 --SQLite FTS5与BM25排名
- 记忆分类学 --结构化类型:事实、情节、程序、决策、用户
- 会话跟踪 --自动捕获和回忆对话
- CLI工具 —
ctx直接内存管理命令
快速开始
安装
npm install -g contextfs
在项目中初始化
cd your-project
ctx init
配置Claude CLI
添加 ~/.config/claude/settings.json:
{
"mcpServers": {
"contextfs": {
"command": "ctx",
"args": ["mcp", "--stdio"]
}
}
}
用它
# Save a memory
ctx save "We use PostgreSQL for the main database" -t fact
# Search memories
ctx search "database"
# List recent memories
ctx list
在克劳德身上,自然地问:
“请注意,我们决定使用Redis进行缓存”
CLI命令
| 命令 | 描述 |
|---|---|
ctx init |
在当前目录中初始化ContextFS |
ctx save <text> |
保存内存 |
ctx search <query> |
搜索记忆 |
ctx list [type] |
列出回忆 |
ctx show <id> |
显示内存详细信息 |
ctx chat |
互动聊天模式 |
ctx wrap <cmd> |
包装和捕获CLI输出 |
ctx export |
导出记忆 |
ctx mcp --stdio |
运行MCP服务器 |
内存类型
| 类型 | 用例 | 示例 |
|---|---|---|
fact |
原子事实 | “数据库是PostgreSQL 15” |
episodic |
会话摘要 | “讨论了身份验证实现” |
procedural |
如何了解 | “要部署:运行npm run deploy” |
decision |
架构决策 | “选择JWT解决无国籍问题” |
user |
用户偏好 | “更喜欢TypeScript” |
MCP工具
使用Claude配置时,可以使用以下工具:
| 工具 | 说明 |
|---|---|
contextfs_save |
使用类型/标签保存内存 |
contextfs_search |
带排名的全文搜索 |
contextfs_list |
列出最近的回忆 |
contextfs_recall |
按ID获取特定内存 |
contextfs_sessions |
列出对话会话 |
contextfs_load_session |
按ID或标签加载会话 |
contextfs_message |
将消息添加到当前会话 |
contextfs_import_claude |
导入Claude CLI会话 |
项目结构
your-project/
├── .contextfs/
│ ├── config.yaml # Project configuration (commit this)
│ └── context.db # SQLite database (gitignore this)
└── ...
程序化使用
import { ContextFS } from 'contextfs';
const ctx = new ContextFS();
// Save a memory
ctx.save('JWT tokens expire after 24 hours', {
type: 'decision',
tags: ['auth', 'security']
});
// Search
const results = ctx.search('authentication');
// Start/end sessions
ctx.startSession({ tool: 'my-app' });
ctx.addMessage('user', 'How do I implement auth?');
ctx.endSession();
文档
建筑
ContextFS被构建为一个独立的内存层,可以与各种AI框架集成:
┌─────────────────────────────────────────────────────┐
│ AI Tools │
│ Claude CLI │ Claude Desktop │ Custom Agents │
└──────────────────────┬──────────────────────────────┘
│ MCP Protocol
┌──────────────────────▼──────────────────────────────┐
│ ContextFS │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ MCP Server │ │ CLI │ │ SDK │ │
│ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │
│ └────────────────┼────────────────┘ │
│ ┌─────▼─────┐ │
│ │ Storage │ │
│ │ SQLite+FTS│ │
│ └───────────┘ │
└─────────────────────────────────────────────────────┘
与AIGNE框架集成
ContextFS可以与 AIGNE框架 对于基于代理的应用程序:
作为AFS模块的内存后端
import { AFS } from "@aigne/afs";
import { ContextFSModule } from "contextfs/afs"; // Future integration
const afs = new AFS();
afs.mount(new ContextFSModule({
projectRoot: process.cwd()
}));
推荐的集成点
- 会话历史记录 --使用ContextFS持久化AIGNE代理对话
- 决策记忆 --跨代理会话存储架构决策
- 用户偏好 --在AIGNE代理和Claude CLI之间共享用户上下文
- 程序性知识 --保存代理发现的工作流以供重用
路线图
- []团队协作的云同步
- []语义搜索的向量嵌入
- []AIGNE AFS模块集成
- []VS代码扩展名
- []Web仪表板
许可证
麻省理工学院
贡献
欢迎投稿!请在提交PR之前阅读投稿指南。