@mthanh/vespercli 1.8.0 → 2.0.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 (1288) hide show
  1. package/README.md +284 -214
  2. package/assets/CATALOG.md +496 -314
  3. package/assets/claude/.claude-plugin/marketplace.json +56 -0
  4. package/assets/claude/.claude-plugin/plugin.json +10 -0
  5. package/assets/claude/agents/code-reviewer.md +13 -0
  6. package/assets/claude/agents/feature-wrap-document.md +29 -6
  7. package/assets/claude/agents/skill-creator.md +1 -1
  8. package/assets/claude/agents/workspace-learner.md +12 -6
  9. package/assets/claude/context.md.tpl +1 -1
  10. package/assets/claude/orchestration.md.tpl +15 -14
  11. package/assets/claude/packs/backend/.claude-plugin/plugin.json +10 -0
  12. package/assets/claude/packs/backend/skills/agent-fundamentals/SKILL.md +89 -0
  13. package/assets/claude/packs/backend/skills/agent-fundamentals/references/codebase-query.md +95 -0
  14. package/assets/claude/packs/backend/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  15. package/assets/claude/packs/backend/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  16. package/assets/claude/packs/docs/.claude-plugin/plugin.json +10 -0
  17. package/assets/claude/packs/docs/skills/agent-fundamentals/SKILL.md +89 -0
  18. package/assets/claude/packs/docs/skills/agent-fundamentals/references/codebase-query.md +95 -0
  19. package/assets/claude/packs/docs/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  20. package/assets/claude/packs/docs/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  21. package/assets/claude/packs/frontend/.claude-plugin/plugin.json +10 -0
  22. package/assets/claude/packs/frontend/skills/agent-fundamentals/SKILL.md +89 -0
  23. package/assets/claude/packs/frontend/skills/agent-fundamentals/references/codebase-query.md +95 -0
  24. package/assets/claude/packs/frontend/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  25. package/assets/claude/packs/frontend/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  26. package/assets/claude/packs/frontend/skills/nextjs-tailwind/SKILL.md +74 -0
  27. package/assets/claude/packs/frontend/skills/reactjs/SKILL.md +164 -0
  28. package/assets/claude/packs/frontend/skills/tailwind-v4-vite/SKILL.md +238 -0
  29. package/assets/claude/packs/integrations/.claude-plugin/plugin.json +10 -0
  30. package/assets/claude/packs/integrations/skills/agent-fundamentals/SKILL.md +89 -0
  31. package/assets/claude/packs/integrations/skills/agent-fundamentals/references/codebase-query.md +95 -0
  32. package/assets/claude/packs/integrations/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  33. package/assets/claude/packs/integrations/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  34. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/LICENSE +21 -0
  35. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/SKILL.md +370 -0
  36. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/UPSTREAM.json +7 -0
  37. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/references/marketplace-actions.md +1042 -0
  38. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/references/syntax-mapping.md +906 -0
  39. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/references/validator.md +91 -0
  40. package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/scripts/validate.sh +206 -0
  41. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/LICENSE +21 -0
  42. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/SKILL.md +422 -0
  43. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/UPSTREAM.json +7 -0
  44. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/README.md +70 -0
  45. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/.gitlab-ci.yml +55 -0
  46. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/README.md +28 -0
  47. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-click/.gitlab-ci.yml +133 -0
  48. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-click/README.md +31 -0
  49. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.after-layered.yml +59 -0
  50. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.before.yml +34 -0
  51. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.broken.yml +49 -0
  52. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.optimized.yml +65 -0
  53. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.yml +101 -0
  54. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/README.md +42 -0
  55. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/caching.md +170 -0
  56. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/catalog.md +173 -0
  57. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/debugging.md +168 -0
  58. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/images.md +79 -0
  59. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/mental-model.md +96 -0
  60. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/onboarding.md +122 -0
  61. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/optimize.md +301 -0
  62. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/recipes.md +426 -0
  63. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/syntax.md +319 -0
  64. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/verification.md +278 -0
  65. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/scripts/catalog-search.sh +76 -0
  66. package/assets/claude/packs/integrations/skills/gitlab-ci-skill/scripts/verify.sh +332 -0
  67. package/assets/claude/packs/integrations/skills/gitlab-guardrails/SKILL.md +62 -0
  68. package/assets/claude/packs/playwright/.claude-plugin/plugin.json +10 -0
  69. package/assets/claude/packs/playwright/skills/agent-fundamentals/SKILL.md +89 -0
  70. package/assets/claude/packs/playwright/skills/agent-fundamentals/references/codebase-query.md +95 -0
  71. package/assets/claude/packs/playwright/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  72. package/assets/claude/packs/playwright/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  73. package/assets/claude/packs/playwright/skills/playwright-generate-test/SKILL.md +25 -0
  74. package/assets/claude/packs/polyglot/.claude-plugin/plugin.json +10 -0
  75. package/assets/claude/packs/polyglot/skills/agent-fundamentals/SKILL.md +89 -0
  76. package/assets/claude/packs/polyglot/skills/agent-fundamentals/references/codebase-query.md +95 -0
  77. package/assets/claude/packs/polyglot/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  78. package/assets/claude/packs/polyglot/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  79. package/assets/claude/packs/polyglot/skills/flutter/SKILL.md +449 -0
  80. package/assets/claude/packs/polyglot/skills/google-adk-python/SKILL.md +242 -0
  81. package/assets/claude/packs/polyglot/skills/java/SKILL.md +83 -0
  82. package/assets/claude/packs/styles/.claude-plugin/plugin.json +10 -0
  83. package/assets/claude/packs/styles/skills/agent-fundamentals/SKILL.md +89 -0
  84. package/assets/claude/packs/styles/skills/agent-fundamentals/references/codebase-query.md +95 -0
  85. package/assets/claude/packs/styles/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  86. package/assets/claude/packs/styles/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  87. package/assets/claude/packs/styles/skills/i-have-adhd/UPSTREAM.json +7 -0
  88. package/assets/claude/packs/styles/skills/ponytail/UPSTREAM.json +7 -0
  89. package/assets/claude/skills/create-specification/SKILL.md +136 -0
  90. package/assets/claude/skills/document/SKILL.md +5 -0
  91. package/assets/claude/skills/mcp-memory/SKILL.md +13 -13
  92. package/assets/claude/skills/mcp-memory/references/agent-memory-protocol.md +33 -42
  93. package/assets/claude/skills/mcp-memory/references/entity-schema.md +7 -26
  94. package/assets/claude/skills/mcp-memory/references/memory-hygiene.md +1 -4
  95. package/assets/claude/skills/project-management/SKILL.md +5 -0
  96. package/assets/claude/skills/repo-story-time/SKILL.md +134 -0
  97. package/assets/claude/skills/self-explanatory-code-commenting/SKILL.md +3 -1
  98. package/assets/claude/skills/skill-creator/SKILL.md +1 -1
  99. package/assets/claude/skills/task-implementation/SKILL.md +2 -0
  100. package/assets/claude/skills/vesper-catalog-editing-safety/SKILL.md +82 -52
  101. package/assets/claude/skills/vesper-orchestration/SKILL.md +71 -0
  102. package/assets/claude/skills/vesper-orchestration/references/implement-pipeline.md +337 -0
  103. package/assets/claude/skills/vesper-orchestration/references/multi-task-dispatch.md +13 -0
  104. package/assets/claude/skills/vesper-orchestration/references/qa-e2e-pipeline.md +160 -0
  105. package/assets/claude/skills/vesper-orchestration/references/reinit-pipeline.md +98 -0
  106. package/assets/claude/skills/vesper-orchestration/references/research-plan-pipeline.md +214 -0
  107. package/assets/claude/skills/vscode-agent-config/SKILL.md +5 -0
  108. package/assets/claude/vesper-orchestrator.md +211 -161
  109. package/assets/claude-committed/agents/vesper-orchestrator.md +31 -0
  110. package/assets/claude-committed/skills/compact-knowledge/SKILL.md +32 -0
  111. package/assets/claude-committed/skills/reinit/SKILL.md +22 -0
  112. package/assets/claude-committed/skills/revalidate-knowledge/SKILL.md +44 -0
  113. package/assets/claude-committed/skills/revalidate-team/SKILL.md +25 -0
  114. package/assets/copilot/agents/code-planner.agent.md +418 -0
  115. package/assets/copilot/agents/code-reviewer.agent.md +90 -0
  116. package/assets/copilot/agents/code-tester.agent.md +23 -0
  117. package/assets/copilot/agents/context7.agent.md +897 -0
  118. package/assets/copilot/agents/copywriter.agent.md +182 -0
  119. package/assets/copilot/agents/feature-wrap-document.agent.md +713 -0
  120. package/assets/copilot/agents/janitor.agent.md +103 -0
  121. package/assets/copilot/agents/modernization.agent.md +646 -0
  122. package/assets/copilot/agents/principal-software-engineer.agent.md +50 -0
  123. package/assets/copilot/agents/refine-issue.agent.md +39 -0
  124. package/assets/copilot/agents/se-system-architecture-reviewer.agent.md +190 -0
  125. package/assets/copilot/agents/se-technical-writer.agent.md +432 -0
  126. package/assets/copilot/agents/skill-creator.agent.md +395 -0
  127. package/assets/copilot/agents/task-researcher.agent.md +294 -0
  128. package/assets/copilot/agents/technical-product-manager.agent.md +316 -0
  129. package/assets/copilot/agents/vision-analyst.agent.md +92 -0
  130. package/assets/copilot/agents/vitest.agent.md +603 -0
  131. package/assets/copilot/agents/workspace-learner.agent.md +439 -0
  132. package/assets/copilot/instructions-extended/flutter/flutter.instructions.md +447 -0
  133. package/assets/copilot/instructions-extended/java/java.instructions.md +81 -0
  134. package/assets/copilot/instructions-extended/nextjs-tailwind/nextjs-tailwind.instructions.md +72 -0
  135. package/assets/copilot/instructions-extended/reactjs/reactjs.instructions.md +162 -0
  136. package/assets/copilot/instructions-extended/self-explanatory-code-commenting/self-explanatory-code-commenting.instructions.md +162 -0
  137. package/assets/copilot/instructions-extended/tailwind-v4-vite/tailwind-v4-vite.instructions.md +236 -0
  138. package/assets/copilot/instructions-extended/task-implementation/task-implementation.instructions.md +223 -0
  139. package/assets/copilot/packs/backend/agents/firebase-developer.agent.md +701 -0
  140. package/assets/copilot/packs/backend/agents/nodejs-express-developer.agent.md +619 -0
  141. package/assets/copilot/packs/backend/skills/nestjs/SKILL.md +425 -0
  142. package/assets/copilot/packs/docs/skills/ai-multimodal/SKILL.md +357 -0
  143. package/assets/copilot/packs/frontend/agents/expert-nextjs-developer.agent.md +489 -0
  144. package/assets/copilot/packs/frontend/agents/expert-react-frontend-engineer.agent.md +751 -0
  145. package/assets/copilot/packs/frontend/agents/jest-react-component-analyzer.agent.md +303 -0
  146. package/assets/copilot/packs/frontend/agents/jest-react-scenario-scanner.agent.md +236 -0
  147. package/assets/copilot/packs/frontend/agents/jest-react-test-generator.agent.md +605 -0
  148. package/assets/copilot/packs/frontend/agents/jest-react-test-planner.agent.md +461 -0
  149. package/assets/copilot/packs/frontend/agents/jest-react-test-runner.agent.md +332 -0
  150. package/assets/copilot/packs/frontend/skills/nextjs/SKILL.md +179 -0
  151. package/assets/copilot/packs/integrations/agents/clickup-agent.agent.md +135 -0
  152. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/LICENSE +21 -0
  153. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/SKILL.md +370 -0
  154. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/UPSTREAM.json +7 -0
  155. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/references/marketplace-actions.md +1042 -0
  156. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/references/syntax-mapping.md +906 -0
  157. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/references/validator.md +91 -0
  158. package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/scripts/validate.sh +206 -0
  159. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/LICENSE +21 -0
  160. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/SKILL.md +422 -0
  161. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/UPSTREAM.json +7 -0
  162. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/README.md +70 -0
  163. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/.gitlab-ci.yml +55 -0
  164. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/README.md +28 -0
  165. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-click/.gitlab-ci.yml +133 -0
  166. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-click/README.md +31 -0
  167. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.after-layered.yml +59 -0
  168. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.before.yml +34 -0
  169. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.broken.yml +49 -0
  170. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.optimized.yml +65 -0
  171. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.yml +101 -0
  172. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/README.md +42 -0
  173. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/caching.md +170 -0
  174. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/catalog.md +173 -0
  175. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/debugging.md +168 -0
  176. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/images.md +79 -0
  177. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/mental-model.md +96 -0
  178. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/onboarding.md +122 -0
  179. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/optimize.md +301 -0
  180. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/recipes.md +426 -0
  181. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/syntax.md +319 -0
  182. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/verification.md +278 -0
  183. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/scripts/catalog-search.sh +76 -0
  184. package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/scripts/verify.sh +332 -0
  185. package/assets/copilot/packs/integrations/skills/gitlab-guardrails/SKILL.md +62 -0
  186. package/assets/copilot/packs/playwright/agents/playwright-component-analyzer.agent.md +216 -0
  187. package/assets/copilot/packs/playwright/agents/playwright-scenario-scanner.agent.md +180 -0
  188. package/assets/copilot/packs/playwright/agents/playwright-test-generator.agent.md +410 -0
  189. package/assets/copilot/packs/playwright/agents/playwright-test-planner.agent.md +398 -0
  190. package/assets/copilot/packs/playwright/agents/playwright-tester.agent.md +65 -0
  191. package/assets/copilot/packs/playwright/skills/chrome-devtools/SKILL.md +360 -0
  192. package/assets/copilot/packs/playwright/skills/chrome-devtools/scripts/README.md +213 -0
  193. package/assets/copilot/packs/playwright/skills/playwright-generate-test/SKILL.md +25 -0
  194. package/assets/copilot/packs/playwright/skills/playwright-typescript/SKILL.md +86 -0
  195. package/assets/copilot/packs/polyglot/skills/flutter/SKILL.md +447 -0
  196. package/assets/copilot/packs/polyglot/skills/google-adk-python/SKILL.md +242 -0
  197. package/assets/copilot/packs/styles/skills/i-have-adhd/LICENSE +21 -0
  198. package/assets/copilot/packs/styles/skills/i-have-adhd/SKILL.md +142 -0
  199. package/assets/copilot/packs/styles/skills/i-have-adhd/UPSTREAM.json +7 -0
  200. package/assets/copilot/packs/styles/skills/ponytail/LICENSE +21 -0
  201. package/assets/copilot/packs/styles/skills/ponytail/SKILL.md +120 -0
  202. package/assets/copilot/packs/styles/skills/ponytail/UPSTREAM.json +7 -0
  203. package/assets/copilot/prompts/compact-knowledge.prompt.md +27 -0
  204. package/assets/copilot/prompts/reinit.prompt.md +19 -0
  205. package/assets/copilot/prompts/revalidate-knowledge.prompt.md +39 -0
  206. package/assets/copilot/prompts/revalidate-team.prompt.md +21 -0
  207. package/assets/copilot/skills/agent-fundamentals/SKILL.md +89 -0
  208. package/assets/copilot/skills/agent-fundamentals/references/codebase-query.md +95 -0
  209. package/assets/copilot/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
  210. package/assets/copilot/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
  211. package/assets/copilot/skills/create-specification/SKILL.md +136 -0
  212. package/assets/copilot/skills/document/SKILL.md +45 -0
  213. package/assets/copilot/skills/mcp-memory/SKILL.md +97 -0
  214. package/assets/copilot/skills/mcp-memory/references/agent-memory-protocol.md +186 -0
  215. package/assets/copilot/skills/mcp-memory/references/entity-schema.md +141 -0
  216. package/assets/copilot/skills/mcp-memory/references/memory-hygiene.md +163 -0
  217. package/assets/copilot/skills/nodejs-javascript-vitest/SKILL.md +34 -0
  218. package/assets/copilot/skills/project-management/SKILL.md +129 -0
  219. package/assets/copilot/skills/repo-story-time/SKILL.md +134 -0
  220. package/assets/copilot/skills/self-explanatory-code-commenting/SKILL.md +162 -0
  221. package/assets/copilot/skills/sequential-thinking/README.md +118 -0
  222. package/assets/copilot/skills/skill-creator/SKILL.md +237 -0
  223. package/assets/copilot/skills/skill-creator/agent_skills_spec.md +55 -0
  224. package/assets/copilot/skills/task-implementation/SKILL.md +223 -0
  225. package/assets/copilot/skills/vesper-catalog-editing-safety/SKILL.md +172 -0
  226. package/assets/copilot/skills/vesper-orchestration/SKILL.md +71 -0
  227. package/assets/copilot/skills/vesper-orchestration/references/implement-pipeline.md +337 -0
  228. package/assets/copilot/skills/vesper-orchestration/references/multi-task-dispatch.md +13 -0
  229. package/assets/copilot/skills/vesper-orchestration/references/qa-e2e-pipeline.md +160 -0
  230. package/assets/copilot/skills/vesper-orchestration/references/reinit-pipeline.md +98 -0
  231. package/assets/copilot/skills/vesper-orchestration/references/research-plan-pipeline.md +214 -0
  232. package/assets/copilot/skills/vscode-agent-config/SKILL.md +95 -0
  233. package/assets/hooks/post-checkout +33 -14
  234. package/assets/hooks/pre-commit +54 -39
  235. package/assets/legacy/claude-1x-digests.json +3354 -0
  236. package/assets/manifest.json +174 -6
  237. package/dist/cli.min.js +184 -51
  238. package/package.json +11 -2
  239. package/scripts/__snapshots__/generate-claude-assets.test.js.snap +31 -0
  240. package/scripts/generate-claude-assets.js +569 -529
  241. package/scripts/generate-claude-assets.strict.test.js +303 -0
  242. package/scripts/generate-claude-assets.test.js +605 -168
  243. package/scripts/generate-legacy-digests.js +192 -0
  244. package/scripts/generate-manifests.js +26 -147
  245. package/scripts/packs-layout.test.js +378 -0
  246. package/src/mcp/vesper-indexing/dist/cli-index.js +0 -1
  247. package/src/mcp/vesper-indexing/dist/cli-index.js.map +1 -1
  248. package/assets/agents/clickup-agent/clickup-agent.agent.md +0 -135
  249. package/assets/agents/code-tester/code-tester.agent.md +0 -35
  250. package/assets/agents/context7/context7.agent.md +0 -901
  251. package/assets/agents/copywriter/copywriter.agent.md +0 -182
  252. package/assets/agents/expert-nextjs-developer/expert-nextjs-developer.agent.md +0 -502
  253. package/assets/agents/expert-react-frontend-engineer/expert-react-frontend-engineer.agent.md +0 -785
  254. package/assets/agents/firebase-developer/firebase-developer.agent.md +0 -714
  255. package/assets/agents/janitor/janitor.agent.md +0 -136
  256. package/assets/agents/jest-react-component-analyzer/jest-react-component-analyzer.agent.md +0 -308
  257. package/assets/agents/jest-react-scenario-scanner/jest-react-scenario-scanner.agent.md +0 -236
  258. package/assets/agents/jest-react-test-generator/jest-react-test-generator.agent.md +0 -605
  259. package/assets/agents/jest-react-test-planner/jest-react-test-planner.agent.md +0 -461
  260. package/assets/agents/jest-react-test-runner/jest-react-test-runner.agent.md +0 -332
  261. package/assets/agents/modernization/modernization.agent.md +0 -660
  262. package/assets/agents/nodejs-express-developer/nodejs-express-developer.agent.md +0 -632
  263. package/assets/agents/playwright-component-analyzer/playwright-component-analyzer.agent.md +0 -221
  264. package/assets/agents/playwright-scenario-scanner/playwright-scenario-scanner.agent.md +0 -180
  265. package/assets/agents/playwright-test-generator/playwright-test-generator.agent.md +0 -410
  266. package/assets/agents/playwright-test-planner/playwright-test-planner.agent.md +0 -398
  267. package/assets/agents/playwright-tester/playwright-tester.agent.md +0 -65
  268. package/assets/agents/refine-issue/refine-issue.agent.md +0 -39
  269. package/assets/agents/vitest/vitest.agent.md +0 -603
  270. package/assets/claude/agents/history-logger.md +0 -102
  271. package/assets/claude/commands/compact-knowledge.md +0 -10
  272. package/assets/claude/commands/create-specification.md +0 -131
  273. package/assets/claude/commands/playwright-generate-test.md +0 -24
  274. package/assets/claude/commands/reinit.md +0 -5
  275. package/assets/claude/commands/repo-story-time.md +0 -154
  276. package/assets/claude/commands/revalidate-knowledge.md +0 -17
  277. package/assets/claude/commands/revalidate-team.md +0 -5
  278. package/assets/claude/skills/gitlab-guardrails/SKILL.md +0 -62
  279. package/assets/claude/skills/google-adk-python/SKILL.md +0 -237
  280. package/assets/core/agents/code-planner.agent.md +0 -454
  281. package/assets/core/agents/code-reviewer.agent.md +0 -98
  282. package/assets/core/agents/feature-wrap-document.agent.md +0 -593
  283. package/assets/core/agents/history-logger.agent.md +0 -112
  284. package/assets/core/agents/principal-software-engineer.agent.md +0 -80
  285. package/assets/core/agents/se-system-architecture-reviewer.agent.md +0 -203
  286. package/assets/core/agents/se-technical-writer.agent.md +0 -446
  287. package/assets/core/agents/skill-creator.agent.md +0 -441
  288. package/assets/core/agents/task-researcher.agent.md +0 -329
  289. package/assets/core/agents/technical-product-manager.agent.md +0 -328
  290. package/assets/core/agents/vesper.agent.md +0 -679
  291. package/assets/core/agents/vision-analyst.agent.md +0 -93
  292. package/assets/core/agents/workspace-learner.agent.md +0 -509
  293. package/assets/core/instructions/terminal-discipline.instructions.md +0 -27
  294. package/assets/core/instructions/vesper-cli-development.instructions.md +0 -85
  295. package/assets/core/instructions/vesper-implement.instructions.md +0 -250
  296. package/assets/core/instructions/vesper-qa-e2e.instructions.md +0 -155
  297. package/assets/core/instructions/vesper-reinit.instructions.md +0 -99
  298. package/assets/core/instructions/vesper-research-plan.instructions.md +0 -193
  299. package/assets/core/instructions/vscode-mcp-tools.instructions.md +0 -138
  300. package/assets/core/prompts/compact-knowledge.prompt.md +0 -14
  301. package/assets/core/prompts/memory-update.prompt.md +0 -94
  302. package/assets/core/prompts/revalidate-knowledge.prompt.md +0 -19
  303. package/assets/core/skills/agent-fundamentals/SKILL.md +0 -75
  304. package/assets/core/skills/agent-fundamentals/references/codebase-query.md +0 -106
  305. package/assets/core/skills/agent-fundamentals/references/terminal-discipline.md +0 -94
  306. package/assets/core/skills/agent-fundamentals/references/tool-usage-patterns.md +0 -72
  307. package/assets/core/skills/mcp-memory/SKILL.md +0 -109
  308. package/assets/core/skills/mcp-memory/references/agent-memory-protocol.md +0 -195
  309. package/assets/core/skills/mcp-memory/references/entity-schema.md +0 -160
  310. package/assets/core/skills/mcp-memory/references/memory-hygiene.md +0 -166
  311. package/assets/core/skills/vesper-orchestration/SKILL.md +0 -31
  312. package/assets/core/skills/vesper-orchestration/references/implement-pipeline.md +0 -244
  313. package/assets/core/skills/vesper-orchestration/references/qa-e2e-pipeline.md +0 -151
  314. package/assets/core/skills/vesper-orchestration/references/reinit-pipeline.md +0 -87
  315. package/assets/core/skills/vesper-orchestration/references/research-plan-pipeline.md +0 -189
  316. package/assets/instructions/document/document.instructions.md +0 -40
  317. package/assets/instructions/flutter/dart-n-flutter.instructions.md +0 -447
  318. package/assets/instructions/java/java.instructions.md +0 -81
  319. package/assets/instructions/nestjs/nestjs.instructions.md +0 -424
  320. package/assets/instructions/nextjs/nextjs.instructions.md +0 -178
  321. package/assets/instructions/nextjs-tailwind/nextjs-tailwind.instructions.md +0 -72
  322. package/assets/instructions/nodejs-javascript-vitest/nodejs-javascript-vitest.instructions.md +0 -33
  323. package/assets/instructions/playwright-typescript/playwright-typescript.instructions.md +0 -85
  324. package/assets/instructions/project-management/project-management.instructions.md +0 -124
  325. package/assets/instructions/reactjs/reactjs.instructions.md +0 -162
  326. package/assets/instructions/self-explanatory-code-commenting/self-explanatory-code-commenting.instructions.md +0 -162
  327. package/assets/instructions/tailwind-v4-vite/tailwind-v4-vite.instructions.md +0 -236
  328. package/assets/instructions/task-implementation/task-implementation.instructions.md +0 -223
  329. package/assets/prompts/create-specification/create-specification.prompt.md +0 -151
  330. package/assets/prompts/playwright-generate-test/playwright-generate-test.prompt.md +0 -26
  331. package/assets/prompts/repo-story-time/repo-story-time.prompt.md +0 -156
  332. package/assets/skills/.env.example +0 -32
  333. package/assets/skills/.mcp.json.example +0 -19
  334. package/assets/skills/README.md +0 -111
  335. package/assets/skills/aesthetic/manifest.json +0 -14
  336. package/assets/skills/ai-multimodal/SKILL.md +0 -357
  337. package/assets/skills/ai-multimodal/manifest.json +0 -20
  338. package/assets/skills/backend-development/manifest.json +0 -19
  339. package/assets/skills/better-auth/manifest.json +0 -15
  340. package/assets/skills/chrome-devtools/SKILL.md +0 -360
  341. package/assets/skills/chrome-devtools/manifest.json +0 -31
  342. package/assets/skills/chrome-devtools/scripts/README.md +0 -213
  343. package/assets/skills/code-review/manifest.json +0 -11
  344. package/assets/skills/databases/manifest.json +0 -25
  345. package/assets/skills/debugging/manifest.json +0 -17
  346. package/assets/skills/devops/manifest.json +0 -25
  347. package/assets/skills/docs-seeker/manifest.json +0 -15
  348. package/assets/skills/document-skills/manifest.json +0 -137
  349. package/assets/skills/frontend-design/manifest.json +0 -9
  350. package/assets/skills/gitlab-guardrails/SKILL.md +0 -62
  351. package/assets/skills/gitlab-guardrails/manifest.json +0 -8
  352. package/assets/skills/google-adk-python/SKILL.md +0 -237
  353. package/assets/skills/google-adk-python/manifest.json +0 -8
  354. package/assets/skills/mcp-builder/manifest.json +0 -17
  355. package/assets/skills/mermaidjs-v11/manifest.json +0 -13
  356. package/assets/skills/premium-frontend-ui/manifest.json +0 -8
  357. package/assets/skills/problem-solving/manifest.json +0 -14
  358. package/assets/skills/react-mui-tanstack/manifest.json +0 -18
  359. package/assets/skills/sequential-thinking/README.md +0 -118
  360. package/assets/skills/sequential-thinking/manifest.json +0 -11
  361. package/assets/skills/skill-creator/SKILL.md +0 -237
  362. package/assets/skills/skill-creator/manifest.json +0 -12
  363. package/assets/skills/tailwind-shadcn/manifest.json +0 -104
  364. package/assets/skills/vercel-react-best-practices/manifest.json +0 -60
  365. package/assets/skills/vesper-catalog-editing-safety/SKILL.md +0 -142
  366. package/assets/skills/vesper-catalog-editing-safety/manifest.json +0 -8
  367. package/assets/skills/vscode-agent-config/SKILL.md +0 -90
  368. package/assets/skills/vscode-agent-config/manifest.json +0 -8
  369. package/assets/skills/web-design-guidelines/manifest.json +0 -8
  370. package/assets/skills/web-frameworks/manifest.json +0 -24
  371. package/assets/vendor/i-have-adhd/VENDOR.md +0 -56
  372. package/assets/vendor/ponytail/VENDOR.md +0 -115
  373. /package/assets/claude/{agents → packs/backend/agents}/firebase-developer.md +0 -0
  374. /package/assets/claude/{agents → packs/backend/agents}/nodejs-express-developer.md +0 -0
  375. /package/assets/claude/{skills → packs/backend/skills}/backend-development/SKILL.md +0 -0
  376. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-api-design.md +0 -0
  377. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-architecture.md +0 -0
  378. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-authentication.md +0 -0
  379. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-code-quality.md +0 -0
  380. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-debugging.md +0 -0
  381. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-devops.md +0 -0
  382. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-mindset.md +0 -0
  383. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-performance.md +0 -0
  384. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-security.md +0 -0
  385. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-technologies.md +0 -0
  386. /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-testing.md +0 -0
  387. /package/assets/claude/{skills → packs/backend/skills}/better-auth/SKILL.md +0 -0
  388. /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/advanced-features.md +0 -0
  389. /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/database-integration.md +0 -0
  390. /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/email-password-auth.md +0 -0
  391. /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/oauth-providers.md +0 -0
  392. /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/.coverage +0 -0
  393. /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/better_auth_init.py +0 -0
  394. /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/requirements.txt +0 -0
  395. /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/tests/.coverage +0 -0
  396. /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/tests/test_better_auth_init.py +0 -0
  397. /package/assets/claude/{skills → packs/backend/skills}/databases/SKILL.md +0 -0
  398. /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-aggregation.md +0 -0
  399. /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-atlas.md +0 -0
  400. /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-crud.md +0 -0
  401. /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-indexing.md +0 -0
  402. /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-administration.md +0 -0
  403. /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-performance.md +0 -0
  404. /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-psql-cli.md +0 -0
  405. /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-queries.md +0 -0
  406. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/.coverage +0 -0
  407. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/db_backup.py +0 -0
  408. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/db_migrate.py +0 -0
  409. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/db_performance_check.py +0 -0
  410. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/requirements.txt +0 -0
  411. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/coverage-db.json +0 -0
  412. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/requirements.txt +0 -0
  413. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/test_db_backup.py +0 -0
  414. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/test_db_migrate.py +0 -0
  415. /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/test_db_performance_check.py +0 -0
  416. /package/assets/claude/{skills → packs/backend/skills}/devops/.env.example +0 -0
  417. /package/assets/claude/{skills → packs/backend/skills}/devops/SKILL.md +0 -0
  418. /package/assets/claude/{skills → packs/backend/skills}/devops/references/browser-rendering.md +0 -0
  419. /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-d1-kv.md +0 -0
  420. /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-platform.md +0 -0
  421. /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-r2-storage.md +0 -0
  422. /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-workers-advanced.md +0 -0
  423. /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-workers-apis.md +0 -0
  424. /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-workers-basics.md +0 -0
  425. /package/assets/claude/{skills → packs/backend/skills}/devops/references/docker-basics.md +0 -0
  426. /package/assets/claude/{skills → packs/backend/skills}/devops/references/docker-compose.md +0 -0
  427. /package/assets/claude/{skills → packs/backend/skills}/devops/references/gcloud-platform.md +0 -0
  428. /package/assets/claude/{skills → packs/backend/skills}/devops/references/gcloud-services.md +0 -0
  429. /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/cloudflare_deploy.py +0 -0
  430. /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/docker_optimize.py +0 -0
  431. /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/requirements.txt +0 -0
  432. /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/tests/requirements.txt +0 -0
  433. /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/tests/test_cloudflare_deploy.py +0 -0
  434. /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/tests/test_docker_optimize.py +0 -0
  435. /package/assets/claude/{skills → packs/backend/skills}/nestjs/SKILL.md +0 -0
  436. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/.env.example +0 -0
  437. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/SKILL.md +0 -0
  438. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/audio-processing.md +0 -0
  439. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/image-generation.md +0 -0
  440. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/video-analysis.md +0 -0
  441. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/vision-understanding.md +0 -0
  442. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/document_converter.py +0 -0
  443. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/gemini_batch_process.py +0 -0
  444. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/media_optimizer.py +0 -0
  445. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/requirements.txt +0 -0
  446. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/.coverage +0 -0
  447. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/requirements.txt +0 -0
  448. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/test_document_converter.py +0 -0
  449. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/test_gemini_batch_process.py +0 -0
  450. /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/test_media_optimizer.py +0 -0
  451. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/LICENSE.txt +0 -0
  452. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/SKILL.md +0 -0
  453. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/docx-js.md +0 -0
  454. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
  455. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
  456. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
  457. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
  458. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
  459. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
  460. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
  461. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
  462. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
  463. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
  464. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
  465. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
  466. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
  467. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
  468. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
  469. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
  470. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
  471. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
  472. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
  473. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
  474. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
  475. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
  476. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
  477. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
  478. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
  479. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
  480. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
  481. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
  482. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
  483. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
  484. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
  485. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/mce/mc.xsd +0 -0
  486. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
  487. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
  488. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
  489. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
  490. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
  491. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
  492. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
  493. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/pack.py +0 -0
  494. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/unpack.py +0 -0
  495. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validate.py +0 -0
  496. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/__init__.py +0 -0
  497. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/base.py +0 -0
  498. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/docx.py +0 -0
  499. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/pptx.py +0 -0
  500. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/redlining.py +0 -0
  501. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml.md +0 -0
  502. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/__init__.py +0 -0
  503. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/document.py +0 -0
  504. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/comments.xml +0 -0
  505. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtended.xml +0 -0
  506. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtensible.xml +0 -0
  507. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/commentsIds.xml +0 -0
  508. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/people.xml +0 -0
  509. /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/utilities.py +0 -0
  510. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/LICENSE.txt +0 -0
  511. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/SKILL.md +0 -0
  512. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/forms.md +0 -0
  513. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/reference.md +0 -0
  514. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes.py +0 -0
  515. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes_test.py +0 -0
  516. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/check_fillable_fields.py +0 -0
  517. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/convert_pdf_to_images.py +0 -0
  518. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/create_validation_image.py +0 -0
  519. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/extract_form_field_info.py +0 -0
  520. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/fill_fillable_fields.py +0 -0
  521. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +0 -0
  522. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/LICENSE.txt +0 -0
  523. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/SKILL.md +0 -0
  524. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/html2pptx.md +0 -0
  525. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
  526. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
  527. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
  528. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
  529. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
  530. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
  531. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
  532. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
  533. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
  534. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
  535. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
  536. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
  537. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
  538. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
  539. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
  540. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
  541. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
  542. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
  543. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
  544. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
  545. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
  546. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
  547. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
  548. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
  549. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
  550. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
  551. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
  552. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
  553. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
  554. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
  555. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
  556. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/mce/mc.xsd +0 -0
  557. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
  558. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
  559. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
  560. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
  561. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
  562. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
  563. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
  564. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/pack.py +0 -0
  565. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
  566. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validate.py +0 -0
  567. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/__init__.py +0 -0
  568. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/base.py +0 -0
  569. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/docx.py +0 -0
  570. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/pptx.py +0 -0
  571. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/redlining.py +0 -0
  572. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml.md +0 -0
  573. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/html2pptx.js +0 -0
  574. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/inventory.py +0 -0
  575. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/rearrange.py +0 -0
  576. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/replace.py +0 -0
  577. /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/thumbnail.py +0 -0
  578. /package/assets/claude/{skills → packs/docs/skills}/document-skills/xlsx/LICENSE.txt +0 -0
  579. /package/assets/claude/{skills → packs/docs/skills}/document-skills/xlsx/SKILL.md +0 -0
  580. /package/assets/claude/{skills → packs/docs/skills}/document-skills/xlsx/recalc.py +0 -0
  581. /package/assets/claude/{agents → packs/frontend/agents}/expert-nextjs-developer.md +0 -0
  582. /package/assets/claude/{agents → packs/frontend/agents}/expert-react-frontend-engineer.md +0 -0
  583. /package/assets/claude/{agents → packs/frontend/agents}/jest-react-component-analyzer.md +0 -0
  584. /package/assets/claude/{agents → packs/frontend/agents}/jest-react-scenario-scanner.md +0 -0
  585. /package/assets/claude/{agents → packs/frontend/agents}/jest-react-test-generator.md +0 -0
  586. /package/assets/claude/{agents → packs/frontend/agents}/jest-react-test-planner.md +0 -0
  587. /package/assets/claude/{agents → packs/frontend/agents}/jest-react-test-runner.md +0 -0
  588. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/SKILL.md +0 -0
  589. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/assets/design-guideline-template.md +0 -0
  590. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/assets/design-story-template.md +0 -0
  591. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/design-principles.md +0 -0
  592. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/design-resources.md +0 -0
  593. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/micro-interactions.md +0 -0
  594. /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/storytelling-design.md +0 -0
  595. /package/assets/claude/{skills → packs/frontend/skills}/frontend-design/SKILL.md +0 -0
  596. /package/assets/claude/{skills → packs/frontend/skills}/frontend-design/references/animejs.md +0 -0
  597. /package/assets/claude/{skills → packs/frontend/skills}/nextjs/SKILL.md +0 -0
  598. /package/assets/claude/{skills → packs/frontend/skills}/premium-frontend-ui/SKILL.md +0 -0
  599. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/SKILL.md +0 -0
  600. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/common-patterns.md +0 -0
  601. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/complete-examples.md +0 -0
  602. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/component-patterns.md +0 -0
  603. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/data-fetching.md +0 -0
  604. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/file-organization.md +0 -0
  605. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/loading-and-error-states.md +0 -0
  606. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/performance.md +0 -0
  607. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/routing-guide.md +0 -0
  608. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/styling-guide.md +0 -0
  609. /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/typescript-standards.md +0 -0
  610. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/LICENSE.txt +0 -0
  611. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/SKILL.md +0 -0
  612. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-OFL.txt +0 -0
  613. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  614. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  615. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-OFL.txt +0 -0
  616. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  617. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-OFL.txt +0 -0
  618. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-Regular.ttf +0 -0
  619. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  620. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-OFL.txt +0 -0
  621. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  622. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  623. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  624. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-OFL.txt +0 -0
  625. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  626. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-OFL.txt +0 -0
  627. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-Regular.ttf +0 -0
  628. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-OFL.txt +0 -0
  629. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-Regular.ttf +0 -0
  630. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Bold.ttf +0 -0
  631. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-OFL.txt +0 -0
  632. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Regular.ttf +0 -0
  633. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-OFL.txt +0 -0
  634. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-Regular.ttf +0 -0
  635. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  636. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-OFL.txt +0 -0
  637. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  638. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  639. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  640. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  641. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  642. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  643. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  644. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  645. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-OFL.txt +0 -0
  646. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  647. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  648. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  649. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-OFL.txt +0 -0
  650. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-Regular.ttf +0 -0
  651. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  652. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-OFL.txt +0 -0
  653. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  654. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Light.ttf +0 -0
  655. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Medium.ttf +0 -0
  656. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-OFL.txt +0 -0
  657. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-OFL.txt +0 -0
  658. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  659. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Bold.ttf +0 -0
  660. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  661. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Italic.ttf +0 -0
  662. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-OFL.txt +0 -0
  663. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Regular.ttf +0 -0
  664. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Bold.ttf +0 -0
  665. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-OFL.txt +0 -0
  666. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Regular.ttf +0 -0
  667. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-OFL.txt +0 -0
  668. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  669. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Bold.ttf +0 -0
  670. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-OFL.txt +0 -0
  671. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Regular.ttf +0 -0
  672. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  673. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-OFL.txt +0 -0
  674. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-OFL.txt +0 -0
  675. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  676. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  677. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-OFL.txt +0 -0
  678. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  679. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-OFL.txt +0 -0
  680. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  681. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  682. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-OFL.txt +0 -0
  683. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Medium.ttf +0 -0
  684. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-OFL.txt +0 -0
  685. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Regular.ttf +0 -0
  686. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Bold.ttf +0 -0
  687. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  688. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Italic.ttf +0 -0
  689. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-OFL.txt +0 -0
  690. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Regular.ttf +0 -0
  691. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-OFL.txt +0 -0
  692. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  693. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/canvas-design-system.md +0 -0
  694. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/shadcn-accessibility.md +0 -0
  695. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/shadcn-components.md +0 -0
  696. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/shadcn-theming.md +0 -0
  697. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/tailwind-customization.md +0 -0
  698. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/tailwind-responsive.md +0 -0
  699. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/tailwind-utilities.md +0 -0
  700. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/.coverage +0 -0
  701. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/requirements.txt +0 -0
  702. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/shadcn_add.py +0 -0
  703. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tailwind_config_gen.py +0 -0
  704. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/coverage-ui.json +0 -0
  705. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/requirements.txt +0 -0
  706. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_shadcn_add.py +0 -0
  707. /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_tailwind_config_gen.py +0 -0
  708. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/AGENTS.md +0 -0
  709. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/README.md +0 -0
  710. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/SKILL.md +0 -0
  711. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/metadata.json +0 -0
  712. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/_sections.md +0 -0
  713. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/_template.md +0 -0
  714. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -0
  715. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/advanced-use-latest.md +0 -0
  716. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-api-routes.md +0 -0
  717. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-defer-await.md +0 -0
  718. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-dependencies.md +0 -0
  719. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-parallel.md +0 -0
  720. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -0
  721. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -0
  722. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-conditional.md +0 -0
  723. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -0
  724. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -0
  725. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-preload.md +0 -0
  726. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-event-listeners.md +0 -0
  727. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -0
  728. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -0
  729. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-swr-dedup.md +0 -0
  730. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -0
  731. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-function-results.md +0 -0
  732. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-property-access.md +0 -0
  733. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-storage.md +0 -0
  734. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-combine-iterations.md +0 -0
  735. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-early-exit.md +0 -0
  736. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -0
  737. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-index-maps.md +0 -0
  738. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-length-check-first.md +0 -0
  739. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-min-max-loop.md +0 -0
  740. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -0
  741. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -0
  742. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-activity.md +0 -0
  743. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -0
  744. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -0
  745. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -0
  746. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -0
  747. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -0
  748. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -0
  749. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -0
  750. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-dependencies.md +0 -0
  751. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-derived-state.md +0 -0
  752. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -0
  753. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -0
  754. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-memo.md +0 -0
  755. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-transitions.md +0 -0
  756. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -0
  757. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-lru.md +0 -0
  758. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-react.md +0 -0
  759. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -0
  760. /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-serialization.md +0 -0
  761. /package/assets/claude/{skills → packs/frontend/skills}/web-design-guidelines/SKILL.md +0 -0
  762. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/SKILL.md +0 -0
  763. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-app-router.md +0 -0
  764. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-data-fetching.md +0 -0
  765. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-optimization.md +0 -0
  766. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-server-components.md +0 -0
  767. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/remix-icon-integration.md +0 -0
  768. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/turborepo-caching.md +0 -0
  769. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/turborepo-pipelines.md +0 -0
  770. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/turborepo-setup.md +0 -0
  771. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/.coverage +0 -0
  772. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/__init__.py +0 -0
  773. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/nextjs_init.py +0 -0
  774. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/requirements.txt +0 -0
  775. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/coverage-web.json +0 -0
  776. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/requirements.txt +0 -0
  777. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/test_nextjs_init.py +0 -0
  778. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/test_turborepo_migrate.py +0 -0
  779. /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/turborepo_migrate.py +0 -0
  780. /package/assets/claude/{agents → packs/integrations/agents}/clickup-agent.md +0 -0
  781. /package/assets/claude/{agents → packs/playwright/agents}/playwright-component-analyzer.md +0 -0
  782. /package/assets/claude/{agents → packs/playwright/agents}/playwright-scenario-scanner.md +0 -0
  783. /package/assets/claude/{agents → packs/playwright/agents}/playwright-test-generator.md +0 -0
  784. /package/assets/claude/{agents → packs/playwright/agents}/playwright-test-planner.md +0 -0
  785. /package/assets/claude/{agents → packs/playwright/agents}/playwright-tester.md +0 -0
  786. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/SKILL.md +0 -0
  787. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/references/cdp-domains.md +0 -0
  788. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/references/performance-guide.md +0 -0
  789. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/references/puppeteer-reference.md +0 -0
  790. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/PERSISTENT-BROWSER.md +0 -0
  791. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/README.md +0 -0
  792. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/__tests__/selector.test.js +0 -0
  793. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/click.js +0 -0
  794. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/close-persistent.js +0 -0
  795. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/console.js +0 -0
  796. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/evaluate.js +0 -0
  797. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/fill.js +0 -0
  798. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/install-deps.sh +0 -0
  799. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/install.sh +0 -0
  800. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/launch-persistent.js +0 -0
  801. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/lib/browser.js +0 -0
  802. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/lib/selector.js +0 -0
  803. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/navigate.js +0 -0
  804. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/network.js +0 -0
  805. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/package-lock.json +0 -0
  806. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/package.json +0 -0
  807. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/performance.js +0 -0
  808. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/screenshot.js +0 -0
  809. /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/snapshot.js +0 -0
  810. /package/assets/claude/{skills → packs/playwright/skills}/playwright-typescript/SKILL.md +0 -0
  811. /package/assets/{vendor → claude/packs/styles/skills}/i-have-adhd/LICENSE +0 -0
  812. /package/assets/{vendor → claude/packs/styles/skills}/i-have-adhd/SKILL.md +0 -0
  813. /package/assets/{vendor → claude/packs/styles/skills}/ponytail/LICENSE +0 -0
  814. /package/assets/{vendor → claude/packs/styles/skills}/ponytail/SKILL.md +0 -0
  815. /package/assets/{skills → claude/skills/skill-creator}/agent_skills_spec.md +0 -0
  816. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/SKILL.md +0 -0
  817. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-api-design.md +0 -0
  818. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-architecture.md +0 -0
  819. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-authentication.md +0 -0
  820. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-code-quality.md +0 -0
  821. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-debugging.md +0 -0
  822. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-devops.md +0 -0
  823. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-mindset.md +0 -0
  824. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-performance.md +0 -0
  825. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-security.md +0 -0
  826. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-technologies.md +0 -0
  827. /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-testing.md +0 -0
  828. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/SKILL.md +0 -0
  829. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/advanced-features.md +0 -0
  830. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/database-integration.md +0 -0
  831. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/email-password-auth.md +0 -0
  832. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/oauth-providers.md +0 -0
  833. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/.coverage +0 -0
  834. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/better_auth_init.py +0 -0
  835. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/requirements.txt +0 -0
  836. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/tests/.coverage +0 -0
  837. /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/tests/test_better_auth_init.py +0 -0
  838. /package/assets/{skills → copilot/packs/backend/skills}/databases/SKILL.md +0 -0
  839. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-aggregation.md +0 -0
  840. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-atlas.md +0 -0
  841. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-crud.md +0 -0
  842. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-indexing.md +0 -0
  843. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-administration.md +0 -0
  844. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-performance.md +0 -0
  845. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-psql-cli.md +0 -0
  846. /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-queries.md +0 -0
  847. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/.coverage +0 -0
  848. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/db_backup.py +0 -0
  849. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/db_migrate.py +0 -0
  850. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/db_performance_check.py +0 -0
  851. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/requirements.txt +0 -0
  852. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/coverage-db.json +0 -0
  853. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/requirements.txt +0 -0
  854. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/test_db_backup.py +0 -0
  855. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/test_db_migrate.py +0 -0
  856. /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/test_db_performance_check.py +0 -0
  857. /package/assets/{skills → copilot/packs/backend/skills}/devops/.env.example +0 -0
  858. /package/assets/{skills → copilot/packs/backend/skills}/devops/SKILL.md +0 -0
  859. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/browser-rendering.md +0 -0
  860. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-d1-kv.md +0 -0
  861. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-platform.md +0 -0
  862. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-r2-storage.md +0 -0
  863. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-workers-advanced.md +0 -0
  864. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-workers-apis.md +0 -0
  865. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-workers-basics.md +0 -0
  866. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/docker-basics.md +0 -0
  867. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/docker-compose.md +0 -0
  868. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/gcloud-platform.md +0 -0
  869. /package/assets/{skills → copilot/packs/backend/skills}/devops/references/gcloud-services.md +0 -0
  870. /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/cloudflare_deploy.py +0 -0
  871. /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/docker_optimize.py +0 -0
  872. /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/requirements.txt +0 -0
  873. /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/tests/requirements.txt +0 -0
  874. /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/tests/test_cloudflare_deploy.py +0 -0
  875. /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/tests/test_docker_optimize.py +0 -0
  876. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/.env.example +0 -0
  877. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/audio-processing.md +0 -0
  878. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/image-generation.md +0 -0
  879. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/video-analysis.md +0 -0
  880. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/vision-understanding.md +0 -0
  881. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/document_converter.py +0 -0
  882. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/gemini_batch_process.py +0 -0
  883. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/media_optimizer.py +0 -0
  884. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/requirements.txt +0 -0
  885. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/.coverage +0 -0
  886. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/requirements.txt +0 -0
  887. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/test_document_converter.py +0 -0
  888. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/test_gemini_batch_process.py +0 -0
  889. /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/test_media_optimizer.py +0 -0
  890. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/LICENSE.txt +0 -0
  891. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/SKILL.md +0 -0
  892. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/docx-js.md +0 -0
  893. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
  894. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
  895. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
  896. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
  897. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
  898. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
  899. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
  900. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
  901. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
  902. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
  903. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
  904. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
  905. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
  906. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
  907. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
  908. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
  909. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
  910. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
  911. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
  912. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
  913. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
  914. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
  915. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
  916. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
  917. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
  918. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
  919. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
  920. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
  921. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
  922. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
  923. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
  924. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/mce/mc.xsd +0 -0
  925. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
  926. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
  927. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
  928. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
  929. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
  930. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
  931. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
  932. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/pack.py +0 -0
  933. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/unpack.py +0 -0
  934. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validate.py +0 -0
  935. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/__init__.py +0 -0
  936. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/base.py +0 -0
  937. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/docx.py +0 -0
  938. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/pptx.py +0 -0
  939. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/redlining.py +0 -0
  940. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml.md +0 -0
  941. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/__init__.py +0 -0
  942. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/document.py +0 -0
  943. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/comments.xml +0 -0
  944. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtended.xml +0 -0
  945. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtensible.xml +0 -0
  946. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/commentsIds.xml +0 -0
  947. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/people.xml +0 -0
  948. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/utilities.py +0 -0
  949. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/LICENSE.txt +0 -0
  950. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/SKILL.md +0 -0
  951. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/forms.md +0 -0
  952. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/reference.md +0 -0
  953. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes.py +0 -0
  954. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes_test.py +0 -0
  955. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/check_fillable_fields.py +0 -0
  956. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/convert_pdf_to_images.py +0 -0
  957. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/create_validation_image.py +0 -0
  958. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/extract_form_field_info.py +0 -0
  959. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/fill_fillable_fields.py +0 -0
  960. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +0 -0
  961. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/LICENSE.txt +0 -0
  962. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/SKILL.md +0 -0
  963. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/html2pptx.md +0 -0
  964. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
  965. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
  966. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
  967. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
  968. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
  969. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
  970. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
  971. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
  972. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
  973. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
  974. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
  975. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
  976. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
  977. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
  978. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
  979. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
  980. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
  981. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
  982. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
  983. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
  984. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
  985. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
  986. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
  987. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
  988. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
  989. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
  990. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
  991. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
  992. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
  993. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
  994. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
  995. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/mce/mc.xsd +0 -0
  996. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
  997. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
  998. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
  999. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
  1000. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
  1001. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
  1002. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
  1003. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/pack.py +0 -0
  1004. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
  1005. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validate.py +0 -0
  1006. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/__init__.py +0 -0
  1007. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/base.py +0 -0
  1008. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/docx.py +0 -0
  1009. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/pptx.py +0 -0
  1010. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/redlining.py +0 -0
  1011. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml.md +0 -0
  1012. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/html2pptx.js +0 -0
  1013. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/inventory.py +0 -0
  1014. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/rearrange.py +0 -0
  1015. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/replace.py +0 -0
  1016. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/thumbnail.py +0 -0
  1017. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/xlsx/LICENSE.txt +0 -0
  1018. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/xlsx/SKILL.md +0 -0
  1019. /package/assets/{skills → copilot/packs/docs/skills}/document-skills/xlsx/recalc.py +0 -0
  1020. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/SKILL.md +0 -0
  1021. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/assets/design-guideline-template.md +0 -0
  1022. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/assets/design-story-template.md +0 -0
  1023. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/design-principles.md +0 -0
  1024. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/design-resources.md +0 -0
  1025. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/micro-interactions.md +0 -0
  1026. /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/storytelling-design.md +0 -0
  1027. /package/assets/{skills → copilot/packs/frontend/skills}/frontend-design/SKILL.md +0 -0
  1028. /package/assets/{skills → copilot/packs/frontend/skills}/frontend-design/references/animejs.md +0 -0
  1029. /package/assets/{claude → copilot/packs/frontend}/skills/nextjs-tailwind/SKILL.md +0 -0
  1030. /package/assets/{skills → copilot/packs/frontend/skills}/premium-frontend-ui/SKILL.md +0 -0
  1031. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/SKILL.md +0 -0
  1032. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/common-patterns.md +0 -0
  1033. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/complete-examples.md +0 -0
  1034. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/component-patterns.md +0 -0
  1035. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/data-fetching.md +0 -0
  1036. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/file-organization.md +0 -0
  1037. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/loading-and-error-states.md +0 -0
  1038. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/performance.md +0 -0
  1039. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/routing-guide.md +0 -0
  1040. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/styling-guide.md +0 -0
  1041. /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/typescript-standards.md +0 -0
  1042. /package/assets/{claude → copilot/packs/frontend}/skills/reactjs/SKILL.md +0 -0
  1043. /package/assets/{skills/mcp-builder → copilot/packs/frontend/skills/tailwind-shadcn}/LICENSE.txt +0 -0
  1044. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/SKILL.md +0 -0
  1045. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-OFL.txt +0 -0
  1046. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
  1047. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Bold.ttf +0 -0
  1048. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-OFL.txt +0 -0
  1049. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Regular.ttf +0 -0
  1050. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-OFL.txt +0 -0
  1051. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-Regular.ttf +0 -0
  1052. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
  1053. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-OFL.txt +0 -0
  1054. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
  1055. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
  1056. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
  1057. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-OFL.txt +0 -0
  1058. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
  1059. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-OFL.txt +0 -0
  1060. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-Regular.ttf +0 -0
  1061. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-OFL.txt +0 -0
  1062. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-Regular.ttf +0 -0
  1063. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Bold.ttf +0 -0
  1064. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-OFL.txt +0 -0
  1065. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Regular.ttf +0 -0
  1066. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-OFL.txt +0 -0
  1067. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-Regular.ttf +0 -0
  1068. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
  1069. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-OFL.txt +0 -0
  1070. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
  1071. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
  1072. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
  1073. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
  1074. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
  1075. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
  1076. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
  1077. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
  1078. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-OFL.txt +0 -0
  1079. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
  1080. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
  1081. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
  1082. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-OFL.txt +0 -0
  1083. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-Regular.ttf +0 -0
  1084. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
  1085. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-OFL.txt +0 -0
  1086. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
  1087. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Light.ttf +0 -0
  1088. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Medium.ttf +0 -0
  1089. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-OFL.txt +0 -0
  1090. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-OFL.txt +0 -0
  1091. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
  1092. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Bold.ttf +0 -0
  1093. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-BoldItalic.ttf +0 -0
  1094. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Italic.ttf +0 -0
  1095. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-OFL.txt +0 -0
  1096. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Regular.ttf +0 -0
  1097. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Bold.ttf +0 -0
  1098. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-OFL.txt +0 -0
  1099. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Regular.ttf +0 -0
  1100. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-OFL.txt +0 -0
  1101. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
  1102. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Bold.ttf +0 -0
  1103. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-OFL.txt +0 -0
  1104. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Regular.ttf +0 -0
  1105. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-Medium.ttf +0 -0
  1106. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-OFL.txt +0 -0
  1107. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-OFL.txt +0 -0
  1108. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-Regular.ttf +0 -0
  1109. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Bold.ttf +0 -0
  1110. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-OFL.txt +0 -0
  1111. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Regular.ttf +0 -0
  1112. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-OFL.txt +0 -0
  1113. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-Regular.ttf +0 -0
  1114. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-Medium.ttf +0 -0
  1115. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-OFL.txt +0 -0
  1116. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Medium.ttf +0 -0
  1117. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-OFL.txt +0 -0
  1118. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Regular.ttf +0 -0
  1119. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Bold.ttf +0 -0
  1120. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
  1121. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Italic.ttf +0 -0
  1122. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-OFL.txt +0 -0
  1123. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Regular.ttf +0 -0
  1124. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-OFL.txt +0 -0
  1125. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-Regular.ttf +0 -0
  1126. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/canvas-design-system.md +0 -0
  1127. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/shadcn-accessibility.md +0 -0
  1128. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/shadcn-components.md +0 -0
  1129. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/shadcn-theming.md +0 -0
  1130. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/tailwind-customization.md +0 -0
  1131. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/tailwind-responsive.md +0 -0
  1132. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/tailwind-utilities.md +0 -0
  1133. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/.coverage +0 -0
  1134. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/requirements.txt +0 -0
  1135. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/shadcn_add.py +0 -0
  1136. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tailwind_config_gen.py +0 -0
  1137. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/coverage-ui.json +0 -0
  1138. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/requirements.txt +0 -0
  1139. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_shadcn_add.py +0 -0
  1140. /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_tailwind_config_gen.py +0 -0
  1141. /package/assets/{claude → copilot/packs/frontend}/skills/tailwind-v4-vite/SKILL.md +0 -0
  1142. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/AGENTS.md +0 -0
  1143. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/README.md +0 -0
  1144. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/SKILL.md +0 -0
  1145. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/metadata.json +0 -0
  1146. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/_sections.md +0 -0
  1147. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/_template.md +0 -0
  1148. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -0
  1149. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/advanced-use-latest.md +0 -0
  1150. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-api-routes.md +0 -0
  1151. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-defer-await.md +0 -0
  1152. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-dependencies.md +0 -0
  1153. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-parallel.md +0 -0
  1154. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -0
  1155. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -0
  1156. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-conditional.md +0 -0
  1157. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -0
  1158. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -0
  1159. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-preload.md +0 -0
  1160. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-event-listeners.md +0 -0
  1161. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -0
  1162. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -0
  1163. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-swr-dedup.md +0 -0
  1164. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -0
  1165. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-function-results.md +0 -0
  1166. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-property-access.md +0 -0
  1167. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-storage.md +0 -0
  1168. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-combine-iterations.md +0 -0
  1169. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-early-exit.md +0 -0
  1170. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -0
  1171. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-index-maps.md +0 -0
  1172. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-length-check-first.md +0 -0
  1173. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-min-max-loop.md +0 -0
  1174. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -0
  1175. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -0
  1176. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-activity.md +0 -0
  1177. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -0
  1178. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -0
  1179. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -0
  1180. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -0
  1181. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -0
  1182. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -0
  1183. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -0
  1184. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-dependencies.md +0 -0
  1185. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-derived-state.md +0 -0
  1186. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -0
  1187. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -0
  1188. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-memo.md +0 -0
  1189. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-transitions.md +0 -0
  1190. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -0
  1191. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-lru.md +0 -0
  1192. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-react.md +0 -0
  1193. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -0
  1194. /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-serialization.md +0 -0
  1195. /package/assets/{skills → copilot/packs/frontend/skills}/web-design-guidelines/SKILL.md +0 -0
  1196. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/SKILL.md +0 -0
  1197. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-app-router.md +0 -0
  1198. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-data-fetching.md +0 -0
  1199. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-optimization.md +0 -0
  1200. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-server-components.md +0 -0
  1201. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/remix-icon-integration.md +0 -0
  1202. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/turborepo-caching.md +0 -0
  1203. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/turborepo-pipelines.md +0 -0
  1204. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/turborepo-setup.md +0 -0
  1205. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/.coverage +0 -0
  1206. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/__init__.py +0 -0
  1207. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/nextjs_init.py +0 -0
  1208. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/requirements.txt +0 -0
  1209. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/coverage-web.json +0 -0
  1210. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/requirements.txt +0 -0
  1211. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/test_nextjs_init.py +0 -0
  1212. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/test_turborepo_migrate.py +0 -0
  1213. /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/turborepo_migrate.py +0 -0
  1214. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/references/cdp-domains.md +0 -0
  1215. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/references/performance-guide.md +0 -0
  1216. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/references/puppeteer-reference.md +0 -0
  1217. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/PERSISTENT-BROWSER.md +0 -0
  1218. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/__tests__/selector.test.js +0 -0
  1219. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/click.js +0 -0
  1220. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/close-persistent.js +0 -0
  1221. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/console.js +0 -0
  1222. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/evaluate.js +0 -0
  1223. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/fill.js +0 -0
  1224. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/install-deps.sh +0 -0
  1225. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/install.sh +0 -0
  1226. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/launch-persistent.js +0 -0
  1227. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/lib/browser.js +0 -0
  1228. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/lib/selector.js +0 -0
  1229. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/navigate.js +0 -0
  1230. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/network.js +0 -0
  1231. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/package-lock.json +0 -0
  1232. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/package.json +0 -0
  1233. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/performance.js +0 -0
  1234. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/screenshot.js +0 -0
  1235. /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/snapshot.js +0 -0
  1236. /package/assets/{claude → copilot/packs/polyglot}/skills/java/SKILL.md +0 -0
  1237. /package/assets/{skills → copilot/skills}/code-review/SKILL.md +0 -0
  1238. /package/assets/{skills → copilot/skills}/code-review/references/code-review-reception.md +0 -0
  1239. /package/assets/{skills → copilot/skills}/code-review/references/requesting-code-review.md +0 -0
  1240. /package/assets/{skills → copilot/skills}/code-review/references/verification-before-completion.md +0 -0
  1241. /package/assets/{skills → copilot/skills}/debugging/defense-in-depth/SKILL.md +0 -0
  1242. /package/assets/{skills → copilot/skills}/debugging/root-cause-tracing/SKILL.md +0 -0
  1243. /package/assets/{skills → copilot/skills}/debugging/root-cause-tracing/find-polluter.sh +0 -0
  1244. /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/CREATION-LOG.md +0 -0
  1245. /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/SKILL.md +0 -0
  1246. /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-academic.md +0 -0
  1247. /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-pressure-1.md +0 -0
  1248. /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-pressure-2.md +0 -0
  1249. /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-pressure-3.md +0 -0
  1250. /package/assets/{skills → copilot/skills}/debugging/verification-before-completion/SKILL.md +0 -0
  1251. /package/assets/{skills → copilot/skills}/docs-seeker/SKILL.md +0 -0
  1252. /package/assets/{skills → copilot/skills}/docs-seeker/WORKFLOWS.md +0 -0
  1253. /package/assets/{skills → copilot/skills}/docs-seeker/references/best-practices.md +0 -0
  1254. /package/assets/{skills → copilot/skills}/docs-seeker/references/documentation-sources.md +0 -0
  1255. /package/assets/{skills → copilot/skills}/docs-seeker/references/error-handling.md +0 -0
  1256. /package/assets/{skills → copilot/skills}/docs-seeker/references/limitations.md +0 -0
  1257. /package/assets/{skills → copilot/skills}/docs-seeker/references/performance.md +0 -0
  1258. /package/assets/{skills → copilot/skills}/docs-seeker/references/tool-selection.md +0 -0
  1259. /package/assets/{skills/skill-creator → copilot/skills/mcp-builder}/LICENSE.txt +0 -0
  1260. /package/assets/{skills → copilot/skills}/mcp-builder/SKILL.md +0 -0
  1261. /package/assets/{skills → copilot/skills}/mcp-builder/reference/evaluation.md +0 -0
  1262. /package/assets/{skills → copilot/skills}/mcp-builder/reference/mcp_best_practices.md +0 -0
  1263. /package/assets/{skills → copilot/skills}/mcp-builder/reference/node_mcp_server.md +0 -0
  1264. /package/assets/{skills → copilot/skills}/mcp-builder/reference/python_mcp_server.md +0 -0
  1265. /package/assets/{skills → copilot/skills}/mcp-builder/scripts/connections.py +0 -0
  1266. /package/assets/{skills → copilot/skills}/mcp-builder/scripts/evaluation.py +0 -0
  1267. /package/assets/{skills → copilot/skills}/mcp-builder/scripts/example_evaluation.xml +0 -0
  1268. /package/assets/{skills → copilot/skills}/mcp-builder/scripts/requirements.txt +0 -0
  1269. /package/assets/{skills → copilot/skills}/mermaidjs-v11/SKILL.md +0 -0
  1270. /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/cli-usage.md +0 -0
  1271. /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/configuration.md +0 -0
  1272. /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/diagram-types.md +0 -0
  1273. /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/examples.md +0 -0
  1274. /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/integration.md +0 -0
  1275. /package/assets/{skills → copilot/skills}/problem-solving/ABOUT.md +0 -0
  1276. /package/assets/{skills → copilot/skills}/problem-solving/collision-zone-thinking/SKILL.md +0 -0
  1277. /package/assets/{skills → copilot/skills}/problem-solving/inversion-exercise/SKILL.md +0 -0
  1278. /package/assets/{skills → copilot/skills}/problem-solving/meta-pattern-recognition/SKILL.md +0 -0
  1279. /package/assets/{skills → copilot/skills}/problem-solving/scale-game/SKILL.md +0 -0
  1280. /package/assets/{skills → copilot/skills}/problem-solving/simplification-cascades/SKILL.md +0 -0
  1281. /package/assets/{skills → copilot/skills}/problem-solving/when-stuck/SKILL.md +0 -0
  1282. /package/assets/{skills → copilot/skills}/sequential-thinking/SKILL.md +0 -0
  1283. /package/assets/{skills → copilot/skills}/sequential-thinking/references/advanced.md +0 -0
  1284. /package/assets/{skills → copilot/skills}/sequential-thinking/references/examples.md +0 -0
  1285. /package/assets/{skills/tailwind-shadcn → copilot/skills/skill-creator}/LICENSE.txt +0 -0
  1286. /package/assets/{skills → copilot/skills}/skill-creator/scripts/init_skill.py +0 -0
  1287. /package/assets/{skills → copilot/skills}/skill-creator/scripts/package_skill.py +0 -0
  1288. /package/assets/{skills → copilot/skills}/skill-creator/scripts/quick_validate.py +0 -0
