Skip to content

repoctl 概览

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

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

什么时候使用 repoctl

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

推荐命令层级

1. 生成仓库里的 repo:* 根脚本

bash
pnpm run repo:init
pnpm run repo:doctor
pnpm run repo:new
pnpm run repo:check

这是给日常开发和团队文档使用的入口。短、稳定、不需要先解释 CLI 包名,也不会和 pnpm 内置命令冲突。

2. 明确调用 repo CLI

bash
pnpm exec repo init
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 init / 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 run repo:doctorpnpm run repo:newpnpm run repo:check按场景选命令
包维护者repo templatesrepo new --templaterepo check --full模板资产治理
CI 维护者repo doctor --strictrepo check --fullrepo env support报告与自动化输出
平台维护者repo initrepo upgraderepo config inspect执行模型配置文件

命令入口

repoctl 包提供多个 bin,例如:

bash
pnpm exec repoctl doctor
pnpm exec repoctl new

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

下一步