Skip to content

sts-x 3.3.3 — AI 原生重设计 (Mac/Win/Linux)

Latest

Choose a tag to compare

@cscb603 cscb603 released this 08 Sep 13:28
· 2 commits to main since this release

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 子命令 / MCP projects 工具:列出目录下所有可索引项目(根路径 + 标记类型 + 文件数),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 全流程冒烟通过。