使用说明
内存图形可视化工具
ASP。NET Core应用程序,用于可视化来自 多存储器mcp 使用三维力图的项目
特性
- 交互式图形可视化 -具有缩放、平移和拖放功能的3D力图
- 多种布局 -COSE(力定向)、圆形、网格、宽度优先、同心
- 实体类型着色 -按实体类型自动进行颜色编码
- 节点详细信息面板 -查看观察结果、时间戳、来源和连接
- 搜索和筛选 -按名称或类型查找节点
- 导出为PNG -将图形另存为图像
- 定向边缘 -显示关系方向的箭头(来源→ 目标)
- 响应式设计 -适用于台式机和移动设备
先决条件
- .NET 8.0 SDK或更高版本
- 现代网络浏览器(Chrome、Firefox、Safari、Edge)
快速开始
1.配置内存文件夹
编辑 MemoryGraphVisualizer/appsettings.json:
{
"MemoryGraph": {
"MemoryFolderPath": "./.aim/",
"MaxGraphNodes": 10000,
"DefaultLayout": "cose"
}
}
2.运行应用程序
cd MemoryGraphVisualizer
dotnet restore
dotnet run
应用程序开始于 https://localhost:5001 (或 http://localhost:5000).
3.查看您的图表
- 在浏览器中打开应用程序
- 从下拉列表中选择数据库
- 与图形交互:
- 滚动/捏住 -放大/缩小
- 拖动画布 -平移视图
- 拖动节点 -重新定位节点
- 点击节点 -查看详细信息并突出显示连接
测试数据库
在开发模式下,应用程序创建示例数据库:
software-project.db-30个实体,40个关系(软件架构)team-knowledge.db-15个实体,16个关系(团队/项目知识)empty.db-空数据库(边缘情况)nodes-only.db-5个实体,0个关系(断开连接的节点)
配置选项
| 选项 | 描述 | 默认值 |
|---|---|---|
MemoryFolderPath |
包含.db文件的文件夹的路径 | ./.aim/ |
MaxGraphNodes |
要加载的最大节点数 | 10000 |
DefaultLayout |
默认布局算法 | cose |
键盘快捷键
| 关键 | 行动 |
|---|---|
F |
将图形安装到屏幕上 |
R |
重置视图 |
/ |
焦点搜索框 |
Esc |
清除搜索 |
API终点
| 端点 | 方法 | 描述 |
|---|---|---|
/api/databases |
GET | 列出可用数据库 |
/api/graph?database={name} |
GET | 加载图形数据 |
项目结构
MemoryGraph/
├── MemoryGraph.slnx # Solution file
├── README.md
├── FEATURE_REQUEST_NODE_EDITING.md # Planned editing features
└── MemoryGraphVisualizer/
├── MemoryGraphVisualizer.csproj # Project file
├── Program.cs # Entry point and API endpoints
├── appsettings.json # Configuration
├── Configuration/ # Options classes
├── Models/ # GraphNode, GraphEdge, Observation, etc.
├── Pages/ # Razor pages (Index)
├── Services/ # Business logic and data access
└── wwwroot/
├── css/ # Custom styles
└── js/ # Graph visualization JavaScript
数据库模式
可视化工具期望SQLite数据库具有以下模式:
CREATE TABLE entities (
name TEXT PRIMARY KEY,
entityType TEXT NOT NULL,
observations TEXT -- JSON array
);
CREATE TABLE relations (
id INTEGER PRIMARY KEY AUTOINCREMENT,
fromEntity TEXT NOT NULL,
toEntity TEXT NOT NULL,
relationType TEXT NOT NULL
);
观察结果格式
[
{
"text": "Observation text",
"timestamp": "2025-01-15T10:30:00Z",
"source": "code-analysis"
}
]
技术栈
后端:
- ASP。NET Core 8.0(剃刀页面)
- 微软。数据。SQLite
- Serilog
前端:
- 三维力图
- Bootstrap 5.3
- 普通JavaScript(ES6+)
未来的增强功能
未来的编辑能力:
- 添加/删除节点
- 绘制节点之间的连接
- 编辑属性和观察结果
许可证
麻省理工学院
