paperclipai/paperclip · error · HttpError

Catalog asset previews are not supported.

Error message

Catalog asset previews are not supported.

What it means

Content-type guard in readCatalogSkillFile: the requested file's manifest entry has kind asset, and only text files (e.g. SKILL.md) can be served inline as content. Asset previews (images, binaries) are unsupported by this endpoint; the asset file path requested is at fault.

Source

Thrown at server/src/services/skills-catalog.ts:324

  if (!result.skill) {
    throw notFound("Catalog skill not found");
  }
  return result.skill;
}

export async function readCatalogSkillFile(
  reference: string,
  relativePath = "SKILL.md",
): Promise<CatalogSkillFileDetail> {
  const skill = getCatalogSkillOrThrow(reference);
  const normalizedPath = normalizePortablePath(relativePath || "SKILL.md");
  const fileEntry = skill.files.find((entry) => entry.path === normalizedPath);
  if (!fileEntry) {
    throw notFound("Catalog skill file not found");
  }

  if (fileEntry.kind === "asset") {
    throw new HttpError(415, "Catalog asset previews are not supported.");
  }

  const content = (await readCatalogFileBytes(skill, normalizedPath)).toString("utf8");
  return {
    catalogSkillId: skill.id,
    path: normalizedPath,
    kind: fileEntry.kind,
    content,
    language: inferLanguageFromPath(normalizedPath),
    markdown: isMarkdownPath(normalizedPath),
  };
}

export async function copyCatalogSkillFile(reference: string, relativePath: string, targetPath: string): Promise<void> {
  const skill = getCatalogSkillOrThrow(reference);
  const normalizedPath = normalizePortablePath(relativePath || "SKILL.md");
  const fileEntry = skill.files.find((entry) => entry.path === normalizedPath);
  if (!fileEntry) {

View on GitHub (pinned to 120ae5428f)

Solutions

  1. Catalog asset previews are not implemented; fetch the asset content directly instead of requesting a preview.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at server/src/services/skills-catalog.ts:324 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/9b6eeacc86ba15f3. Report an issue: GitHub.