导入 / 导出
从 Claude Code、ChatGPT、Obsidian、Knowledge Graph 或 Markdown 文件导入现有 AI 记忆。随时导出以进行备份或迁移。
从 AI 工具导入
已在使用其他 AI 工具?一键将你的记忆迁移到 ContextForge。支持从 Claude Code、ChatGPT 以及官方 MCP Knowledge Graph 服务器导入。
Claude Code
从 Claude Code 导入 MEMORY.md 文件。每个 ## 章节会成为一个知识条目。
ChatGPT
从 ChatGPT 数据导出文件导入。从 conversations.json 中提取助手回复。
Knowledge Graph
从官方 MCP Knowledge Graph Memory Server 导入。实体会成为知识条目。
Obsidian
从 Obsidian 库导入。提取 YAML frontmatter(标题、标签)以及 [[wikilinks]] 作为关联关系。
如何导入
你可以直接从仪表盘导入,也可以通过 MCP 工具导入。以下是仪表盘操作步骤:
打开 Space 并点击 Import
在仪表盘中导航到任意 Space。在页眉的 "Add Item" 旁边可以看到 Import 按钮。

选择格式并上传文件
选择格式(Claude Code、ChatGPT、Knowledge Graph、Markdown 或 ContextForge JSON)。上传文件或直接粘贴内容。上传文件时会自动检测格式。

预览并导入
实时预览会显示检测到的条目数量及其标题。点击 "Import N Items" 开始导入。重复内容会自动跳过。

格式示例
Claude Code(MEMORY.md)
文件路径: ~/.claude/projects/*/memory/MEMORY.md
# My Project Memory ## Database Patterns - Always use connection pooling - Migrations must be idempotent - Use RLS for row-level security ## Auth Flow - JWT tokens expire in 1 hour - Refresh tokens last 30 days
每个 ## 章节会成为一个独立的知识条目,以其标题命名。
MCP Knowledge Graph(.jsonl)
默认文件: memory.jsonl,来自 @modelcontextprotocol/server-memory 包。
{"type":"entity","name":"ContextForge","entityType":"project","observations":["A SaaS for persistent AI memory","Built with Supabase"]}
{"type":"entity","name":"Supabase","entityType":"technology","observations":["PostgreSQL database","Provides auth and storage"]}
{"type":"relation","from":"ContextForge","to":"Supabase","relationType":"uses"}实体会成为知识条目。关联关系为将来的知识图谱功能保留。
ChatGPT 导出(conversations.json)
在 ChatGPT 中通过 Settings > Data Controls > Export Data 下载。
[
{
"title": "Building a REST API",
"mapping": {
"msg1": {
"message": {
"author": { "role": "assistant" },
"content": { "parts": ["Here's how to build..."] }
}
}
}
}
]仅提取助手回复。没有助手消息的对话会被跳过。
Obsidian 库(.md)
可导入单个笔记,或使用 MCP 工具批量导入整个库并创建关联关系。
--- title: Authentication Architecture tags: [auth, security, architecture] --- # Authentication Architecture We use JWT tokens with refresh rotation. See also [[Database Schema]] and [[API Gateway Config]].
会提取 YAML frontmatter(标题、标签)。通过 MCP 工具导入时, [[wikilinks]] 会自动转化为条目之间的关联关系。
批量库导入(通过 MCP)
若要导入整个库并保留 wikilink 关联关系,可在 Claude Code 或 Cursor 中使用 MCP 工具:
"Import my Obsidian notes from this folder into the Architecture space"
// Or use memory_import directly:
memory_import({
space_id: "your-space-id",
format: "obsidian",
data: [
{ content: "---\ntitle: Note 1\n---\nContent...", path: "folder/note1.md" },
{ content: "---\ntitle: Note 2\n---\nContent...", path: "folder/note2.md" }
]
})MCP 导入会解析 frontmatter,提取 [[wikilinks]], 并自动在关联笔记之间创建关系。
MCP 工具参考
你也可以直接从 Claude 或 Cursor 通过 MCP 工具进行导入和导出。
memory_import从多种格式导入条目。
| 名称 | 类型 | 描述 |
|---|---|---|
| space_id | string | 目标 Space UUID |
| format | string? | contextforge markdown obsidian notion claude_memory knowledge_graph_jsonl chatgpt |
| data | any | 原始内容(字符串或 JSON) |
| items | array? | 直接传入条目数组(data 的替代方式) |
memory_export将条目导出为 JSON、Markdown 或 CSV 格式。
| 名称 | 类型 | 描述 |
|---|---|---|
| space_id | string | 要导出的 Space |
| format | string? | json markdown csv(默认:json) |
安全性
所有导入内容在存储前都会经过验证和净化处理。
文件验证
- 仅接受
.md、.json、.jsonl格式 - 最大文件大小:5MB
- 二进制文件(图片、可执行文件)将被拒绝
- 每次导入最多 100 个条目
内容净化
- Script 标签和事件处理器会被移除
- 危险的 HTML 元素会被清除
javascript:协议链接会被拦截- 通过 SHA-256 哈希检测重复内容
导出数据
导出你的记忆以进行备份、迁移或在其他工具中使用。
# 在 Claude 中:
"Export my memory as JSON"
"Export the backend-docs space as Markdown"
# MCP tool usage:
memory_export({
"format": "json",
"space_id": "your-space-id"
})