English | 简体中文
repoctl is a task-first CLI for initializing, maintaining, validating, and releasing pnpm and Turborepo monorepos. It works with existing workspaces and also ships optional templates for creating new packages and applications.
- Workspace initialization and health checks with
repo initandrepo doctor. - Package and application creation with
repo templatesandrepo new. - Repeatable local verification with
repo checkand therepo verifycommand group. - Managed tooling configuration through
repoctl/tooling. - Workspace upgrades that preserve unowned project files by default.
- Stable and prerelease publishing based on pnpm change intents.
- Machine-readable JSON and Markdown reports for CI, editors, and support workflows.
repoctl requires Node.js 22.12 or newer.
pnpm add -D repoctlThe package name is repoctl; the recommended command is repo.
pnpm exec repo init
pnpm exec repo doctor
pnpm exec repo templates
pnpm exec repo new my-package
pnpm exec repo checkUse repoctl when a longer, explicit executable name is preferable. Both bins expose the same commands.
npm create repoctl@latest
# or
pnpm create repoctlThe create command lets you select the built-in templates to include, then prepares the workspace for the normal repo init, repo doctor, repo new, and repo check workflow.
CLI output is English by default. Select Simplified Chinese explicitly with either interface:
pnpm exec repo --lang zh-CN doctor
REPOCTL_LANG=zh-CN pnpm exec repo doctorSupported locales are en and zh-CN. Machine-readable field names, check IDs, statuses, and command names remain stable in every locale.
| Package | Role |
|---|---|
repoctl |
Recommended CLI and public API entrypoint |
@icebreakers/monorepo |
Core engine and advanced programmatic APIs |
@icebreakers/monorepo-templates |
Built-in templates and managed workspace assets |
create-repoctl |
Recommended npm create / pnpm create entrypoint |
create-icebreaker |
Compatibility create entrypoint |
The workspaces under templates/ are private source assets. They are shipped through @icebreakers/monorepo-templates; they are not independently published packages.
corepack enable
pnpm install
pnpm build
pnpm lint
pnpm typecheck
pnpm tsd
pnpm testUse pnpm change for changes that affect a publishable package and inspect the release plan with pnpm change status.
- Documentation: https://repoctl.icebreaker.top
- GitHub: https://github.com/sonofmagic/repoctl
- Issues: https://github.com/sonofmagic/repoctl/issues
- Security: SECURITY.md
- Contributing: CONTRIBUTING.md