@@ -1,228 +1,665 @@
1
- import { describe, it, expect, vi } from 'vitest';
1
+ /**
2
+ * Generator test suite — REWRITTEN FOR THE FLIPPED DIRECTION (epic (d) Stage 2).
3
+ *
4
+ * The pre-flip suite asserted Copilot-source -> Claude-output. That direction no longer exists:
5
+ * `assets/claude/` + `assets/claude-committed/` are now the canonical hand-authored source and
6
+ * `assets/copilot/` is the generated output. Every describe block below asserts the reverse
7
+ * transform, so none of these tests can pass against the old generator (the old module exported
8
+ * neither these symbols nor this direction).
9
+ */
10
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
2
11
 
3
- import { readFileSync } from 'node:fs';
12
+ import { readFileSync, readdirSync, existsSync } from 'node:fs';
4
13
  import { fileURLToPath } from 'node:url';
5
14
  import { dirname, join } from 'node:path';
6
15
 
7
- import { extractToolTokens, mapToolTokens, convertAgent, describeApplyTo, convertInstructionToSkill } from './generate-claude-assets.js';
16
+ import {
17
+ SCAN_ROOT_RELATIVE_PATHS,
18
+ EXCLUDED_SOURCE_PATHS,
19
+ CANONICAL_ROOTS,
20
+ isExcludedSource,
21
+ splitFrontmatter,
22
+ readFrontmatterValue,
23
+ extractClaudeToolTokens,
24
+ mapClaudeToolsToCopilot,
25
+ mapMcpTools,
26
+ convertAgentToCopilot,
27
+ isCommittedMaintenanceSkill,
28
+ convertMaintenanceSkillToPrompt,
29
+ convertSkillToInstructions,
30
+ convertSkillMd,
31
+ applyCopilotBodyTokenReplacements,
32
+ __resetDiagnostics,
33
+ __getDiagnostics,
34
+ } from './generate-claude-assets.js';
35
+ import { getDiagnosticMessages } from '../src/cli/utils/copilot-render.js';
8
36
  import { MCP_SERVERS } from '../src/cli/utils/settings.js';
