Repository navigation
STS-X 3.3.3
AI 原生代码搜索引擎。本次为 Mac 端构建 + 跨平台三端成品 + AI 原生重设计。
核心更新
1. 内建空闲 GC + 索引损坏自愈(来自用户反馈)
- 工具用久了会积累历史垃圾 → 新增空闲 GC:后台线程空闲 60s 回收过期索引版本目录(实测本机 180MB → 143MB,自动清掉 v2+v3 旧索引)。
- 索引损坏自愈:
open_index_selfheal()打开失败自动重建一次,不再崩溃。
2. AI 原生重设计 — 多项目容器智能降级 + 项目地图(本次重点)
索引单元应当是「仓库/项目」,而不是「你传给它的任意目录」。
- 容器目录自动降级:传入
~/Documents/AI这类含几十个独立项目的父目录时,不再建上百 MB 巨型索引,自动改用 file 模式(rg 后端、秒出、零索引),并在返回里附degraded: "container"+matched_projects(命中落在哪些子项目),AI 据此改传具体-p即获语义检索。实测:容器搜索 48s → 0.47s。 - 不误伤真仓库:判定依据是嵌套项目数量而非简单的「有没有 .git」(容器目录自身也有 .git,但内部有数十项目)。
- 新增
projects子命令 / MCPprojects工具:列出目录下所有可索引项目(根路径 + 标记类型 + 文件数),AI 调用前先看地图。
3. 修复
- P0 MCP 跨项目静默错误:原 engine 只建一次并复用,而
SearchEngine::search不读SearchQuery::path→ 同一会话传不同 path 静默返回首个项目结果。改为按 canonical root 缓存 engine(上限 8)。 - P1 GC 越界删除:原实现会扫
cache_root()父目录(macOS 上是~/Library/Caches),误删别家vN缓存。改为仅当父目录名为sts-x才上溯。
下载
| 包 | 平台 | 说明 |
|---|---|---|
sts-x-3.3.3-macos-arm64.zip |
macOS Apple Silicon | sts-x(零依赖)+ sts-x-semantic(语义版,需本机 onnxruntime) |
sts-x-3.3.3-win-x64.zip |
Windows x64 | sts-x.exe(零依赖)+ sts-x-semantic.exe + lib/onnxruntime.dll + models/ |
sts-x-3.3.3-linux-x86_64.zip |
Linux x86_64 | musl 静态二进制,零依赖 |
sts-x-3.3.3-src.zip |
源码 | 含 sts-x + core_lib(依赖) |
部署
详见各包内 AR-部署使用说明.md / 首次打开必看.txt。
MCP 接入(WorkBuddy / Claude 等):
{
"mcpServers": {
"sts-x": {
"command": "/path/to/sts-x",
"args": ["mcp", "-p", "/your/project"],
"env": { "STX_SEMANTIC": "1" }
}
}
}校验
52 单测通过 / clippy 0 warning / fmt clean / CLI search+ai+glob+projects 正常 / MCP stdio 全流程冒烟通过。