diff --git a/README.md b/README.md index f7ee1c7..6ec1258 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # pstack for GitHub Copilot -[![check](https://github.com/hackernotfound/pstack-vscode/actions/workflows/check.yml/badge.svg)](https://github.com/hackernotfound/pstack-vscode/actions/workflows/check.yml) [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![version](https://img.shields.io/badge/version-1.0.0-7C3AED.svg)](https://github.com/hackernotfound/pstack-vscode/releases/tag/v1.0.0) +[![check](https://github.com/hackernotfound/pstack-vscode/actions/workflows/check.yml/badge.svg)](https://github.com/hackernotfound/pstack-vscode/actions/workflows/check.yml) [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![version](https://img.shields.io/badge/version-1.1.0-7C3AED.svg)](https://github.com/hackernotfound/pstack-vscode/releases/tag/v1.1.0) **Run [pstack](https://github.com/cursor/plugins/tree/main/pstack) in the VS Code agents window with GitHub Copilot.** diff --git a/tools/check.mjs b/tools/check.mjs index d86dd54..ffa532e 100755 --- a/tools/check.mjs +++ b/tools/check.mjs @@ -23,6 +23,8 @@ const upstream = JSON.parse(readFileSync(join(root, 'upstream.json'), 'utf8')); check('plugin.json name is pstack', plugin.name === 'pstack'); const version = readFileSync(join(root, 'VERSION'), 'utf8').trim(); check('plugin.json version matches VERSION and is MAJOR.MINOR.PATCH', /^\d+\.\d+\.\d+$/.test(version) && plugin.version === version); +const readme = readFileSync(join(root, 'README.md'), 'utf8'); +check('README version badge matches VERSION', readme.includes(`version-${version.replaceAll('-', '--')}-`) && readme.includes(`releases/tag/v${version})`)); check('plugin.json names the pinned upstream version', plugin.description.includes(`pstack-claude ${upstream.version}`)); check('no .claude-plugin manifest (VS Code would parse it as Claude format)', !existsSync(join(out, '.claude-plugin'))); check('plugin ships no agents (the VS Code agents window lists each plugin agent twice)', !('agents' in plugin) && !existsSync(join(out, 'agents')) && !readdirSync(out, { recursive: true }).some((rel) => /(^|\/)agents\/[^/]+\.md$/.test(rel) && !rel.startsWith('skills/')));