PR titles are validated by .github/workflows/pr.yml and must follow
Conventional Commits:
<type>(<optional scope>): <summary>
- Allowed types:
feat,fix,docs,style,refactor,perf,test,build,ci,chore,revert. - Keep the summary short, lowercase, and in the imperative mood, e.g.
feat: support shared remote components,ci: add e2e test,chore: bump @module-federation/vite. - Mark breaking changes with
!, e.g.feat!: drop vinext beta support. - Squash-merged PRs land on
mainwith the PR title (or the commit title for single-commit PRs), so give commits the same format. - Titles starting with
Releaseare reserved for the PR generated by the Release Pull Request workflow and skip validation. Don't use that prefix for anything else.
Turborepo configuration, task behavior, and CLI commands can vary between installed versions and may differ from your training data. Resolve the turbo package from this file's directory or relevant workspace; in monorepos, it may not be visible from the repository root. For example, run node -p "require.resolve('turbo/package.json')" from a workspace that depends on turbo.
Read docs/README.md inside that installed package first, then read the relevant pages from its docs/ directory before changing Turborepo configuration or commands. Heed deprecation notices. These bundled docs match the installed package version and are available without network access.
This block is written and re-added by turbo before repository-scoped commands when an AI agent is detected. In the Turborepo source repository, its template is defined in crates/turborepo-cli/src/cli/agent_guidance.rs. Removing the managed block while updates are enabled means a later qualifying invocation will add it again. Set "agentGuidance": false in the root turbo.json or turbo.jsonc to opt out; this does not remove an existing block. Keep the block committed with your work to avoid an uncommitted change on the next agent invocation.