SuperAPI AI 工具集

opensrc

编程与开发

查看项目

更新于 10-16 01:10

技能介绍

用途:opensrc 是一个 CLI 工具,用于抓取软件包或仓库的源代码,让 AI 编程智能体在类型定义和文档之外获得更深入的实现上下文。适合需要理解依赖库内部实现、调试类型信息不足的问题、研究依赖中的实现模式,或让智能体直接引用包的真实源码时使用。

主要能力:支持从 npm、PyPI、crates.io 抓取包,也支持直接抓取 GitHub/GitLab 仓库;可指定版本或 ref;提供 list、remove、clean 等管理命令。

使用方式:

  • 安装:npm install -g opensrc
  • 抓取 npm 包(自动从 lockfile 检测已安装版本):npx opensrc zod
  • 抓取其他注册源:npx opensrc pypi:requests(Python/PyPI)、npx opensrc crates:serde(Rust/crates.io)
  • 抓取 GitHub 仓库:npx opensrc vercel/ai、npx opensrc github:owner/repo、npx opensrc https://github.com/colinhacks/zod
  • 指定版本/ref:npx opensrc zod@3.22.0、npx opensrc owner/repo@v1.0.0
  • 管理命令:opensrc list(列出已抓取源)、opensrc remove <name>(移除指定源)、opensrc clean(移除全部源)

输出结构:源码存放在 opensrc/ 目录,包含 settings.json、sources.json 和 repos/ 子目录(按 github.com/owner/repo 组织)。

关键行为:npm 包会从 node_modules、package-lock.json、pnpm-lock.yaml 或 yarn.lock 自动检测已安装版本;通过注册源 API 解析包对应的 git 仓库并在匹配 tag 上克隆;支持 monorepo(通过 repository.directory 字段);使用 --depth 1 浅克隆并在克隆后删除 .git;tag 查找依次尝试 v{version}、{version},找不到则用默认分支。

首次运行时会提示修改 .gitignore(加入 opensrc/)、tsconfig.json(排除 opensrc/ 编译)和 AGENTS.md(加入指向源码的章节);可用 --modify 或 --modify=false 跳过提示。

限制:资料未提供收费、平台支持范围、源码托管或隐私相关的更多信息,暂未提供。