vercel/turborepo · warning

Some manual modifications may be required.

Error message

Some manual modifications may be required.

What it means

Emitted by turbo-gen's copy generator when the copy source is external (`opts.copy.type === 'external'`), i.e. the new package is created from a remote example via createProject. Because no transform converts the example to your repo's package manager or dependencies, turbo warns up front that the result may need manual fixes, then scaffolds the project and patches its package.json best-effort.

Source

Thrown at packages/turbo-gen/src/generators/copy.ts:26

  type DependencyGroups,
  type PackageJson
} from "@turbo/utils";
import { gatherAddRequirements } from "../utils/gather-add-requirements";
import type { TurboGeneratorArguments } from "./types";

export async function generate({ project, opts }: TurboGeneratorArguments) {
  const { name, type, location, source, dependencies } =
    await gatherAddRequirements({
      project,
      opts
    });

  const newPackageJsonPath = path.join(location.absolute, "package.json");

  // copying from a remote example
  if (opts.copy.type === "external") {
    logger.log();
    logger.warn("Some manual modifications may be required.");
    logger.dimmed(
      `This ${type} may require local dependencies or a different package manager than what is available in this repo`
    );
    await createProject({
      appPath: location.absolute,
      example: opts.copy.source,
      examplePath: opts.examplePath
    });

    try {
      if (fs.existsSync(newPackageJsonPath)) {
        const packageJson = (await fs.readJSON(
          newPackageJsonPath
        )) as PackageJson;
        if (packageJson.workspaces) {
          throw new Error(
            "New workspace root detected - unexpected 'workspaces' field in package.json"
          );

View on GitHub (pinned to f9245100cf)

Solutions

  1. After generation, review the new package's package.json and align the packageManager field and dependency versions with the repo
  2. Add missing workspace dependencies (`workspace:*`) or install them
  3. Prefer local generator templates when reproducibility matters

Example fix

// before: package.json generated from a remote example
"packageManager": "pnpm@9.0.0",
"dependencies": { "ui-kit": "^1.0.0" } // not in this monorepo

// after: aligned with the repo
"dependencies": { "@acme/ui-kit": "workspace:*" }
Defensive patterns

Strategy: fallback

Prevention

When it happens

Trigger: `turbo generate` with a copy source that is a remote/external example, so the template's package manager and dependency assumptions may not match the local monorepo.

Common situations: Pulling a public starter into a monorepo that uses a different package manager; templates referencing packages that do not exist in the workspace.

Related errors


AI-assisted analysis of vercel/turborepo@f9245100cf (2026-08-17). Data as JSON: /api/errors/4fc049f01c81dc52. Report an issue: GitHub.