@mthanh/vespercli 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (157) hide show
  1. package/README.md +6 -3
  2. package/assets/CATALOG.md +9 -2
  3. package/assets/claude/.claude-plugin/marketplace.json +9 -9
  4. package/assets/claude/.claude-plugin/plugin.json +1 -1
  5. package/assets/claude/agents/code-planner.md +1 -1
  6. package/assets/claude/agents/code-reviewer.md +1 -1
  7. package/assets/claude/agents/code-tester.md +1 -1
  8. package/assets/claude/agents/copywriter.md +1 -1
  9. package/assets/claude/agents/feature-wrap-document.md +1 -1
  10. package/assets/claude/agents/janitor.md +1 -1
  11. package/assets/claude/agents/modernization.md +1 -1
  12. package/assets/claude/agents/principal-software-engineer.md +1 -1
  13. package/assets/claude/agents/refine-issue.md +1 -1
  14. package/assets/claude/agents/se-system-architecture-reviewer.md +1 -1
  15. package/assets/claude/agents/se-technical-writer.md +1 -1
  16. package/assets/claude/agents/skill-creator.md +1 -1
  17. package/assets/claude/agents/task-researcher.md +1 -1
  18. package/assets/claude/agents/technical-product-manager.md +1 -1
  19. package/assets/claude/agents/vision-analyst.md +1 -1
  20. package/assets/claude/agents/vitest.md +1 -1
  21. package/assets/claude/agents/workspace-learner.md +2 -2
  22. package/assets/claude/packs/backend/.claude-plugin/plugin.json +1 -1
  23. package/assets/claude/packs/backend/agents/firebase-developer.md +1 -1
  24. package/assets/claude/packs/backend/agents/nodejs-express-developer.md +1 -1
  25. package/assets/claude/packs/docs/.claude-plugin/plugin.json +1 -1
  26. package/assets/claude/packs/frontend/.claude-plugin/plugin.json +1 -1
  27. package/assets/claude/packs/frontend/agents/expert-nextjs-developer.md +1 -1
  28. package/assets/claude/packs/frontend/agents/expert-react-frontend-engineer.md +1 -1
  29. package/assets/claude/packs/frontend/agents/jest-react-component-analyzer.md +1 -1
  30. package/assets/claude/packs/frontend/agents/jest-react-scenario-scanner.md +1 -1
  31. package/assets/claude/packs/frontend/agents/jest-react-test-generator.md +1 -1
  32. package/assets/claude/packs/frontend/agents/jest-react-test-planner.md +1 -1
  33. package/assets/claude/packs/frontend/skills/design-taste-frontend/LICENSE +21 -0
  34. package/assets/claude/packs/frontend/skills/design-taste-frontend/SKILL.md +529 -0
  35. package/assets/claude/packs/frontend/skills/design-taste-frontend/UPSTREAM.json +7 -0
  36. package/assets/claude/packs/frontend/skills/design-taste-frontend/assets/app.css +216 -0
  37. package/assets/claude/packs/frontend/skills/design-taste-frontend/assets/base.css +105 -0
  38. package/assets/claude/packs/frontend/skills/design-taste-frontend/assets/base.js +37 -0
  39. package/assets/claude/packs/frontend/skills/design-taste-frontend/assets/charts.js +617 -0
  40. package/assets/claude/packs/frontend/skills/design-taste-frontend/assets/scenes/stage.css +28 -0
  41. package/assets/claude/packs/frontend/skills/design-taste-frontend/assets/scenes/stage.js +133 -0
  42. package/assets/claude/packs/frontend/skills/design-taste-frontend/evals/evals.json +76 -0
  43. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/app.json +1327 -0
  44. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/directions.json +1078 -0
  45. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/heroes.json +1086 -0
  46. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/motions.json +92 -0
  47. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/palettes.json +1485 -0
  48. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/photos.json +7240 -0
  49. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/sections.json +4429 -0
  50. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/sites.json +8350 -0
  51. package/assets/claude/packs/frontend/skills/design-taste-frontend/library/type.json +2024 -0
  52. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/app-screens.md +1199 -0
  53. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/colour.md +141 -0
  54. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/copy.md +177 -0
  55. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/critique.md +182 -0
  56. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/imagery.md +791 -0
  57. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/layout.md +292 -0
  58. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/motion.md +980 -0
  59. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/research.md +356 -0
  60. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/scenes.md +174 -0
  61. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/tells.md +115 -0
  62. package/assets/claude/packs/frontend/skills/design-taste-frontend/references/type.md +170 -0
  63. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/assets.mjs +865 -0
  64. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/draw.mjs +584 -0
  65. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/inspect.mjs +303 -0
  66. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/lib/app-draw.mjs +203 -0
  67. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/lib/cdp.mjs +248 -0
  68. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/lib/probe.mjs +909 -0
  69. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/lib/rules.mjs +243 -0
  70. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/lint.mjs +119 -0
  71. package/assets/claude/packs/frontend/skills/design-taste-frontend/scripts/scenes.mjs +124 -0
  72. package/assets/claude/packs/graphify/.claude-plugin/plugin.json +1 -1
  73. package/assets/claude/packs/integrations/.claude-plugin/plugin.json +1 -1
  74. package/assets/claude/packs/playwright/.claude-plugin/plugin.json +1 -1
  75. package/assets/claude/packs/playwright/agents/playwright-component-analyzer.md +1 -1
  76. package/assets/claude/packs/playwright/agents/playwright-scenario-scanner.md +1 -1
  77. package/assets/claude/packs/playwright/agents/playwright-test-generator.md +1 -1
  78. package/assets/claude/packs/playwright/agents/playwright-test-planner.md +1 -1
  79. package/assets/claude/packs/playwright/agents/playwright-tester.md +1 -1
  80. package/assets/claude/packs/polyglot/.claude-plugin/plugin.json +1 -1
  81. package/assets/claude/packs/styles/.claude-plugin/plugin.json +1 -1
  82. package/assets/copilot/agents/code-planner.agent.md +1 -1
  83. package/assets/copilot/agents/code-reviewer.agent.md +1 -1
  84. package/assets/copilot/agents/code-tester.agent.md +1 -1
  85. package/assets/copilot/agents/copywriter.agent.md +1 -1
  86. package/assets/copilot/agents/feature-wrap-document.agent.md +1 -1
  87. package/assets/copilot/agents/janitor.agent.md +1 -1
  88. package/assets/copilot/agents/modernization.agent.md +1 -1
  89. package/assets/copilot/agents/principal-software-engineer.agent.md +1 -1
  90. package/assets/copilot/agents/refine-issue.agent.md +1 -1
  91. package/assets/copilot/agents/se-system-architecture-reviewer.agent.md +1 -1
  92. package/assets/copilot/agents/se-technical-writer.agent.md +1 -1
  93. package/assets/copilot/agents/skill-creator.agent.md +1 -1
  94. package/assets/copilot/agents/task-researcher.agent.md +1 -1
  95. package/assets/copilot/agents/technical-product-manager.agent.md +1 -1
  96. package/assets/copilot/agents/vision-analyst.agent.md +1 -1
  97. package/assets/copilot/agents/vitest.agent.md +1 -1
  98. package/assets/copilot/agents/workspace-learner.agent.md +2 -2
  99. package/assets/copilot/packs/backend/agents/firebase-developer.agent.md +1 -1
  100. package/assets/copilot/packs/backend/agents/nodejs-express-developer.agent.md +1 -1
  101. package/assets/copilot/packs/frontend/agents/expert-nextjs-developer.agent.md +1 -1
  102. package/assets/copilot/packs/frontend/agents/expert-react-frontend-engineer.agent.md +1 -1
  103. package/assets/copilot/packs/frontend/agents/jest-react-component-analyzer.agent.md +1 -1
  104. package/assets/copilot/packs/frontend/agents/jest-react-scenario-scanner.agent.md +1 -1
  105. package/assets/copilot/packs/frontend/agents/jest-react-test-generator.agent.md +1 -1
  106. package/assets/copilot/packs/frontend/agents/jest-react-test-planner.agent.md +1 -1
  107. package/assets/copilot/packs/frontend/skills/design-taste-frontend/LICENSE +21 -0
  108. package/assets/copilot/packs/frontend/skills/design-taste-frontend/SKILL.md +529 -0
  109. package/assets/copilot/packs/frontend/skills/design-taste-frontend/UPSTREAM.json +7 -0
  110. package/assets/copilot/packs/frontend/skills/design-taste-frontend/assets/app.css +216 -0
  111. package/assets/copilot/packs/frontend/skills/design-taste-frontend/assets/base.css +105 -0
  112. package/assets/copilot/packs/frontend/skills/design-taste-frontend/assets/base.js +37 -0
  113. package/assets/copilot/packs/frontend/skills/design-taste-frontend/assets/charts.js +617 -0
  114. package/assets/copilot/packs/frontend/skills/design-taste-frontend/assets/scenes/stage.css +28 -0
  115. package/assets/copilot/packs/frontend/skills/design-taste-frontend/assets/scenes/stage.js +133 -0
  116. package/assets/copilot/packs/frontend/skills/design-taste-frontend/evals/evals.json +76 -0
  117. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/app.json +1327 -0
  118. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/directions.json +1078 -0
  119. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/heroes.json +1086 -0
  120. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/motions.json +92 -0
  121. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/palettes.json +1485 -0
  122. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/photos.json +7240 -0
  123. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/sections.json +4429 -0
  124. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/sites.json +8350 -0
  125. package/assets/copilot/packs/frontend/skills/design-taste-frontend/library/type.json +2024 -0
  126. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/app-screens.md +1199 -0
  127. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/colour.md +141 -0
  128. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/copy.md +177 -0
  129. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/critique.md +182 -0
  130. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/imagery.md +791 -0
  131. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/layout.md +292 -0
  132. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/motion.md +980 -0
  133. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/research.md +356 -0
  134. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/scenes.md +174 -0
  135. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/tells.md +115 -0
  136. package/assets/copilot/packs/frontend/skills/design-taste-frontend/references/type.md +170 -0
  137. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/assets.mjs +865 -0
  138. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/draw.mjs +584 -0
  139. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/inspect.mjs +303 -0
  140. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/lib/app-draw.mjs +203 -0
  141. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/lib/cdp.mjs +248 -0
  142. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/lib/probe.mjs +909 -0
  143. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/lib/rules.mjs +243 -0
  144. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/lint.mjs +119 -0
  145. package/assets/copilot/packs/frontend/skills/design-taste-frontend/scripts/scenes.mjs +124 -0
  146. package/assets/copilot/packs/playwright/agents/playwright-component-analyzer.agent.md +1 -1
  147. package/assets/copilot/packs/playwright/agents/playwright-scenario-scanner.agent.md +1 -1
  148. package/assets/copilot/packs/playwright/agents/playwright-test-generator.agent.md +1 -1
  149. package/assets/copilot/packs/playwright/agents/playwright-test-planner.agent.md +1 -1
  150. package/assets/copilot/packs/playwright/agents/playwright-tester.agent.md +1 -1
  151. package/assets/manifest.json +2 -0
  152. package/dist/cli.min.js +102 -102
  153. package/package.json +1 -1
  154. package/scripts/__snapshots__/generate-claude-assets.test.js.snap +1 -1
  155. package/scripts/generate-claude-assets.strict.test.js +1 -1
  156. package/scripts/generate-claude-assets.test.js +6 -6
  157. package/scripts/packs-layout.test.js +2 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mthanh/vespercli",
