paperclipai/paperclip · error
Package ${resolvedPackageName} at ${resolvedPackagePath} doe
Error message
Package ${resolvedPackageName} at ${resolvedPackagePath} does not appear to be a Paperclip plugin (no manifest found).${manualBuildHint} What it means
Manifest discovery guard: no Paperclip manifest was found at the resolved manifest path. For local packages a build hint is appended since unbuilt plugins often lack a generated manifest; the package lacking a built manifest is at fault.
Source
Thrown at server/src/services/plugin-loader.ts:1281
);
}
}
// Step 3: Read and validate plugin manifest
// Note: this.loadManifest (used via current context)
const pkgJson = await readPackageJson(resolvedPackagePath);
if (!pkgJson) throw new Error(`Missing package.json at ${resolvedPackagePath}`);
if (localPath) {
await ensureLocalPluginBuilt(resolvedPackagePath, pkgJson);
}
const manifestPath = resolveManifestPath(resolvedPackagePath, pkgJson);
if (!manifestPath || !existsSync(manifestPath)) {
const manualBuildHint = localPath
? formatLocalPluginManualBuildHint(resolvedPackagePath, pkgJson)
: "";
throw new Error(
`Package ${resolvedPackageName} at ${resolvedPackagePath} does not appear to be a Paperclip plugin (no manifest found).${manualBuildHint}`,
);
}
const manifest = await loadManifestFromPath(manifestPath);
// Step 4: Reject incompatible plugin API versions
if (!manifestValidator.getSupportedVersions().includes(manifest.apiVersion)) {
throw new Error(
`Plugin ${manifest.id} declares apiVersion ${manifest.apiVersion} which is not supported by this host. ` +
`Supported versions: ${manifestValidator.getSupportedVersions().join(", ")}`,
);
}
// Step 5: Validate manifest capabilities are consistent
const capResult = capabilityValidator.validateManifestCapabilities(manifest);
if (!capResult.allowed) {
throw new Error(View on GitHub (pinned to 120ae5428f)
Solutions
- The package has no Paperclip manifest. Build the plugin (run the suggested build command if shown) so the manifest is generated, or verify you installed the correct package.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at server/src/services/plugin-loader.ts:1281 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/f081e4819227de30.
Report an issue: GitHub.