paperclipai/paperclip · error

Bundled local plugin ${packageName} is still missing ${missi

Error message

Bundled local plugin ${packageName} is still missing ${missingDetails.join("; ")} after auto-build. Run `${manualBuildCommand}` from the repo root and retry.

What it means

Post-build verification in ensureLocalPluginBuilt: after auto-build, declared entrypoints and/or standalone runtime dependencies are still missing from the package. Auto-build cannot fix this — the developer must run the named manual build command; the incomplete plugin build output is at fault.

Source

Thrown at server/src/services/plugin-loader.ts:932

    throw new Error(
      `Failed to auto-build bundled local plugin ${packageName}${timeoutMessage}. ` +
        `Run \`${manualBuildCommand}\` from the repo root and retry.${stderrMessage}`,
    );
  }

  const stillMissingEntrypoints = listMissingDeclaredPluginEntrypoints(packageRoot, pkgJson);
  const stillMissingStandaloneRuntimeDeps = isStandaloneBundledPluginPath(packageRoot, { repoRoot: options.repoRoot })
    ? listMissingStandaloneBundledPluginRuntimeDependencies(packageRoot, pkgJson)
    : [];
  if (stillMissingEntrypoints.length > 0 || stillMissingStandaloneRuntimeDeps.length > 0) {
    const missingDetails: string[] = [];
    if (stillMissingEntrypoints.length > 0) {
      missingDetails.push(`built entrypoints: ${stillMissingEntrypoints.map((entrypoint) => entrypoint.key).join(", ")}`);
    }
    if (stillMissingStandaloneRuntimeDeps.length > 0) {
      missingDetails.push(`runtime dependencies: ${stillMissingStandaloneRuntimeDeps.join(", ")}`);
    }
    throw new Error(
      `Bundled local plugin ${packageName} is still missing ${missingDetails.join("; ")} after auto-build. ` +
        `Run \`${manualBuildCommand}\` from the repo root and retry.`,
    );
  }
}

/**
 * Resolve the manifest entrypoint from a package.json and package root.
 *
 * The spec defines a "paperclipPlugin" key in package.json with a "manifest"
 * subkey pointing to the manifest module.  This helper resolves the path.
 *
 * @see PLUGIN_SPEC.md §10 — Package Contract
 */
function resolveManifestPath(
  packageRoot: string,
  pkgJson: Record<string, unknown>,
): string | null {

View on GitHub (pinned to 120ae5428f)

Solutions

  1. The auto-build completed but dist artifacts are still missing. Run the printed manual build command from the repo root and verify the listed missing files are produced.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at server/src/services/plugin-loader.ts:932 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of paperclipai/paperclip@120ae5428f (2026-08-18). Data as JSON: /api/errors/9bd6f326c621cb5d. Report an issue: GitHub.