Skip to content

Releases: cscb603/sts-x

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

Choose a tag to compare

@cscb603 cscb603 released this 08 Sep 13:28

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 全流程冒烟通过。

v3.3.2 - native glob subcommand + MCP glob tool

Choose a tag to compare

@cscb603 cscb603 released this 27 Aug 12:21

STS-X v3.3.2 发布说明

发布日期:2026-08-27 | 在 v3.3.1(语义检索零配置)基础上的文件发现增强
目标:让 Agent 用原生的 glob 命令 / MCP 工具替代系统 Glob,把"文件列举"也纳入
同一套排序 / 截断 / 诊断体系(与 search / file 一致)。

新增能力

  • sts-x glob "<pattern>" -p <dir> 子命令:多模式 glob(**/*.rs、*.toml,*.lock、支持 ! 否定)。
  • MCP glob 工具(与 search / file 同契约):tools_list() 现暴露 search / file / glob 三个工具。
  • AI 友好排序:浅层源码 > 深层;test/vendor/target/node_modules/dist/build 降权;
    --sort-recent 按修改时间升权;--git-aware 把 git 修改/未跟踪文件排前;隐藏文件降权。
  • 截断不静默:返回 total_hits + returned + omitted,让 Agent 知道是否漏看。
  • 0 命中诊断:扫描项目实际扩展名,给出"项目有 .rs(18)…"式的建议(中/英按查询自动切换)。
  • --top-k / --max-tokens 双预算控制,默认 20 / 500;默认尊重 .gitignore。

底层改动

  • Cargo.toml 显式补 globset = "0.4"(此前仅作为 ignore 的传递依赖藏在 lock 里);
    未引入任何新真实依赖,编译体积几乎不变。
  • 新增 src/globsearch/mod.rs(glob 匹配 + 排序 + 截断 + 诊断 + 单测)、
    types/format.rs 新增 AiGlobOutput / AiGlobItem / format_glob_human()。
  • cli/mod.rs 新增 Commands::Glob + cmd_glob();mcp.rs 新增 McpEngine::glob() 与 tools/call 分支。

质量门禁

  • cargo fmt --check / cargo check --all-targets / cargo clippy --all-targets -D warnings 全绿。
  • cargo test:48 passed(含 6 个 globsearch 单测 + 2 个 MCP glob 工具 schema 单测)。
  • Mac 原生 cargo build --release 通过;Windows 交叉编译(cargo xwin +crt-static 单文件 exe)按 Phase 4 验证。

下一步(未在本期实现,留作迭代)

  • Phase 3 可选增强:frecency 缓存(长期项目文件优先级)、与现有 AST 索引联动(含定义文件优先)。
  • 如需让 WorkBuddy 默认调用 glob:把 ~/.workbuddy/mcp.json 里 sts-x 的二进制指向本版,
    Agent 检索代码时会优先用 glob 而非系统 Glob。

本次发布包(dist/)

包 说明
STS-X-3.3.2-Mac版(给AI搜代码).zip 默认版(零依赖单文件,含 glob + BM25)。放到 /usr/local/bin/ 或 ~/.local/bin/ 即可。
STS-X-3.3.2-Win版(给AI搜代码).zip 默认版(crt-static 单文件 exe,Win10/11 双击即跑,无需 VC++ 运行库)。
STS-X-3.3.2-源码.zip 完整源码(含 globsearch 模块)。
STS-X-3.3.2-Mac版-语义检索.zip 全功能语义版:额外带中文语义检索,需本机 onnxruntime 动态库(启动自动探测 /usr/local/lib)。

接入 WorkBuddy / AI 客户端(原生 MCP stdio)

无需端口、无需 Python,AI 客户端配置:

{
  "mcpServers": {
    "sts-x": {
      "command": "/usr/local/bin/sts-x",
      "args": ["mcp", "-p", "/你的项目根"],
      "env": {
        "STX_SEMANTIC": "1",
        "ORT_DYLIB_PATH": "/usr/local/lib/libonnxruntime.1.28.0.dylib"
      }
    }
  }
}

暴露工具:search(代码搜索)/ file(任意目录零索引文件搜索)/ glob(按模式列文件,AI 友好排序+截断+诊断)。
带 STX_SEMANTIC=1 即开启中文语义检索(依赖 onnxruntime 动态库;默认版不依赖,纯 BM25)。

STS-X v3.3.1 — 0命中自动重试链 + 中文语义检索

Choose a tag to compare

@cscb603 cscb603 released this 24 Aug 11:13

STS-X v3.3.1 — 中文搜索「抽风」根治版

🎯 P0-1:0 命中自动重试链(纯本地,零依赖)

中文查询 0 命中时自动按固定顺序重试,单次调用即出最佳结果,AI 无需手动换词:

  1. 英文同义词展开(本地中英代码词典 ~200 条:缓存→cache、索引→index、提示→hint…)
  2. 符号猜测(去停用词后抽 ASCII 标识符)
  3. file 内容兜底(文件名/内容子串,rg 后端)

🧠 P0-2:中文语义检索(可选,治本跨语言)

  • 内置 bge-small-zh-v1.5 中文 embedding(512 维):「缓存目录在哪里」→ cache.rs 语义直达
  • embedding 持久化进索引;维度自适应(en=384 / zh=512);STX_SEMANTIC=1 或 --semantic 开启
  • 模型/dylib 缺失 → 优雅降级 BM25 + 重试链,不崩溃

⚡ v3.3.1:onnxruntime 自动探测

Mac/Win 语义版零配置:自动探测 exe 同目录 lib/、/usr/local/lib、/opt/homebrew/lib 等,解压即用。

下载

资产 说明
sts-x-3.3.1-macos.zip macOS 默认版(单文件零依赖,6MB)
sts-x-3.3.1-macos-semantic.zip macOS 语义版(+ dylib + 中文模型 + 启动器,30MB)
sts-x-3.3.1-win64.zip Windows 默认版(单 exe,crt-static,Win10/11 直接跑,6MB)
sts-x-3.3.1-win64-semantic.zip Windows 语义版(+ dll + 中文模型 + bat,28MB)
sts-x-3.3.1-src.zip 完整源码 + 编译指引(8MB)

每个包内含 首次打开必看-sts-x.txt(标准安装 / MCP 接入 / 被拦解决 / 语义开关)。

快速开始

sts-x ai "缓存" -p <项目>          # 中文查询(0 命中自动重试)
STX_SEMANTIC=1 sts-x ai "缓存目录在哪里" -p <项目>   # 中文 NL → 英文代码语义直达
sts-x mcp -p <项目根>              # MCP stdio(配 WorkBuddy/Claude Desktop)

系统要求

macOS 12+ / Windows 10/11 64 位。默认版单文件;语义版需随包 lib/ + models/(已内置)。

v3.2.0 · 智能路由 + 聚合去重

Choose a tag to compare

@cscb603 cscb603 released this 27 Jul 13:24

STS-X v3.2.0(v5.1-3 毕业版)

AST 感知切块 · BM25 极速全文搜索 · 零依赖单二进制 · Mac / Windows 双平台通用
当前形态:行业标杆毕业版 —— 27MB、0.5s 索引、30ms 搜索、中文可用、AI 零摩擦、0 命中能自救

给 AI 用的搜索工具,先解决「搜不到」的绝望

用 AI 写代码时最烦的不是 AI 笨,是搜不到东西时 AI 原地打转——同一个词反复查,越查越空。STS-X 用一句话解决:搜不到时,它告诉你该怎么救。

v5.1 / v5.1-3 新特性

  • 0 命中自救引导(核心):搜不到时自动返回自救攻略——「换英文关键词(如 缓存→cache)/ 换符号名 / 换文件名 / 加 --path-filter」。中文查询给中文攻略,英文给英文,AI 照着做就能找到,不再死循环。CLI 和 MCP 全路径生效。
  • 有结果更省 token:命中时有结果就直接给结果,不再附带 741 字使用说明(实测 expand 省 38%、file 省 27% 流量)。
  • LLM 缓存友好:输出字段顺序稳定、波动字段置尾——重复查询命中模型前缀缓存(如 DeepSeek 缓存命中价比未命中便宜 50 倍)。
  • 中文可用:中文按 bigram 索引,搜「缓存」能找到 cache.rs;token 估算 CJK 按 1.5 加权,中文项目预算不超量。
  • 过滤全路径生效:--path-filter 在 locate 兜底和 --all 全文件搜索里同样生效。
  • 项目根识别更稳:孤立 package.json 不再误判为项目根(防多项目目录索引整个聚合根),带爬升上限 8。
  • 单测 20 → 28,双平台一致。

v3.2.0 既有能力

  • R1 智能路由:自动判断「符号」走 locate(行级超省 token)、「自然语言」走 expand(整块 AST)。
  • R2 符号快路径:符号查询精确匹配,绕过 BM25,更快更准。
  • R3 聚合去重:同名多命中自动聚合成组,响应体积实测降约 62%。
  • R4 workspace 根探测:多 crate workspace 自动爬真实根,带护栏不退化全局搜索。
  • R5 MCP 支持:stdio MCP 直连(无 Python 桥、无端口),WorkBuddy / Claude Desktop 即插即用。

下载

平台 资产 大小
macOS(arm64) sts-x ~27 MB
Windows(x64) sts-x.exe ~28 MB
Win 发布包(exe+说明书+AGENTS) STS-X-3.2.0-v5.1-3-Win.zip ~6 MB
源码包(双平台同源,解压即编) STS-X-3.2.0-source.zip ~11 MB

解压后放入 PATH:

  • macOS:sudo cp sts-x /usr/local/bin/,终端跑 sts-x --version 应显示 3.2.0
  • Windows:sts-x.exe 直接双击或命令行运行,无需安装、无运行时依赖

用法速览

# 日常首选(AI 智能路由:符号→locate,自然语言→expand)
sts-x ai "查询" -p <项目>

# 行级定位(省 token) / 整块展开(要完整代码)
sts-x search "词" -p <项目> --locate
sts-x search "词" -p <项目> --expand

# 文件名搜索(零索引,rg 后端)
sts-x file "词" -p <目录>

# 精确圈定 / 最近修改 / 省 token
sts-x search "词" -p <项目> --path-filter cache.rs
sts-x search "词" -p <项目> --sort-recent
sts-x search "词" -p <项目> --no-hint

MCP(AI 客户端接入)

sts-x mcp -p <默认项目目录>

WorkBuddy / Claude Desktop 在 MCP 配置里加一行即可,工具自动出现 search 和 file。

STS-X v3.1.2 — 自述版本号动态化

Choose a tag to compare

@cscb603 cscb603 released this 23 Jul 03:26

STS-X v3.1.2 — 自述版本号动态化

改动

  • _ai_instructions 自述版本号改为动态读取:src/types/format.rs 的 AI_HINT 原来写死 "I am STS-X 3.0",会误导消费该 JSON 的 AI Agent。现改用 concat!(..., env!("CARGO_PKG_VERSION"), ...) 在编译期拼入真实版本号,以后发版只需 bump Cargo.toml,无需再改这里。
  • 缓存目录继续走星TAP基座库 core_lib::path::cache_dir(Mac ~/Library/Caches/sts-x / Win %LOCALAPPDATA%\sts-x\cache\ / Linux ~/.cache/sts-x,编译期 cfg! 自适应)。
  • 内含 v3.1.1 全部修复:--all --locate 中文全文搜索修复、Windows GBK/GB18030/Big5 编码回退、file 模式 --max-tokens 限额。

下载

  • Mac:STS-X-3.1.2-Mac版(给AI搜代码).zip
  • Windows:STS-X-3.1.2-Win版(给AI搜代码).zip(静态 CRT,免装 VC++ 运行库)
  • 源码:STS-X-3.1.2-源码.zip

用法速览

# 代码搜索(默认,AST 切块)
sts-x search "查询" -p <项目> --locate --max-tokens 2000
# 文件名搜索
sts-x search "查询" -p <项目> -f
# 全文搜索(含中文)
sts-x search "中文词" -p <项目> --all --locate
# 文件内容搜索(零索引)
sts-x file "关键词" -p <项目>

STS-X v3.1.1 — 中文全文搜索修复 + 基座接入

Choose a tag to compare

@cscb603 cscb603 released this 23 Jul 03:06

STS-X v3.1.1 — 中文全文搜索修复 + 基座接入

修复(Bug Fixes)

  • [P0] --all --locate 中文全文搜索修复:此前 --all 模式配合 --locate 输出中文查询时返回空(根因是 locate_matches 未被填充)。现已正确填充,中文全文检索正常工作。
  • [P1] Windows 非 UTF-8 编码回退:--all 全文索引时,GBK / GB18030 / Big5 文件自动回退解码,Windows 用户的中文源码也能被检索。
  • [P2] file 模式新增 --max-tokens 限额:与 search 模式对齐,AI 调用方可限制返回 token 量,避免超长输出。

改进(Improvements)

  • 缓存目录接入星TAP基座库 core_lib:cache_root() 现优先调用 core_lib::path::cache_dir("sts-x"),与全家桶缓存策略统一;基座不可用时降级到本地 dirs 实现,保证单二进制健壮性。
  • ⚠️ Windows 缓存路径调整:%LOCALAPPDATA%\sts-x\ → %LOCALAPPDATA%\sts-x\cache\。首次使用会自动重建索引(一次性,无数据丢失)。macOS / Linux 路径不变。

下载

  • Mac:STS-X-3.1.1-Mac版(给AI搜代码).zip
  • Windows:STS-X-3.1.1-Win版(给AI搜代码).zip(静态链接 CRT,无需安装 VC++ 运行库)
  • 源码:STS-X-3.1.1-源码.zip

STS-X 3.1.0

Choose a tag to compare

@cscb603 cscb603 released this 22 Jul 08:03

STS-X v3.1.0 更新:

  • 噪声文件过滤(_backup/_original/_copy/复制/副本/.bak/.swp/.tmp)
  • 定义优先排序(函数/类/结构体等定义名匹配 +0.3 分)
  • 多词查询最小匹配优化(3+词 Must N-1)
  • 查询侧 RemoveLongFilter 对齐
  • 4 新语言支持:PHP/Ruby/Swift/Scala
  • --max-tokens 配额控制((char_count+1)/2 估算)
  • Windows 静态 CRT 零依赖

STS-X v3.0.0 — 给 AI Agent 的代码+文件统一搜索引擎(实测省 80–92% token)

Choose a tag to compare

@cscb603 cscb603 released this 18 Jul 15:48

STS-X v3.0.0 — 给 AI Agent 用的「代码 + 文件」统一搜索引擎

一个二进制,同时干两件事:代码搜索(AST 整块 / 行级定位)+ 任意目录文件搜索(零索引)。
它是为 AI 设计的,不是给人手敲命令用的——所以输出是结构化 JSON、自带 MCP 服务、还会主动告诉你"怎么用我"。


为什么做这个?

现在的 AI 编程助手搜代码,基本还是 grep 找文件 → Read 整个文件 → 可能再搜一次。这套流程对 AI 特别费 token:一个大文件动辄上万字符,光读进去就烧掉一堆 API 输入费,还经常读错文件、来回好几句。

STS-X 的出发点很直接:让 AI 一次就拿对代码,少读废文件,少绕弯子。 实测下来,深层代码任务 token 能砍掉 80–92%,还少 2–3 轮对话。


真金白银:省多少 token(实测,非估算)

在 retouch_app 项目上,对 3 个真实查询用 tiktoken(cl100k_base,和 GPT 同款分词) 计量:

对比 grep + Read 流程 sts-x(expand 整块) 结果
三查询总 token 22,961 1,796 ↓ 92.2%
对话轮次 2–3 轮 1 轮 少 2 轮

行级定位档(locate)更狠:单次只回命中行 + 短上下文,平均 ~126 token(严格 ≤200),比 grep+整读省 98%+。AI 想先确认"符号在哪"时用它,几乎零开销。

这不是 PPT 数字。同样的查询、同样的文件、同一套分词器,可复现。


核心能力(人话版)

  1. 二合一:代码搜索 + 文件搜索一个工具搞定。不用在 grep / fd / rg / Everything 之间切来切去。
  2. AST 感知切块:返回的是完整函数 / 类,不是散落的行。AI 拿到就能懂、就能改。
  3. 双档输出,渐进披露:
    • --locate:先看"在哪"(行级,百来 token,极便宜);
    • --expand:确认要看全块时,一次给齐完整代码(省掉再 Read 整文件)。
  4. 零索引文件搜索:file 子命令对任意目录(包括 ~/Downloads 这种没建索引的地方)即时搜文件名 + 内容,rg 优先,零配置。
  5. 自带 MCP 服务:sts-x serve 起一个 HTTP 服务,AI Agent 通过 GET /tools 自动发现能力,POST /search、POST /file 直接调。Cursor / CodeBuddy / Claude Code / Aider 这类工具接进去很容易。
  6. 自说明响应:每次搜索结果里带 _ai_instructions 字段,AI 一次调用就学会怎么用 STS-X,不用查文档。
  7. 零依赖单二进制:macOS 18MB / Windows 20MB,下载即用;Windows 版静态链接 CRT,用户机不用装 VC++ 运行库。

三平台支持

平台 状态 说明
macOS (Apple Silicon) ✅ 已发布二进制 arm64,下载即用
Windows (x86_64) ✅ 已发布二进制 静态 CRT,双击即跑,免装 VC++ 运行库
Linux (x86_64) 🔧 本机构建(一行命令) 纯 Rust + rg 兜底,cargo build --release 即可,无任何特殊依赖;交叉编译 musl 静态二进制的工具链在本机环境受限,故不提供预编译包

30 秒上手

# 进任意项目,直接搜(自动建索引)
cd your-project
sts-x search "token verification"

# 先定位(便宜)
sts-x search "select_best_cfg" --locate

# 再读全块(完整函数)
sts-x search "select_best_cfg" --expand

# 任意目录零索引找文件
sts-x file "invoice" --path ~/Downloads

# 给 AI 用:起 MCP 服务
sts-x serve

这些场景尤其值

  • AI 编程助手(Cursor / CodeBuddy / Claude Code / Aider / Windsurf / VS Code Copilot)的代码搜索后端
  • 大型代码库理解、重构、迁移前的"先摸清结构"
  • CI/CD 里做敏感信息 / TODO / 死代码扫描
  • 任何"让 AI 看懂你的仓库但别烧光 token"的需求

关于作者 & 许可

  • 作者:星TAP实验室软件
  • 邮箱:cscb603@qq.com
  • 协议:MIT(免费、开源、可商用、可集成)
  • 不靠这个赚钱,图的是"对 AI 真的有用,大家用着不觉得菜"。欢迎集成、反馈、提建议。

从 0.2.x 到 3.0 有什么不一样

  • 二合一:原来 sts(文件) 和 sts-x(代码) 是两个工具,现在合并进一个二进制
  • 双档输出:新增 locate / expand 渐进披露,比旧版"一股脑给整块"更省
  • 零索引 file 模式:任意目录即时搜,不用进项目、不用建索引
  • MCP 原生:自带 HTTP 服务,/search + /file 双工具,AI 即插即用
  • 跨平台零依赖:macOS / Windows 提供预编译二进制(Windows 静态 CRT,免装运行库);Linux 纯 Rust 一行 cargo build --release 即出静态可用二进制

STS-X v0.2.1 — Windows 分发质量升级(MSVC 静态 CRT)

Choose a tag to compare

@cscb603 cscb603 released this 18 Jul 12:49

STS-X v0.2.1 — Windows 分发质量升级

核心变更

  • Windows 构建从 MinGW 切换到 MSVC(cargo-xwin 交叉编译),并在 .cargo/config.toml 启用 +crt-static 静态链接 CRT。
  • 效果:生成的 sts-x.exe 是真正的单文件零依赖——不再要求用户机器安装 VCRUNTIME140.dll(Visual C++ 运行库),双击即跑,兼容所有 Windows 10/11 x86_64。
  • macOS 二进制(sts-x)同步用当前 v0.2.1 源码重新构建(release + LTO + strip)。
  • 修复交叉编译图标嵌入:build.rs 在 macOS 主机用 cargo-xwin 编译 Windows 时,embed-resource 经 llvm-rc 处理 .rc 导致相对图标路径失效;改为基于 CARGO_MANIFEST_DIR 的绝对路径后,Windows exe 正常嵌入图标。

平台支持

平台 资产 架构 依赖
macOS sts-x aarch64 (Apple Silicon) 零(系统 libSystem)
Windows sts-x.exe x86_64 零(静态 CRT,无需 VC++ 运行库)

注:Windows 为 x86_64 构建,可在所有 64 位 Windows 运行;Intel Mac 与 Linux 版本计划中。

下载与安装

# macOS (Apple Silicon)
curl -L https://github.com/cscb603/sts-x/releases/latest/download/sts-x -o sts-x
chmod +x sts-x && sudo mv sts-x /usr/local/bin/

# Windows (PowerShell, 管理员可选)
curl -L https://github.com/cscb603/sts-x/releases/latest/download/sts-x.exe -o sts-x.exe
.\sts-x.exe search "your query"

若 macOS 首次运行被拦截(未公证):

xattr -dr com.apple.quarantine /usr/local/bin/sts-x

用法速览

sts-x index ~/your-project     # 建索引(一次性,自动缓存)
sts-x search "select_best_cfg" # AST 切块 + BM25,返回结构化 JSON
sts-x search "config" -f       # 仅搜文件名
sts-x search "auth" -H         # 人类友好模式
sts-x serve                    # 启动 MCP HTTP 服务(127.0.0.1:9876)

技术规格

  • 二进制大小:~17MB(strip 后)
  • 搜索延迟:0–2ms(千级文件)
  • 索引:Tantivy BM25 + tree-sitter AST 切块(9 语言)
  • 默认输出:AI 原生结构化 JSON,内置 MCP 服务
  • 许可证:MIT

校验

  • macOS:file sts-x → Mach-O 64-bit executable arm64
  • Windows:file sts-x.exe → PE32+ executable (GUI) Intel 80386(实际 x86_64),静态链接

STS-X v0.2.0 — AI 原生增强 + Windows 兼容

Choose a tag to compare

@cscb603 cscb603 released this 18 Jul 05:06

STS-X v0.2.0

面向 AI Agent 的下一代代码搜索引擎 — AST 感知切块 + BM25 全文搜索 + MCP 原生协议,17MB 单二进制零依赖,开箱即用。


v0.1.0 → v0.2.0 更新内容

🧠 AI 原生设计

改进 说明 v0.1.0 v0.2.0
自说明响应 每个 JSON 响应自带 _ai_instructions ❌ ✅
工具发现 MCP GET /tools 端点 ❌ ✅
服务自文档 MCP GET / 端点 ❌ ✅
默认 top_k AI 场景优化 5 3
默认 context_lines 上下文行数 8 5
/health 方法 规范 RESTful POST GET

🔧 索引自动化

  • 索引自动存入系统缓存目录(macOS: ~/Library/Caches/sts-x/,Windows: %LOCALAPPDATA%/sts-x/cache/)— 不再污染项目目录
  • 项目根自动探测(13 种标记文件:.git / Cargo.toml / package.json / go.mod / pom.xml 等)
  • 文件变更自动检测 + 索引过期重建

🎯 代码后处理

  • highlight_lines 字段:精确标注查询词在代码块中的行号
  • --context N 参数:控制匹配行上下文的行数
  • 搜索结果经 postprocess 计算后返回高质量上下文

🌐 跨平台兼容

  • Windows POSIX 路径归一化:git bash 传入的 /d/项目 自动转为 D:\\项目
  • 新增 Go 语言 AST 支持(tree-sitter-go)
  • 自定义 code 分词器,无停用词过滤
  • 修复所有 clippy 警告(10 个 lint)

快速上手

# macOS 安装
curl -L https://github.com/cscb603/sts-x/releases/latest/download/sts-x-aarch64-apple-darwin -o sts-x && chmod +x sts-x
sudo mv sts-x /usr/local/bin/

# 直接搜索(自动索引项目)
cd /your-project
sts-x search "token verification"

# MCP 服务模式
sts-x serve
curl -X POST http://127.0.0.1:9876/search -H "Content-Type: application/json" -d '{"query":"search"}'

下载

文件 平台 大小
sts-x-aarch64-apple-darwin macOS ARM64 17MB
sts-x-x86_64-pc-windows-gnu.exe Windows x86_64 18MB
sts-x-v0.2.0-source.tar.gz 源码包 14MB