@mthanh/vespercli 1.7.1 → 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.
- package/README.md +299 -191
- package/assets/CATALOG.md +496 -314
- package/assets/claude/.claude-plugin/marketplace.json +56 -0
- package/assets/claude/.claude-plugin/plugin.json +10 -0
- package/assets/claude/agents/code-reviewer.md +13 -0
- package/assets/claude/agents/context7.md +1 -1
- package/assets/claude/agents/feature-wrap-document.md +29 -6
- package/assets/claude/agents/modernization.md +1 -0
- package/assets/claude/agents/skill-creator.md +1 -1
- package/assets/claude/agents/workspace-learner.md +12 -6
- package/assets/claude/context.md.tpl +1 -1
- package/assets/claude/orchestration.md.tpl +15 -14
- package/assets/claude/packs/backend/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/backend/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/backend/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/backend/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/backend/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/docs/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/docs/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/docs/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/docs/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/docs/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/frontend/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/frontend/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/frontend/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/frontend/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/frontend/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/frontend/skills/nextjs-tailwind/SKILL.md +74 -0
- package/assets/claude/packs/frontend/skills/reactjs/SKILL.md +164 -0
- package/assets/claude/packs/frontend/skills/tailwind-v4-vite/SKILL.md +238 -0
- package/assets/claude/packs/integrations/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/integrations/agents/clickup-agent.md +134 -0
- package/assets/claude/packs/integrations/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/integrations/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/integrations/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/integrations/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/LICENSE +21 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/SKILL.md +370 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/UPSTREAM.json +7 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/references/marketplace-actions.md +1042 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/references/syntax-mapping.md +906 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/references/validator.md +91 -0
- package/assets/claude/packs/integrations/skills/github-actions-to-gitlab-ci/scripts/validate.sh +206 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/LICENSE +21 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/SKILL.md +422 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/UPSTREAM.json +7 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/README.md +70 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/.gitlab-ci.yml +55 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/README.md +28 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-click/.gitlab-ci.yml +133 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-click/README.md +31 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.after-layered.yml +59 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.before.yml +34 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.broken.yml +49 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.optimized.yml +65 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.yml +101 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/README.md +42 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/caching.md +170 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/catalog.md +173 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/debugging.md +168 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/images.md +79 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/mental-model.md +96 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/onboarding.md +122 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/optimize.md +301 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/recipes.md +426 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/syntax.md +319 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/references/verification.md +278 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/scripts/catalog-search.sh +76 -0
- package/assets/claude/packs/integrations/skills/gitlab-ci-skill/scripts/verify.sh +332 -0
- package/assets/claude/packs/integrations/skills/gitlab-guardrails/SKILL.md +62 -0
- package/assets/claude/packs/playwright/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/playwright/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/playwright/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/playwright/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/playwright/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/playwright/skills/playwright-generate-test/SKILL.md +25 -0
- package/assets/claude/packs/polyglot/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/polyglot/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/polyglot/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/polyglot/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/polyglot/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/polyglot/skills/flutter/SKILL.md +449 -0
- package/assets/claude/packs/polyglot/skills/google-adk-python/SKILL.md +242 -0
- package/assets/claude/packs/polyglot/skills/java/SKILL.md +83 -0
- package/assets/claude/packs/styles/.claude-plugin/plugin.json +10 -0
- package/assets/claude/packs/styles/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/claude/packs/styles/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/claude/packs/styles/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/claude/packs/styles/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/claude/packs/styles/skills/i-have-adhd/LICENSE +21 -0
- package/assets/claude/packs/styles/skills/i-have-adhd/SKILL.md +142 -0
- package/assets/claude/packs/styles/skills/i-have-adhd/UPSTREAM.json +7 -0
- package/assets/claude/packs/styles/skills/ponytail/LICENSE +21 -0
- package/assets/claude/packs/styles/skills/ponytail/SKILL.md +120 -0
- package/assets/claude/packs/styles/skills/ponytail/UPSTREAM.json +7 -0
- package/assets/claude/skills/create-specification/SKILL.md +136 -0
- package/assets/claude/skills/document/SKILL.md +5 -0
- package/assets/claude/skills/mcp-memory/SKILL.md +13 -13
- package/assets/claude/skills/mcp-memory/references/agent-memory-protocol.md +33 -42
- package/assets/claude/skills/mcp-memory/references/entity-schema.md +7 -26
- package/assets/claude/skills/mcp-memory/references/memory-hygiene.md +1 -4
- package/assets/claude/skills/project-management/SKILL.md +5 -0
- package/assets/claude/skills/repo-story-time/SKILL.md +134 -0
- package/assets/claude/skills/self-explanatory-code-commenting/SKILL.md +3 -1
- package/assets/claude/skills/skill-creator/SKILL.md +1 -1
- package/assets/claude/skills/task-implementation/SKILL.md +3 -1
- package/assets/claude/skills/vesper-catalog-editing-safety/SKILL.md +82 -51
- package/assets/claude/skills/vesper-orchestration/SKILL.md +71 -0
- package/assets/claude/skills/vesper-orchestration/references/implement-pipeline.md +337 -0
- package/assets/claude/skills/vesper-orchestration/references/multi-task-dispatch.md +13 -0
- package/assets/claude/skills/vesper-orchestration/references/qa-e2e-pipeline.md +160 -0
- package/assets/claude/skills/vesper-orchestration/references/reinit-pipeline.md +98 -0
- package/assets/claude/skills/vesper-orchestration/references/research-plan-pipeline.md +214 -0
- package/assets/claude/skills/vscode-agent-config/SKILL.md +5 -0
- package/assets/claude/vesper-orchestrator.md +211 -159
- package/assets/claude-committed/agents/vesper-orchestrator.md +31 -0
- package/assets/claude-committed/skills/compact-knowledge/SKILL.md +32 -0
- package/assets/claude-committed/skills/reinit/SKILL.md +22 -0
- package/assets/claude-committed/skills/revalidate-knowledge/SKILL.md +44 -0
- package/assets/claude-committed/skills/revalidate-team/SKILL.md +25 -0
- package/assets/copilot/agents/code-planner.agent.md +418 -0
- package/assets/copilot/agents/code-reviewer.agent.md +90 -0
- package/assets/copilot/agents/code-tester.agent.md +23 -0
- package/assets/copilot/agents/context7.agent.md +897 -0
- package/assets/copilot/agents/copywriter.agent.md +182 -0
- package/assets/copilot/agents/feature-wrap-document.agent.md +713 -0
- package/assets/copilot/agents/janitor.agent.md +103 -0
- package/assets/copilot/agents/modernization.agent.md +646 -0
- package/assets/copilot/agents/principal-software-engineer.agent.md +50 -0
- package/assets/copilot/agents/refine-issue.agent.md +39 -0
- package/assets/copilot/agents/se-system-architecture-reviewer.agent.md +190 -0
- package/assets/copilot/agents/se-technical-writer.agent.md +432 -0
- package/assets/copilot/agents/skill-creator.agent.md +395 -0
- package/assets/copilot/agents/task-researcher.agent.md +294 -0
- package/assets/copilot/agents/technical-product-manager.agent.md +316 -0
- package/assets/copilot/agents/vision-analyst.agent.md +92 -0
- package/assets/copilot/agents/vitest.agent.md +603 -0
- package/assets/copilot/agents/workspace-learner.agent.md +439 -0
- package/assets/copilot/instructions-extended/flutter/flutter.instructions.md +447 -0
- package/assets/copilot/instructions-extended/java/java.instructions.md +81 -0
- package/assets/copilot/instructions-extended/nextjs-tailwind/nextjs-tailwind.instructions.md +72 -0
- package/assets/copilot/instructions-extended/reactjs/reactjs.instructions.md +162 -0
- package/assets/copilot/instructions-extended/self-explanatory-code-commenting/self-explanatory-code-commenting.instructions.md +162 -0
- package/assets/copilot/instructions-extended/tailwind-v4-vite/tailwind-v4-vite.instructions.md +236 -0
- package/assets/copilot/instructions-extended/task-implementation/task-implementation.instructions.md +223 -0
- package/assets/copilot/packs/backend/agents/firebase-developer.agent.md +701 -0
- package/assets/copilot/packs/backend/agents/nodejs-express-developer.agent.md +619 -0
- package/assets/copilot/packs/backend/skills/nestjs/SKILL.md +425 -0
- package/assets/copilot/packs/docs/skills/ai-multimodal/SKILL.md +357 -0
- package/assets/copilot/packs/frontend/agents/expert-nextjs-developer.agent.md +489 -0
- package/assets/copilot/packs/frontend/agents/expert-react-frontend-engineer.agent.md +751 -0
- package/assets/copilot/packs/frontend/agents/jest-react-component-analyzer.agent.md +303 -0
- package/assets/copilot/packs/frontend/agents/jest-react-scenario-scanner.agent.md +236 -0
- package/assets/copilot/packs/frontend/agents/jest-react-test-generator.agent.md +605 -0
- package/assets/copilot/packs/frontend/agents/jest-react-test-planner.agent.md +461 -0
- package/assets/copilot/packs/frontend/agents/jest-react-test-runner.agent.md +332 -0
- package/assets/copilot/packs/frontend/skills/nextjs/SKILL.md +179 -0
- package/assets/copilot/packs/frontend/skills/nextjs-tailwind/SKILL.md +72 -0
- package/assets/copilot/packs/frontend/skills/reactjs/SKILL.md +162 -0
- package/assets/copilot/packs/frontend/skills/tailwind-v4-vite/SKILL.md +236 -0
- package/assets/copilot/packs/integrations/agents/clickup-agent.agent.md +135 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/LICENSE +21 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/SKILL.md +370 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/UPSTREAM.json +7 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/references/marketplace-actions.md +1042 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/references/syntax-mapping.md +906 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/references/validator.md +91 -0
- package/assets/copilot/packs/integrations/skills/github-actions-to-gitlab-ci/scripts/validate.sh +206 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/LICENSE +21 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/SKILL.md +422 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/UPSTREAM.json +7 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/README.md +70 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/.gitlab-ci.yml +55 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/README.md +28 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-click/.gitlab-ci.yml +133 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-click/README.md +31 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.after-layered.yml +59 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.before.yml +34 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.broken.yml +49 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.optimized.yml +65 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/.gitlab-ci.yml +101 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/python-uv-tox/README.md +42 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/caching.md +170 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/catalog.md +173 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/debugging.md +168 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/images.md +79 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/mental-model.md +96 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/onboarding.md +122 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/optimize.md +301 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/recipes.md +426 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/syntax.md +319 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/references/verification.md +278 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/scripts/catalog-search.sh +76 -0
- package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/scripts/verify.sh +332 -0
- package/assets/copilot/packs/integrations/skills/gitlab-guardrails/SKILL.md +62 -0
- package/assets/copilot/packs/playwright/agents/playwright-component-analyzer.agent.md +216 -0
- package/assets/copilot/packs/playwright/agents/playwright-scenario-scanner.agent.md +180 -0
- package/assets/copilot/packs/playwright/agents/playwright-test-generator.agent.md +410 -0
- package/assets/copilot/packs/playwright/agents/playwright-test-planner.agent.md +398 -0
- package/assets/copilot/packs/playwright/agents/playwright-tester.agent.md +65 -0
- package/assets/copilot/packs/playwright/skills/chrome-devtools/SKILL.md +360 -0
- package/assets/copilot/packs/playwright/skills/chrome-devtools/scripts/README.md +213 -0
- package/assets/copilot/packs/playwright/skills/playwright-generate-test/SKILL.md +25 -0
- package/assets/copilot/packs/playwright/skills/playwright-typescript/SKILL.md +86 -0
- package/assets/copilot/packs/polyglot/skills/flutter/SKILL.md +447 -0
- package/assets/copilot/packs/polyglot/skills/google-adk-python/SKILL.md +242 -0
- package/assets/copilot/packs/polyglot/skills/java/SKILL.md +81 -0
- package/assets/copilot/packs/styles/skills/i-have-adhd/LICENSE +21 -0
- package/assets/copilot/packs/styles/skills/i-have-adhd/SKILL.md +142 -0
- package/assets/copilot/packs/styles/skills/i-have-adhd/UPSTREAM.json +7 -0
- package/assets/copilot/packs/styles/skills/ponytail/LICENSE +21 -0
- package/assets/copilot/packs/styles/skills/ponytail/SKILL.md +120 -0
- package/assets/copilot/packs/styles/skills/ponytail/UPSTREAM.json +7 -0
- package/assets/copilot/prompts/compact-knowledge.prompt.md +27 -0
- package/assets/copilot/prompts/reinit.prompt.md +19 -0
- package/assets/copilot/prompts/revalidate-knowledge.prompt.md +39 -0
- package/assets/copilot/prompts/revalidate-team.prompt.md +21 -0
- package/assets/copilot/skills/agent-fundamentals/SKILL.md +89 -0
- package/assets/copilot/skills/agent-fundamentals/references/codebase-query.md +95 -0
- package/assets/copilot/skills/agent-fundamentals/references/terminal-discipline.md +94 -0
- package/assets/copilot/skills/agent-fundamentals/references/tool-usage-patterns.md +67 -0
- package/assets/copilot/skills/create-specification/SKILL.md +136 -0
- package/assets/copilot/skills/document/SKILL.md +45 -0
- package/assets/copilot/skills/mcp-memory/SKILL.md +97 -0
- package/assets/copilot/skills/mcp-memory/references/agent-memory-protocol.md +186 -0
- package/assets/copilot/skills/mcp-memory/references/entity-schema.md +141 -0
- package/assets/copilot/skills/mcp-memory/references/memory-hygiene.md +163 -0
- package/assets/copilot/skills/nodejs-javascript-vitest/SKILL.md +34 -0
- package/assets/copilot/skills/project-management/SKILL.md +129 -0
- package/assets/copilot/skills/repo-story-time/SKILL.md +134 -0
- package/assets/copilot/skills/self-explanatory-code-commenting/SKILL.md +162 -0
- package/assets/copilot/skills/sequential-thinking/README.md +118 -0
- package/assets/copilot/skills/skill-creator/SKILL.md +237 -0
- package/assets/copilot/skills/skill-creator/agent_skills_spec.md +55 -0
- package/assets/copilot/skills/task-implementation/SKILL.md +223 -0
- package/assets/copilot/skills/vesper-catalog-editing-safety/SKILL.md +172 -0
- package/assets/copilot/skills/vesper-orchestration/SKILL.md +71 -0
- package/assets/copilot/skills/vesper-orchestration/references/implement-pipeline.md +337 -0
- package/assets/copilot/skills/vesper-orchestration/references/multi-task-dispatch.md +13 -0
- package/assets/copilot/skills/vesper-orchestration/references/qa-e2e-pipeline.md +160 -0
- package/assets/copilot/skills/vesper-orchestration/references/reinit-pipeline.md +98 -0
- package/assets/copilot/skills/vesper-orchestration/references/research-plan-pipeline.md +214 -0
- package/assets/copilot/skills/vscode-agent-config/SKILL.md +95 -0
- package/assets/hooks/post-checkout +33 -14
- package/assets/hooks/pre-commit +54 -39
- package/assets/legacy/claude-1x-digests.json +3354 -0
- package/assets/manifest.json +174 -6
- package/dist/cli.min.js +208 -39
- package/package.json +11 -2
- package/scripts/__snapshots__/generate-claude-assets.test.js.snap +31 -0
- package/scripts/generate-claude-assets.js +598 -305
- package/scripts/generate-claude-assets.strict.test.js +303 -0
- package/scripts/generate-claude-assets.test.js +665 -0
- package/scripts/generate-legacy-digests.js +192 -0
- package/scripts/generate-manifests.js +26 -147
- package/scripts/packs-layout.test.js +378 -0
- package/src/mcp/vesper-indexing/dist/cli-index.js +0 -1
- package/src/mcp/vesper-indexing/dist/cli-index.js.map +1 -1
- package/src/mcp/vesper-indexing/package-lock.json +2 -2
- package/src/mcp/vesper-indexing/package.json +1 -1
- package/assets/agents/clickup-agent/clickup-agent.agent.md +0 -135
- package/assets/agents/code-tester/code-tester.agent.md +0 -35
- package/assets/agents/context7/context7.agent.md +0 -901
- package/assets/agents/copywriter/copywriter.agent.md +0 -182
- package/assets/agents/expert-nextjs-developer/expert-nextjs-developer.agent.md +0 -502
- package/assets/agents/expert-react-frontend-engineer/expert-react-frontend-engineer.agent.md +0 -785
- package/assets/agents/firebase-developer/firebase-developer.agent.md +0 -714
- package/assets/agents/janitor/janitor.agent.md +0 -136
- package/assets/agents/jest-react-component-analyzer/jest-react-component-analyzer.agent.md +0 -308
- package/assets/agents/jest-react-scenario-scanner/jest-react-scenario-scanner.agent.md +0 -236
- package/assets/agents/jest-react-test-generator/jest-react-test-generator.agent.md +0 -605
- package/assets/agents/jest-react-test-planner/jest-react-test-planner.agent.md +0 -461
- package/assets/agents/jest-react-test-runner/jest-react-test-runner.agent.md +0 -332
- package/assets/agents/modernization/modernization.agent.md +0 -660
- package/assets/agents/nodejs-express-developer/nodejs-express-developer.agent.md +0 -632
- package/assets/agents/playwright-component-analyzer/playwright-component-analyzer.agent.md +0 -221
- package/assets/agents/playwright-scenario-scanner/playwright-scenario-scanner.agent.md +0 -180
- package/assets/agents/playwright-test-generator/playwright-test-generator.agent.md +0 -410
- package/assets/agents/playwright-test-planner/playwright-test-planner.agent.md +0 -398
- package/assets/agents/playwright-tester/playwright-tester.agent.md +0 -65
- package/assets/agents/refine-issue/refine-issue.agent.md +0 -39
- package/assets/agents/vitest/vitest.agent.md +0 -603
- package/assets/claude/agents/clickup-agent.md +0 -134
- package/assets/claude/agents/history-logger.md +0 -102
- package/assets/claude/commands/compact-knowledge.md +0 -10
- package/assets/claude/commands/create-specification.md +0 -131
- package/assets/claude/commands/playwright-generate-test.md +0 -24
- package/assets/claude/commands/reinit.md +0 -5
- package/assets/claude/commands/repo-story-time.md +0 -154
- package/assets/claude/commands/revalidate-knowledge.md +0 -17
- package/assets/claude/commands/revalidate-team.md +0 -5
- package/assets/claude/skills/gitlab-guardrails/SKILL.md +0 -62
- package/assets/claude/skills/google-adk-python/SKILL.md +0 -237
- package/assets/claude/skills/java/SKILL.md +0 -81
- package/assets/claude/skills/nextjs-tailwind/SKILL.md +0 -72
- package/assets/claude/skills/reactjs/SKILL.md +0 -162
- package/assets/claude/skills/tailwind-v4-vite/SKILL.md +0 -236
- package/assets/core/agents/code-planner.agent.md +0 -454
- package/assets/core/agents/code-reviewer.agent.md +0 -98
- package/assets/core/agents/feature-wrap-document.agent.md +0 -593
- package/assets/core/agents/history-logger.agent.md +0 -112
- package/assets/core/agents/principal-software-engineer.agent.md +0 -80
- package/assets/core/agents/se-system-architecture-reviewer.agent.md +0 -203
- package/assets/core/agents/se-technical-writer.agent.md +0 -446
- package/assets/core/agents/skill-creator.agent.md +0 -441
- package/assets/core/agents/task-researcher.agent.md +0 -329
- package/assets/core/agents/technical-product-manager.agent.md +0 -328
- package/assets/core/agents/vesper.agent.md +0 -679
- package/assets/core/agents/vision-analyst.agent.md +0 -93
- package/assets/core/agents/workspace-learner.agent.md +0 -509
- package/assets/core/instructions/terminal-discipline.instructions.md +0 -27
- package/assets/core/instructions/vesper-cli-development.instructions.md +0 -85
- package/assets/core/instructions/vesper-implement.instructions.md +0 -250
- package/assets/core/instructions/vesper-qa-e2e.instructions.md +0 -155
- package/assets/core/instructions/vesper-reinit.instructions.md +0 -99
- package/assets/core/instructions/vesper-research-plan.instructions.md +0 -193
- package/assets/core/instructions/vscode-mcp-tools.instructions.md +0 -138
- package/assets/core/prompts/compact-knowledge.prompt.md +0 -14
- package/assets/core/prompts/memory-update.prompt.md +0 -94
- package/assets/core/prompts/revalidate-knowledge.prompt.md +0 -19
- package/assets/core/skills/agent-fundamentals/SKILL.md +0 -75
- package/assets/core/skills/agent-fundamentals/references/codebase-query.md +0 -106
- package/assets/core/skills/agent-fundamentals/references/terminal-discipline.md +0 -94
- package/assets/core/skills/agent-fundamentals/references/tool-usage-patterns.md +0 -72
- package/assets/core/skills/mcp-memory/SKILL.md +0 -109
- package/assets/core/skills/mcp-memory/references/agent-memory-protocol.md +0 -195
- package/assets/core/skills/mcp-memory/references/entity-schema.md +0 -160
- package/assets/core/skills/mcp-memory/references/memory-hygiene.md +0 -166
- package/assets/core/skills/vesper-orchestration/SKILL.md +0 -31
- package/assets/core/skills/vesper-orchestration/references/implement-pipeline.md +0 -244
- package/assets/core/skills/vesper-orchestration/references/qa-e2e-pipeline.md +0 -151
- package/assets/core/skills/vesper-orchestration/references/reinit-pipeline.md +0 -87
- package/assets/core/skills/vesper-orchestration/references/research-plan-pipeline.md +0 -189
- package/assets/instructions/document/document.instructions.md +0 -40
- package/assets/instructions/java/java.instructions.md +0 -81
- package/assets/instructions/nestjs/nestjs.instructions.md +0 -424
- package/assets/instructions/nextjs/nextjs.instructions.md +0 -178
- package/assets/instructions/nextjs-tailwind/nextjs-tailwind.instructions.md +0 -72
- package/assets/instructions/nodejs-javascript-vitest/nodejs-javascript-vitest.instructions.md +0 -33
- package/assets/instructions/playwright-typescript/playwright-typescript.instructions.md +0 -85
- package/assets/instructions/project-management/project-management.instructions.md +0 -124
- package/assets/instructions/reactjs/reactjs.instructions.md +0 -162
- package/assets/instructions/self-explanatory-code-commenting/self-explanatory-code-commenting.instructions.md +0 -162
- package/assets/instructions/tailwind-v4-vite/tailwind-v4-vite.instructions.md +0 -236
- package/assets/instructions/task-implementation/task-implementation.instructions.md +0 -223
- package/assets/prompts/create-specification/create-specification.prompt.md +0 -151
- package/assets/prompts/playwright-generate-test/playwright-generate-test.prompt.md +0 -26
- package/assets/prompts/repo-story-time/repo-story-time.prompt.md +0 -156
- package/assets/skills/.env.example +0 -32
- package/assets/skills/.mcp.json.example +0 -19
- package/assets/skills/README.md +0 -111
- package/assets/skills/aesthetic/manifest.json +0 -14
- package/assets/skills/ai-multimodal/SKILL.md +0 -357
- package/assets/skills/ai-multimodal/manifest.json +0 -20
- package/assets/skills/backend-development/manifest.json +0 -19
- package/assets/skills/better-auth/manifest.json +0 -15
- package/assets/skills/chrome-devtools/SKILL.md +0 -360
- package/assets/skills/chrome-devtools/manifest.json +0 -31
- package/assets/skills/chrome-devtools/scripts/README.md +0 -213
- package/assets/skills/code-review/manifest.json +0 -11
- package/assets/skills/databases/manifest.json +0 -25
- package/assets/skills/debugging/manifest.json +0 -17
- package/assets/skills/devops/manifest.json +0 -25
- package/assets/skills/docs-seeker/manifest.json +0 -15
- package/assets/skills/document-skills/manifest.json +0 -137
- package/assets/skills/frontend-design/manifest.json +0 -9
- package/assets/skills/gitlab-guardrails/SKILL.md +0 -62
- package/assets/skills/gitlab-guardrails/manifest.json +0 -8
- package/assets/skills/google-adk-python/SKILL.md +0 -237
- package/assets/skills/google-adk-python/manifest.json +0 -8
- package/assets/skills/mcp-builder/manifest.json +0 -17
- package/assets/skills/mermaidjs-v11/manifest.json +0 -13
- package/assets/skills/premium-frontend-ui/manifest.json +0 -8
- package/assets/skills/problem-solving/manifest.json +0 -14
- package/assets/skills/react-mui-tanstack/manifest.json +0 -18
- package/assets/skills/sequential-thinking/README.md +0 -118
- package/assets/skills/sequential-thinking/manifest.json +0 -11
- package/assets/skills/skill-creator/SKILL.md +0 -237
- package/assets/skills/skill-creator/manifest.json +0 -12
- package/assets/skills/tailwind-shadcn/manifest.json +0 -104
- package/assets/skills/vercel-react-best-practices/manifest.json +0 -60
- package/assets/skills/vesper-catalog-editing-safety/SKILL.md +0 -141
- package/assets/skills/vesper-catalog-editing-safety/manifest.json +0 -8
- package/assets/skills/vscode-agent-config/SKILL.md +0 -90
- package/assets/skills/vscode-agent-config/manifest.json +0 -8
- package/assets/skills/web-design-guidelines/manifest.json +0 -8
- package/assets/skills/web-frameworks/manifest.json +0 -24
- /package/assets/claude/{agents → packs/backend/agents}/firebase-developer.md +0 -0
- /package/assets/claude/{agents → packs/backend/agents}/nodejs-express-developer.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-api-design.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-architecture.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-authentication.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-code-quality.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-debugging.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-devops.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-mindset.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-performance.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-security.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-technologies.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/backend-development/references/backend-testing.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/advanced-features.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/database-integration.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/email-password-auth.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/references/oauth-providers.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/.coverage +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/better_auth_init.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/tests/.coverage +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/better-auth/scripts/tests/test_better_auth_init.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-aggregation.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-atlas.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-crud.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/mongodb-indexing.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-administration.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-performance.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-psql-cli.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/references/postgresql-queries.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/.coverage +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/db_backup.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/db_migrate.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/db_performance_check.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/coverage-db.json +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/test_db_backup.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/test_db_migrate.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/databases/scripts/tests/test_db_performance_check.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/.env.example +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/browser-rendering.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-d1-kv.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-platform.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-r2-storage.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-workers-advanced.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-workers-apis.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/cloudflare-workers-basics.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/docker-basics.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/docker-compose.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/gcloud-platform.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/references/gcloud-services.md +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/cloudflare_deploy.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/docker_optimize.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/tests/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/tests/test_cloudflare_deploy.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/devops/scripts/tests/test_docker_optimize.py +0 -0
- /package/assets/claude/{skills → packs/backend/skills}/nestjs/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/.env.example +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/audio-processing.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/image-generation.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/video-analysis.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/references/vision-understanding.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/document_converter.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/gemini_batch_process.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/media_optimizer.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/.coverage +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/test_document_converter.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/test_gemini_batch_process.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/ai-multimodal/scripts/tests/test_media_optimizer.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/LICENSE.txt +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/docx-js.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/mce/mc.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/pack.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/unpack.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validate.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/__init__.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/base.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/docx.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/pptx.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/redlining.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/ooxml.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/__init__.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/document.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/comments.xml +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtended.xml +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtensible.xml +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/commentsIds.xml +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/templates/people.xml +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/docx/scripts/utilities.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/LICENSE.txt +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/forms.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/reference.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes_test.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/check_fillable_fields.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/convert_pdf_to_images.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/create_validation_image.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/extract_form_field_info.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/fill_fillable_fields.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/LICENSE.txt +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/html2pptx.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/mce/mc.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/pack.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validate.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/__init__.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/base.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/docx.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/pptx.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/redlining.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/ooxml.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/html2pptx.js +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/inventory.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/rearrange.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/replace.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/pptx/scripts/thumbnail.py +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/xlsx/LICENSE.txt +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/xlsx/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/docs/skills}/document-skills/xlsx/recalc.py +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/expert-nextjs-developer.md +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/expert-react-frontend-engineer.md +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/jest-react-component-analyzer.md +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/jest-react-scenario-scanner.md +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/jest-react-test-generator.md +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/jest-react-test-planner.md +0 -0
- /package/assets/claude/{agents → packs/frontend/agents}/jest-react-test-runner.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/assets/design-guideline-template.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/assets/design-story-template.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/design-principles.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/design-resources.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/micro-interactions.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/aesthetic/references/storytelling-design.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/frontend-design/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/frontend-design/references/animejs.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/nextjs/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/premium-frontend-ui/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/common-patterns.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/complete-examples.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/component-patterns.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/data-fetching.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/file-organization.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/loading-and-error-states.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/performance.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/routing-guide.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/styling-guide.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/react-mui-tanstack/resources/typescript-standards.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/LICENSE.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Light.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Medium.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Italic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Medium.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Bold.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Italic.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-OFL.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/canvas-design-system.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/shadcn-accessibility.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/shadcn-components.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/shadcn-theming.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/tailwind-customization.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/tailwind-responsive.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/references/tailwind-utilities.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/.coverage +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/shadcn_add.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tailwind_config_gen.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/coverage-ui.json +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_shadcn_add.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_tailwind_config_gen.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/AGENTS.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/README.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/metadata.json +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/_sections.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/_template.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/advanced-use-latest.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-api-routes.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-defer-await.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-dependencies.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-parallel.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-conditional.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/bundle-preload.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-event-listeners.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/client-swr-dedup.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-function-results.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-property-access.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-storage.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-combine-iterations.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-early-exit.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-index-maps.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-length-check-first.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-min-max-loop.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-activity.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-dependencies.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-derived-state.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-memo.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/rerender-transitions.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-lru.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-react.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/vercel-react-best-practices/rules/server-serialization.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-design-guidelines/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-app-router.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-data-fetching.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-optimization.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/nextjs-server-components.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/remix-icon-integration.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/turborepo-caching.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/turborepo-pipelines.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/references/turborepo-setup.md +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/.coverage +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/__init__.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/nextjs_init.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/coverage-web.json +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/requirements.txt +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/test_nextjs_init.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/tests/test_turborepo_migrate.py +0 -0
- /package/assets/claude/{skills → packs/frontend/skills}/web-frameworks/scripts/turborepo_migrate.py +0 -0
- /package/assets/claude/{agents → packs/playwright/agents}/playwright-component-analyzer.md +0 -0
- /package/assets/claude/{agents → packs/playwright/agents}/playwright-scenario-scanner.md +0 -0
- /package/assets/claude/{agents → packs/playwright/agents}/playwright-test-generator.md +0 -0
- /package/assets/claude/{agents → packs/playwright/agents}/playwright-test-planner.md +0 -0
- /package/assets/claude/{agents → packs/playwright/agents}/playwright-tester.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/SKILL.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/references/cdp-domains.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/references/performance-guide.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/references/puppeteer-reference.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/PERSISTENT-BROWSER.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/README.md +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/__tests__/selector.test.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/click.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/close-persistent.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/console.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/evaluate.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/fill.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/install-deps.sh +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/install.sh +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/launch-persistent.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/lib/browser.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/lib/selector.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/navigate.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/network.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/package-lock.json +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/package.json +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/performance.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/screenshot.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/chrome-devtools/scripts/snapshot.js +0 -0
- /package/assets/claude/{skills → packs/playwright/skills}/playwright-typescript/SKILL.md +0 -0
- /package/assets/{skills → claude/skills/skill-creator}/agent_skills_spec.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-api-design.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-architecture.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-authentication.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-code-quality.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-debugging.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-devops.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-mindset.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-performance.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-security.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-technologies.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/backend-development/references/backend-testing.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/advanced-features.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/database-integration.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/email-password-auth.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/references/oauth-providers.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/.coverage +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/better_auth_init.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/tests/.coverage +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/better-auth/scripts/tests/test_better_auth_init.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-aggregation.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-atlas.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-crud.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/mongodb-indexing.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-administration.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-performance.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-psql-cli.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/references/postgresql-queries.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/.coverage +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/db_backup.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/db_migrate.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/db_performance_check.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/coverage-db.json +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/test_db_backup.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/test_db_migrate.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/databases/scripts/tests/test_db_performance_check.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/.env.example +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/browser-rendering.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-d1-kv.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-platform.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-r2-storage.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-workers-advanced.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-workers-apis.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/cloudflare-workers-basics.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/docker-basics.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/docker-compose.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/gcloud-platform.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/references/gcloud-services.md +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/cloudflare_deploy.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/docker_optimize.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/tests/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/tests/test_cloudflare_deploy.py +0 -0
- /package/assets/{skills → copilot/packs/backend/skills}/devops/scripts/tests/test_docker_optimize.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/.env.example +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/audio-processing.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/image-generation.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/video-analysis.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/references/vision-understanding.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/document_converter.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/gemini_batch_process.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/media_optimizer.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/.coverage +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/test_document_converter.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/test_gemini_batch_process.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/ai-multimodal/scripts/tests/test_media_optimizer.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/docx-js.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/mce/mc.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/pack.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/unpack.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validate.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/__init__.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/base.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/docx.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/pptx.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml/scripts/validation/redlining.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/ooxml.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/__init__.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/document.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/comments.xml +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtended.xml +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/commentsExtensible.xml +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/commentsIds.xml +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/templates/people.xml +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/docx/scripts/utilities.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/forms.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/reference.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/check_bounding_boxes_test.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/check_fillable_fields.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/convert_pdf_to_images.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/create_validation_image.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/extract_form_field_info.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/fill_fillable_fields.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/html2pptx.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/mce/mc.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/pack.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validate.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/__init__.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/base.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/docx.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/pptx.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml/scripts/validation/redlining.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/ooxml.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/html2pptx.js +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/inventory.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/rearrange.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/replace.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/pptx/scripts/thumbnail.py +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/xlsx/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/xlsx/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/docs/skills}/document-skills/xlsx/recalc.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/assets/design-guideline-template.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/assets/design-story-template.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/design-principles.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/design-resources.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/micro-interactions.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/aesthetic/references/storytelling-design.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/frontend-design/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/frontend-design/references/animejs.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/premium-frontend-ui/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/common-patterns.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/complete-examples.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/component-patterns.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/data-fetching.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/file-organization.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/loading-and-error-states.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/performance.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/routing-guide.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/styling-guide.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/react-mui-tanstack/resources/typescript-standards.md +0 -0
- /package/assets/{skills/mcp-builder → copilot/packs/frontend/skills/tailwind-shadcn}/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/ArsenalSC-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BigShoulders-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Boldonse-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Italic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/CrimsonPro-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/DMMono-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/EricaOne-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/GeistMono-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Gloock-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexMono-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-BoldItalic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Italic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/IBMPlexSerif-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Italiana-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Light.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-Medium.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Jura-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/LibreBaskerville-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Italic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Lora-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NationalPark-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Outfit-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-Medium.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PixelifySans-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/PoiretOne-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/RedHatMono-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Silkscreen-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-Medium.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/SmoochSans-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Medium.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/Tektur-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Bold.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-BoldItalic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Italic.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/WorkSans-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-OFL.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/canvas-design-system.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/shadcn-accessibility.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/shadcn-components.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/shadcn-theming.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/tailwind-customization.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/tailwind-responsive.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/references/tailwind-utilities.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/.coverage +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/shadcn_add.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tailwind_config_gen.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/coverage-ui.json +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_shadcn_add.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/tailwind-shadcn/scripts/tests/test_tailwind_config_gen.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/AGENTS.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/README.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/metadata.json +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/_sections.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/_template.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/advanced-use-latest.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-api-routes.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-defer-await.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-dependencies.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-parallel.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-conditional.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/bundle-preload.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-event-listeners.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/client-swr-dedup.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-function-results.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-property-access.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-cache-storage.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-combine-iterations.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-early-exit.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-index-maps.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-length-check-first.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-min-max-loop.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-activity.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-dependencies.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-derived-state.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-memo.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/rerender-transitions.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-lru.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-cache-react.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/vercel-react-best-practices/rules/server-serialization.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-design-guidelines/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/SKILL.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-app-router.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-data-fetching.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-optimization.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/nextjs-server-components.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/remix-icon-integration.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/turborepo-caching.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/turborepo-pipelines.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/references/turborepo-setup.md +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/.coverage +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/__init__.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/nextjs_init.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/coverage-web.json +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/requirements.txt +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/test_nextjs_init.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/tests/test_turborepo_migrate.py +0 -0
- /package/assets/{skills → copilot/packs/frontend/skills}/web-frameworks/scripts/turborepo_migrate.py +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/references/cdp-domains.md +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/references/performance-guide.md +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/references/puppeteer-reference.md +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/PERSISTENT-BROWSER.md +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/__tests__/selector.test.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/click.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/close-persistent.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/console.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/evaluate.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/fill.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/install-deps.sh +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/install.sh +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/launch-persistent.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/lib/browser.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/lib/selector.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/navigate.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/network.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/package-lock.json +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/package.json +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/performance.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/screenshot.js +0 -0
- /package/assets/{skills → copilot/packs/playwright/skills}/chrome-devtools/scripts/snapshot.js +0 -0
- /package/assets/{skills → copilot/skills}/code-review/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/code-review/references/code-review-reception.md +0 -0
- /package/assets/{skills → copilot/skills}/code-review/references/requesting-code-review.md +0 -0
- /package/assets/{skills → copilot/skills}/code-review/references/verification-before-completion.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/defense-in-depth/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/root-cause-tracing/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/root-cause-tracing/find-polluter.sh +0 -0
- /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/CREATION-LOG.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-academic.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-pressure-1.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-pressure-2.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/systematic-debugging/test-pressure-3.md +0 -0
- /package/assets/{skills → copilot/skills}/debugging/verification-before-completion/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/WORKFLOWS.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/references/best-practices.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/references/documentation-sources.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/references/error-handling.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/references/limitations.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/references/performance.md +0 -0
- /package/assets/{skills → copilot/skills}/docs-seeker/references/tool-selection.md +0 -0
- /package/assets/{skills/skill-creator → copilot/skills/mcp-builder}/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/reference/evaluation.md +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/reference/mcp_best_practices.md +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/reference/node_mcp_server.md +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/reference/python_mcp_server.md +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/scripts/connections.py +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/scripts/evaluation.py +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/scripts/example_evaluation.xml +0 -0
- /package/assets/{skills → copilot/skills}/mcp-builder/scripts/requirements.txt +0 -0
- /package/assets/{skills → copilot/skills}/mermaidjs-v11/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/cli-usage.md +0 -0
- /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/configuration.md +0 -0
- /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/diagram-types.md +0 -0
- /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/examples.md +0 -0
- /package/assets/{skills → copilot/skills}/mermaidjs-v11/references/integration.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/ABOUT.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/collision-zone-thinking/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/inversion-exercise/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/meta-pattern-recognition/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/scale-game/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/simplification-cascades/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/problem-solving/when-stuck/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/sequential-thinking/SKILL.md +0 -0
- /package/assets/{skills → copilot/skills}/sequential-thinking/references/advanced.md +0 -0
- /package/assets/{skills → copilot/skills}/sequential-thinking/references/examples.md +0 -0
- /package/assets/{skills/tailwind-shadcn → copilot/skills/skill-creator}/LICENSE.txt +0 -0
- /package/assets/{skills → copilot/skills}/skill-creator/scripts/init_skill.py +0 -0
- /package/assets/{skills → copilot/skills}/skill-creator/scripts/package_skill.py +0 -0
- /package/assets/{skills → copilot/skills}/skill-creator/scripts/quick_validate.py +0 -0
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
# GitLab CI syntax reference
|
|
2
|
+
|
|
3
|
+
Load this when generating or reviewing `.gitlab-ci.yml`. Curated keyword set: the keywords this skill produces, with a one-line definition each and a pointer to canonical docs. Not a clone of `docs.gitlab.com/ci/yaml/` (which has the full surface).
|
|
4
|
+
|
|
5
|
+
For any keyword not listed here, consult the canonical reference at https://docs.gitlab.com/ci/yaml/.
|
|
6
|
+
|
|
7
|
+
## At a glance
|
|
8
|
+
|
|
9
|
+
| Category | Keywords |
|
|
10
|
+
|---|---|
|
|
11
|
+
| Global | `stages`, `variables`, `default`, `include`, `workflow` |
|
|
12
|
+
| Job (essential) | `script`, `stage`, `image`, `rules`, `needs`, `artifacts`, `cache` |
|
|
13
|
+
| Job (common) | `before_script`, `after_script`, `variables`, `tags`, `extends`, `services` |
|
|
14
|
+
| Job (parallelism) | `parallel`, `parallel:matrix` |
|
|
15
|
+
| Job (control) | `when`, `allow_failure`, `interruptible`, `retry`, `timeout` |
|
|
16
|
+
| Job (lifecycle) | `environment`, `resource_group`, `trigger`, `release` |
|
|
17
|
+
| Reuse | `!reference`, hidden jobs (`.name`), `extends` |
|
|
18
|
+
| Pipeline header | `spec:inputs` (for reusable pipelines via `include:`) |
|
|
19
|
+
|
|
20
|
+
## Global keywords
|
|
21
|
+
|
|
22
|
+
### `stages`
|
|
23
|
+
|
|
24
|
+
Defines pipeline stages and their order. Jobs without `stage:` default to `test`. If `stages:` is omitted, GitLab uses `[.pre, build, test, deploy, .post]`.
|
|
25
|
+
|
|
26
|
+
```yaml
|
|
27
|
+
stages:
|
|
28
|
+
- build
|
|
29
|
+
- test
|
|
30
|
+
- deploy
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Docs: https://docs.gitlab.com/ci/yaml/#stages.
|
|
34
|
+
|
|
35
|
+
### `variables`
|
|
36
|
+
|
|
37
|
+
Pipeline-wide variables. Available in every job.
|
|
38
|
+
|
|
39
|
+
```yaml
|
|
40
|
+
variables:
|
|
41
|
+
NODE_VERSION: "20"
|
|
42
|
+
CI_DEBUG_TRACE: "false"
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Docs: https://docs.gitlab.com/ci/yaml/#variables.
|
|
46
|
+
|
|
47
|
+
### `default`
|
|
48
|
+
|
|
49
|
+
Default values applied to every job. Idiomatic place for shared `image:`, `before_script:`, `tags:`, `interruptible:`, etc.
|
|
50
|
+
|
|
51
|
+
```yaml
|
|
52
|
+
default:
|
|
53
|
+
image: node:lts-alpine
|
|
54
|
+
interruptible: true
|
|
55
|
+
before_script:
|
|
56
|
+
- npm ci --cache .npm --prefer-offline
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Docs: https://docs.gitlab.com/ci/yaml/#default.
|
|
60
|
+
|
|
61
|
+
### `include`
|
|
62
|
+
|
|
63
|
+
Pulls in YAML from another source. Components, project files, remote URLs, templates.
|
|
64
|
+
|
|
65
|
+
```yaml
|
|
66
|
+
include:
|
|
67
|
+
- component: gitlab.com/components/opentofu/full-pipeline@1.0.0
|
|
68
|
+
inputs:
|
|
69
|
+
version: 1.8.0
|
|
70
|
+
- local: '/.gitlab/ci/security.yml'
|
|
71
|
+
- template: 'Jobs/SAST.gitlab-ci.yml'
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Always pin components to a release tag, never `~latest`. Docs: https://docs.gitlab.com/ci/yaml/#include.
|
|
75
|
+
|
|
76
|
+
### `workflow`
|
|
77
|
+
|
|
78
|
+
Controls whether the pipeline runs at all. Use `workflow:rules:` to gate on branch, tag, MR, or schedule.
|
|
79
|
+
|
|
80
|
+
```yaml
|
|
81
|
+
workflow:
|
|
82
|
+
rules:
|
|
83
|
+
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
|
84
|
+
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
85
|
+
- if: $CI_COMMIT_TAG
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Docs: https://docs.gitlab.com/ci/yaml/#workflow.
|
|
89
|
+
|
|
90
|
+
## Essential job keywords
|
|
91
|
+
|
|
92
|
+
### `script`
|
|
93
|
+
|
|
94
|
+
The shell commands the job runs. Each item is one shell invocation.
|
|
95
|
+
|
|
96
|
+
```yaml
|
|
97
|
+
test:
|
|
98
|
+
script:
|
|
99
|
+
- npm test
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Docs: https://docs.gitlab.com/ci/yaml/#script.
|
|
103
|
+
|
|
104
|
+
### `stage`
|
|
105
|
+
|
|
106
|
+
The stage this job belongs to. Must exist in `stages:`.
|
|
107
|
+
|
|
108
|
+
```yaml
|
|
109
|
+
test:
|
|
110
|
+
stage: test
|
|
111
|
+
script: [npm test]
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### `image`
|
|
115
|
+
|
|
116
|
+
The container image the job runs in.
|
|
117
|
+
|
|
118
|
+
```yaml
|
|
119
|
+
test:
|
|
120
|
+
image: node:20-alpine
|
|
121
|
+
script: [npm test]
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
Use `default:image:` if most jobs share an image. Docs: https://docs.gitlab.com/ci/yaml/#image.
|
|
125
|
+
|
|
126
|
+
### `rules`
|
|
127
|
+
|
|
128
|
+
When the job runs. Replaces deprecated `only:` and `except:`.
|
|
129
|
+
|
|
130
|
+
```yaml
|
|
131
|
+
deploy:
|
|
132
|
+
rules:
|
|
133
|
+
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
134
|
+
when: on_success
|
|
135
|
+
- when: never
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
Docs: https://docs.gitlab.com/ci/yaml/#rules.
|
|
139
|
+
|
|
140
|
+
### `needs`
|
|
141
|
+
|
|
142
|
+
Declares per-job dependencies, enabling DAG execution (skip stage boundaries).
|
|
143
|
+
|
|
144
|
+
```yaml
|
|
145
|
+
package:
|
|
146
|
+
stage: deploy
|
|
147
|
+
needs: ["build", "test"]
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Docs: https://docs.gitlab.com/ci/yaml/#needs.
|
|
151
|
+
|
|
152
|
+
### `artifacts`
|
|
153
|
+
|
|
154
|
+
Files produced by the job and passed to later jobs.
|
|
155
|
+
|
|
156
|
+
```yaml
|
|
157
|
+
build:
|
|
158
|
+
artifacts:
|
|
159
|
+
paths:
|
|
160
|
+
- dist/
|
|
161
|
+
expire_in: 1 week
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Docs: https://docs.gitlab.com/ci/yaml/#artifacts.
|
|
165
|
+
|
|
166
|
+
### `cache`
|
|
167
|
+
|
|
168
|
+
Files cached across pipelines (e.g. `node_modules/`, `.cargo/registry/`). See `references/caching.md` for cache-key patterns.
|
|
169
|
+
|
|
170
|
+
```yaml
|
|
171
|
+
test:
|
|
172
|
+
cache:
|
|
173
|
+
key:
|
|
174
|
+
files: [package-lock.json]
|
|
175
|
+
paths:
|
|
176
|
+
- node_modules/
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Docs: https://docs.gitlab.com/ci/yaml/#cache.
|
|
180
|
+
|
|
181
|
+
## Common job keywords
|
|
182
|
+
|
|
183
|
+
### `before_script`, `after_script`
|
|
184
|
+
|
|
185
|
+
Setup and teardown. Use `default:before_script:` for shared setup.
|
|
186
|
+
|
|
187
|
+
### `variables` (job-level)
|
|
188
|
+
|
|
189
|
+
Per-job variables. Override pipeline-level `variables`.
|
|
190
|
+
|
|
191
|
+
### `tags`
|
|
192
|
+
|
|
193
|
+
Select runners by label. Most users on gitlab.com leave this empty (shared runners). Use only when the user has registered custom runners.
|
|
194
|
+
|
|
195
|
+
### `extends`
|
|
196
|
+
|
|
197
|
+
Inherit from another job. The idiomatic GitLab reuse pattern, paired with hidden jobs.
|
|
198
|
+
|
|
199
|
+
```yaml
|
|
200
|
+
.docker-job:
|
|
201
|
+
image: docker:24
|
|
202
|
+
services:
|
|
203
|
+
- docker:24-dind
|
|
204
|
+
|
|
205
|
+
build-image:
|
|
206
|
+
extends: .docker-job
|
|
207
|
+
stage: build
|
|
208
|
+
script: [docker build -t $CI_REGISTRY_IMAGE .]
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Docs: https://docs.gitlab.com/ci/yaml/#extends.
|
|
212
|
+
|
|
213
|
+
### `services`
|
|
214
|
+
|
|
215
|
+
Sidecar containers (databases, dind, redis). Run alongside the job container.
|
|
216
|
+
|
|
217
|
+
```yaml
|
|
218
|
+
test:
|
|
219
|
+
services:
|
|
220
|
+
- postgres:16
|
|
221
|
+
variables:
|
|
222
|
+
POSTGRES_DB: test
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Docs: https://docs.gitlab.com/ci/yaml/#services.
|
|
226
|
+
|
|
227
|
+
## Parallelism
|
|
228
|
+
|
|
229
|
+
### `parallel`
|
|
230
|
+
|
|
231
|
+
Run N copies of a job. Each gets `$CI_NODE_INDEX` (1-based).
|
|
232
|
+
|
|
233
|
+
```yaml
|
|
234
|
+
test:
|
|
235
|
+
parallel: 5
|
|
236
|
+
script: [./test --shard $CI_NODE_INDEX/$CI_NODE_TOTAL]
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### `parallel:matrix`
|
|
240
|
+
|
|
241
|
+
Run a job per variable combination.
|
|
242
|
+
|
|
243
|
+
```yaml
|
|
244
|
+
test:
|
|
245
|
+
parallel:
|
|
246
|
+
matrix:
|
|
247
|
+
- NODE_VERSION: ["18", "20", "22"]
|
|
248
|
+
OS: [linux, alpine]
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
Docs: https://docs.gitlab.com/ci/yaml/#parallel.
|
|
252
|
+
|
|
253
|
+
## Reuse patterns
|
|
254
|
+
|
|
255
|
+
### Hidden jobs
|
|
256
|
+
|
|
257
|
+
A job whose name starts with `.` is hidden: it does not run, but can be `extends:`-ed. The idiomatic place to define reusable job templates.
|
|
258
|
+
|
|
259
|
+
```yaml
|
|
260
|
+
.test-base:
|
|
261
|
+
stage: test
|
|
262
|
+
cache:
|
|
263
|
+
key:
|
|
264
|
+
files: [package-lock.json]
|
|
265
|
+
paths: [node_modules/]
|
|
266
|
+
|
|
267
|
+
unit-test:
|
|
268
|
+
extends: .test-base
|
|
269
|
+
script: [npm test]
|
|
270
|
+
|
|
271
|
+
integration-test:
|
|
272
|
+
extends: .test-base
|
|
273
|
+
script: [npm run test:integration]
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### `!reference`
|
|
277
|
+
|
|
278
|
+
Reuse a specific block from another job or list. Avoids the all-or-nothing nature of `extends:`.
|
|
279
|
+
|
|
280
|
+
```yaml
|
|
281
|
+
.shared-rules:
|
|
282
|
+
rules:
|
|
283
|
+
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
284
|
+
|
|
285
|
+
deploy:
|
|
286
|
+
rules:
|
|
287
|
+
- !reference [.shared-rules, rules]
|
|
288
|
+
- if: $CI_COMMIT_TAG
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
Docs: https://docs.gitlab.com/ci/yaml/yaml_optimization/#reference-tags.
|
|
292
|
+
|
|
293
|
+
## Common predefined variables
|
|
294
|
+
|
|
295
|
+
When you write `.gitlab-ci.yml` for a user, these are the predefined variables your script: blocks will most often reference. Full list: https://docs.gitlab.com/ci/variables/predefined_variables/.
|
|
296
|
+
|
|
297
|
+
| Variable | What it is |
|
|
298
|
+
|---|---|
|
|
299
|
+
| `$CI_COMMIT_BRANCH` | The branch name; empty for tag and MR pipelines |
|
|
300
|
+
| `$CI_COMMIT_TAG` | The tag name; empty otherwise |
|
|
301
|
+
| `$CI_COMMIT_REF_SLUG` | The branch or tag, slugified, useful for cache keys |
|
|
302
|
+
| `$CI_DEFAULT_BRANCH` | Usually `main` |
|
|
303
|
+
| `$CI_PIPELINE_SOURCE` | `push`, `merge_request_event`, `schedule`, `web`, `api`, `trigger`, `pipeline` |
|
|
304
|
+
| `$CI_PROJECT_DIR` | The checkout directory |
|
|
305
|
+
| `$CI_PROJECT_PATH` | `group/project` |
|
|
306
|
+
| `$CI_REGISTRY` | The project's container registry host |
|
|
307
|
+
| `$CI_REGISTRY_IMAGE` | The image base path for `$CI_REGISTRY` |
|
|
308
|
+
| `$CI_REGISTRY_USER`, `$CI_REGISTRY_PASSWORD` | Auth for `$CI_REGISTRY` |
|
|
309
|
+
| `$CI_JOB_NAME`, `$CI_JOB_STAGE` | The current job and stage |
|
|
310
|
+
| `$CI_COMMIT_SHA` | Full SHA of the commit being built |
|
|
311
|
+
|
|
312
|
+
## Things to avoid
|
|
313
|
+
|
|
314
|
+
- `only:` and `except:` (deprecated; use `rules:`).
|
|
315
|
+
- YAML anchors (`&` and `*`) for reuse (use `extends:` and `!reference:`).
|
|
316
|
+
- `~latest` as a component version pin (always pin to a release tag).
|
|
317
|
+
- Quoting numeric variable values inconsistently (always quote in `parallel:matrix:` to avoid YAML int coercion).
|
|
318
|
+
- Hardcoded secrets (always use **Settings > CI/CD > Variables**).
|
|
319
|
+
- `image:` per job when the same image is used everywhere (use `default:image:`).
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
# Verification reference
|
|
2
|
+
|
|
3
|
+
Detailed handling for `scripts/verify.sh`, glci's verification ladder, and what each tier catches or misses. Load when picking a tier for a specific change, interpreting tier output, or recovering when glci or Docker is missing.
|
|
4
|
+
|
|
5
|
+
The happy path stays in `SKILL.md` (the "Verifying generated YAML" section and workflows). This file is for the cases that need more than one sentence to explain.
|
|
6
|
+
|
|
7
|
+
## The four tiers
|
|
8
|
+
|
|
9
|
+
| Tier | Command (under the hood) | Time | Docker | Network | Catches |
|
|
10
|
+
|---|---|---|---|---|---|
|
|
11
|
+
| `lint` | `glci lint -f FILE` (falls back to `glab ci lint`) | <1s | no | no | YAML syntax, include resolution, `needs:` references, stage names, timeout format, no cycles |
|
|
12
|
+
| `show` | `glci show -f FILE [--json] [--context X]` | 1 to 2s | no | no | `rules:` evaluation under a given context, DAG shape, `parallel:matrix` expansion, which jobs actually run |
|
|
13
|
+
| `simulate` | `glci run --simulate -f FILE` | 5 to 30s | yes | optional | full execution plan, artifact flow, variable interpolation, expanded matrix. Scripts echoed, services skipped, dummy artifacts |
|
|
14
|
+
| `run` | `glci run [job...] -f FILE` | 30s to minutes | yes | yes for components | image pulls, service startup, script runtime, cache, artifact upload, real outputs |
|
|
15
|
+
|
|
16
|
+
Each tier is a strict superset of the one above it. If `simulate` passes, `lint` and `show` would also pass; the converse is not true.
|
|
17
|
+
|
|
18
|
+
## Tier selection by change type
|
|
19
|
+
|
|
20
|
+
Pick the cheapest tier that catches a regression for the kind of change you made.
|
|
21
|
+
|
|
22
|
+
| Change | Cheapest tier |
|
|
23
|
+
|---|---|
|
|
24
|
+
| YAML syntax | lint |
|
|
25
|
+
| `needs:` references a job that doesn't exist | lint |
|
|
26
|
+
| Circular `needs:` dependency | lint |
|
|
27
|
+
| `rules:` expression syntax | lint |
|
|
28
|
+
| Stage missing from `stages:` | lint |
|
|
29
|
+
| Include path or component ref doesn't resolve | lint |
|
|
30
|
+
| New job's `rules:` doesn't fire in the context you expected | show |
|
|
31
|
+
| Parallel matrix produced the wrong shape | show |
|
|
32
|
+
| `workflow:rules:` blocks the pipeline entirely | show |
|
|
33
|
+
| Component swap dropped jobs from the graph | show |
|
|
34
|
+
| `needs:` artifact flow broken across stages | simulate |
|
|
35
|
+
| Variable interpolation fails (`$VAR` empty when used) | simulate |
|
|
36
|
+
| Custom image fails to pull | run |
|
|
37
|
+
| Script exits non-zero | run |
|
|
38
|
+
| Service container fails to start | run |
|
|
39
|
+
| Cache key mismatch (cold cache rebuilt every run) | run |
|
|
40
|
+
| Real test failure | run |
|
|
41
|
+
|
|
42
|
+
For Workflow 2 (adding one job or swapping a component), the most useful incremental check is `glci run <new-job> --reuse-artifacts`: it runs only the changed piece, reusing any cached upstream artifacts.
|
|
43
|
+
|
|
44
|
+
## verify.sh exit codes
|
|
45
|
+
|
|
46
|
+
| Exit | Meaning | Skill action |
|
|
47
|
+
|---|---|---|
|
|
48
|
+
| 0 | Verification passed at the requested tier | Present the YAML to the user |
|
|
49
|
+
| 1 | YAML or runtime problem (the configuration or scripts are wrong) | Surface the error verbatim, classify per the table above, propose a fix |
|
|
50
|
+
| 2 | Environment problem (missing tool, Docker down, missing opt-in flag) | Surface what's missing, recommend a fix (install glci, start Docker, pass `--confirm-docker`), do not retry the same command |
|
|
51
|
+
|
|
52
|
+
Distinguish exit 1 from exit 2 before reporting to the user. Exit 1 is "your YAML has a bug"; exit 2 is "the verifier could not run."
|
|
53
|
+
|
|
54
|
+
## Output parsing
|
|
55
|
+
|
|
56
|
+
### `glci lint` (lint tier)
|
|
57
|
+
|
|
58
|
+
Plain text to stderr on failure. Exit 0 on success. Common error shapes:
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
job "test" needs "build" which does not exist
|
|
62
|
+
job "deploy" has invalid timeout "xyz": time: invalid duration "xyz"
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Extract the offending job name and the missing reference; map to a one-line fix suggestion. If `verify.sh lint` fell back to `glab ci lint` (glci absent), errors come from the GitLab API and have a different shape (typically a single error message per file rather than a list).
|
|
66
|
+
|
|
67
|
+
### `glci show` (show tier)
|
|
68
|
+
|
|
69
|
+
Default output is an ASCII pipeline graph with stages, jobs, DAG arrows, and status symbols. Use `--json` for structured output:
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
scripts/verify.sh show --json
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
The JSON contains `stages` (array) and `jobs` (array of `{name, stage, when, allow_failure, image, ...}`). Compare before/after JSON to spot DAG changes in Workflow 4 (Optimize). The `--context` flag accepts `branch=NAME`, `merge_request`, `tag=NAME`, `env=NAME`, or a preset from `.glciconfig.toml`; defaults to `merge_request`.
|
|
76
|
+
|
|
77
|
+
### `glci run --simulate` (simulate tier)
|
|
78
|
+
|
|
79
|
+
TUI-style log streaming during execution. Each job prints `[simulate] $ <command>` lines instead of running the real commands. Dummy artifacts are produced so downstream jobs see the artifact files exist. Final summary: `✓ Pipeline PASSED` or per-job failure detail.
|
|
80
|
+
|
|
81
|
+
After the run, fetch any specific job's log via `glci log <pipeline-id> <job-name>` (the pipeline id is shown in the streamed output; the latest pipeline is the default).
|
|
82
|
+
|
|
83
|
+
### `glci run` (run tier)
|
|
84
|
+
|
|
85
|
+
Same streaming format as simulate, but with real script output. Exit 0 success, 1 job failure, 2 system error (per glci's documented exit codes). Use `glci log` to retrieve a single job's trace cleanly after the run completes; live streaming interleaves output across parallel jobs and is harder to parse.
|
|
86
|
+
|
|
87
|
+
## Degradation when glci is missing
|
|
88
|
+
|
|
89
|
+
`scripts/verify.sh` handles this differently per tier:
|
|
90
|
+
|
|
91
|
+
- **lint tier**: falls back to `glab ci lint`. The `glab` backend needs a GitLab project context (the lint API is per-project). verify.sh resolves the project from, in order: a `--project <group/project>` flag, the `VALIDATE_PROJECT` env var, or the git remote (when the user is inside a GitLab checkout). If none resolves, lint exits 2 with three options for the user: install glci instead (recommended, offline, no project required), set `VALIDATE_PROJECT`, or pass `--project` explicitly. Users on non-GitLab remotes (GitHub, Bitbucket, Codeberg) should lead with glci because the glab fallback cannot work without an explicit project.
|
|
92
|
+
|
|
93
|
+
**Constraint: lint context must be the user's own project.** The project the lint backend resolves to (via `--project`, `VALIDATE_PROJECT`, or git remote) determines which CI config the lint API uses to resolve includes and which runners are referenced. Using an arbitrary upstream project (e.g., `gitlab-org/gitlab`) as the lint context is incorrect: the lint output reflects that project's configuration, not the user's. If no project resolves and glci is not installed, do not pick an upstream project to "make lint work". Tell the user: "Lint context could not be resolved. Install glci (offline, no project required) or set `VALIDATE_PROJECT=<your-group>/<your-project>` and re-run."
|
|
94
|
+
|
|
95
|
+
- **show, simulate, run tiers**: glci has no fallback (`glab` does not implement `show` or local execution). verify.sh exits 2 with an install pointer:
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
curl -fsSL https://gitlab.com/gitlab-org/ci-cd/runner-tools/glci/-/raw/main/install.sh | bash
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
(Or the releases page: <https://gitlab.com/gitlab-org/ci-cd/runner-tools/glci/-/releases>.) Do not run the install command for the user without their explicit consent; even with consent, prefer asking the user to run it themselves. Once installed, re-run verify.sh.
|
|
102
|
+
|
|
103
|
+
When glci is missing and the user is in a hurry, lint-only verification is still meaningful. Present the YAML with the explicit caveat: "Lint passed; I could not render the pipeline graph because glci is not installed."
|
|
104
|
+
|
|
105
|
+
### Example degradation reports
|
|
106
|
+
|
|
107
|
+
Concrete templates the agent should mirror when reporting that a tier was skipped. `verify.sh` already prints the relevant facts to stderr; the agent's job is to surface them in this shape, not summarize them. See `SKILL.md` "When a verification tier is skipped" for the four-part format.
|
|
108
|
+
|
|
109
|
+
#### Docker not reachable (most common, from `verify.sh auto`)
|
|
110
|
+
|
|
111
|
+
> Lint and show passed; the YAML is structurally correct.
|
|
112
|
+
>
|
|
113
|
+
> Two tiers didn't run:
|
|
114
|
+
> - `glci run --simulate` would have caught artifact-flow regressions and variable interpolation bugs.
|
|
115
|
+
> - The smoke run (one job, real execution) would have caught image-pull failures, missing binaries in the image, and runtime script issues.
|
|
116
|
+
>
|
|
117
|
+
> Reason: Docker daemon is not reachable on this machine.
|
|
118
|
+
>
|
|
119
|
+
> To unblock locally (paste verbatim from verify.sh stderr; different per OS):
|
|
120
|
+
>
|
|
121
|
+
> ```
|
|
122
|
+
> brew install colima docker && colima start
|
|
123
|
+
> ```
|
|
124
|
+
>
|
|
125
|
+
> Or Docker Desktop: <https://www.docker.com/products/docker-desktop>
|
|
126
|
+
>
|
|
127
|
+
> Then re-run: `bash scripts/verify.sh auto -f .gitlab-ci.yml`
|
|
128
|
+
>
|
|
129
|
+
> Alternative: push the YAML to GitLab and let hosted runners run the pipeline. You don't need local Docker to ship this.
|
|
130
|
+
|
|
131
|
+
#### glci not installed (from any tier above lint)
|
|
132
|
+
|
|
133
|
+
> Lint passed via the glab fallback; the YAML's syntax is valid.
|
|
134
|
+
>
|
|
135
|
+
> Three tiers didn't run:
|
|
136
|
+
> - `glci show` would have rendered the pipeline graph (DAG, stages, parallel matrix expansion).
|
|
137
|
+
> - `glci run --simulate` would have validated artifact flow and variable interpolation.
|
|
138
|
+
> - The smoke run would have exercised image pulls and scripts.
|
|
139
|
+
>
|
|
140
|
+
> Reason: glci is not installed on this machine.
|
|
141
|
+
>
|
|
142
|
+
> To unblock (offline, no GitLab account required):
|
|
143
|
+
>
|
|
144
|
+
> ```
|
|
145
|
+
> curl -fsSL https://gitlab.com/gitlab-org/ci-cd/runner-tools/glci/-/raw/main/install.sh | bash
|
|
146
|
+
> ```
|
|
147
|
+
>
|
|
148
|
+
> Then re-run: `bash scripts/verify.sh auto -f .gitlab-ci.yml`
|
|
149
|
+
|
|
150
|
+
#### Repo has no commits yet (from simulate / run tiers)
|
|
151
|
+
|
|
152
|
+
> Lint and show passed.
|
|
153
|
+
>
|
|
154
|
+
> The simulate and run tiers need at least one commit (glci's embedded gitlab-runner panics on commit-less repos; see verify.sh preflight).
|
|
155
|
+
>
|
|
156
|
+
> Reason: this repo has no commits yet (`git rev-parse HEAD` fails).
|
|
157
|
+
>
|
|
158
|
+
> To unblock:
|
|
159
|
+
>
|
|
160
|
+
> ```
|
|
161
|
+
> git add -A && git commit -m "Initial commit"
|
|
162
|
+
> ```
|
|
163
|
+
>
|
|
164
|
+
> Then re-run: `bash scripts/verify.sh auto -f .gitlab-ci.yml`
|
|
165
|
+
|
|
166
|
+
Do not paraphrase the install commands; copy them from verify.sh stderr. Different OSes get different commands (macOS shows Colima + Docker Desktop options; Linux shows get.docker.com).
|
|
167
|
+
|
|
168
|
+
### No shell access
|
|
169
|
+
|
|
170
|
+
Some hosts (web-only chat surfaces, read-only review agents, sandboxed environments without shell access) cannot invoke `bash` or run verify.sh. In that case:
|
|
171
|
+
|
|
172
|
+
- Skip the script invocation; do not pretend it ran.
|
|
173
|
+
- Tell the user that local verification was skipped (agent has no shell access).
|
|
174
|
+
- Tell the user to validate the YAML in the GitLab UI: **Build > Pipeline editor > Validate**. Zero local tooling required.
|
|
175
|
+
- Recommend installing glci for future runs so subsequent verifications get show, simulate, and run.
|
|
176
|
+
|
|
177
|
+
### Broken glci binary
|
|
178
|
+
|
|
179
|
+
Manual installs via `sudo mv` can preserve a non-executable mode and silently produce an inert binary. verify.sh checks standard locations (`/usr/local/bin/glci`, `/opt/homebrew/bin/glci`, `~/bin/glci`, `~/.local/bin/glci`) and exits 2 with `chmod +x <path>` guidance when it finds a non-executable file. If the user reports "glci not found" but installed glci recently, they may need this fix.
|
|
180
|
+
|
|
181
|
+
## Degradation when Docker is missing or unreachable
|
|
182
|
+
|
|
183
|
+
Lint and show do not need Docker; they keep working. Simulate and run exit 2 if `docker info` fails. The error tells the user to start Docker Desktop (or the daemon). For a deeper environment report, the user can run `glci doctor`, which checks Docker reachability, daemon state, token configuration, CI config parsing, and the git repository.
|
|
184
|
+
|
|
185
|
+
Note: `glci doctor` exits 0 even when individual checks fail (it reports pass/fail symbols but doesn't gate exit code on the results). `verify.sh` does not rely on doctor's exit code; instead it uses a cheap `docker info` check before invoking simulate or run, then surfaces glci's own error if simulate or run fails for any other reason.
|
|
186
|
+
|
|
187
|
+
## Higher tiers need an initial commit
|
|
188
|
+
|
|
189
|
+
The `auto`, `simulate`, and `run` tiers spin up the embedded gitlab-runner inside Docker. gitlab-runner crashes on commit-less git repos with:
|
|
190
|
+
|
|
191
|
+
```
|
|
192
|
+
panic: runtime error: slice bounds out of range [:8] with length 4
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
Root cause: glci falls back to `Ref = "main"` when `git rev-parse HEAD` fails, and the upstream gitlab-runner tries to slice the ref to 8 characters. `"main"` has 4. Upstream bug, surfaces in the embedded runner.
|
|
196
|
+
|
|
197
|
+
**`verify.sh` preflights this**: before invoking `glci run` (in `auto`, `simulate`, or `run` tier), it checks `git rev-parse HEAD`. If the repo has no commits, the script refuses with exit 2 and tells the user to commit first. `lint` and `show` are unaffected and run fine on commit-less repos.
|
|
198
|
+
|
|
199
|
+
When the user has just done `git init` and not yet committed (common in Workflow 5 onboarding scenarios), the skill should:
|
|
200
|
+
|
|
201
|
+
1. Run `verify.sh show` first; the rendered graph is still useful.
|
|
202
|
+
2. Offer to create the initial commit:
|
|
203
|
+
|
|
204
|
+
> "Your repo doesn't have a commit yet, which is fine, but glci needs one to run the pipeline locally. Want me to stage these files and commit them as 'Initial commit'? After that I can simulate the pipeline."
|
|
205
|
+
|
|
206
|
+
3. Wait for explicit permission per principle 5 (ask before destructive changes). Do not auto-commit.
|
|
207
|
+
4. After the commit lands, re-run `verify.sh auto`.
|
|
208
|
+
|
|
209
|
+
## Components that need a token
|
|
210
|
+
|
|
211
|
+
The Limitations section of glci's own SKILL.md states:
|
|
212
|
+
|
|
213
|
+
> `include: project:` and `include: component:` require `GITLAB_TOKEN`
|
|
214
|
+
|
|
215
|
+
This applies even to public Catalog components. If the YAML uses `include: component:` and `GITLAB_TOKEN` is not set in the environment, lint succeeds (the syntax is valid) but show/simulate/run fail at the include-resolution step with an authentication error.
|
|
216
|
+
|
|
217
|
+
When you generate or modify YAML that uses a Catalog component, preflight by checking `GITLAB_TOKEN` in the environment. If not set:
|
|
218
|
+
|
|
219
|
+
- For verification: tell the user to set `GITLAB_TOKEN` before running show or higher. The token only needs read access to the Catalog component's project (any GitLab.com account works for public components).
|
|
220
|
+
- Do not block presenting the YAML on this; the YAML itself is fine.
|
|
221
|
+
|
|
222
|
+
**The skip-without-token state is verification-complete**, not a failure mode. When glci emits `skipping component include ... no GitLab token configured`, the structural file-level verification (everything except the component's contributed jobs) is sound. Do not attempt to resolve the component locally to "fix" the skip warning. Instead:
|
|
223
|
+
|
|
224
|
+
1. Paste the skip-warning-bearing `glci show` output verbatim.
|
|
225
|
+
2. Tell the user: "Local glci cannot resolve Catalog components without a token. GitLab will resolve this on push. The structural pipeline shown above is correct."
|
|
226
|
+
3. Offer the optional path: set `GITLAB_TOKEN` to a real PAT (instructions in `SKILL.md` Secret handling) and re-run if local resolution is needed.
|
|
227
|
+
|
|
228
|
+
Never extract a token from local config (e.g., `~/.config/glab-cli/config.yml`) to make this skip go away. `glab` stores tokens encrypted at rest; the read value is ciphertext, not a usable bearer token. See `SKILL.md` "Never extract credentials from local files".
|
|
229
|
+
|
|
230
|
+
## glci enforces a per-job timeout
|
|
231
|
+
|
|
232
|
+
`glci run` enforces a per-job timeout via the embedded gitlab-runner. Verified empirically: a job that runs longer than the timeout is killed with `ERROR: Job exceeded the timeout limit of Xs` in the log and a pipeline failure.
|
|
233
|
+
|
|
234
|
+
**Default**: 1 hour (3600 seconds) per job, hardcoded in glci's `pkg/runner/jobspec.go` as the fallback when neither the YAML `timeout:` keyword nor the `--timeout` CLI flag is set. This matches GitLab.com's project default for job timeout, so it's not a divergence from GitLab.com behavior.
|
|
235
|
+
|
|
236
|
+
**Why this is a trap anyway**: on a developer laptop running a matrix-heavy pipeline, several jobs share CPU, memory, and disk concurrently. A job that finishes in 10 minutes on a dedicated hosted runner can take 60+ minutes locally under contention, hitting the 1-hour wall. The failure looks identical to a real test failure unless the log is read.
|
|
237
|
+
|
|
238
|
+
**Triage signal (unambiguous)**: the log contains the literal string `ERROR: Job exceeded the timeout limit of Xs`. The model should grep for `exceeded the timeout limit` in the run output. This is a deterministic signal, not a heuristic.
|
|
239
|
+
|
|
240
|
+
**Triage moves**:
|
|
241
|
+
|
|
242
|
+
1. Rerun the suspect job in isolation: `scripts/verify.sh run <job> --reuse-artifacts --confirm-docker`. Reusing upstream artifacts removes upstream contention; if the job passes solo, the failure was local concurrency, not the code.
|
|
243
|
+
2. Raise the timeout if the job legitimately runs longer than 1 hour: `glci run <job> --timeout 2h -f .gitlab-ci.yml`. Accepts CI durations (`30m`, `1h`, `1h30m`). The skill does not change the default; surface the override to the user with an explanation of why.
|
|
244
|
+
3. If the job is consistently long-running against a real workload (e.g., a 90-minute integration test), tell the user it likely needs the same treatment on GitLab.com via a YAML `timeout:` keyword on the job. Use show + simulate as the structural confidence layer locally; don't try to run it.
|
|
245
|
+
|
|
246
|
+
**Distinguish two different timeout mechanisms in glci**:
|
|
247
|
+
|
|
248
|
+
- **YAML `timeout:` keyword on a job or `default:`**: per glci's own Limitations, this is parsed but **not** enforced by glci (see "What no glci tier catches" below). GitLab.com runners do enforce it.
|
|
249
|
+
- **glci's runner-side timeout (1-hour default, overridden by `--timeout` CLI flag)**: enforced locally on every job. This is what fires the trap.
|
|
250
|
+
|
|
251
|
+
The skill should apply the classification rules in `references/debugging.md` after any failed `verify.sh run` and explicitly tag local-timeout failures so the user does not chase a phantom bug in their code.
|
|
252
|
+
|
|
253
|
+
## Run-tier guardrails
|
|
254
|
+
|
|
255
|
+
`scripts/verify.sh run` requires the explicit `--confirm-docker` flag. Even with that flag, the skill must refuse to run jobs with side effects unless the user has explicitly approved them per pipeline:
|
|
256
|
+
|
|
257
|
+
- **`environment:` keys pointing at real environments** (production, staging, etc.): warn that running this locally will trigger any `environment:` hooks. If the user is unsure, skip those jobs (`glci run --skip <job-name>`).
|
|
258
|
+
- **`docker push` to external registries**: warn before executing. glci has an embedded registry for jobs that push within the pipeline; if the script pushes to an external registry, that push is real.
|
|
259
|
+
- **Manual jobs** (`when: manual`): glci does not auto-run manual jobs unless you pass `--manual <job>` or `--manual-all`. Default to leaving them skipped.
|
|
260
|
+
|
|
261
|
+
`GITLAB_TOKEN` is forwarded to all jobs as `CI_JOB_TOKEN` by default. This is convenient but means jobs can call the GitLab API with your personal token's scopes. Pass `--no-token` to disable forwarding for sensitive runs.
|
|
262
|
+
|
|
263
|
+
## What no glci tier catches
|
|
264
|
+
|
|
265
|
+
These checks can only happen on real GitLab; the skill should warn the user explicitly when their YAML depends on them.
|
|
266
|
+
|
|
267
|
+
- **Runner tag matching**: glci does not enforce `tags:`. A job that needs a specific runner tag will pass simulate or run locally but may queue indefinitely on GitLab.
|
|
268
|
+
- **Protected branch rules**: glci does not enforce branch protection. A job gated by `rules: - if: '$CI_COMMIT_BRANCH == "main" && $CI_COMMIT_REF_PROTECTED == "true"'` will evaluate the variables glci provides; real protection is server-side.
|
|
269
|
+
- **Server-only CI variables** (~25 of them per glci's Limitations): `CI_RUNNER_ID`, `CI_RUNNER_TAGS`, `CI_MERGE_REQUEST_ASSIGNEES`, and similar variables that only exist on the server.
|
|
270
|
+
- **YAML `retry:` and `timeout:` keywords**: glci parses both but does not enforce them. Real runner behavior may differ. (Distinct from glci's own runner-side `--job-timeout`, which IS enforced locally; see "glci enforces a per-job timeout" above.)
|
|
271
|
+
- **Child pipelines** (`trigger: include:`): glci parses but does not execute child pipelines. The parent pipeline's behavior up to the trigger point is verifiable; what the child does is not.
|
|
272
|
+
- **Kubernetes executor**: glci is Docker-only. YAML that relies on Kubernetes-specific features (e.g., `tags: [kubernetes]`) will not exercise that path locally.
|
|
273
|
+
|
|
274
|
+
When the YAML uses any of the above, tell the user explicitly: "Verification passed locally; (specific feature) only exercises on real GitLab."
|
|
275
|
+
|
|
276
|
+
## Further reading
|
|
277
|
+
|
|
278
|
+
For the long tail of glci flags, configuration keys, and behaviors (`.glciconfig.toml` schema, named pipeline presets, embedded registry, daemon management, `glci artifacts diff`, environment variables, troubleshooting), read glci's own Agent Skill at `.claude/skills/glci/SKILL.md` in the `gitlab-org/ci-cd/runner-tools/glci` project. That file is the authoritative reference; this file documents only what `scripts/verify.sh` itself uses and how the skill should react.
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# Query the GitLab CI/CD Catalog via GraphQL.
|
|
3
|
+
#
|
|
4
|
+
# Usage:
|
|
5
|
+
# scripts/catalog-search.sh [VERIFICATION] [SORT] [LIMIT] [SEARCH]
|
|
6
|
+
#
|
|
7
|
+
# Arguments (all positional, all optional):
|
|
8
|
+
#
|
|
9
|
+
# VERIFICATION (default GITLAB_MAINTAINED):
|
|
10
|
+
# GITLAB_MAINTAINED created and maintained by GitLab (tanuki badge).
|
|
11
|
+
# GITLAB_PARTNER_MAINTAINED independently maintained by a GitLab-verified partner.
|
|
12
|
+
# VERIFIED_CREATOR_MAINTAINED maintained by a user verified by an administrator.
|
|
13
|
+
# UNVERIFIED everything else.
|
|
14
|
+
#
|
|
15
|
+
# SORT (default USAGE_COUNT_DESC):
|
|
16
|
+
# USAGE_COUNT_DESC, USAGE_COUNT_ASC
|
|
17
|
+
# LATEST_RELEASED_AT_DESC, LATEST_RELEASED_AT_ASC
|
|
18
|
+
# STAR_COUNT_DESC, STAR_COUNT_ASC
|
|
19
|
+
# NAME_ASC, NAME_DESC
|
|
20
|
+
#
|
|
21
|
+
# LIMIT (default 20): number of results to return. Non-negative integer.
|
|
22
|
+
#
|
|
23
|
+
# SEARCH (default empty): substring match against name and description.
|
|
24
|
+
#
|
|
25
|
+
# Output: raw GraphQL JSON on stdout. Pipe through jq or another parser to
|
|
26
|
+
# extract fields. The agent typically reads: nodes[].name, .fullPath,
|
|
27
|
+
# .description, .topics, .last30DayUsageCount, .starCount, .archived, and the
|
|
28
|
+
# latest release tag at .versions.nodes[0].name.
|
|
29
|
+
#
|
|
30
|
+
# Examples:
|
|
31
|
+
# scripts/catalog-search.sh
|
|
32
|
+
# scripts/catalog-search.sh GITLAB_PARTNER_MAINTAINED
|
|
33
|
+
# scripts/catalog-search.sh GITLAB_MAINTAINED STAR_COUNT_DESC 50
|
|
34
|
+
# scripts/catalog-search.sh UNVERIFIED USAGE_COUNT_DESC 20 terraform
|
|
35
|
+
#
|
|
36
|
+
# No authentication required for public components. Depends only on bash,
|
|
37
|
+
# curl, and sed.
|
|
38
|
+
|
|
39
|
+
set -uo pipefail
|
|
40
|
+
|
|
41
|
+
VERIFICATION="${1:-GITLAB_MAINTAINED}"
|
|
42
|
+
SORT="${2:-USAGE_COUNT_DESC}"
|
|
43
|
+
LIMIT="${3:-20}"
|
|
44
|
+
SEARCH="${4:-}"
|
|
45
|
+
|
|
46
|
+
case "$LIMIT" in
|
|
47
|
+
''|*[!0-9]*)
|
|
48
|
+
echo "ERROR: LIMIT must be a non-negative integer, got: $LIMIT" >&2
|
|
49
|
+
exit 2
|
|
50
|
+
;;
|
|
51
|
+
esac
|
|
52
|
+
|
|
53
|
+
if ! command -v curl >/dev/null 2>&1; then
|
|
54
|
+
echo "ERROR: curl is required but not installed." >&2
|
|
55
|
+
exit 2
|
|
56
|
+
fi
|
|
57
|
+
|
|
58
|
+
# The GraphQL query. Single-quoted so $variableName inside refers to GraphQL
|
|
59
|
+
# variables, not shell variables.
|
|
60
|
+
QUERY='query getCatalogResources($verificationLevel: CiCatalogResourceVerificationLevel, $sortValue: CiCatalogResourceSort, $first: Int, $searchTerm: String) { ciCatalogResources(verificationLevel: $verificationLevel, sort: $sortValue, first: $first, search: $searchTerm) { nodes { name fullPath description topics last30DayUsageCount starCount archived versions(first: 1) { nodes { name } } } pageInfo { hasNextPage } } }'
|
|
61
|
+
|
|
62
|
+
# Build the variables JSON. Conditionally include searchTerm.
|
|
63
|
+
if [ -z "$SEARCH" ]; then
|
|
64
|
+
VARIABLES="{\"first\":$LIMIT,\"verificationLevel\":\"$VERIFICATION\",\"sortValue\":\"$SORT\"}"
|
|
65
|
+
else
|
|
66
|
+
# JSON-escape backslashes and double quotes in the search term.
|
|
67
|
+
SAFE_SEARCH=$(printf '%s' "$SEARCH" | sed 's/\\/\\\\/g; s/"/\\"/g')
|
|
68
|
+
VARIABLES="{\"first\":$LIMIT,\"verificationLevel\":\"$VERIFICATION\",\"sortValue\":\"$SORT\",\"searchTerm\":\"$SAFE_SEARCH\"}"
|
|
69
|
+
fi
|
|
70
|
+
|
|
71
|
+
BODY="{\"operationName\":\"getCatalogResources\",\"variables\":$VARIABLES,\"query\":\"$QUERY\"}"
|
|
72
|
+
|
|
73
|
+
curl --silent --show-error --fail \
|
|
74
|
+
-X POST "https://gitlab.com/api/graphql" \
|
|
75
|
+
-H 'Content-Type: application/json' \
|
|
76
|
+
-d "$BODY"
|