我做了一个自动生成项目入门文档的 CLI 工具

最近做了一个小工具:repo-onboard。

它的目标很简单:进入一个陌生仓库后,自动生成一份实用的 ONBOARDING.md,帮助新人快速知道项目怎么启动、有哪些常用命令、需要哪些环境变量、应该先看哪些文件。

GitHub:github.com/hyjcxy/repo...

为什么做这个

很多项目其实已经包含了新人需要的信息,但这些信息通常散落在不同地方:

  • README.md 里有一部分说明
  • package.json 里有启动和测试脚本
  • .env.example 里有环境变量
  • docker-compose.yml 里有本地依赖服务
  • Java 项目里可能还要看 pom.xml

新人接手项目时,经常要自己把这些线索串起来。这个过程不难,但很浪费时间。

所以我想做一个很小的 CLI,把这些仓库里的"入门线索"收集起来,生成一份可以直接提交到仓库里的入门文档。

它现在能做什么

目前的 MVP 支持:

  • 识别 Node.js、Java Maven、Docker 项目
  • 读取 package.json scripts
  • .env.example 提取环境变量名称
  • 生成顶层目录结构概览
  • 输出 ONBOARDING.md
  • 支持 --dry-run 预览
  • 支持 --output docs/ONBOARDING.md 自定义输出路径

示例命令:

bash 复制代码
node src/cli.js /path/to/repo
node src/cli.js /path/to/repo --dry-run
node src/cli.js /path/to/repo --output docs/ONBOARDING.md

生成内容大概是这样:

md 复制代码
# sample-app Onboarding

## Project Snapshot

- Detected type: Node.js, Docker

## Quick Start

1. Install dependencies with npm install.
2. Copy .env.example to .env if the file exists.
3. Run the development or test command listed below.

## Common Commands

- dev: vite
- test: node --test

## Environment Variables

- PORT
- API_KEY

技术实现

为了让工具足够轻,第一版没有接 AI,也没有引入第三方依赖。

核心逻辑就是三块:

  • scanner:扫描仓库里的关键文件
  • markdown:把扫描结果渲染成入门文档
  • cli:处理参数、写文件或 dry-run 输出

测试用的是 Node.js 内置的 node:test,目前覆盖了 CLI、扫描器和 Markdown 生成。

后续计划

接下来可能会加:

  • Python / Go / Rust / Gradle 项目识别
  • --check 模式,用在 CI 里检查入门文档是否过期
  • 发布到 npm,支持 npx repo-onboard
  • 可选的 --ai,自动总结模块职责

如果你也经常接手陌生仓库,或者需要给项目补新人入门文档,可以试试看。

GitHub:github.com/hyjcxy/repo...

相关推荐
太子釢4 小时前
AI 开发个人记账 App(服务端篇)
node.js·ai编程
用户64340495148517 小时前
Elpis 项目构建工具与前端基建实践总结
node.js
FungLeo8 小时前
成为全栈·Node 后端篇·后端测试策略:单元、集成与测试数据库
单元测试·node.js·集成测试·测试策略·成为全栈·测试数据库
FungLeo9 小时前
成为全栈·Node 后端篇·评论内容安全:敏感词过滤、三态审核与级联删除
node.js·敏感词过滤·成为全栈·评论内容安全·评论审核·级联删除
FungLeo19 小时前
成为全栈·Node 后端篇·阅读量防刷:去重、冷却与计数写分离
node.js·读写分离·数据去重·接口防刷·成为全栈·数据冷却
脉动数据行情11 天前
Node.js WebSocket 实现贵金属实时行情监听 伦敦金 / 伦敦银自动重连方案
websocket·node.js·vim
不老刘1 天前
一行命令解决 Node.js 版本兼容问题:`--openssl-legacy-provider` 深度解析
node.js
万敏2 天前
Vue3 全栈实战:第一阶段复盘(第1-8周)
vue.js·node.js·全栈
濮水大叔2 天前
舒服了,CabloyJS 的 AI Spec 驱动开发会自动生成甘特图和燃尽图
typescript·node.js·vibecoding
FungLeo2 天前
成为全栈·Node 后端篇·部署上线:从本地起服到真正对外服务
node.js·后端部署·成为全栈