Skip to content

Copilot Agent Skill Validation Conflicts with "skill" Language ID (Cadence SKILL Programming Language) #306227

@AviFooks

Description

@AviFooks

Description

VS Code Copilot's agent skill validation is incorrectly being applied to files with the language ID "skill", causing false positive errors for users of the Cadence SKILL programming language (used in IC design automation).

Steps to Reproduce

  1. Install a SKILL language extension (e.g., herbertagosto.skill-0.10.0)
  2. Set file association in workspace settings:
    "files.associations": {
        "*.il": "skill"
    }
  3. Open any .il file containing Cadence SKILL code (Lisp-like syntax)
  4. Observe error in Problems panel: "Skill must provide a name."

Expected Behavior

  • Copilot agent skill validation should only apply to agent skill configuration files (.github/skills/**/SKILL.md)
  • Files with language ID "skill" (Cadence SKILL programming language) should not trigger agent skill validation

Actual Behavior

  • VS Code Copilot validates all files with language ID "skill" as if they were agent skill configuration files
  • Expects YAML frontmatter with name: field, which is not present in Cadence SKILL code
  • Produces false positive: "Skill must provide a name." error

Environment

  • VS Code Version: 1.97+ (issue present in latest stable)
  • OS: Windows 11
  • Extension: GitHub Copilot (with agent skills feature)
  • Affected Language: Cadence SKILL (.il files, language ID: "skill")

Root Cause

The validation logic appears to use the language ID "skill" as a trigger, but this language ID is a legitimate identifier for the Cadence SKILL programming language, not just for VS Code agent skill configuration files.

Suggested Fix

Agent skill validation should be based on:

  1. File path pattern: **/.github/skills/**/SKILL.md (or similar agent skill config locations)
  2. File extension: .md files in skill directories
  3. Not the language ID "skill"

Workarounds Attempted

None of these are satisfactory:

  1. ❌ Change "*.il": "lisp" - Loses SKILL-specific language features
  2. ❌ Add "github.copilot.advanced": { "disableSkillValidation": true } - Setting doesn't exist
  3. ❌ Exclude files via search.exclude - Doesn't affect validation

Impact

  • Users of Cadence SKILL (IC design engineers) cannot use SKILL language extensions with VS Code Copilot enabled
  • Forces choice between: (a) SKILL language features OR (b) clean error panel
  • Affects professional IC design workflows in teams using VS Code

Related

  • Language ID collision: "skill" is used for both Cadence SKILL programming and VS Code agent skills
  • Similar potential issues could occur with other language IDs if validation isn't path-based

Requested Solution

Please add path-based filtering to agent skill validation to exclude files outside of **/.github/skills/**/ directories, regardless of their language ID.


Workspace context: IC design automation scripts (Cadence Virtuoso), ~100+ .il files affected

Metadata

Metadata

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions