Agent Skills
返回列表
💻

Rust Crate 文档索引器

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/rust-crate-documentation-indexer-2。

技能介绍

解决的问题

Rust 生态的 API 文档分散在 docs.rs 页面、rustdoc 生成结果和 crate 源码注释里。人读网页没问题,但脚本、IDE 索引、依赖审计或代码评审想稳定提取“这个类型实现了哪些 trait、泛型约束是什么、生命周期注解如何写”时,HTML 结构易变,信息容易被忽略。该技能面向这类机器可读的文档索引需求,把公开的 Rust crate 文档整理成可检索的 API 参考。

工作方式

核心能力是结合 rustdoc JSON output 与 cargo-doc 输出,从 docs.rs 上已有的 Rust crate 文档入手,而不是重新从源码猜测 API。索引过程中会提取:

  • Trait implementations:某个类型、泛型或 trait object 实现了哪些 trait。
  • Generic bounds:函数、struct、enum、trait 上的泛型约束,例如 T: Clone + Send 这类边界。
  • Lifetime annotations:函数签名、trait 方法和类型定义中的生命周期参数。

关键步骤可以理解为:

  1. 以 crate 文档为目标,定位 docs.rs 上对应版本与构建的文档入口。
  2. 消费 rustdoc JSON 与 cargo-doc 产生的文档数据,减少对页面布局的依赖。
  3. 将 trait 实现、泛型约束、生命周期注解抽取成结构化条目。
  4. 把这些条目组织成可搜索的 API 参考,便于按名称、trait、约束或生命周期查找。

适用边界

它适合做 crate API 的结构化索引和交叉查阅,不适合替代 rustdoc、源码阅读或官方 changelog。索引质量取决于 crate 文档是否完整、版本是否可复现,以及 rustdoc JSON / cargo-doc 输出是否包含所需信息。遇到私有 API、条件编译分支、宏展开结果或文档生成配置异常时,抽取结果可能不完整。文档来源为 docs.rs,其可用性和渲染内容由上游维护;若需要绝对精确,仍应回查对应 crate 版本源码。

使用场景

  • 审查第三方 crate 时,需要提取某类型的 trait 实现和泛型约束,判断是否满足当前项目的安全与并发要求。
  • 编写 IDE 插件时,需将 cargo-doc 输出的生命周期注解结构化,为开发者提供悬停提示和参数关联分析。
  • 梳理复杂泛型库的 API 时,需将 rustdoc JSON 中的泛型边界提取为检索表,快速定位符合约束的方法。

适合人员

  • Rust 库维护者,需要确保公开 API 的 trait 实现和泛型约束在文档中被准确提取并可供用户检索。
  • IDE 工具开发者,希望解析 rustdoc JSON 输出,为 Rust 项目提供精准的代码补全与 API 导航功能。
  • 安全审计工程师,在引入新依赖前需系统性核查 crate 的生命周期注解与并发 trait 实现是否合规。