{"record":{"id":"d742995cfacde716","repo":"paperclipai/paperclip","slug":"ambiguous-skill-slug-trimmed-use-a-skill-id","errorCode":null,"errorMessage":"Ambiguous skill slug \"${trimmed}\". Use a skill ID or key instead.","messagePattern":"Ambiguous skill slug \"(.+?)\"\\. Use a skill ID or key instead\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cli/src/commands/client/skills.ts","lineNumber":624,"sourceCode":"  skills: CompanySkillReferenceTarget[],\n  reference: string,\n): CompanySkillReferenceTarget {\n  const trimmed = reference.trim();\n  if (!trimmed) {\n    throw new Error(\"Skill reference is required.\");\n  }\n\n  const byId = skills.find((skill) => skill.id === trimmed);\n  if (byId) return byId;\n\n  const byKey = skills.find((skill) => skill.key === trimmed);\n  if (byKey) return byKey;\n\n  const normalizedSlug = normalizeSkillSlug(trimmed);\n  const bySlug = skills.filter((skill) => skill.slug === normalizedSlug);\n  if (bySlug.length === 1 && bySlug[0]) return bySlug[0];\n  if (bySlug.length > 1) {\n    throw new Error(`Ambiguous skill slug \"${trimmed}\". Use a skill ID or key instead.`);\n  }\n\n  throw new Error(`Skill not found: ${reference}`);\n}\n\nasync function resolveCompanySkill(\n  ctx: ResolvedClientContext,\n  reference: string,\n): Promise<CompanySkillReferenceTarget> {\n  return resolveCompanySkillReference(await listCompanySkills(ctx), reference);\n}\n\nasync function checkCompanySkills(\n  ctx: ResolvedClientContext,\n  skillRef: string | undefined,\n): Promise<CompanySkillCheckRow[]> {\n  const skills = await listCompanySkills(ctx);\n  const selected = skillRef ? [resolveCompanySkillReference(skills, skillRef)] : skills;","sourceCodeStart":606,"sourceCodeEnd":642,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/cli/src/commands/client/skills.ts#L606-L642","documentation":"The reference matched no id or key, and its normalized slug matched more than one company skill, so resolution is ambiguous and a unique id/key is required.","triggerScenarios":"Thrown at cli/src/commands/client/skills.ts:624 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use the skill ID or key instead of the ambiguous slug."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"120ae5428fa29bee300bcf806491cd4d965fbb7c","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}