{"record":{"id":"da83c93dec7e8a1a","repo":"paperclipai/paperclip","slug":"skill-reference-is-required-unless-all-is-used","errorCode":null,"errorMessage":"Skill reference is required unless --all is used.","messagePattern":"Skill reference is required unless --all is used\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"cli/src/commands/client/skills.ts","lineNumber":945,"sourceCode":"  }\n}\n\nfunction toSkillReferenceTarget(skill: CompanySkillReferenceTarget): CompanySkillReferenceTarget {\n  return {\n    id: skill.id,\n    key: skill.key,\n    slug: skill.slug,\n    name: skill.name,\n  };\n}\n\nfunction normalizeSkillSlug(value: string): string {\n  return value.trim().toLowerCase().replace(/[^a-z0-9]+/g, \"-\").replace(/^-+|-+$/g, \"\");\n}\n\nfunction requireSkillRef(skillRef: string | undefined): string {\n  if (!skillRef?.trim()) {\n    throw new Error(\"Skill reference is required unless --all is used.\");\n  }\n  return skillRef;\n}\n\nfunction collectOptionValue(value: string, previous: string[]): string[] {\n  return [...previous, value];\n}\n\nfunction emptyToUndefined(values: string[] | undefined): string[] | undefined {\n  return values && values.length > 0 ? values : undefined;\n}\n\nfunction appendQueryParam(params: URLSearchParams, key: string, value: string | undefined): void {\n  const trimmed = value?.trim();\n  if (trimmed) {\n    params.set(key, trimmed);\n  }\n}","sourceCodeStart":927,"sourceCodeEnd":963,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/cli/src/commands/client/skills.ts#L927-L963","documentation":"requireSkillRef guards commands that operate on one skill: neither a positional skill reference nor --all was provided, so the target set is undefined.","triggerScenarios":"Thrown at cli/src/commands/client/skills.ts:945 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide a skill reference, or pass --all to operate on all skills."],"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"}