3
- "version": "2.2.0",
3
+ "version": "2.3.0",
4
4
  "description": "Vesper Agent Suite — CLI to manage AI agents, prompts, instructions, and skills for GitHub Copilot (VS Code) and Claude Code",
5
5
  "type": "module",
6
6
  "main": "./src/cli/index.js",
@@ -5,7 +5,7 @@ exports[`golden snapshots (G-4) — the deterministic subset only > agent conver
5
5
  description: 'Golden fixture specialist.'
6
6
  name: golden-agent
7
7
  user-invocable: false
8
- model: 'Claude Sonnet 4.6'
8
+ model: 'Claude Sonnet 5.5'
9
9
  tools: ['read/readFile', 'search/codebase', 'search/fileSearch', 'edit/editFiles', 'execute/runInTerminal', 'agent/runSubagent', 'todo', 'vscode/askQuestions', 'web', 'memory/search_nodes', 'vesper-indexing/*']
10
10
  agents: []
11
11
  ---
@@ -45,7 +45,7 @@ let fx;
45
45
  beforeEach(async () => { fx = await mkdtemp(join(tmpdir(), 'vesper-gen-fx-')); });
46
46
  afterEach(async () => { await rm(fx, { recursive: true, force: true }); });
47
47
 
48
- const GOOD_AGENT = '---\nname: a\ndescription: \'An agent.\'\nmodel: claude-sonnet-5\ntools: Read\n---\nBody.\n';
48
+ const GOOD_AGENT = '---\nname: a\ndescription: \'An agent.\'\nmodel: claude-sonnet-5-5\ntools: Read\n---\nBody.\n';
49
49
  const GOOD_SKILL = '---\nname: s\ndescription: \'A skill.\'\n---\nBody.\n';
50
50
  const GOOD_MAINT = '---\nname: m\ndescription: \'Maintain.\'\ndisable-model-invocation: true\n---\nRun `vesper:workspace-learner`.\n';
51
51
 
@@ -326,7 +326,7 @@ describe('convertAgentToCopilot (Task 2.1)', () => {
326
326
  '---',
327
327
  'name: demo',
328
328
  'description: A demo specialist.',
329
- 'model: claude-opus-4-8',
329
+ 'model: claude-opus-5-5',
330
330
  'tools: Read, Edit, Write, Bash, mcp__memory__search_nodes',
331
331
  'skills: [agent-fundamentals]',
332
332
  '---',
@@ -338,7 +338,7 @@ describe('convertAgentToCopilot (Task 2.1)', () => {
338
338
  const out = convertAgentToCopilot(fixture, 'demo');
339
339
  expect(lineOf(out, 'description')).toBe("description: 'A demo specialist.'");
340
340
  expect(lineOf(out, 'name')).toBe('name: demo');
341
- expect(lineOf(out, 'model')).toBe("model: 'Claude Opus 4.8'");
341
+ expect(lineOf(out, 'model')).toBe("model: 'Claude Opus 5.5'");
342
342
  expect(lineOf(out, 'tools')).toBe(
343
343
  "tools: ['read/readFile', 'edit/editFiles', 'execute/runInTerminal', 'memory/search_nodes']"
344
344
  );
@@ -362,13 +362,13 @@ describe('convertAgentToCopilot (Task 2.1)', () => {
362
362
  });
363
363
 
364
364
  it('omits the tools key entirely when the source declares no tools', () => {
365
- const bare = '---\nname: bare\ndescription: none\nmodel: claude-sonnet-5\n---\nBody.\n';
365
+ const bare = '---\nname: bare\ndescription: none\nmodel: claude-sonnet-5-5\n---\nBody.\n';
366
366
  expect(convertAgentToCopilot(bare, 'bare').split('\n').some((l) => l.startsWith('tools:'))).toBe(false);
367
367
  });
368
368
 
369
369
  it('falls back on an unmapped model id and records it (trips the strict flag)', () => {
370
370
  const src = '---\nname: x\ndescription: d\nmodel: claude-from-the-future\n---\nBody.\n';
371
- expect(lineOf(convertAgentToCopilot(src, 'x'), 'model')).toBe("model: 'Claude Sonnet 4.6'");
371
+ expect(lineOf(convertAgentToCopilot(src, 'x'), 'model')).toBe("model: 'Claude Sonnet 5.5'");
372
372
  expect(__getDiagnostics().sawUnknownModel).toBe(true);
373
373
  });
374
374
 
@@ -377,7 +377,7 @@ describe('convertAgentToCopilot (Task 2.1)', () => {
377
377
  });
378
378
 
379
379
  it('reads CRLF frontmatter (a Windows-saved agent is still hidden, not emitted verbatim)', () => {
380
- const crlf = '---\r\nname: demo\r\ndescription: Crlf agent.\r\nmodel: claude-sonnet-5\r\n---\r\nBody.\r\n';
380
+ const crlf = '---\r\nname: demo\r\ndescription: Crlf agent.\r\nmodel: claude-sonnet-5-5\r\n---\r\nBody.\r\n';
381
381
  const out = convertAgentToCopilot(crlf, 'demo');
382
382
  expect(out).toContain('user-invocable: false');
383
383
  expect(out).not.toContain('\r');
@@ -558,7 +558,7 @@ describe('golden snapshots (G-4) — the deterministic subset only', () => {
558
558
  '---',
559
559
  'name: golden-agent',
560
560
  'description: Golden fixture specialist.',
561
- 'model: claude-sonnet-5',
561
+ 'model: claude-sonnet-5-5',
562
562
  'tools: Read, Grep, Glob, Edit, Write, Bash, WebFetch, WebSearch, Agent, TodoWrite, AskUserQuestion, mcp__vesper-indexing__vesper_search, mcp__vesper-indexing__vesper_symbols, mcp__vesper-indexing__vesper_status, mcp__vesper-indexing__vesper_reindex, mcp__memory__search_nodes',
563
563
  'skills: [agent-fundamentals]',
564
564
  '---',
@@ -118,6 +118,7 @@ describe('epic J — third-party skills are pack content with an UPSTREAM.json',
118
118
  'github-actions-to-gitlab-ci': 'integrations',
119
119
  'i-have-adhd': 'styles',
120
120
  ponytail: 'styles',
121
+ 'design-taste-frontend': 'frontend',
121
122
  });
122
123
 
123
124
  it('every third-party skill ships UPSTREAM.json (git url, 40-hex sha, ISO date, license, path) and its LICENSE; nothing ships under assets/vendor (kills: a record dropped; a snapshot moved back)', async () => {
@@ -289,7 +290,7 @@ describe('strict pack validation on a fixture', () => {
289
290
  beforeEach(async () => { fx = await mkdtemp(join(tmpdir(), 'vesper-packs-strict-')); });
290
291
  afterEach(async () => { await rm(fx, { recursive: true, force: true }); });
291
292
 
292
- const AGENT = (n) => `---\nname: ${n}\ndescription: 'An agent.'\nmodel: claude-sonnet-5\n---\nBody.\n`;
293
+ const AGENT = (n) => `---\nname: ${n}\ndescription: 'An agent.'\nmodel: claude-sonnet-5-5\n---\nBody.\n`;
293
294
  const SKILL = (n) => `---\nname: ${n}\ndescription: 'A skill.'\n---\nBody.\n`;
294
295
  const MAINT = '---\nname: m\ndescription: \'Maintain.\'\ndisable-model-invocation: true\n---\nRun it.\n';
295
296