Skip to content

repoctl 概览

repoctl 是这套模板推荐给使用者的包名。默认命令是 repo,目标是把 pnpm workspace、Turborepo、模板创建、诊断报告和提交前校验收敛到一组稳定入口里。

它不替代 pnpm、Turbo 或 changesets,而是把这些工具在 monorepo 里的常见动作串起来。

什么时候使用 repoctl

场景推荐入口
给已有 pnpm workspace 补齐标准脚本和配置pnpm exec repo setup
判断当前仓库是不是能顺利开发pnpm exec repo doctor
创建新的包、应用、文档站或 CLIpnpm exec repo new
提交前复现推荐校验链路pnpm exec repo check
同步模板最新标准资产pnpm exec repo upgrade
给 CI、编辑器或脚本读取结构化结果--json --out <file>

推荐命令层级

1. 生成仓库里的短脚本

bash
pnpm setup
pnpm doctor
pnpm new
pnpm check

这是给日常开发和团队文档使用的入口。短、稳定、不需要先解释 CLI 包名。

2. 明确调用 repo CLI

bash
pnpm exec repo setup
pnpm exec repo doctor
pnpm exec repo templates
pnpm exec repo new sdk --template tsdown
pnpm exec repo check --dry-run

这是文档、CI、脚本和排障里最清楚的写法。

3. 分组命令

bash
pnpm exec repo ws ls
pnpm exec repo tg init --all
pnpm exec repo env support --markdown --redact
pnpm exec repo config inspect

这些入口适合已经熟悉 repoctl 的维护者,用来做更细的 workspace、tooling、环境和配置操作。

repoctl 管什么

repoctl 把 monorepo 里最容易分散的动作收敛为五条主线:

主线代表命令解决的问题
初始化repo setup / repo upgrade生成或同步 workspace、根脚本、Husky、lint-staged 等资产
诊断repo doctor判断仓库根目录、运行时、脚本、配置和提交链路是否就绪
创建repo templates / repo new使用内置模板生成库、应用、服务、文档站和 CLI
校验repo check / repo verify统一 pre-commit、staged typecheck、pre-push 和 commit-msg
报告repo env support输出可保存、可脱敏、可给 CI 和协作者读取的上下文

这几条主线都支持非交互参数。需要自动化时,优先使用 --json--markdown--out <file>--redact--dry-run 组合。

新人和维护者的边界

角色推荐只记住需要深入时再看
新成员pnpm doctorpnpm newpnpm check按场景选命令
包维护者repo templatesrepo new --templaterepo check --full模板资产治理
CI 维护者repo doctor --strictrepo check --fullrepo env support报告与自动化输出
平台维护者repo setuprepo upgraderepo config inspect执行模型配置文件

和旧入口的关系

repoctl 包仍然提供兼容入口,例如:

bash
pnpm exec repoctl doctor
pnpm exec repoctl new

文档统一推荐 repo,是为了减少新人需要记住的名字。底层实现仍来自同一套 CLI。

下一步