@coreyuan/vector-mind 1.0.17 → 1.0.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -2
- package/dist/index.js +575 -8
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -50,6 +50,10 @@ VectorMind 通过本地文件监听 + SQLite 关系记忆,把“需求 → 改
|
|
|
50
50
|
- 入参:`{ id: number, offset?: number, limit?: number }`
|
|
51
51
|
- 用途:按 `id` 读取某条 `memory_items` 的全文内容(支持 offset/limit 分段),用于“需要时再取全文”,避免 `bootstrap_context/semantic_search` 每次都带大段文本导致 tokens 暴涨
|
|
52
52
|
|
|
53
|
+
### `upsert_convention`
|
|
54
|
+
- 入参:`{ key: string, content: string, tags?: string[] }`
|
|
55
|
+
- 用途:保存/更新“项目约定/规范”(框架选型、build 命令、产物路径、命名规则等),并在新会话通过 `bootstrap_context/get_brain_dump` 自动带出(仅 preview)
|
|
56
|
+
|
|
53
57
|
### `sync_change_intent`
|
|
54
58
|
- 入参:`{ intent: string, files?: string[], affected_files?: string[] }`
|
|
55
59
|
- 用途:把“这次改动的意图摘要”写入 `change_logs`,并与当前激活需求关联
|
|
@@ -88,10 +92,15 @@ VectorMind 通过本地文件监听 + SQLite 关系记忆,把“需求 → 改
|
|
|
88
92
|
- 入参:`{ query: string, top_k?: number, kinds?: string[], include_content?: boolean, preview_chars?: number, content_max_chars?: number }`
|
|
89
93
|
- 用途:对本地记忆库进行检索(覆盖需求/意图/笔记/项目总结/代码 chunk/文档 chunk)。如启用 embeddings,会优先走向量相似度;否则使用本地 FTS/LIKE。
|
|
90
94
|
|
|
95
|
+
### `prune_index`
|
|
96
|
+
- 入参:`{ dry_run?: boolean, prune_ignored_paths?: boolean, prune_minified_bundles?: boolean, max_files?: number, vacuum?: boolean }`
|
|
97
|
+
- 用途:清理历史上误索引/噪音的 `code_chunk/doc_chunk` 与 `symbols`(例如构建产物目录、新增忽略规则后遗留内容)。默认 `dry_run=true` 只统计,不实际删除。
|
|
98
|
+
|
|
91
99
|
## 本地数据与监听
|
|
92
100
|
|
|
93
101
|
- 数据库:默认使用 MCP `roots/list` 提供的 workspace root(否则回退到 `process.cwd()`,也可用 `VECTORMIND_ROOT` 强制指定)创建 `.vectormind/vectormind.db`(默认已在 `.gitignore` 中忽略整个 `.vectormind/` 目录)
|
|
94
|
-
- 监听范围:默认监听 workspace root(同上)下文件变动(默认忽略 `.git/`、`node_modules/`(含子目录)、`.vs/`、`bin/`、`obj/`、`dist/`、`build/`、`out
|
|
102
|
+
- 监听范围:默认监听 workspace root(同上)下文件变动(默认忽略 `.git/`、`node_modules/`(含子目录)、`.vs/`、`bin/`、`obj/`、`dist/`、`build/`、`out/`、`artifacts/`、`buildFiles/`、以及 `.turbo/`、`.nx/`、`.cache/`、`.parcel-cache/` 等常见噪音目录/产物)
|
|
103
|
+
- 自动清理:启动时会自动删除“已忽略目录”与常见噪音文件名(如 lockfile、`.min.js/.bundle.js/.chunk.js`)下历史遗留的 `code_chunk/doc_chunk` 与 `symbols`,避免数据库持续膨胀影响召回效果。
|
|
95
104
|
- 符号抽取:目前为轻量正则抽取(非 AST 解析),支持常见语言如 TS/JS、Python、Go、Rust、C/C++
|
|
96
105
|
- 检索:默认使用本地 SQLite FTS(无需模型);当你设置 `VECTORMIND_EMBEDDINGS=on` 才会启用向量化(`@xenova/transformers`),并优先用向量相似度做语义召回(首次启用可能下载模型权重,向量与数据都在本地)
|
|
97
106
|
|
|
@@ -101,12 +110,16 @@ VectorMind 通过本地文件监听 + SQLite 关系记忆,把“需求 → 改
|
|
|
101
110
|
|
|
102
111
|
- `VECTORMIND_ROOT=...`:强制指定“项目根目录”(当你的 MCP Client 无法提供 workspace roots 或启动目录不对时使用)
|
|
103
112
|
- `VECTORMIND_PRETTY_JSON=1`:让 tool 输出使用缩进 JSON(仅用于调试;会增加 tokens,默认不建议开启)
|
|
104
|
-
- `VECTORMIND_DEBUG_LOG=1`:开启 MCP 调试活动日志(索引了什么/检索了什么/同步了什么),并提供 `get_activity_log/clear_activity_log` 工具拉取/清空日志(默认关闭)
|
|
113
|
+
- `VECTORMIND_DEBUG_LOG=1`:开启 MCP 调试活动日志(索引了什么/检索了什么/同步了什么),并提供 `get_activity_summary/get_activity_log/clear_activity_log` 工具拉取/清空日志(默认关闭)
|
|
105
114
|
- `VECTORMIND_DEBUG_LOG_MAX=200`:调试日志最大保留条数(默认 200)
|
|
106
115
|
- `VECTORMIND_PENDING_FLUSH_MS=200`:pending 变更写入 SQLite 的缓冲/合并间隔(单位 ms;默认 200;设为 0 表示每次事件都立刻写入)
|
|
107
116
|
- `VECTORMIND_PENDING_TTL_DAYS=30`:pending 记录的自动过期天数(默认 30;设为 0 表示不过期)
|
|
108
117
|
- `VECTORMIND_PENDING_MAX=5000`:pending 表最大条目数(默认 5000;超过后会删除最旧记录以避免无限膨胀)
|
|
109
118
|
- `VECTORMIND_PENDING_PRUNE_EVERY=500`:每累计多少条 pending 事件触发一次 prune(默认 500;越小越及时但更频繁做清理)
|
|
119
|
+
- `VECTORMIND_INDEX_MAX_CODE_BYTES=400000`:单文件最大索引字节数(代码类,默认 400KB;超过会跳过索引,避免 bundle/产物膨胀)
|
|
120
|
+
- `VECTORMIND_INDEX_MAX_DOC_BYTES=600000`:单文件最大索引字节数(文档/配置类,默认 600KB;超过会跳过索引)
|
|
121
|
+
- `VECTORMIND_INDEX_SKIP_MINIFIED=1`:跳过疑似 minified/bundle 的 JS/CSS(默认开启;能显著减少构建产物噪音)
|
|
122
|
+
- `VECTORMIND_INDEX_AUTO_PRUNE_IGNORED=1`:启动时自动清理“已被忽略目录”下历史遗留的 chunk/symbol 索引(默认开启)
|
|
110
123
|
- `VECTORMIND_EMBEDDINGS=on|off`:是否启用向量化(默认 `off`;开启后会启动本地 embedding 模型,`semantic_search` 优先走向量相似度;关闭则走本地 FTS/LIKE,不会生成向量/启动模型)
|
|
111
124
|
- `VECTORMIND_EMBED_FILES=all|changed|none`:控制是否向量化“代码/文档 chunk”(默认 `all`;`none` 只影响 chunk,仍会向量化需求/意图/笔记/总结;`changed` 仅在 change/manual 时向量化 chunk)
|
|
112
125
|
- `VECTORMIND_EMBED_MODEL=...`:指定 embedding 模型(默认 `Xenova/all-MiniLM-L6-v2`)
|