vercel/ai · error · Error
Duplicate ACP skill file path ${JSON.stringify(file.path)} f
Error message
Duplicate ACP skill file path ${JSON.stringify(file.path)} for skill ${JSON.stringify(skill.name)}. What it means
Error "Duplicate ACP skill file path ${JSON.stringify(file.path)} for skill ${JSON.stringify(skill.name)}." thrown in vercel/ai.
Source
Thrown at packages/harness-acp/src/v1/acp-v1-skills.ts:135
);
}
skillNames.add(skill.name);
const filePaths = new Set<string>();
for (const file of skill.files ?? []) {
const normalizedPath = validateACPAttachedFilePath({
skillName: skill.name,
filePath: file.path,
});
if (normalizedPath === 'SKILL.md') {
throw new Error(
`Invalid ACP skill file path ${JSON.stringify(file.path)} for skill ${JSON.stringify(
skill.name,
)}: SKILL.md is reserved for the skill definition.`,
);
}
if (filePaths.has(normalizedPath)) {
throw new Error(
`Duplicate ACP skill file path ${JSON.stringify(file.path)} for skill ${JSON.stringify(
skill.name,
)}.`,
);
}
filePaths.add(normalizedPath);
}
}
}
function validateACPAttachedFilePath({
skillName,
filePath,
}: {
skillName: string;
filePath: string;
}): string {
const containsTraversal = filePathView on GitHub (pinned to 69428b1f8b)
When it happens
Trigger: Thrown at packages/harness-acp/src/v1/acp-v1-skills.ts:135 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of vercel/ai@69428b1f8b (2026-08-30).
Data as JSON: /api/errors/e10767156364a92e.
Report an issue: GitHub.