{"record":{"id":"4a640d3913edd5b6","repo":"microsoft/vscode","slug":"skill-skillname-not-found-skilllistmessage","errorCode":null,"errorMessage":"Skill \"${skillName}\" not found.${skillListMessage}","messagePattern":"Skill \"(.+?)\" not found\\.(.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"extensions/copilot/src/extension/tools/node/skillTool.ts","lineNumber":250,"sourceCode":"\tconst availableSkills: string[] = [];\n\n\tif (isString(indexValue)) {\n\t\tconst indexFile = parseInstructionIndexFile(indexValue);\n\t\tfor (const skillUri of indexFile.skills) {\n\t\t\tconst info = getSkillInfo(skillUri);\n\t\t\tif (info) {\n\t\t\t\tif (info.skillName === skillName) {\n\t\t\t\t\treturn skillUri;\n\t\t\t\t}\n\t\t\t\tavailableSkills.push(info.skillName);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst skillListMessage = availableSkills.length > 0\n\t\t? ` Available skills: ${availableSkills.join(', ')}`\n\t\t: '';\n\tthrow new Error(`Skill \"${skillName}\" not found.${skillListMessage}`);\n}\n\n/**\n * List files in a skill directory, excluding SKILL.md and skipped directories.\n */\nexport async function listRelatedFiles(skillFolderUri: URI, readDirectory: ReadDirectoryFn): Promise<string[]> {\n\ttry {\n\t\tconst files: string[] = [];\n\t\tawait listRelatedFilesRecursive(skillFolderUri, skillFolderUri, files, readDirectory);\n\t\treturn files;\n\t} catch {\n\t\treturn [];\n\t}\n}\n\nexport async function listRelatedFilesRecursive(baseUri: URI, currentUri: URI, files: string[], readDirectory: ReadDirectoryFn, depth: number = 0): Promise<void> {\n\tif (files.length >= MAX_RELATED_FILES || depth > 5) {\n\t\treturn;","sourceCodeStart":232,"sourceCodeEnd":268,"githubUrl":"https://github.com/microsoft/vscode/blob/a94b963a32aa9749d69504576791fa29700ae46d/extensions/copilot/src/extension/tools/node/skillTool.ts#L232-L268","documentation":"Error \"Skill \"${skillName}\" not found.${skillListMessage}\" thrown in microsoft/vscode.","triggerScenarios":"Thrown at extensions/copilot/src/extension/tools/node/skillTool.ts:250 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"analyzedSha":"a94b963a32aa9749d69504576791fa29700ae46d","analyzedAt":"2026-08-12T01:08:56.794Z","schemaVersion":2},"datasetVersion":"2026-08-12T06:17:24.410Z"}