9
37
 
10
38
  const __dirname = dirname(fileURLToPath(import.meta.url));
11
- const readInstructionFixture = (name) =>
12
- readFileSync(join(__dirname, '..', 'assets', 'instructions', name, `${name}.instructions.md`), 'utf-8');
13
- const descriptionLineOf = (skillMd) =>
14
- skillMd.split('\n').find((l) => l.startsWith('description:'));
15
-
16
- describe('extractToolTokens', () => {
17
- it('parses a bracket-array tools list (unchanged behavior)', () => {
18
- const fm = `name: x\ntools: ['clickup/*', 'search', "read", 'memory/*']\nagents: []`;
19
- expect(extractToolTokens(fm)).toEqual(['clickup/*', 'search', 'read', 'memory/*']);
20
- });
21
-
22
- it('parses a YAML dash-list tools block equivalently to the bracket form (DEFECT 1)', () => {
23
- const dashList = [
24
- 'name: x',
25
- 'tools:',
26
- ' - search',
27
- ' - read',
28
- ' - edit',
29
- ' - execute',
30
- ' - agent',
31
- ' - todo',
32
- " - 'vesper-indexing/*'",
33
- " - 'memory/*'",
34
- 'agents: []',
35
- ].join('\n');
39
+ const ASSETS = join(__dirname, '..', 'assets');
40
+ const readAsset = (...parts) => readFileSync(join(ASSETS, ...parts), 'utf-8');
41
+
42
+ // Epic H: the catalog is the core plus the packs. These resolve a canonical asset wherever it
43
+ // ships (`claude/<type>/…` or `claude/packs/<pack>/<type>/…`).
44
+ const packNames = () => (existsSync(join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.packs))
45
+ ? readdirSync(join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.packs), { withFileTypes: true }).filter((e) => e.isDirectory()).map((e) => e.name).sort()
46
+ : []);
47
+ const skillDirOf = (name) => {
48
+ const core = join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.pluginSkills, name);
49
+ if (existsSync(core)) return core;
50
+ for (const pack of packNames()) {
51
+ const abs = join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.packs, pack, 'skills', name);
52
+ if (existsSync(abs)) return abs;
53
+ }
54
+ throw new Error(`skill ${name} not found in the core or any pack`);
55
+ };
56
+ const readSkill = (name, ...rest) => readFileSync(join(skillDirOf(name), ...rest), 'utf-8');
57
+ /** Every canonical agent file (core + packs) as `{file, abs}`. */
58
+ const allAgentFiles = () => {
59
+ const out = [];
60
+ const roots = [join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.pluginAgents), ...packNames().map((p) => join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.packs, p, 'agents'))];
61
+ for (const dir of roots) {
62
+ if (!existsSync(dir)) continue;
63
+ for (const file of readdirSync(dir).filter((f) => f.endsWith('.md'))) out.push({ file, abs: join(dir, file) });
64
+ }
65
+ return out;
66
+ };
67
+ /** Every canonical skill dir name (core + packs, deduplicated — the shared copies). */
68
+ const allSkillDirs = () => {
69
+ const out = new Map();
70
+ const roots = [join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.pluginSkills), ...packNames().map((p) => join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.packs, p, 'skills'))];
71
+ for (const root of roots) {
72
+ if (!existsSync(root)) continue;
73
+ for (const e of readdirSync(root, { withFileTypes: true })) if (e.isDirectory() && !out.has(e.name)) out.set(e.name, join(root, e.name));
74
+ }
75
+ return out;
76
+ };
77
+ const frontmatterOf = (content) => splitFrontmatter(content).frontmatter;
78
+ const lineOf = (doc, key) => doc.split('\n').find((l) => l.startsWith(`${key}:`));
79
+
80
+ beforeEach(() => {
81
+ __resetDiagnostics();
82
+ });
83
+
84
+ // ---------------------------------------------------------------------------
85
+ // Task 2.0 — the two-root scan surface and its exclusion set
86
+ // ---------------------------------------------------------------------------
36
87
 
