paperclipai/paperclip · error · Error

PAPERCLIP_ADAPTERS declares adapter type(s) with no installe

Error message

PAPERCLIP_ADAPTERS declares adapter type(s) with no installed adapter: ${missing.join(", ")}

What it means

Reconciliation failure in reconcileAdapterAvailability: the declared registry enables adapter types that have no installed adapter implementation in the server. The server cannot offer a harness with no implementation, so it refuses to start and lists the missing types.

Source

Thrown at server/src/services/adapter-registry-bootstrap.ts:81

}

/**
 * Reconcile availability: every known server adapter NOT enabled in the declared
 * registry is disabled; declared+enabled ones are enabled. Throws if a declared
 * adapterType has no installed adapter (cannot offer a harness with no
 * implementation). No-op when `registry` is null.
 */
export function reconcileAdapterAvailability(
  registry: AdapterRegistryEntryParsed[] | null,
): { enabled: string[]; disabled: string[] } {
  if (!registry) return { enabled: [], disabled: [] };

  const knownTypes = new Set(listServerAdapters().map((a) => a.type));
  const declared = new Map(registry.map((e) => [e.adapterType, e]));

  const missing = [...declared.keys()].filter((t) => !knownTypes.has(t));
  if (missing.length > 0) {
    throw new Error(
      `PAPERCLIP_ADAPTERS declares adapter type(s) with no installed adapter: ${missing.join(", ")}`,
    );
  }

  const enabled: string[] = [];
  const disabled: string[] = [];
  for (const type of knownTypes) {
    const entry = declared.get(type);
    const shouldEnable = entry !== undefined && entry.enabled !== false;
    setAdapterDisabled(type, !shouldEnable);
    (shouldEnable ? enabled : disabled).push(type);
  }

  logger.info({ enabled, disabled }, "reconciled adapter availability from PAPERCLIP_ADAPTERS");
  return { enabled, disabled };
}

View on GitHub (pinned to 120ae5428f)

Solutions

  1. Install the missing adapter package(s) named in the message, or remove them from PAPERCLIP_ADAPTERS.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at server/src/services/adapter-registry-bootstrap.ts:81 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/9e82c6971222f115. Report an issue: GitHub.