@ast-bro/cli

中文文档
4.2.0发布于 2026/08/08MIT零依赖近 30 天下载 2866

快速, 基于 AST 的代码导航和日志压缩工具包 — 安装时下载二进制

中文使用文档
文档目录6 节
  1. 安装
  2. 使用量
  3. 支持的平台
  4. 什么是灰哥吗?
  5. 链接
  6. 许可证

@ast-bro/cli (英语)

npm License: MIT

npm 安装器 驴哥 ——一个快速,基于AST的代码导航工具包,用于源文件(形状,公共API,dep & call graphs,混合语义搜索,结构重写,MCP服务器). 安装时下载预建的 Rust 二进制 .

原为 @ast-outline/cli。 。 。 . 新范围下的相同项目 ast-outline 名称在工具超出概述范围后变得超载)。 这个 ast-outline 命令仍然被安装为转发到 ast-bro,因此现有的脚本继续工作.

安装

npm install -g @ast-bro/cli

此安装三个命令, 全部转发到相同的二进制 :

  • ast-bro - 犬类名称
  • sb ——简称别名(同一种工具,键打较少)
  • ast-outline ——后相相接闪电

使用量

# Map the structure of a file (signatures + line ranges, no bodies)
ast-bro map src/player.rs

# Show the exact source of a specific method
ast-bro show Player.cs TakeDamage

# Compact digest of a whole module
ast-bro digest src/services/

# True public API (resolves pub use / __all__ re-exports)
ast-bro surface .

# Find all implementations of a type
ast-bro implements IDamageable src/

# Dependency graph
ast-bro deps src/auth.rs --depth 2
ast-bro reverse-deps src/auth.rs
ast-bro cycles

# Call graph (AST-accurate)
ast-bro callers TakeDamage
ast-bro callees Player.TakeDamage

# Hybrid BM25 + dense semantic search
ast-bro search "how does login work"

# Find semantically similar code
ast-bro find-related src/auth/login.rs:42

# AST-aware structural search and rewrite (with metavariables)
ast-bro run -p '$FUNC($$$)' -l rust
ast-bro run -p 'foo($A)' -r 'bar($A)' --write    # apply to disk

在第一次运行时, CLI 从您平台下载预建的二进制 GitHub 发布 并在当地缓存它.

平台缓存目录
马科斯~/Library/Caches/ast-bro-<version>/
链接~/.cache/ast-bro-<version>/

支持的平台

平台状态
马科斯ARM64预建二进制可用
其他平台从源建(见下文)

对于不支持的平台,从源创建:

cargo install ast-bro

什么是灰哥吗?

驴哥 是一个快速的,基于AST的编码导航工具包,为LLM编码代理和人类所建. 用这个 植树人 通过 ast- grep 图像 以解析源文件并提供:

  • 文件形状 —— 说 map 编号 : digest 编号 : show 对有行区域的签名(95%的令牌储蓄对读完整文件)
  • 真公众 API —— 说 surface 解决 Rust、 Python、 TypeScript 和更多
  • 依赖图 —— 说 deps 编号 : reverse-deps 编号 : cycles 编号 : graph 用于进口分析
  • 调用图表 —— 说 callers 编号 : callees 14种语言的AST精度
  • 语义搜索 ——混合 BM25 + 密集嵌入 search 财务报告和审定财务报表 find-related
  • 结构重写 —— 说 run 用于AST-意识模式与可变态相匹配(查找+替换)
  • MCP 服务器 ——每个命令作为LLM代理的MCP工具被曝光

支持Rust,Python,TypeScript,JavaScript,Java,C#,C++,克特林,斯卡拉,去,PHP,Ruby,SQL和Markdown.

许可证

麻省理工学院

版本与发布记录

@ast-bro/cli 共发布 10 个版本,首次发布于 2026/05/23;过去 12 个月发布了 10 个版本。

版本发布日期距今
4.2.0latest2026/08/082 个月前
4.1.02026/08/063 个月前
4.0.02026/08/013 个月前
3.0.02026/06/134 个月前
2.4.32026/06/065 个月前
2.4.22026/06/055 个月前

关于 @ast-bro/cli 的常见问题

@ast-bro/cli 是什么?

快速, 基于 AST 的代码导航和日志压缩工具包 — 安装时下载二进制

如何安装 @ast-bro/cli?

在项目目录运行 npm install @ast-bro/cli,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 ast-bro、ast-outline、sb,可以用 npx ast-bro 直接运行。

@ast-bro/cli 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/ast-bro__cli 是否存在。

@ast-bro/cli 可以商用吗?

@ast-bro/cli 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@ast-bro/cli 的下载量有多少?

根据 npm 官方下载统计,@ast-bro/cli 在 2026/10/07 – 2026/11/05 这 30 天内被下载 2,866 次,日均约 96 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@ast-bro/cli 还在维护吗?

最新版本 4.2.0 发布于 2026/08/08(2 个月前);至今共发布 10 个版本,其中过去 12 个月发布了 10 个;首次发布于 2026/05/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。