Files
awesome-copilot/package.json
T
Aaron Powell 28c3a14af4 Switch skill CI validation workflows to vally lint (#2030)
* Switch skill CI checks to vally lint

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Adding Vally to allowed words

* case sensitivity

* Migrate external plugin quality gates from skill-validator to vally lint

Replace the downloaded skill-validator binary with
px @microsoft/vally-cli lint
in the external plugin quality gates pipeline:

- Remove downloadSkillValidator() and SKILL_VALIDATOR_ARCHIVE_URL constant
- Replace uildSkillValidatorArgs() + 
unSkillValidatorGate() with
  uildVallyLintArgs() + 
unVallyLintGate() that run
px vally-cli lint
  per resolved skill directory (falling back to the full plugin root when no
  specific skill paths can be resolved from plugin.json)
- Rename result keys skill_validator_status / skill_validator_output
  to ally_lint_status / ally_lint_output throughout both
  ng/external-plugin-quality-gates.mjs and ng/external-plugin-intake.mjs
- Update PR comment markdown to show 'vally lint' instead of 'skill-validator'
- Update CONTRIBUTING.md prose references accordingly

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Use @microsoft/vally library directly instead of vally-cli subprocess

Replace the npx-spawned vally-cli process with a direct call to the
@microsoft/vally core library in the external plugin quality gates scripts:

- Add @microsoft/vally as a devDependency in package.json
- Import runLint and LintConsoleReporter from @microsoft/vally
- Replace runVallyLintGate() process spawn with async API call:
  - runLint({ rootPath }) returns structured LintResults
  - LintConsoleReporter with a Writable capture stream collects
    text output without printing to stdout
- Make runExternalPluginQualityGates() async (propagated to
  runExternalPluginPrQualityGates() and both main entry points)
- Use Promise.all in runExternalPluginPrQualityGates() for parallel
  plugin checks
- Fix remaining skill_validator_status reference in pr-quality-gates
  summary string (now vally-lint=...) and YAML workflow table header
- Add 'npm install @microsoft/vally' step to both calling workflows

This removes a layer of indirection (Node -> npx -> CLI -> library)
and replaces it with a direct in-process library call, which is faster,
more reliable, and gives structured access to lint results.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-06-30 14:07:45 +10:00

50 lines
1.7 KiB
JSON

{
"name": "awesome-copilot",
"version": "1.0.0",
"description": "Enhance your GitHub Copilot experience with community-contributed instructions, prompts, agents, and skills.",
"main": "./eng/update-readme.js",
"private": true,
"scripts": {
"start": "npm run build",
"build": "node ./eng/update-readme.mjs && node ./eng/generate-marketplace.mjs",
"contributors:add": "all-contributors add",
"contributors:report": "node ./eng/contributor-report.mjs",
"contributors:generate": "all-contributors generate",
"contributors:check": "all-contributors check",
"plugin:validate": "node ./eng/validate-plugins.mjs",
"plugin:create": "node ./eng/create-plugin.mjs",
"skill:validate": "node ./eng/validate-skills.mjs",
"skill:create": "node ./eng/create-skill.mjs",
"plugin:clean": "node ./eng/clean-materialized-plugins.mjs",
"plugin:generate-marketplace": "node ./eng/generate-marketplace.mjs",
"website:data": "node ./eng/generate-website-data.mjs",
"website:dev": "npm run website:data && npm run --prefix website dev",
"website:build": "npm run build && npm run website:data && npm run --prefix website build",
"website:preview": "npm run --prefix website preview"
},
"repository": {
"type": "git",
"url": "https://github.com/github/awesome-copilot.git"
},
"keywords": [
"github",
"copilot",
"ai",
"prompts",
"instructions",
"skills",
"agents"
],
"author": "GitHub",
"license": "MIT",
"devDependencies": {
"@microsoft/vally": "^0.6.0",
"all-contributors-cli": "^6.26.1"
},
"dependencies": {
"js-yaml": "^5.2.0",
"vfile": "^6.0.3",
"vfile-matter": "^5.0.1"
}
}