turborepo 是 JavaScript/TypeScript monorepo 的构建系统,会按依赖图并行执行任务并缓存结果。你在配置 `turbo.json`、apps/packages、任务依赖、远程缓存、环境变量或受影响包时,可以用它避免脚本越写越乱。
默认把 build、lint、test 等脚本放在各 package 的 `package.json`,根目录只负责调用 `turbo run`;只有真正无法归属 package 的仓库级任务才使用 root task。需要只跑改动包时,优先用 `turbo run build --affected`,换基准分支则设置 `TURBO_SCM_BASE`。
缓存不命中时先检查 outputs、inputs 和 env;开发服务用 persistent、with 和 interruptible 表达依赖关系。跨包导入要用 boundaries 检查。它提供 monorepo 的组织和排错思路,具体任务仍要和仓库已有脚本保持一致。