37
- const bracket = "name: x\ntools: [search, read, edit, execute, agent, todo, 'vesper-indexing/*', 'memory/*']\nagents: []";
88
+ describe('scan roots + exclusion predicate (Task 2.0)', () => {
89
+ it('declares exactly the four canonical scan roots (core agents, core skills, the packs root, committed skills)', () => {
90
+ expect(SCAN_ROOT_RELATIVE_PATHS).toEqual({
91
+ pluginAgents: 'claude/agents',
92
+ pluginSkills: 'claude/skills',
93
+ packs: 'claude/packs',
94
+ committedSkills: 'claude-committed/skills',
95
+ });
96
+ });
97
+
98
+ // Epic H: each pack's own manifest dir is excluded like the core's; its agents/skills are input.
99
+ it('excludes every pack\'s .claude-plugin dir but not its agents/skills (kills: packs scanned as a flat root)', () => {
100
+ expect(isExcludedSource('claude/packs/frontend/.claude-plugin')).toBe(true);
101
+ expect(isExcludedSource('claude/packs/frontend/.claude-plugin/plugin.json')).toBe(true);
102
+ expect(isExcludedSource('claude/packs/frontend/agents/expert-react-frontend-engineer.md')).toBe(false);
103
+ expect(isExcludedSource('claude/packs/frontend/skills/reactjs/SKILL.md')).toBe(false);
104
+ });
38
105
 
39
- expect(extractToolTokens(dashList)).toEqual(extractToolTokens(bracket));
40
- expect(extractToolTokens(dashList)).toContain('vesper-indexing/*');
41
- expect(extractToolTokens(dashList)).toContain('memory/*');
106
+ it('every declared scan root exists on disk', () => {
107
+ for (const rel of Object.values(SCAN_ROOT_RELATIVE_PATHS)) {
108
+ expect(existsSync(join(ASSETS, rel)), rel).toBe(true);
109
+ }
42
110
  });
43
111
 
44
- it('strips surrounding quotes on dash items', () => {
45
- const fm = `tools:\n - 'memory/*'\n - "search"\nagents: []`;
46
- expect(extractToolTokens(fm)).toEqual(['memory/*', 'search']);
112
+ it.each([
113
+ ['claude/.claude-plugin', 'plugin manifest dir'],
114
+ ['claude/.claude-plugin/plugin.json', 'plugin manifest file'],
115
+ ['claude/vesper-orchestrator.md', 'the always-on playbook'],
116
+ ['claude/orchestration.md.tpl', 'the roster template'],
117
+ ['claude/context.md.tpl', 'the whitepaper template'],
118
+ ['claude-committed/agents', 'the thin pickable persona dir (DEC-7)'],
119
+ ['claude-committed/agents/vesper-orchestrator.md', 'the thin pickable persona'],
120
+ ['legacy', 'the 1.x proof table'],
121
+ ['legacy/claude-1x-digests.json', 'the pinned 1.x digests'],
122
+ ['hooks', 'git hook assets'],
123
+ ])('excludes %s (%s)', (rel) => {
124
+ expect(isExcludedSource(rel)).toBe(true);
125
+ expect(isExcludedSource(join(ASSETS, rel))).toBe(true);
47
126
  });
48
127
 
49
- it('strips trailing inline # comments on dash items', () => {
50
- const fm = `tools:\n - read # legacy\n - search # keep\nagents: []`;
51
- expect(extractToolTokens(fm)).toEqual(['read', 'search']);
128
+ it.each([
129
+ 'claude/agents/code-tester.md',
130
+ 'claude/skills/code-review/SKILL.md',
131
+ 'claude-committed/skills/reinit/SKILL.md',
132
+ ])('does NOT exclude the real emission input %s', (rel) => {
133
+ expect(isExcludedSource(rel)).toBe(false);
52
134
  });
53
135
 
54
- it('tolerates mixed indentation across dash items', () => {
55
- const fm = `tools:\n - read\n - search\n - edit\nnext: []`;
56
- expect(extractToolTokens(fm)).toEqual(['read', 'search', 'edit']);
136
+ it('excludes a directory by prefix, not by substring (no false positives)', () => {
137
+ // `claude-committed/agents` is excluded; a *different* dir that merely starts with the
138
+ // same characters must not be swept up by a naive startsWith check.
139
+ expect(isExcludedSource('claude-committed/agents-archive/x.md')).toBe(false);
140
+ expect(EXCLUDED_SOURCE_PATHS).toContain('claude-committed/agents');
57
141
  });
58
142
 
59
- it('returns [] for an empty tools list without consuming the next key', () => {
60
- const fm = `tools:\nagents: []`;
61
- expect(extractToolTokens(fm)).toEqual([]);
143
+ // COMPLETENESS (epic (d) review): the old exclusion list filtered nothing real — the scan
144
+ // only ever listed children of the scan roots. Now every child of each canonical root must
145
+ // be EITHER a scan root OR explicitly excluded, so a catalog author who adds a tree is
146
+ // told, instead of the generator silently ignoring it.
147
+ it('every child of the two canonical roots is a scan root or explicitly excluded', () => {
148
+ const scanRoots = new Set(Object.values(SCAN_ROOT_RELATIVE_PATHS));
149
+ const excluded = new Set(EXCLUDED_SOURCE_PATHS);
150
+ const unaccounted = [];
151
+ for (const root of CANONICAL_ROOTS) {
152
+ for (const child of readdirSync(join(ASSETS, root))) {
153
+ const rel = `${root}/${child}`;
154
+ if (!scanRoots.has(rel) && !excluded.has(rel)) unaccounted.push(rel);
155
+ }
156
+ }
157
+ expect(unaccounted, 'add each to SCAN_ROOT_RELATIVE_PATHS or EXCLUDED_SOURCE_PATHS').toEqual([]);
62
158
  });
63
159
 
64
- it('tolerates a trailing inline comment on the tools: header line itself', () => {
65
- const fm = `tools: # see below\n - read\n - search\nagents: []`;
66
- expect(extractToolTokens(fm)).toEqual(['read', 'search']);
160
+ it('every exclusion names something that actually exists (no dead entries)', () => {
161
+ for (const rel of EXCLUDED_SOURCE_PATHS) expect(existsSync(join(ASSETS, rel)), rel).toBe(true);
67
162
  });
68
163
  });
69
164
 
70
- describe('convertAgent (end-to-end frontmatter emission — locks DEFECT 1 at the layer that broke)', () => {
71
- it('emits a real tools: line for a dash-list source with real tokens (the actual defect)', () => {
72
- const src = [
73
- '---',
74
- "description: 'demo'",
75
- "model: 'Claude Haiku 4.5'",
76
- 'name: Demo',
77
- 'tools:',
78
- ' - read',
79
- ' - edit',
80
- " - 'memory/*'",
81
- 'agents: []',
82
- '---',
83
- 'Body prose.',
84
- ].join('\n');
165
+ // ---------------------------------------------------------------------------
166
+ // Frontmatter reading (folded scalars are load-bearing for the maintenance skills)
167
+ // ---------------------------------------------------------------------------
85
168
 
86
- const out = convertAgent(src, 'demo');
87
- // The regression lived in convertAgent's `tools ? ... : null` ternary: a dropped
88
- // key here is exactly what produced inherit-all. Assert the key is present and populated.
89
- const toolsLine = out.split('\n').find(l => l.startsWith('tools:'));
90
- expect(toolsLine).toBeDefined();
91
- expect(toolsLine).toContain('Read');
92
- expect(toolsLine).toContain('Edit');
93
- expect(toolsLine).toContain('mcp__memory__create_entities');
169
+ describe('readFrontmatterValue', () => {
170
+ it('reads an inline scalar and strips surrounding quotes', () => {
171
+ expect(readFrontmatterValue("description: 'hello there'", 'description')).toBe('hello there');
94
172
  });
95
173
 
96
- it('omits the tools: key entirely when the source declares genuinely no tools', () => {
97
- const src = [
98
- '---',
99
- "description: 'no tools'",
100
- "model: 'Claude Haiku 4.5'",
101
- 'name: Bare',
102
- 'agents: []',
103
- '---',
104
- 'Body prose.',
105
- ].join('\n');
174
+ it('flattens a YAML folded block into one line (the committed maintenance-skill shape)', () => {
175
+ const fm = ['description: >', ' first line', ' second line', 'disable-model-invocation: true'].join('\n');
176
+ expect(readFrontmatterValue(fm, 'description')).toBe('first line second line');
177
+ });
106
178
 
107
- const out = convertAgent(src, 'bare');
108
- expect(out.split('\n').some(l => l.startsWith('tools:'))).toBe(false);
179
+ it('returns null for a missing key and for absent frontmatter', () => {
180
+ expect(readFrontmatterValue('name: x', 'description')).toBeNull();
181
+ expect(readFrontmatterValue(null, 'description')).toBeNull();
182
+ });
183
+
184
+ it('reads a real committed maintenance skill description (folded, non-empty)', () => {
185
+ const fm = frontmatterOf(readAsset('claude-committed', 'skills', 'reinit', 'SKILL.md'));
186
+ expect(readFrontmatterValue(fm, 'description')).toContain('re-initialize');
109
187
  });
110
188
  });
111
189
 
112
- describe('mapToolTokens', () => {
113
- it('expands clickup/* to all mcp__clickup__* names from the settings.js source of truth (DEFECT 2)', () => {
114
- const expected = MCP_SERVERS.clickup.tools.map(t => `mcp__clickup__${t}`);
115
- const result = mapToolTokens(['clickup/*']).split(', ');
116
- expect(result).toEqual(expected);
117
- expect(expected).toHaveLength(32);
190
+ describe('extractClaudeToolTokens', () => {
191
+ it('parses the canonical comma-separated Claude tools value', () => {
192
+ const fm = 'name: x\ntools: Read, Edit, Bash, mcp__memory__search_nodes\nskills: [agent-fundamentals]';
193
+ expect(extractClaudeToolTokens(fm)).toEqual(['Read', 'Edit', 'Bash', 'mcp__memory__search_nodes']);
118
194
  });
119
195
 
120
- it('maps the namespaced agent/runSubagent token to the Agent tool (fail-closed capability restore)', () => {
121
- expect(mapToolTokens(['agent/runSubagent']).split(', ')).toContain('Agent');
196
+ it('returns [] when no tools key is present', () => {
197
+ expect(extractClaudeToolTokens('name: x')).toEqual([]);
122
198
  });
199
+ });
123
200
 
124
- it('does not warn on intentional DROP_TOKENS entries', () => {
125
- const warn = vi.spyOn(console, 'warn').mockImplementation(() => {});
126
- const drops = ['read/problems', 'execute/runTask', 'web/githubRepo', 'findTestFiles', 'github'];
127
- const result = mapToolTokens(drops);
128
- expect(result).toBe('');
129
- expect(warn).not.toHaveBeenCalled();
201
+ // ---------------------------------------------------------------------------
202
+ // Task 2.2 — reverse token map: 1:1 names, collapse rules, documented over-grants
203
+ // ---------------------------------------------------------------------------
204
+
205
+ describe('mapClaudeToolsToCopilot — 1:1 reverse names', () => {
206
+ it.each([
207
+ ['Read', 'read/readFile'],
208
+ ['Bash', 'execute/runInTerminal'],
209
+ ['Grep', 'search/codebase'],
210
+ ['Glob', 'search/fileSearch'],
211
+ ['TodoWrite', 'todo'],
212
+ ['AskUserQuestion', 'vscode/askQuestions'],
213
+ ['Agent', 'agent/runSubagent'],
214
+ ])('%s -> %s', (claude, copilot) => {
215
+ expect(mapClaudeToolsToCopilot([claude])).toEqual([copilot]);
216
+ });
217
+
218
+ it('emits a deterministic order regardless of source order', () => {
219
+ const a = mapClaudeToolsToCopilot(['Bash', 'Read', 'TodoWrite', 'Grep']);
220
+ const b = mapClaudeToolsToCopilot(['Grep', 'TodoWrite', 'Read', 'Bash']);
221
+ expect(a).toEqual(b);
222
+ expect(a).toEqual(['read/readFile', 'search/codebase', 'execute/runInTerminal', 'todo']);
223
+ });
224
+
225
+ it('records an unrecognized Claude tool name as a diagnostic (the generator fails on it)', () => {
226
+ expect(mapClaudeToolsToCopilot(['TotallyMadeUp'], 'demo-agent')).toEqual([]);
227
+ expect(__getDiagnostics().sawUnknownToken).toBe(true);
228
+ const [message] = getDiagnosticMessages();
229
+ expect(message).toContain('TotallyMadeUp');
230
+ expect(message).toContain('demo-agent');
231
+ });
232
+ });
233
+
234
+ describe('mapClaudeToolsToCopilot — collapse rules and the two documented over-grants (G-3)', () => {
235
+ it('Edit + Write collapse to the single edit/editFiles token', () => {
236
+ expect(mapClaudeToolsToCopilot(['Edit', 'Write'])).toEqual(['edit/editFiles']);
237
+ });
238
+
239
+ it('Write alone narrows to edit/createFile', () => {
240
+ expect(mapClaudeToolsToCopilot(['Write'])).toEqual(['edit/createFile']);
241
+ });
242
+
243
+ it('OVER-GRANT: Edit alone emits edit/editFiles, silently regranting Write', () => {
244
+ // Copilot has no "edit without create" token. This is an accepted, documented consequence
245
+ // of the forward map's Edit+Write -> edit/editFiles collapse, not a bug — lock it so the
246
+ // over-grant can never change silently.
247
+ expect(mapClaudeToolsToCopilot(['Edit'])).toEqual(['edit/editFiles']);
248
+ expect(mapClaudeToolsToCopilot(['Edit'])).toEqual(mapClaudeToolsToCopilot(['Edit', 'Write']));
130
249
  });
131
250
 
132
- it('drops read/getTaskOutput silently (intentional Copilot-only drop, no warning)', () => {
251
+ it('WebFetch + WebSearch collapse to the single web token', () => {
252
+ expect(mapClaudeToolsToCopilot(['WebFetch', 'WebSearch'])).toEqual(['web']);
253
+ });
254
+
255
+ it('WebFetch alone narrows to web/fetch', () => {
256
+ expect(mapClaudeToolsToCopilot(['WebFetch'])).toEqual(['web/fetch']);
257
+ });
258
+
259
+ it('OVER-GRANT: WebSearch alone emits web, silently regranting WebFetch', () => {
260
+ expect(mapClaudeToolsToCopilot(['WebSearch'])).toEqual(['web']);
261
+ expect(mapClaudeToolsToCopilot(['WebSearch'])).toEqual(mapClaudeToolsToCopilot(['WebFetch', 'WebSearch']));
262
+ });
263
+
264
+ it('does not warn on any collapse-rule input (they are rules, not unknown tokens)', () => {
133
265
  const warn = vi.spyOn(console, 'warn').mockImplementation(() => {});
134
- const result = mapToolTokens(['read/getTaskOutput']);
135
- expect(result).toBe('');
266
+ mapClaudeToolsToCopilot(['Edit', 'Write', 'WebFetch', 'WebSearch']);
136
267
  expect(warn).not.toHaveBeenCalled();
268
+ expect(__getDiagnostics().sawUnknownToken).toBe(false);
269
+ warn.mockRestore();
137
270
  });
271
+ });
138
272
 
139
- it('warns (naming token + agent) on an unrecognized token', () => {
140
- const warn = vi.spyOn(console, 'warn').mockImplementation(() => {});
141
- mapToolTokens(['totally/madeUpTool'], 'demo-agent');
142
- expect(warn).toHaveBeenCalledTimes(1);
143
- const msg = warn.mock.calls[0][0];
144
- expect(msg).toContain('totally/madeUpTool');
145
- expect(msg).toContain('demo-agent');
273
+ // ---------------------------------------------------------------------------
274
+ // Task 2.3 — per-agent MCP allow-list (wildcard vs explicit)
275
+ // ---------------------------------------------------------------------------
276
+
277
+ describe('mapMcpTools — per-agent MCP allow-list (Task 2.3)', () => {
278
+ it('collapses to server/* only when the agent covers EVERY tool the server exposes', () => {
279
+ const all = MCP_SERVERS['vesper-indexing'].tools.map((t) => `mcp__vesper-indexing__${t}`);
280
+ expect(mapMcpTools(all)).toEqual(['vesper-indexing/*']);
281
+ });
282
+
283
+ it('keeps a narrowed surface explicit rather than widening it to a wildcard', () => {
284
+ expect(mapMcpTools(['mcp__vesper-indexing__vesper_search', 'mcp__vesper-indexing__vesper_symbols']))
285
+ .toEqual(['vesper-indexing/vesper_search', 'vesper-indexing/vesper_symbols']);
286
+ });
287
+
288
+ it('keeps the curated memory subset explicit (it is NOT the full 9-tool server surface)', () => {
289
+ const curated = ['create_entities', 'create_relations', 'add_observations', 'search_nodes', 'open_nodes'];
290
+ expect(MCP_SERVERS.memory.tools.length).toBeGreaterThan(curated.length);
291
+ const out = mapMcpTools(curated.map((t) => `mcp__memory__${t}`));
292
+ expect(out).not.toContain('memory/*');
293
+ expect(out).toEqual([
294
+ 'memory/add_observations',
295
+ 'memory/create_entities',
296
+ 'memory/create_relations',
297
+ 'memory/open_nodes',
298
+ 'memory/search_nodes',
299
+ ]);
300
+ });
301
+
302
+ it('preserves hyphens in server names and the tool segment verbatim', () => {
303
+ expect(mapMcpTools(['mcp__sequential-thinking__sequentialthinking'])).toEqual(['sequential-thinking/*']);
304
+ });
305
+
306
+ it('never wildcards a server absent from MCP_SERVERS (full coverage is unprovable)', () => {
307
+ expect(mapMcpTools(['mcp__unknown-server__do_thing'])).toEqual(['unknown-server/do_thing']);
308
+ });
309
+
310
+ it('is deterministic across servers and tools', () => {
311
+ const tokens = ['mcp__memory__search_nodes', 'mcp__vesper-indexing__vesper_search'];
312
+ expect(mapMcpTools(tokens)).toEqual(mapMcpTools([...tokens].reverse()));
313
+ });
314
+
315
+ it('ignores malformed mcp__ tokens instead of emitting a broken allow-list entry', () => {
316
+ expect(mapMcpTools(['mcp__nosplit'])).toEqual([]);
146
317
  });
147
318
  });
148
319
 
149
- describe('describeApplyTo', () => {
150
- it('translates a single extension glob to a language clause', () => {
151
- expect(describeApplyTo('**/*.java', 'java')).toEqual({
152
- clause: ' Use when working with Java files.',
153
- unmapped: [],
154
- });
320
+ // ---------------------------------------------------------------------------
321
+ // Task 2.1 — reversed agent conversion (hidden specialists only)
322
+ // ---------------------------------------------------------------------------
323
+
324
+ describe('convertAgentToCopilot (Task 2.1)', () => {
325
+ const fixture = [
326
+ '---',
327
+ 'name: demo',
328
+ 'description: A demo specialist.',
329
+ 'model: claude-opus-4-8',
330
+ 'tools: Read, Edit, Write, Bash, mcp__memory__search_nodes',
331
+ 'skills: [agent-fundamentals]',
332
+ '---',
333
+ 'Body prose mentioning .claude/skills and TodoWrite.',
334
+ '',
335
+ ].join('\n');
336
+
337
+ it('emits Copilot frontmatter with the reversed model, tokens and kebab name', () => {
338
+ const out = convertAgentToCopilot(fixture, 'demo');
339
+ expect(lineOf(out, 'description')).toBe("description: 'A demo specialist.'");
340
+ expect(lineOf(out, 'name')).toBe('name: demo');
341
+ expect(lineOf(out, 'model')).toBe("model: 'Claude Opus 4.8'");
342
+ expect(lineOf(out, 'tools')).toBe(
343
+ "tools: ['read/readFile', 'edit/editFiles', 'execute/runInTerminal', 'memory/search_nodes']"
344
+ );
345
+ expect(lineOf(out, 'agents')).toBe('agents: []');
155
346
  });
156
347
 
157
- it('dedupes and preserves first-seen order across a multi-extension list (reactjs)', () => {
158
- expect(describeApplyTo('**/*.jsx, **/*.tsx, **/*.js, **/*.ts, **/*.css, **/*.scss', 'reactjs')).toEqual({
159
- clause: ' Use when working with JSX, TSX, JavaScript, TypeScript, CSS, or SCSS files.',
160
- unmapped: [],
161
- });
348
+ it('marks EVERY emitted agent as a hidden specialist (DEC-7 / BR-1)', () => {
349
+ expect(convertAgentToCopilot(fixture, 'demo')).toContain('user-invocable: false');
350
+ expect(convertAgentToCopilot(fixture, 'demo')).not.toContain('user-invocable: true');
162
351
  });
163
352
 
164
- it('maps a bare filename via its extension (no path component)', () => {
165
- expect(describeApplyTo('vite.config.ts', 'tailwind-v4-vite')).toEqual({
166
- clause: ' Use when working with TypeScript files.',
167
- unmapped: [],
168
- });
353
+ it('drops the Claude-only skills: preload key (no Copilot analogue)', () => {
354
+ expect(convertAgentToCopilot(fixture, 'demo')).not.toContain('skills:');
169
355
  });
170
356
 
171
- it('returns an empty clause for empty applyTo', () => {
172
- expect(describeApplyTo('', 'anything')).toEqual({ clause: '', unmapped: [] });
357
+ it('inverts body path/tool tokens toward the Copilot .vesper/ homes', () => {
358
+ const out = convertAgentToCopilot(fixture, 'demo');
359
+ expect(out).toContain('.vesper/skills');
360
+ expect(out).not.toContain('.claude/skills');
361
+ expect(out).toContain('manage_todo_list');
173
362
  });
174
363
 
175
- it('uses the GLOB_OVERRIDES phrase for a path-scoped hit', () => {
176
- expect(describeApplyTo('**/.vesper/.tracking/changes/*.md', 'task-implementation')).toEqual({
177
- clause: ' Use when working with task change-record files under .vesper/.tracking/changes/.',
178
- unmapped: [],
179
- });
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';
366
+ expect(convertAgentToCopilot(bare, 'bare').split('\n').some((l) => l.startsWith('tools:'))).toBe(false);
180
367
  });
181
368
 
182
- it('reports a path-scoped miss as unmapped (LOUD, not silent) and omits it from the clause', () => {
183
- const warn = vi.spyOn(console, 'warn').mockImplementation(() => {});
184
- const result = describeApplyTo('src/weird/**/*.md', 'fabricated');
185
- expect(result.unmapped).toContain('src/weird/**/*.md');
186
- expect(result.clause).toBe('');
187
- expect(warn).toHaveBeenCalled();
188
- expect(warn.mock.calls[0][0]).toContain('src/weird/**/*.md');
369
+ it('falls back on an unmapped model id and records it (trips the strict flag)', () => {
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'");
372
+ expect(__getDiagnostics().sawUnknownModel).toBe(true);
373
+ });
374
+
375
+ it('THROWS on an agent with no parseable frontmatter (verbatim emission would be pickable)', () => {
376
+ expect(() => convertAgentToCopilot('# no frontmatter\n', 'rogue')).toThrow(/no parseable frontmatter/);
377
+ });
378
+
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';
381
+ const out = convertAgentToCopilot(crlf, 'demo');
382
+ expect(out).toContain('user-invocable: false');
383
+ expect(out).not.toContain('\r');
384
+ });
385
+
386
+ it('quotes the emitted description so a colon in it stays valid YAML', () => {
387
+ const src = '---\nname: x\ndescription: Reviews code: fast\n---\nBody.\n';
388
+ expect(lineOf(convertAgentToCopilot(src, 'x'), 'description')).toBe("description: 'Reviews code: fast'");
189
389
  });
190
390
 
191
- it('reports an unknown extension as unmapped', () => {
391
+ it('converts every real canonical agent to a hidden specialist with no unknown tokens', () => {
192
392
  const warn = vi.spyOn(console, 'warn').mockImplementation(() => {});
193
- const result = describeApplyTo('**/*.zig', 'fabricated');
194
- expect(result.unmapped).toContain('**/*.zig');
195
- expect(result.clause).toBe('');
196
- expect(warn).toHaveBeenCalled();
393
+ const files = allAgentFiles(); // the core plus every pack (epic H)
394
+ expect(files.length).toBeGreaterThan(30);
395
+ for (const { file, abs } of files) {
396
+ const out = convertAgentToCopilot(readFileSync(abs, 'utf-8'), file.replace(/\.md$/, ''));
397
+ expect(out, file).toContain('user-invocable: false');
398
+ expect(out, file).toMatch(/^---\ndescription: /);
399
+ }
400
+ expect(__getDiagnostics()).toEqual({ sawUnknownToken: false, sawUnknownModel: false });
401
+ warn.mockRestore();
197
402
  });
198
403
  });
199
404
 
200
- // Caller-layer coverage: asserts on convertInstructionToSkill's ACTUAL emitted description, not just
201
- // the helper in isolation. A regression that bypasses describeApplyTo and reintroduces a raw-glob paste
202
- // directly in the caller (the helper-vs-caller gap that hid the tool-token defect) would pass every
203
- // describeApplyTo unit test but fail here.
204
- describe('convertInstructionToSkill (caller-layer output over real instruction fixtures)', () => {
205
- it('emits a translated language clause and NO raw glob for an extension-scoped instruction (reactjs)', () => {
206
- const out = convertInstructionToSkill(readInstructionFixture('reactjs'), 'reactjs');
207
- const desc = descriptionLineOf(out);
208
- expect(desc).toContain('Use when working with JSX, TSX, JavaScript, TypeScript, CSS, or SCSS files.');
209
- expect(desc).not.toMatch(/\*\*\//); // no globstar
210
- expect(desc).not.toMatch(/\*\./); // no `*.ext` raw glob
211
- });
212
-
213
- it('emits the GLOB_OVERRIDES phrase and NO raw glob for the path-scoped instruction (task-implementation)', () => {
214
- const out = convertInstructionToSkill(readInstructionFixture('task-implementation'), 'task-implementation');
215
- const desc = descriptionLineOf(out);
216
- expect(desc).toContain('Use when working with task change-record files under .vesper/.tracking/changes/.');
217
- expect(desc).not.toMatch(/\*\*\//);
218
- expect(desc).not.toMatch(/\*\./);
219
- });
220
-
221
- it('normalizes a base description lacking terminal punctuation so the clause does not run on (java)', () => {
222
- const out = convertInstructionToSkill(readInstructionFixture('java'), 'java');
223
- const desc = descriptionLineOf(out);
224
- // Base is "Guidelines for building Java base applications" (no period) — must gain one at the seam.
225
- expect(desc).toContain('Java base applications. Use when working with Java files.');
226
- expect(desc).not.toContain('applications Use when'); // the run-on the fix removes
405
+ // ---------------------------------------------------------------------------
406
+ // Task 2.1 / S-1 — the single-key discriminator, gated on TREE LOCATION
407
+ // ---------------------------------------------------------------------------
408
+
409
+ describe('isCommittedMaintenanceSkill — single-key discriminator (DEC-6 amended)', () => {
410
+ const marker = '---\ndescription: x\ndisable-model-invocation: true\n---\n';
411
+
412
+ it('matches exactly the four real committed maintenance skills', () => {
413
+ const root = join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.committedSkills);
414
+ const names = readdirSync(root, { withFileTypes: true }).filter((e) => e.isDirectory()).map((e) => e.name);
415
+ const matched = names.filter((n) =>
416
+ isCommittedMaintenanceSkill(join(root, n), frontmatterOf(readAsset('claude-committed', 'skills', n, 'SKILL.md')))
417
+ );
418
+ expect(matched.sort()).toEqual(['compact-knowledge', 'reinit', 'revalidate-knowledge', 'revalidate-team']);
419
+ });
420
+
421
+ it('does not match a real plugin catalog skill (they carry no marker)', () => {
422
+ const fm = frontmatterOf(readSkill('code-review', 'SKILL.md'));
423
+ expect(isCommittedMaintenanceSkill('claude/skills/code-review', fm)).toBe(false);
424
+ });
425
+
426
+ // S-1 ROBUSTNESS LOCK. The marker is NOT globally unique — the third-party
427
+ // assets/claude/packs/styles/skills/i-have-adhd/SKILL.md carries it. These two cases prove the
428
+ // discriminator is gated on scan-scope to assets/claude-committed/skills/, not on the marker
429
+ // being absent elsewhere.
430
+ it('S-1: a PLUGIN-tree skill carrying the marker still emits no prompt (tree location is the signal)', () => {
431
+ expect(isCommittedMaintenanceSkill('claude/skills/rogue-skill', marker)).toBe(false);
432
+ });
433
+
434
+ it('S-1: a PACK-tree third-party skill carrying the marker still emits no prompt', () => {
435
+ expect(isCommittedMaintenanceSkill('claude/packs/styles/skills/i-have-adhd', marker)).toBe(false);
436
+ // ...and the real third-party skill really does carry the marker, so this is not a hypothetical.
437
+ expect(readAsset('claude', 'packs', 'styles', 'skills', 'i-have-adhd', 'SKILL.md')).toContain('disable-model-invocation: true');
438
+ });
439
+
440
+ it('is single-key: it does NOT additionally require user-invocable (which no committed skill has)', () => {
441
+ expect(isCommittedMaintenanceSkill('claude-committed/skills/demo', marker)).toBe(true);
442
+ const all = readdirSync(join(ASSETS, SCAN_ROOT_RELATIVE_PATHS.committedSkills), { withFileTypes: true })
443
+ .filter((e) => e.isDirectory())
444
+ .map((e) => readAsset('claude-committed', 'skills', e.name, 'SKILL.md'));
445
+ for (const content of all) expect(frontmatterOf(content)).not.toContain('user-invocable');
446
+ });
447
+
448
+ it('a committed skill WITHOUT the marker opts out (marker is still required)', () => {
449
+ expect(isCommittedMaintenanceSkill('claude-committed/skills/demo', '---\ndescription: x\n---')).toBe(false);
450
+ expect(isCommittedMaintenanceSkill('claude-committed/skills/demo', 'disable-model-invocation: false')).toBe(false);
451
+ });
452
+ });
453
+
454
+ describe('convertMaintenanceSkillToPrompt', () => {
455
+ it('renders a Copilot .prompt.md with the folded description flattened onto one line', () => {
456
+ const out = convertMaintenanceSkillToPrompt(readAsset('claude-committed', 'skills', 'reinit', 'SKILL.md'));
457
+ const desc = lineOf(out, 'description');
458
+ expect(desc).toMatch(/^description: '.*'$/);
459
+ expect(desc).toContain('/reinit');
460
+ expect(out.split('\n').filter((l) => l === '---')).toHaveLength(2);
461
+ });
462
+ });
463
+
464
+ // ---------------------------------------------------------------------------
465
+ // Task 2.1 / DEC-1 — copilot-apply-to re-emission (deterministic glob attachment)
466
+ // ---------------------------------------------------------------------------
467
+
468
+ describe('convertSkillToInstructions — copilot-apply-to re-emission (DEC-1)', () => {
469
+ it('re-emits the glob VERBATIM into applyTo (no reverse parse, no NL translation)', () => {
470
+ const glob = '**/*.jsx, **/*.tsx, **/*.js, **/*.ts, **/*.css, **/*.scss';
471
+ const out = convertSkillToInstructions(readSkill('reactjs', 'SKILL.md'), 'reactjs');
472
+ expect(lineOf(out, 'applyTo')).toBe(`applyTo: '${glob}'`);
473
+ });
474
+
475
+ it('preserves a path-scoped glob without collapsing it to a language phrase', () => {
476
+ const out = convertSkillToInstructions(readSkill('task-implementation', 'SKILL.md'), 'task-implementation');
477
+ expect(lineOf(out, 'applyTo')).toBe("applyTo: '**/.vesper/.tracking/changes/*.md'");
478
+ });
479
+
480
+ it('returns null for a skill without the field (plain relevance-skill, no .instructions.md)', () => {
481
+ expect(convertSkillToInstructions(readSkill('code-review', 'SKILL.md'), 'code-review')).toBeNull();
482
+ });
483
+
484
+ it('emits an instructions file for every canonical skill carrying the field, and only those', () => {
485
+ // The core plus every pack (epic H): the tiered instructions of a packed skill still go to the
486
+ // global folders, so the expected list spans the whole catalog.
487
+ const withField = [...allSkillDirs().entries()]
488
+ .filter(([, dir]) => existsSync(join(dir, 'SKILL.md')))
489
+ .filter(([, dir]) => (frontmatterOf(readFileSync(join(dir, 'SKILL.md'), 'utf-8')) || '').includes('copilot-apply-to:'))
490
+ .map(([n]) => n);
491
+ expect(withField.sort()).toEqual([
492
+ 'flutter',
493
+ 'java',
494
+ 'nextjs-tailwind',
495
+ 'reactjs',
496
+ 'self-explanatory-code-commenting',
497
+ 'tailwind-v4-vite',
498
+ 'task-implementation',
499
+ ]);
500
+ });
501
+ });
502
+
503
+ describe('convertSkillMd', () => {
504
+ it('strips the source-only copilot-apply-to field from the generated skill', () => {
505
+ const out = convertSkillMd(readSkill('reactjs', 'SKILL.md'));
506
+ expect(out).not.toContain('copilot-apply-to:');
507
+ expect(out).toContain('name: reactjs');
508
+ });
509
+
510
+ it('passes a token-free skill through byte-identically (near-verbatim copy)', () => {
511
+ const src = readSkill('code-review', 'SKILL.md');
512
+ expect(convertSkillMd(src)).toBe(src);
513
+ });
514
+ });
515
+
516
+ // ---------------------------------------------------------------------------
517
+ // Task 2.2 — inverted body-token replacements (conservative by design)
518
+ // ---------------------------------------------------------------------------
519
+
520
+ describe('applyCopilotBodyTokenReplacements', () => {
521
+ it.each([
522
+ ['.claude/agents/foo.md', '.vesper/agents/foo.md'],
523
+ ['.claude/commands/reinit.md', '.vesper/prompts/reinit.md'],
524
+ ['.claude/skills/x/SKILL.md', '.vesper/skills/x/SKILL.md'],
525
+ ['.claude/rules/error-handling.md', '.vesper/instructions/error-handling.instructions.md'],
526
+ ['.claude/vesper/context.md', '.vesper/instructions/vesper-context.instructions.md'],
527
+ ['.claude/rules/vesper-context.md', '.vesper/instructions/vesper-context.instructions.md'],
528
+ ['.claude/vesper/orchestration.md', '.vesper/instructions/vesper-orchestration.instructions.md'],
529
+ ['.claude/rules/vesper-orchestration.md', '.vesper/instructions/vesper-orchestration.instructions.md'],
530
+ ['.claude/vesper/orchestrator.md', '.vesper/instructions/vesper-orchestrator.instructions.md'],
531
+ ['.claude/agents/vesper-orchestrator.md', '.vesper/agents/vesper-orchestrator.agent.md'],
532
+ ['.claude/vesper/context/conventions.md', '.vesper/context/conventions.md'],
533
+ ['see .mcp.json', 'see .vscode/mcp.json'],
534
+ ['use AskUserQuestion here', 'use vscode/askQuestions here'],
535
+ ['track with TodoWrite', 'track with manage_todo_list'],
536
+ ['`run_in_background: true`', '`isBackground: true`'],
537
+ ])('inverts %s', (input, expected) => {
538
+ expect(applyCopilotBodyTokenReplacements(input)).toBe(expected);
539
+ });
540
+
541
+ it('is idempotent on an already-Copilot mcp config path', () => {
542
+ expect(applyCopilotBodyTokenReplacements('.vscode/mcp.json')).toBe('.vscode/mcp.json');
543
+ });
544
+
545
+ it('deliberately leaves ambiguous English tool words alone (conservative inversion)', () => {
546
+ const prose = 'Read the plan, Edit the file, Write a note, Grep the tree, Glob the paths, run Bash.';
547
+ expect(applyCopilotBodyTokenReplacements(prose)).toBe(prose);
548
+ });
549
+ });
550
+
551
+ // ---------------------------------------------------------------------------
552
+ // G-4 — golden snapshots for the deterministic subset
553
+ // ---------------------------------------------------------------------------
554
+
555
+ describe('golden snapshots (G-4) — the deterministic subset only', () => {
556
+ it('agent conversion is byte-stable for a fixed fixture', () => {
557
+ const src = [
558
+ '---',
559
+ 'name: golden-agent',
560
+ 'description: Golden fixture specialist.',
561
+ 'model: claude-sonnet-5',
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
+ 'skills: [agent-fundamentals]',
564
+ '---',
565
+ '# Golden Agent',
566
+ '',
567
+ 'Consult `.claude/vesper/context.md` and the rules in `.claude/rules/`.',
568
+ '',
569
+ ].join('\n');
570
+ expect(convertAgentToCopilot(src, 'golden-agent')).toMatchSnapshot();
571
+ });
572
+
573
+ it('copilot-apply-to re-emission is byte-stable for a real canonical skill', () => {
574
+ const out = convertSkillToInstructions(readSkill('java', 'SKILL.md'), 'java');
575
+ expect(out.slice(0, out.indexOf('\n---\n') + 5)).toMatchSnapshot();
576
+ });
577
+
578
+ it('maintenance-skill prompt frontmatter is byte-stable', () => {
579
+ const out = convertMaintenanceSkillToPrompt(readAsset('claude-committed', 'skills', 'revalidate-team', 'SKILL.md'));
580
+ expect(out.slice(0, out.indexOf('\n---\n') + 5)).toMatchSnapshot();
581
+ });
582
+
583
+ it('skill pass-through is byte-identical in the no-token case (either-direction claim)', () => {
584
+ const src = readSkill('code-review', 'SKILL.md');
585
+ expect(convertSkillMd(src)).toBe(src);
586
+ expect(applyCopilotBodyTokenReplacements(src)).toBe(src);
587
+ });
588
+ });
589
+
590
+ // ---------------------------------------------------------------------------
591
+ // Generated-output invariants (the flip actually ran and produced the committed root)
592
+ // ---------------------------------------------------------------------------
593
+
594
+ describe('generated Copilot output root (committed, M-2)', () => {
595
+ const OUT = join(ASSETS, 'copilot');
596
+
597
+ it('exists beside the canonical trees with the expected type dirs', () => {
598
+ expect(existsSync(OUT)).toBe(true);
599
+ for (const type of ['agents', 'skills', 'instructions-extended', 'prompts']) {
600
+ expect(existsSync(join(OUT, type)), type).toBe(true);
601
+ }
602
+ });
603
+
604
+ it('emits ONLY hidden specialists — zero pickable agents (BR-1 / DEC-7)', () => {
605
+ // The flat core folder plus every pack's (epic H).
606
+ const dirs = [join(OUT, 'agents'), ...packNames().map((p) => join(OUT, 'packs', p, 'agents')).filter((d) => existsSync(d))];
607
+ const files = dirs.flatMap((dir) => readdirSync(dir).filter((f) => f.endsWith('.agent.md')).map((f) => join(dir, f)));
608
+ expect(files.length).toBeGreaterThan(30);
609
+ for (const f of files) {
610
+ const content = readFileSync(f, 'utf-8');
611
+ expect(content, f).toContain('user-invocable: false');
612
+ expect(content, f).not.toContain('user-invocable: true');
613
+ }
614
+ });
615
+
616
+ it('emits no orchestrator persona (the pickable one is project-local, not package-resident)', () => {
617
+ const files = readdirSync(join(OUT, 'agents'));
618
+ expect(files.filter((f) => f.startsWith('vesper'))).toEqual([]);
619
+ });
620
+
621
+ it('emits a prompt for exactly the four committed maintenance skills', () => {
622
+ expect(readdirSync(join(OUT, 'prompts')).sort()).toEqual([
623
+ 'compact-knowledge.prompt.md',
624
+ 'reinit.prompt.md',
625
+ 'revalidate-knowledge.prompt.md',
626
+ 'revalidate-team.prompt.md',
627
+ ]);
628
+ });
629
+
630
+ it('emits an instructions file for exactly the copilot-apply-to skills, by tier', () => {
631
+ // Every 2.0 instruction descends from a 1.x EXTENDED (opt-in) instruction; 1.x's core
632
+ // instructions were all folded into skills / the project-local brain. So the core
633
+ // folder is empty and therefore absent (git carries no empty dir).
634
+ expect(existsSync(join(OUT, 'instructions'))).toBe(false);
635
+ const extended = readdirSync(join(OUT, 'instructions-extended')).sort();
636
+ expect(extended).toEqual([
637
+ 'flutter',
638
+ 'java',
639
+ 'nextjs-tailwind',
640
+ 'reactjs',
641
+ 'self-explanatory-code-commenting',
642
+ 'tailwind-v4-vite',
643
+ 'task-implementation',
644
+ ]);
645
+ for (const name of extended) {
646
+ expect(readdirSync(join(OUT, 'instructions-extended', name))).toEqual([`${name}.instructions.md`]);
647
+ }
648
+ });
649
+
650
+ it('never emits the excluded inputs into the output root', () => {
651
+ expect(existsSync(join(OUT, 'commands'))).toBe(false);
652
+ expect(existsSync(join(OUT, '.claude-plugin'))).toBe(false);
653
+ expect(existsSync(join(OUT, 'skills', 'i-have-adhd'))).toBe(false);
654
+ expect(existsSync(join(OUT, 'agents', 'vesper-orchestrator.agent.md'))).toBe(false);
655
+ });
656
+
657
+ it('carries no leaked source-only copilot-apply-to field in any generated skill', () => {
658
+ const root = join(OUT, 'skills');
659
+ for (const name of readdirSync(root)) {
660
+ const skillMd = join(root, name, 'SKILL.md');
661
+ if (!existsSync(skillMd)) continue;
662
+ expect(readFileSync(skillMd, 'utf-8'), name).not.toContain('copilot-apply-to:');
663
+ }
227
664
  });
228
665
  });