{"record":{"id":"ba429cbc278426a2","repo":"Fission-AI/OpenSpec","slug":"tool-tool-value-does-not-support-skill-genera","errorCode":null,"errorMessage":"Tool '${tool.value}' does not support skill generation.","messagePattern":"Tool '(.+?)' does not support skill generation\\.","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/core/shared/skill-paths.ts","lineNumber":37,"sourceCode":"export function hasGlobalSkillTarget(tool: AIToolOption): boolean {\n  return Boolean(tool.globalSkillsDir);\n}\n\nexport function resolveToolSkillsDir(\n  projectRoot: string,\n  tool: SkillCapableTool,\n  options: { homeDir?: string } = {}\n): string {\n  if (tool.globalSkillsDir) {\n    const homeDir = options.homeDir ?? process.env.USERPROFILE ?? process.env.HOME ?? os.homedir();\n    return path.join(homeDir, tool.globalSkillsDir, 'skills');\n  }\n\n  if (tool.skillsDir) {\n    return path.join(projectRoot, tool.skillsDir, 'skills');\n  }\n\n  throw new Error(`Tool '${tool.value}' does not support skill generation.`);\n}\n","sourceCodeStart":19,"sourceCodeEnd":39,"githubUrl":"https://github.com/Fission-AI/OpenSpec/blob/6926ccb18afa4ff621112813e9968334576ee11a/src/core/shared/skill-paths.ts#L19-L39","documentation":"Sentinel guard in resolveToolSkillsDir: the given tool configuration has neither globalSkillsDir nor skillsDir, so there is no directory into which skills could be generated for that tool. The tool entry itself lacks the required skill-target fields — this is a configuration gap, not a filesystem problem.","triggerScenarios":"Thrown at src/core/shared/skill-paths.ts:37 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a tool that supports skill generation (one with a skillsDir configured)","Add a skillsDir or globalSkillsDir to the tool's configuration","Skip skill generation for tools that only support instructions/output styles"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6926ccb18afa4ff621112813e9968334576ee11a","analyzedAt":"2026-08-25T12:29:45.729Z","contentChangedAt":"2026-08-25T12:29:45.729Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}