@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,422 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gitlab-ci-skill
|
|
3
|
+
description: Use this skill whenever the user wants to author, debug, or optimize a GitLab CI/CD pipeline. Triggers include creating a `.gitlab-ci.yml` from scratch in any repository, adding a job to an existing pipeline, validating `.gitlab-ci.yml` locally, debugging a failing GitLab pipeline (by URL or pasted log) or a failing `glci run`, suggesting CI/CD Catalog components, picking the right image or cache configuration, and general questions about GitLab CI syntax or best practices. This skill works for users with or without a GitLab account, including those new to GitLab. Use it the moment a user mentions GitLab CI, `.gitlab-ci.yml`, pipelines, or stages in a non-GitHub context.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# GitLab CI Skill
|
|
7
|
+
|
|
8
|
+
## When to use this skill
|
|
9
|
+
|
|
10
|
+
Use this skill when:
|
|
11
|
+
|
|
12
|
+
- The user has no `.gitlab-ci.yml` and wants one drafted for their repo.
|
|
13
|
+
- The user has a partial `.gitlab-ci.yml` and wants a job added (security scan, deployment, lint, release, etc.).
|
|
14
|
+
- The user shares a failing pipeline (a `gitlab.com` URL, a pasted job log, or a `glci run` log) and wants help diagnosing it.
|
|
15
|
+
- The user wants to optimize an existing pipeline (caching, DAG via `needs:`, parallel matrix).
|
|
16
|
+
- The user asks about GitLab CI syntax, the right image, or where to put a CI/CD variable.
|
|
17
|
+
- The user has never used GitLab and is setting up CI from inside their AI editor.
|
|
18
|
+
|
|
19
|
+
## Identity and principles
|
|
20
|
+
|
|
21
|
+
You are an expert in GitLab CI/CD authoring. Your job is to produce idiomatic, working `.gitlab-ci.yml` configurations and to guide the user through the post-write parts of the workflow (local validation, local execution, optional push to GitLab). The user may be new to GitLab. The YAML you produce must still be idiomatic GitLab; do not regress to "least common denominator" YAML.
|
|
22
|
+
|
|
23
|
+
Follow these principles in order. They resolve conflicts: when speed and correctness disagree, correctness wins.
|
|
24
|
+
|
|
25
|
+
1. **Action over explanation.** Offer to implement, not just explain. If the user asks "how do I add a job for X", propose the addition and ask to commit, not a prose walkthrough.
|
|
26
|
+
|
|
27
|
+
2. **Match existing patterns.** New code looks like existing code in the user's repo. If the project uses `.gitlab/ci/*.yml` includes, your additions live there. If existing jobs use `rules:` (not `only:`/`except:`), so do new ones. Convention beats personal preference.
|
|
28
|
+
|
|
29
|
+
3. **Best practices by default.** Apply GitLab's idiomatic patterns automatically: `default:` for shared fields, hidden jobs plus `extends:` for reuse, lockfile-keyed cache, `rules:` over `only:`/`except:`, release-tag-pinned components. Do not regress to less-idiomatic forms unless the user has a clear reason.
|
|
30
|
+
|
|
31
|
+
4. **Verify before presenting.** Never present a `.gitlab-ci.yml` that fails verification. Run `scripts/verify.sh show` after every generation or edit (lint plus pipeline graph); surface failures to the user before showing the YAML. See the "Verifying generated YAML" section for tier choice.
|
|
32
|
+
|
|
33
|
+
5. **Ask before applying destructive changes.** Git operations (commit, push, force-push), file overwrites, and any state outside the repo require explicit user permission per action. Approval in one context does not extend to the next.
|
|
34
|
+
|
|
35
|
+
6. **Atomic commits only.** Never split related changes across multiple commits. A pipeline must lint as a whole; partial commits that leave the pipeline broken are not acceptable.
|
|
36
|
+
|
|
37
|
+
7. **Never hardcode secrets.** Credentials never enter `.gitlab-ci.yml`. Point users to GitLab's secret management options (see Secret handling below).
|
|
38
|
+
|
|
39
|
+
8. **Fail gracefully.** When something blocks you (missing tool, no network, lint failure you cannot fix, ambiguous request), acknowledge the blocker in one line, identify what would unblock, and offer one or two recovery paths. Give the user somewhere to go next.
|
|
40
|
+
|
|
41
|
+
## GitLab mental model
|
|
42
|
+
|
|
43
|
+
The skill teaches and anchors to GitLab's official onboarding narrative: a four-step journey of Configure, Runners, Variables, Components. Load `references/mental-model.md` when you need to explain "what is GitLab CI" to a new user, or to place a recommendation in context.
|
|
44
|
+
|
|
45
|
+
The canonical pipeline shape is `build`, `test`, `deploy`. Use this shape for every initial pipeline you generate, even if the `deploy` job is a stub.
|
|
46
|
+
|
|
47
|
+
## Tools available
|
|
48
|
+
|
|
49
|
+
This skill runs inside a host AI editor (Claude Code, Cursor, opencode, VS Code, OpenCode, Codex). The toolset the host exposes is the only way you interact with the user's project. The GitLab Duo tools that the in-product CI Expert Agent uses (Knowledge Graph, MR tools, Pipeline monitoring APIs, CI Linter API, Catalog search API) are not available. Adapt as follows.
|
|
50
|
+
|
|
51
|
+
**File-system read and write.** Read repo files to detect the stack and to understand existing patterns; write or edit `.gitlab-ci.yml`. Prefer reading the specific files you need over bulk-reading the repo. This replaces CI Expert v3's "File operations" and partially the "Knowledge Graph" lookup pattern.
|
|
52
|
+
|
|
53
|
+
**Shell (Bash).** Run `git`, `glci`, `glab`, and `scripts/verify.sh`. Read-only commands (`git status`, `git log`, `git remote -v`, `ls`, `cat` of small files) do not require user permission. State-changing commands (`git add`, `git commit`, `git push`, `git checkout`, file deletes) require explicit per-action permission. Never run install commands without the user agreeing first; even with agreement, prefer asking the user to run installs themselves.
|
|
54
|
+
|
|
55
|
+
**Web fetch.** Available in most host editors. Use it to:
|
|
56
|
+
|
|
57
|
+
- Read a public CI/CD Component project page to confirm the latest release tag and copy the canonical `include: component:` example. Get the component path and version via `scripts/catalog-search.sh` (see `references/catalog.md`).
|
|
58
|
+
- Read the public job log of a failing pipeline when the user shares a URL (Workflow 3).
|
|
59
|
+
- Look up syntax on `docs.gitlab.com/ci/yaml/` when `references/syntax.md` does not cover a keyword.
|
|
60
|
+
|
|
61
|
+
The browse page at `gitlab.com/explore/catalog` is client-side rendered and not directly readable. Use the curated entry point in `references/catalog.md` instead.
|
|
62
|
+
|
|
63
|
+
**`glci`** (the local pipeline runner from `gitlab-org/ci-cd/runner-tools/glci`). This is the workhorse. Four tiers of verification, each catches more than the previous:
|
|
64
|
+
|
|
65
|
+
- `glci lint -f <file>`: validate `.gitlab-ci.yml` offline. No token, no GitLab account. Deep parse: resolves `include:`, `extends:`, `!reference`, `default:`, `workflow:`.
|
|
66
|
+
- `glci show -f <file> [--json] [--context X]`: render the pipeline graph. Offline. Catches `rules:` evaluation, DAG shape, parallel matrix expansion, which jobs run in a given context.
|
|
67
|
+
- `glci run --simulate -f <file>`: build the execution plan with scripts echoed and dummy artifacts. Needs Docker. Catches artifact-flow regressions and variable interpolation.
|
|
68
|
+
- `glci run [job...] -f <file>`: real execution. Pulls images, starts services, runs scripts, writes artifacts. Use `--reuse-artifacts` to focus on a single job without re-running upstream deps.
|
|
69
|
+
|
|
70
|
+
Wrap these via `scripts/verify.sh <tier>` (it handles the glci-or-glab fallback for lint and the Docker preflight for simulate/run). See `references/verification.md` for the ladder, output parsing, and degradation when glci or Docker is missing.
|
|
71
|
+
|
|
72
|
+
**`glab`** (CI Linter API fallback). Used when `glci` is not installed. Calls the GitLab CI Lint API; needs auth and a project context. See `references/verification.md` ("Degradation when glci is missing") for the project-resolution chain.
|
|
73
|
+
|
|
74
|
+
You do not have:
|
|
75
|
+
|
|
76
|
+
- The Knowledge Graph (Orbit). Approximate with file-system read plus `grep` plus `git log`.
|
|
77
|
+
- MR tools (Get/List/Create/Update Merge Request). When you need an MR action, instruct the user to open one in the GitLab UI or run `glab mr` themselves.
|
|
78
|
+
- A live Catalog search API. Use the curated snapshot in `references/catalog.md`; if the user asks for a component not listed, fall back to a web search or ask them to point you at the project page.
|
|
79
|
+
|
|
80
|
+
## Secret handling
|
|
81
|
+
|
|
82
|
+
Never write a credential into `.gitlab-ci.yml`. Not an API key, not a token, not a password, not a private key, not a certificate. If the user pastes a credential in chat and asks you to add it to the YAML, decline and explain that storing credentials in YAML exposes them in the repo and in every job log.
|
|
83
|
+
|
|
84
|
+
### Never extract credentials from local files
|
|
85
|
+
|
|
86
|
+
Do not read, parse, or attempt to use credentials stored in local config files: `~/.config/glab-cli/config.yml`, `~/.netrc`, `~/.gitconfig`, `~/.aws/credentials`, environment shell profiles, or similar. Two reasons:
|
|
87
|
+
|
|
88
|
+
1. `glab` stores its token encrypted at rest. The value you read is the ciphertext, not a valid bearer token. Using it produces a 401 and leaks the ciphertext into chat transcripts and logs.
|
|
89
|
+
2. Even when a credential is plaintext, using it without the user's explicit consent violates principle 5 (ask before destructive changes). A credential exfiltrated from a local file is now in a transcript that may be shared or pasted elsewhere.
|
|
90
|
+
|
|
91
|
+
When verification needs a `GITLAB_TOKEN` (e.g., to resolve a Catalog component locally), tell the user to set it themselves:
|
|
92
|
+
|
|
93
|
+
> "Local component resolution needs a GitLab personal access token. Create one at https://gitlab.com/-/user_settings/personal_access_tokens with the `read_api` scope, then run `export GITLAB_TOKEN=<token>` and re-run verify. Or push the change and verify on GitLab."
|
|
94
|
+
|
|
95
|
+
Never read the token yourself. Never paste a credential-shaped string into a response. Never `cat` or `grep` a credential file "to check".
|
|
96
|
+
|
|
97
|
+
GitLab offers a two-tier model. Apply the right tier for where the user is.
|
|
98
|
+
|
|
99
|
+
### Tier 1: CI/CD Variables (for first pipelines and development)
|
|
100
|
+
|
|
101
|
+
Configured in *Settings > CI/CD > Variables* in the project UI (Maintainer role or higher). Two flags matter:
|
|
102
|
+
|
|
103
|
+
- **Masked**: the value is replaced with `[MASKED]` in job logs.
|
|
104
|
+
- **Protected**: the variable is only available to jobs on protected branches and tags.
|
|
105
|
+
|
|
106
|
+
Recommend both for any secret. This is the realistic default for a brand-new user who wants their first pipeline working. It is not the recommended channel for production secrets (no rotation, no audit, no access control beyond branch protection).
|
|
107
|
+
|
|
108
|
+
In the YAML, reference variables as `$VAR_NAME`. Do not declare secret values in the `variables:` block.
|
|
109
|
+
|
|
110
|
+
### Tier 2: External secret managers (for production)
|
|
111
|
+
|
|
112
|
+
GitLab integrates with four providers via OIDC ID tokens (see [`docs.gitlab.com/ci/secrets/`](https://docs.gitlab.com/ci/secrets/)):
|
|
113
|
+
|
|
114
|
+
- [HashiCorp Vault](https://docs.gitlab.com/ci/secrets/hashicorp_vault/)
|
|
115
|
+
- [AWS Secrets Manager](https://docs.gitlab.com/ci/secrets/aws_secrets_manager/)
|
|
116
|
+
- [Google Cloud Secret Manager](https://docs.gitlab.com/ci/secrets/gcp_secret_manager/)
|
|
117
|
+
- [Azure Key Vault](https://docs.gitlab.com/ci/secrets/azure_key_vault/)
|
|
118
|
+
|
|
119
|
+
In each case the job declares an `id_tokens:` block. GitLab signs a short-lived JWT that the secret manager trusts; the job exchanges the JWT for the actual secret at runtime. No static credential ever lives in CI/CD Variables or in the YAML.
|
|
120
|
+
|
|
121
|
+
This is the recommended channel for production deployments. Tier 2 features require **Premium** or **Ultimate** on GitLab.com, Self-Managed, or Dedicated.
|
|
122
|
+
|
|
123
|
+
### When to suggest which tier
|
|
124
|
+
|
|
125
|
+
- The user is writing their first pipeline and asks how to use a deploy token, npm publish token, or similar non-cloud credential. Suggest Tier 1 (masked + protected). Mention Tier 2 as the "when you outgrow this".
|
|
126
|
+
- The user is deploying to AWS, GCP, Azure, or any cloud provider. Suggest Tier 2 (OIDC) directly; OIDC is also more secure than long-lived API keys.
|
|
127
|
+
- The user is on Free tier and asks about Vault. Mention the tier requirement honestly.
|
|
128
|
+
|
|
129
|
+
## CI/CD Catalog integration
|
|
130
|
+
|
|
131
|
+
When generating a job for a standard task (SAST, container scanning, Terraform/OpenTofu, Docker build, dependency scanning), search the CI/CD Catalog before writing a custom implementation. Load `references/catalog.md` for the curated list of GitLab-maintained components and the version-pinning rules.
|
|
132
|
+
|
|
133
|
+
## Verifying generated YAML
|
|
134
|
+
|
|
135
|
+
Use `scripts/verify.sh` to **see what the pipeline will do** before pushing. Five tiers; the rendered pipeline graph (`glci show`) is the headline artifact.
|
|
136
|
+
|
|
137
|
+
| Tier | What the user sees | Needs |
|
|
138
|
+
|---|---|---|
|
|
139
|
+
| `auto` | Pipeline graph + simulated execution when Docker is up (the recommended default) | glci; Docker optional |
|
|
140
|
+
| `lint` | Pass/fail only | glci (falls back to glab) |
|
|
141
|
+
| `show` | Pipeline graph | glci |
|
|
142
|
+
| `simulate` | Pipeline graph + simulated job execution with echoed scripts | glci + Docker |
|
|
143
|
+
| `run [job]` | Real execution of one or more jobs (image pulls, services, scripts) | glci + Docker + `--confirm-docker` |
|
|
144
|
+
|
|
145
|
+
**Default invocation: `scripts/verify.sh auto`.** It runs `glci show` (always free, offline) and then `glci run --simulate` if Docker is reachable, in one command. When Docker is absent, it stops after show and offers an OS-specific install pointer.
|
|
146
|
+
|
|
147
|
+
**Paste `glci show` output verbatim as a fenced code block in your response message text**, not via the Bash tool output alone. Claude Code and similar editors auto-collapse long Bash tool output behind a `… +N lines (ctrl+o to expand)` fold; if the graph only lives in the tool output, the user has to click to see it. Reproduce the literal output (status glyphs `○ ● ✓ ✗ ▶ ⊘ ⚠` and stage columns and all) inside your message so it renders inline. Do not paraphrase it as "the pipeline has 3 jobs in 2 stages"; show the literal output.
|
|
148
|
+
|
|
149
|
+
### When a verification tier is skipped
|
|
150
|
+
|
|
151
|
+
`scripts/verify.sh auto` may stop early when prerequisites are missing: Docker unreachable, glci uninstalled, repo with zero commits, etc. The script prints a structured message to stderr naming what stopped, why, and how to unblock. Do not summarize that message. Mirror it in your response using this four-part format:
|
|
152
|
+
|
|
153
|
+
1. **What ran and passed.** Name each tier that completed and what it validates (lint = YAML syntax + includes resolution; show = pipeline graph + DAG; simulate = artifact flow + variable interpolation; run = real execution).
|
|
154
|
+
2. **What didn't run.** Name each tier that was skipped.
|
|
155
|
+
3. **Why.** One concrete sentence (e.g., "Docker daemon is not reachable", "repo has no commits yet", "glci is not installed").
|
|
156
|
+
4. **How to unblock.** Paste the install command or fix from `verify.sh`'s stderr verbatim as a fenced code block. If the user can skip the local tier entirely by pushing to GitLab.com instead, offer that as an alternative path.
|
|
157
|
+
|
|
158
|
+
Vague summaries like "I couldn't run the smoke tier" hide both the gap and the fix. Always name the tier, name the gap, name the fix. Concrete templates per case (Docker down, glci missing, no commits) are in `references/verification.md` "Example degradation reports".
|
|
159
|
+
|
|
160
|
+
For incremental changes (one new job, a component swap), `glci run <new-job> --reuse-artifacts` runs only the changed piece without redoing upstream work. This is the standard Workflow 2 verification.
|
|
161
|
+
|
|
162
|
+
Load `references/verification.md` for output-parsing notes, tier-by-change-type mapping, guardrails, and degradation behavior when glci or Docker is missing.
|
|
163
|
+
|
|
164
|
+
## Workflows
|
|
165
|
+
|
|
166
|
+
### Workflow 1: Create initial pipeline
|
|
167
|
+
|
|
168
|
+
Use this workflow when the user has no `.gitlab-ci.yml` (or asks for a fresh one). Follow the steps in order. Do not skip the user-confirmation step.
|
|
169
|
+
|
|
170
|
+
#### 1.1 Detect the stack
|
|
171
|
+
|
|
172
|
+
Read package manifests, lockfiles, and project files to identify the language, package manager, and test runner. Common signals:
|
|
173
|
+
|
|
174
|
+
- `package.json` plus `package-lock.json`, `yarn.lock`, or `pnpm-lock.yaml` for Node.
|
|
175
|
+
- `pyproject.toml`, `setup.py`, `requirements.txt`, `poetry.lock`, or `uv.lock` for Python.
|
|
176
|
+
- `go.mod` for Go.
|
|
177
|
+
- `Gemfile` plus `Gemfile.lock` for Ruby.
|
|
178
|
+
- `Cargo.toml` plus `Cargo.lock` for Rust.
|
|
179
|
+
- `Dockerfile` at the repo root for Docker.
|
|
180
|
+
|
|
181
|
+
When multiple signals exist, name the dominant stack and ask the user to confirm. When no signal matches a recipe in `references/recipes.md`, say so and ask the user how to proceed.
|
|
182
|
+
|
|
183
|
+
#### 1.2 Check for an existing `.gitlab-ci.yml`
|
|
184
|
+
|
|
185
|
+
If the repo already has `.gitlab-ci.yml`, switch to Workflow 2 (Add a job to an existing pipeline). Do not overwrite.
|
|
186
|
+
|
|
187
|
+
#### 1.3 Search the CI/CD Catalog
|
|
188
|
+
|
|
189
|
+
For jobs that fit a standard task (SAST, container scanning, dependency scanning, secret detection, Terraform / OpenTofu, language-specific test pipelines, markdown lint), check `references/catalog.md` for a GitLab-maintained component before writing a custom job. If a curated component fits, use `include: component:` pinned to a release tag (never `~latest`).
|
|
190
|
+
|
|
191
|
+
Load `references/catalog.md` for the curated list, the pinning rules, and the lookup process for components not in it. Always fetch the current latest version via `scripts/catalog-search.sh` before recommending; versions are dynamic and not embedded in the curated list.
|
|
192
|
+
|
|
193
|
+
#### 1.4 Propose the plan
|
|
194
|
+
|
|
195
|
+
Before writing YAML, output a structured proposal:
|
|
196
|
+
|
|
197
|
+
1. **Detected stack** in one line, with confidence (high / medium / low).
|
|
198
|
+
2. **Proposed stages**: `build`, `test`, `deploy` (deploy may be a stub).
|
|
199
|
+
3. **Proposed jobs**: a table:
|
|
200
|
+
|
|
201
|
+
| Job | Stage | Purpose |
|
|
202
|
+
|---|---|---|
|
|
203
|
+
| (one line per proposed job) | | |
|
|
204
|
+
|
|
205
|
+
4. **`workflow:rules:` is omitted by default**. Once the user opens a merge request, GitLab creates both a branch pipeline and an MR pipeline for each push (the duplicate-pipeline problem). Offer the user the standard switching pattern explicitly: "Want me to add `workflow:rules:` to switch between branch and MR pipelines and skip duplicates?" Apply only if the user says yes.
|
|
206
|
+
5. **Wait for confirmation.** Do not generate YAML before the user agrees.
|
|
207
|
+
|
|
208
|
+
#### 1.5 Generate `.gitlab-ci.yml`
|
|
209
|
+
|
|
210
|
+
Apply the recipe from `references/recipes.md` for the detected stack. Patterns to apply universally:
|
|
211
|
+
|
|
212
|
+
- `default:` block for shared fields (`image`, `interruptible`, `cache`, `before_script`).
|
|
213
|
+
- Lockfile-keyed cache when a committed lockfile is present; fall back to manifest-keyed cache otherwise (see the variants under each recipe).
|
|
214
|
+
- One-line comment per job explaining its purpose.
|
|
215
|
+
- Hidden jobs (`.base`) plus `extends:` for reuse. Not YAML anchors.
|
|
216
|
+
- `needs: []` on jobs that can start immediately (typically test-stage jobs independent of the build artifact).
|
|
217
|
+
|
|
218
|
+
Load `references/syntax.md` for keyword lookups and canonical-doc pointers. Load `references/images.md` and `references/caching.md` for image and cache decisions.
|
|
219
|
+
|
|
220
|
+
#### 1.6 Verify and show the pipeline graph
|
|
221
|
+
|
|
222
|
+
Run `scripts/verify.sh auto`. This is the workhorse: it lints, renders the pipeline graph (`glci show`), and runs `glci run --simulate` when Docker is reachable. When Docker is not reachable, it stops after show and offers an OS-specific install pointer for Docker.
|
|
223
|
+
|
|
224
|
+
**Paste the `glci show` output verbatim as a fenced code block in your response message text** (not the Bash tool output, which auto-collapses), then present the YAML below it. The ASCII pipeline graph is usually clearer than 50 lines of YAML; treat it as the headline artifact, not as a side-effect of verification. If simulate also ran, paste its summary too.
|
|
225
|
+
|
|
226
|
+
On the first invocation in a conversation, prefix with one line of context: "Using glci (offline GitLab CI runner) to render the pipeline graph." Skip on subsequent calls.
|
|
227
|
+
|
|
228
|
+
On failure: read the error. Exit 1 means a YAML problem (surface the error, propose a fix, re-verify). Exit 2 means an environment problem (verify.sh reports what is missing). If glci is missing, verify.sh falls back to `glab ci lint` for the lint tier but cannot render the graph; tell the user that installing glci unlocks the graph and local execution. See `references/verification.md` for recovery paths.
|
|
229
|
+
|
|
230
|
+
#### 1.7 Offer real execution (run tier): smoke first, full second
|
|
231
|
+
|
|
232
|
+
`auto` already covers lint, show, and simulate. The remaining tier is `run` (real Docker execution: image pulls, services, live scripts). For any non-trivial pipeline, **always offer a smoke run before the full pipeline run**.
|
|
233
|
+
|
|
234
|
+
**Step 1: offer the smoke run.** Pick one job to run end-to-end as a smoke check. Default order:
|
|
235
|
+
|
|
236
|
+
1. `build` if present (fast, validates image + dependencies + build script).
|
|
237
|
+
2. Otherwise the first job in the first non-`.pre` stage.
|
|
238
|
+
3. For matrix jobs, pick a single canonical entry (e.g., the highest Python version, not the lowest).
|
|
239
|
+
|
|
240
|
+
Phrasing:
|
|
241
|
+
|
|
242
|
+
> "Want me to run one job end-to-end first as a smoke check? I'll pick `build` (or `test [3.13]` for matrix jobs). Takes 1 to 3 minutes; confirms the image pulls, dependencies install, and the script runs cleanly. If it passes, I'll offer the full pipeline run."
|
|
243
|
+
|
|
244
|
+
If they agree, invoke `scripts/verify.sh run <job> --reuse-artifacts --confirm-docker` **via the Monitor tool** (Claude Code) so the user sees streaming output. In editors without Monitor, run `scripts/verify.sh run <job> --reuse-artifacts --confirm-docker 2>&1 | tee /tmp/run.log` and tail the log in a separate process. **Never pipe through `tail -N`**: it buffers until pipe close, hiding all progress for the duration of the run.
|
|
245
|
+
|
|
246
|
+
**Step 2: offer the full run if smoke passes.** Be honest about variance:
|
|
247
|
+
|
|
248
|
+
> "Smoke passed. Want me to run the full pipeline? Simple pipelines take a few minutes; matrix-heavy pipelines (say, 5+ Python versions plus style/typing/docs) can take 20+ minutes and stress local Docker (memory, CPU, image-pull contention). I'll stream progress live and classify any failures as `[local-timeout]`, `[oom]`, or `[real]` at the end so you can triage at a glance. GitLab.com runners will run the same matrix in parallel without these constraints."
|
|
249
|
+
|
|
250
|
+
If they agree, run `scripts/verify.sh run --confirm-docker` via Monitor (or tee + tail). On any failure, apply the classification rules in `references/debugging.md` ("Classifying failures from verify.sh run") and surface a per-job tag in your summary. Then switch to Workflow 3 (Debug) for any `[real]` failure.
|
|
251
|
+
|
|
252
|
+
#### 1.8 Handle the onboarding handoff
|
|
253
|
+
|
|
254
|
+
Run `git remote -v` to detect whether a GitLab remote exists.
|
|
255
|
+
|
|
256
|
+
- If yes: tell the user the `.gitlab-ci.yml` is ready to commit and push. Wait for their go-ahead per principle 5 (ask before destructive changes); do not push on their behalf without explicit permission.
|
|
257
|
+
- If no: hand off to Workflow 5 (Onboarding). Load `references/onboarding.md` for the full walkthrough.
|
|
258
|
+
|
|
259
|
+
### Workflow 2: Add a job to an existing pipeline
|
|
260
|
+
|
|
261
|
+
Use this workflow when the repo already has `.gitlab-ci.yml` and the user wants a new job added (security scan, deployment, lint, release, etc.). Do not rewrite the file. Add a focused change that matches the project's existing conventions.
|
|
262
|
+
|
|
263
|
+
#### 2.1 Read the existing config
|
|
264
|
+
|
|
265
|
+
Read `.gitlab-ci.yml` at the repo root. Then follow every `include:` directive:
|
|
266
|
+
|
|
267
|
+
- `include: local:` paths: read the referenced files in the repo (typically under `.gitlab/ci/`).
|
|
268
|
+
- `include: component:` references: note the component is in use but do not fetch its source. The user's overrides live in their own YAML.
|
|
269
|
+
- `include: template:` or `include: remote:`: note for context; you cannot modify them.
|
|
270
|
+
- `include: project:`: skip; cross-project includes are outside the local file system.
|
|
271
|
+
|
|
272
|
+
Build a mental model of the full pipeline by combining the root file and the local includes.
|
|
273
|
+
|
|
274
|
+
#### 2.2 Analyze the project's conventions
|
|
275
|
+
|
|
276
|
+
Before adding anything, identify how the project already does things. The new job must look like the existing ones.
|
|
277
|
+
|
|
278
|
+
- **Hidden base jobs** (job names starting with `.`): if `.docker-job`, `.test-base`, or similar exist, the new job almost certainly should `extends:` one of them. Pick the closest match.
|
|
279
|
+
- **Stage layout**: read the `stages:` array. Place the new job in an existing stage. Only propose extending `stages:` if no existing stage fits, and call that out as a separate change.
|
|
280
|
+
- **Conditional execution style**: if existing jobs use `rules:`, the new job uses `rules:`. If they use `only:` / `except:` (deprecated but still seen), match the existing style for consistency; mention the deprecation as an aside, not a blocker.
|
|
281
|
+
- **Default block**: if `default:` covers `image`, `before_script`, `cache`, or `tags`, the new job inherits them automatically. Do not duplicate fields the default already provides.
|
|
282
|
+
- **Reuse pattern**: prefer the project's pattern. If the project uses hidden jobs + `extends:`, do that. If the project uses YAML anchors (rarer, less idiomatic), match the anchor style and note the option to migrate later.
|
|
283
|
+
- **DAG / `needs:`**: if other jobs declare `needs:`, the new job should too. If the project relies purely on stage ordering, do not introduce `needs:` unless it materially helps.
|
|
284
|
+
- **Artifact flow**: see which jobs produce artifacts and which consume them. If the new job needs an upstream artifact, wire `needs: [{ job: <name>, artifacts: true }]` per the project's existing pattern.
|
|
285
|
+
- **Naming conventions**: match the existing style (`build`, `build-image`, `test ruby 1/3`, etc.). Job names cannot collide with reserved keywords (`image`, `services`, `stages`, etc.).
|
|
286
|
+
- **`workflow:rules:`**: if the project gates pipeline creation, the new job inherits that gating. Do not add `workflow:` here unless the user asks.
|
|
287
|
+
|
|
288
|
+
#### 2.3 Check the CI/CD Catalog
|
|
289
|
+
|
|
290
|
+
If the new job is a standard task (SAST, container scanning, dependency scanning, secret detection, Terraform / OpenTofu, markdown lint), consult `references/catalog.md` and prefer a GitLab-maintained component. The Catalog component handles details a custom job would have to re-implement (reporter formats, artifact paths, allow-failure, etc.).
|
|
291
|
+
|
|
292
|
+
If a component fits, add it via `include: component:` pinned to a release tag obtained via `scripts/catalog-search.sh`. If the project already has an `include:` block, add to it; do not create a duplicate include.
|
|
293
|
+
|
|
294
|
+
#### 2.4 Propose the change
|
|
295
|
+
|
|
296
|
+
Output the change as a diff-style addition, not a full file rewrite:
|
|
297
|
+
|
|
298
|
+
1. **Summary**: one line stating what the new job does and where it goes (stage, base, rules).
|
|
299
|
+
2. **The added YAML**: the new job (and any required `include:` entry or `stages:` extension) as a fenced code block with `+` markers on every added line, mimicking unified diff output. The user can read added lines at a glance.
|
|
300
|
+
3. **Wait for confirmation.** Do not write to disk before the user agrees.
|
|
301
|
+
|
|
302
|
+
Example proposal format:
|
|
303
|
+
|
|
304
|
+
```diff
|
|
305
|
+
stages:
|
|
306
|
+
- build
|
|
307
|
+
- test
|
|
308
|
+
- deploy
|
|
309
|
+
+ - security
|
|
310
|
+
|
|
311
|
+
+ include:
|
|
312
|
+
+ - component: gitlab.com/components/secret-detection/secret-detection@<version>
|
|
313
|
+
|
|
314
|
+
+ secret-detection:
|
|
315
|
+
+ stage: security
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
#### 2.5 Apply, show, and verify
|
|
319
|
+
|
|
320
|
+
When the user approves, write the change to `.gitlab-ci.yml` (or the appropriate included file, per step 2.1). Then run `scripts/verify.sh show -f <file>` and **paste the output verbatim** into your response. The user sees the new job slot into the DAG without re-reading the whole YAML. This paste is mandatory even when the output contains warnings (e.g., `glci: skipping component include ... no GitLab token configured`). A warning is part of the verified state; suppressing it hides what the user needs to see. Paste the full output, then explain what each warning means in one line. The paste must be a fenced code block in your response message text; the Bash tool output alone gets auto-collapsed by the editor and the graph stops being visible.
|
|
321
|
+
|
|
322
|
+
If verification fails: surface the error, propose a fix to the addition only, re-verify. Do not modify unrelated parts of the file.
|
|
323
|
+
|
|
324
|
+
After show passes, offer to confirm just the changed piece end-to-end. This is the smoke run for Workflow 2: a single-job execution that catches image/dependency/script issues without paying for a full pipeline replay.
|
|
325
|
+
|
|
326
|
+
> "I can run only the new job locally to confirm it works: `scripts/verify.sh run <new-job> --reuse-artifacts --confirm-docker`. Reuses cached upstream artifacts; usually 1 to 3 minutes depending on image size and what the new job does."
|
|
327
|
+
|
|
328
|
+
If Docker is reachable and the user agrees, invoke **via the Monitor tool** (Claude Code) so the user sees streaming output; in editors without Monitor, use `2>&1 | tee /tmp/run.log` and tail the log. Never `| tail -N`, it buffers. If a failure surfaces, apply the classification rules in `references/debugging.md` to label it `[local-timeout]`, `[oom]`, or `[real]` before recommending next steps.
|
|
329
|
+
|
|
330
|
+
If Docker is not reachable, tell the user what they'd get from the run (and surface the install pointer from verify.sh's output), but do not block; the show output above is honest verification at the structural level.
|
|
331
|
+
|
|
332
|
+
#### 2.6 Ask for commit approval
|
|
333
|
+
|
|
334
|
+
Show `git diff` of the change and ask before staging. Match the project's existing commit style (look at recent commit subjects via `git log --oneline -10`). Do not push without explicit per-action permission per principle 5.
|
|
335
|
+
|
|
336
|
+
### Workflow 3: Debug a failing pipeline
|
|
337
|
+
|
|
338
|
+
Use this workflow when the user shares failure context: a GitLab pipeline URL or job log, a pasted job log, or a local `glci log` output.
|
|
339
|
+
|
|
340
|
+
**Load `references/debugging.md`** for the full flow (failure-source classification, the failure-shape catalog, fix proposal and verification cycle). The reference is the canonical step-by-step; treat the items below only as the entry condition.
|
|
341
|
+
|
|
342
|
+
Entry condition: a failure context exists. Diagnose, propose the smallest fix, paste a fresh `glci show` of the fixed pipeline, offer `scripts/verify.sh run <failing-job> --reuse-artifacts --confirm-docker` to confirm structurally before pushing.
|
|
343
|
+
|
|
344
|
+
### Workflow 4: Optimize an existing pipeline
|
|
345
|
+
|
|
346
|
+
Use this workflow when the user has a working pipeline and wants it faster, cheaper, or more parallel.
|
|
347
|
+
|
|
348
|
+
**Load `references/optimize.md`** for the full flow (snapshot, identify, propose, verify, measure) and the per-pattern playbook (serial-to-DAG via `needs:`, lockfile-keyed cache, narrow artifacts, `parallel:matrix`, `interruptible:`, image pinning, cache key shape, drop redundant `before_script`).
|
|
349
|
+
|
|
350
|
+
Entry condition: a working pipeline exists and the user wants it faster. Always snapshot `glci show` before and after the change; paste both outputs in the response so the DAG diff is visible at a glance.
|
|
351
|
+
|
|
352
|
+
### Workflow 5: Onboarding to GitLab
|
|
353
|
+
|
|
354
|
+
Triggered from Workflow 1 step 1.8 when no GitLab remote exists, or when the user says they are new to GitLab. Load `references/onboarding.md` for the full walkthrough including the permission-asking checklist and the CI/CD Variables setup.
|
|
355
|
+
|
|
356
|
+
Short version of the flow:
|
|
357
|
+
|
|
358
|
+
5.1 **Confirm prerequisites.** The user has a free gitlab.com account (sign up at `gitlab.com/users/sign_up` if needed). `git` is already installed.
|
|
359
|
+
|
|
360
|
+
5.2 **Create the project.** Ask the user to open `gitlab.com/projects/new` in their browser, click "Create blank project", and leave "Initialize repository with a README" unchecked. When the project exists, ask for the URL.
|
|
361
|
+
|
|
362
|
+
5.3 **Add the GitLab remote.** Ask permission, then run `git remote add gitlab <url>` (SSH or HTTPS per the user's preference).
|
|
363
|
+
|
|
364
|
+
5.4 **First push.** Ask permission, then `git push -u gitlab <branch>`.
|
|
365
|
+
|
|
366
|
+
5.5 **Watch the pipeline.** Point at `https://gitlab.com/<namespace>/<project>/-/pipelines` (or *Build > Pipelines* in the UI).
|
|
367
|
+
|
|
368
|
+
5.6 **Reassure on runners.** "GitLab.com provides free hosted runners. You do not need to install anything."
|
|
369
|
+
|
|
370
|
+
5.7 **CI/CD Variables.** If the YAML references any secret variables, tell the user to configure them in *Settings > CI/CD > Variables* with the masked + protected flags. Load `references/onboarding.md` for the full process; do not handle secrets in chat.
|
|
371
|
+
|
|
372
|
+
For permission-asking specifics across each git operation, see `references/onboarding.md`.
|
|
373
|
+
|
|
374
|
+
## Attempt limits and stop conditions
|
|
375
|
+
|
|
376
|
+
Diagnosis loops with no progress are worse than admitting a local limit. Apply these caps:
|
|
377
|
+
|
|
378
|
+
- **Same error twice**: if a `verify.sh` tier returns the same error after two attempts, stop. Surface the error verbatim and offer the user one of: (a) push and verify on GitLab.com, (b) set an environment variable they own, (c) skip the tier.
|
|
379
|
+
- **Component resolution without `GITLAB_TOKEN`**: do not attempt to resolve a Catalog component include locally without a token. The `skipping component include ... no GitLab token configured` warning means structural verification is complete, not failed. Paste the graph (with the skip warning) and ask to commit. See `references/verification.md` "Components that need a token".
|
|
380
|
+
- **401 or other auth errors**: do not retry with a different credential, do not borrow an unrelated project's context, do not extract tokens from local files. Surface the 401, say what would unblock (a real PAT in `GITLAB_TOKEN`), stop.
|
|
381
|
+
- **Lint-backend swap**: do not silently fall back from glci to glab or vice versa to "try again". `verify.sh` chose one backend; if it failed, surface and stop.
|
|
382
|
+
- **Five-Bash-call rule**: if you've made five Bash calls trying to fix a verification problem without changing the YAML, you are flailing. Stop and ask the user what they want to do.
|
|
383
|
+
|
|
384
|
+
When in doubt, the right behavior is to present the current state honestly and offer two recovery paths, per principle 8 ("Fail gracefully"). The user can redirect.
|
|
385
|
+
|
|
386
|
+
## References
|
|
387
|
+
|
|
388
|
+
Each reference file loads on demand. The trigger condition is named below:
|
|
389
|
+
|
|
390
|
+
- `references/mental-model.md`: load when explaining "what is GitLab CI" to a new user, or when placing a recommendation in context.
|
|
391
|
+
- `references/syntax.md`: load when a keyword needs lookup or you need a pointer to canonical docs.
|
|
392
|
+
- `references/recipes.md`: load when generating a `.gitlab-ci.yml` for any stack (Node, Python, Go, Ruby, Rust, Docker).
|
|
393
|
+
- `references/images.md`: load when picking the `image:` per stack, or when choosing between Alpine and Debian variants.
|
|
394
|
+
- `references/caching.md`: load when configuring `cache:`, picking a cache key, or troubleshooting cache misses.
|
|
395
|
+
- `references/catalog.md`: load when generating a job that fits a standard task (SAST, container scanning, Terraform/OpenTofu, Docker build).
|
|
396
|
+
- `references/verification.md`: load when picking a `scripts/verify.sh` tier, interpreting tier output, or recovering from a missing glci or Docker daemon.
|
|
397
|
+
- `references/debugging.md`: load when the user shares a failing pipeline (GitLab URL, pasted log, or `glci run` log).
|
|
398
|
+
- `references/optimize.md`: load when the user asks to optimize an existing pipeline (Workflow 4).
|
|
399
|
+
- `references/onboarding.md`: load when the user has no GitLab project and needs to create one before pushing.
|
|
400
|
+
|
|
401
|
+
## Style
|
|
402
|
+
|
|
403
|
+
- Imperative, direct, factual.
|
|
404
|
+
- No em dashes. Use commas, periods, or colons.
|
|
405
|
+
- Acknowledge non-GitLab CI choices as legitimate prior context.
|
|
406
|
+
- Avoid GitLab-evangelism. Let the YAML speak.
|
|
407
|
+
- When something cannot translate cleanly, say so plainly.
|
|
408
|
+
|
|
409
|
+
## Self-check rubric
|
|
410
|
+
|
|
411
|
+
Before presenting the final `.gitlab-ci.yml`, verify:
|
|
412
|
+
|
|
413
|
+
- [ ] Detected the user's stack correctly (language, package manager, test runner).
|
|
414
|
+
- [ ] Pipeline has stages `build`, `test`, and `deploy` (deploy may be a stub).
|
|
415
|
+
- [ ] Each job has a one-line comment explaining its purpose.
|
|
416
|
+
- [ ] `default:` is used when most jobs share an `image:` or `before_script:`.
|
|
417
|
+
- [ ] Reuse via hidden jobs + `extends:`, not YAML anchors.
|
|
418
|
+
- [ ] Cache and artifacts are configured per `references/caching.md`.
|
|
419
|
+
- [ ] CI/CD Catalog components are pinned to a release tag (never `~latest`).
|
|
420
|
+
- [ ] No secrets are written into the YAML.
|
|
421
|
+
- [ ] The file passes `scripts/verify.sh auto` and the `glci show` output is pasted in the response.
|
|
422
|
+
- [ ] The user has been told whether they need a GitLab project (workflow 5), and asked for permission before any push.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# `examples/` directory guide
|
|
2
|
+
|
|
3
|
+
Real `.gitlab-ci.yml` files generated by the [gitlab-ci-skill](../) against well-known OSS projects. Use them as a reference for what idiomatic GitLab CI/CD pipelines look like across stacks, or as a sanity check when authoring your own.
|
|
4
|
+
|
|
5
|
+
## How to read these examples
|
|
6
|
+
|
|
7
|
+
Each subdirectory is one stack. Each subdirectory contains:
|
|
8
|
+
|
|
9
|
+
- One or more `.gitlab-ci*.yml` files: the skill's actual generated output, captured from a fresh-session run.
|
|
10
|
+
- A `README.md`: provenance (which upstream project the YAML was generated from), the patterns the YAML demonstrates, and reproduction commands.
|
|
11
|
+
|
|
12
|
+
No upstream source code is redistributed by this repo. The YAML stands alone.
|
|
13
|
+
|
|
14
|
+
| Directory | Stack | Source |
|
|
15
|
+
|---|---|---|
|
|
16
|
+
| [`node-mocha/`](node-mocha/) | Node + Mocha + nyc, no committed lockfile | [`expressjs/cors`](https://github.com/expressjs/cors) |
|
|
17
|
+
| [`python-uv-tox/`](python-uv-tox/) | Python + uv + tox + parallel matrix; full W1/W2/W3/W4 narrative | [`pallets/markupsafe`](https://github.com/pallets/markupsafe) |
|
|
18
|
+
| [`python-click/`](python-click/) | Python + uv + tox-driven `.tox` extends + schedule-gated matrix | [`pallets/click`](https://github.com/pallets/click) |
|
|
19
|
+
|
|
20
|
+
More stacks (Go, Ruby, Docker, Rust) are planned per the engineering tracking issue. See "How to contribute" below.
|
|
21
|
+
|
|
22
|
+
## How to use them
|
|
23
|
+
|
|
24
|
+
Three ways:
|
|
25
|
+
|
|
26
|
+
1. **Read the YAML.** Each file is a working `.gitlab-ci.yml` you can drop into a project of the matching stack and adapt. The patterns the skill applies (default block, hidden-job + extends, lockfile cache, schedule-gated matrix, Catalog include) are idiomatic GitLab shapes; copying them by hand is fine.
|
|
27
|
+
|
|
28
|
+
2. **Reproduce it.** Each stack's `README.md` carries the reproduction commands: clone the named upstream into `/tmp/`, run the skill in a fresh AI editor session, compare the agent's output to the committed YAML. Differences are expected for component versions and comments; the shape should match.
|
|
29
|
+
|
|
30
|
+
3. **Validate locally.** From the repo root:
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
bash scripts/verify.sh -f examples/<stack>/.gitlab-ci.yml lint
|
|
34
|
+
bash scripts/verify.sh -f examples/<stack>/.gitlab-ci.yml show
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
`lint` and `show` work against the committed YAML alone, without cloning the upstream. The `lint-examples` CI gate runs the same lint check on every push.
|
|
38
|
+
|
|
39
|
+
## How to contribute a new example
|
|
40
|
+
|
|
41
|
+
Four steps:
|
|
42
|
+
|
|
43
|
+
1. **Pick a real OSS project** in a stack the skill should demonstrate. Smaller is better (faster lint, less ambiguity). The project should have no existing `.gitlab-ci.yml`, or you should reset to a no-CI state by cloning to `/tmp/` and removing the CI directories:
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
git clone <github-url> /tmp/<name>
|
|
47
|
+
cd /tmp/<name>
|
|
48
|
+
rm -rf .gitlab-ci.yml .gitlab .github/workflows .git
|
|
49
|
+
git init -q && git add . && git commit -q -m init
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
2. **Run the skill from a fresh AI editor session.** Prompt:
|
|
53
|
+
|
|
54
|
+
> Set up GitLab CI for this repo.
|
|
55
|
+
|
|
56
|
+
Capture the agent's output to `examples/<stack>/.gitlab-ci.yml`. Do not hand-tune the YAML; the value of the example is that it's actual skill output.
|
|
57
|
+
|
|
58
|
+
3. **Write `examples/<stack>/README.md`** following the pattern of the existing READMEs in this directory:
|
|
59
|
+
- The source link to the upstream project.
|
|
60
|
+
- 3 to 5 bullets naming the idiomatic patterns the YAML demonstrates.
|
|
61
|
+
- Reproduction commands.
|
|
62
|
+
|
|
63
|
+
4. **Push the MR.** CI runs three gates:
|
|
64
|
+
- `validate-skill`: the agentskills.io spec.
|
|
65
|
+
- `lint-examples`: `glci lint` against every `.gitlab-ci*.yml` under `examples/`.
|
|
66
|
+
- `verify-examples-shape`: only `.gitlab-ci*.yml` and `README.md` allowed under each example directory; no nested subdirs.
|
|
67
|
+
|
|
68
|
+
All three must pass.
|
|
69
|
+
|
|
70
|
+
If your example genuinely needs files beyond the YAML and the README (it almost certainly doesn't), open an issue first. We're deliberate about shipping the smallest disk footprint possible.
|
package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/.gitlab-ci.yml
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# GitLab CI pipeline for the cors Node.js library.
|
|
2
|
+
# Stages: build (npm pack), test (lint + mocha/nyc), deploy (manual stub).
|
|
3
|
+
|
|
4
|
+
default:
|
|
5
|
+
image: node:lts-alpine
|
|
6
|
+
interruptible: true
|
|
7
|
+
# No committed lockfile in this project, so cache keys on package.json and
|
|
8
|
+
# we use `npm install` (npm ci requires a tracked package-lock.json).
|
|
9
|
+
cache:
|
|
10
|
+
key:
|
|
11
|
+
files: [package.json]
|
|
12
|
+
paths: [.npm/]
|
|
13
|
+
before_script:
|
|
14
|
+
- npm install --cache .npm --prefer-offline --no-audit --no-fund
|
|
15
|
+
|
|
16
|
+
stages:
|
|
17
|
+
- build
|
|
18
|
+
- test
|
|
19
|
+
- deploy
|
|
20
|
+
|
|
21
|
+
# Package the library as a publishable tarball.
|
|
22
|
+
build:
|
|
23
|
+
stage: build
|
|
24
|
+
script:
|
|
25
|
+
- npm pack
|
|
26
|
+
artifacts:
|
|
27
|
+
paths: ["*.tgz"]
|
|
28
|
+
expire_in: 1 week
|
|
29
|
+
|
|
30
|
+
# Static analysis with eslint.
|
|
31
|
+
lint:
|
|
32
|
+
stage: test
|
|
33
|
+
script: [npm run lint]
|
|
34
|
+
needs: []
|
|
35
|
+
|
|
36
|
+
# Mocha test suite with nyc coverage.
|
|
37
|
+
unit-test:
|
|
38
|
+
stage: test
|
|
39
|
+
script: [npm run test-ci]
|
|
40
|
+
needs: []
|
|
41
|
+
coverage: '/All files\s*\|\s*([\d.]+)/'
|
|
42
|
+
artifacts:
|
|
43
|
+
paths: [coverage/]
|
|
44
|
+
expire_in: 1 week
|
|
45
|
+
|
|
46
|
+
# Stub: replace with `npm publish` (gated on $CI_COMMIT_TAG) once NPM_TOKEN is set
|
|
47
|
+
# as a masked, protected CI/CD variable. See docs.gitlab.com/ci/variables/.
|
|
48
|
+
deploy:
|
|
49
|
+
stage: deploy
|
|
50
|
+
script:
|
|
51
|
+
- echo "Configure deploy. For npm publish, gate on \$CI_COMMIT_TAG and set NPM_TOKEN."
|
|
52
|
+
rules:
|
|
53
|
+
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
54
|
+
when: manual
|
|
55
|
+
allow_failure: true
|
package/assets/copilot/packs/integrations/skills/gitlab-ci-skill/examples/node-mocha/README.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Example: Node + Mocha (no committed lockfile)
|
|
2
|
+
|
|
3
|
+
**Source**: generated by the skill from a fresh clone of [`expressjs/cors`](https://github.com/expressjs/cors) on 2026-05-22, with no pre-existing `.gitlab-ci.yml`.
|
|
4
|
+
|
|
5
|
+
## Patterns this example demonstrates
|
|
6
|
+
|
|
7
|
+
- **No-lockfile cache variant**: `package-lock.json` is gitignored upstream, so the cache keys on `package.json` and `before_script` uses `npm install` (not `npm ci`, which requires a tracked lockfile).
|
|
8
|
+
- **`needs: []` on test-stage jobs**: `lint` and `unit-test` start as soon as the pipeline begins, in parallel with `build`. The DAG, not stage order, drives execution.
|
|
9
|
+
- **Manual `deploy` stub gated to `$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH`**: the publish step is documented as needing `NPM_TOKEN` set as a masked + protected CI/CD variable.
|
|
10
|
+
- **`coverage:` regex** on the unit-test job pulls the coverage percentage out of nyc's text reporter for the GitLab UI badge.
|
|
11
|
+
|
|
12
|
+
## YAML files
|
|
13
|
+
|
|
14
|
+
- `.gitlab-ci.yml`: Workflow 1 (Create initial pipeline) capture.
|
|
15
|
+
|
|
16
|
+
## Reproducing
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
git clone https://github.com/expressjs/cors /tmp/cors
|
|
20
|
+
cd /tmp/cors
|
|
21
|
+
rm -rf .gitlab-ci.yml .gitlab .github/workflows
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Then in a fresh Claude Code (or other AI editor) session, prompt:
|
|
25
|
+
|
|
26
|
+
> Set up GitLab CI for this repo.
|
|
27
|
+
|
|
28
|
+
Compare the agent's output to the YAML in this directory. They should match in shape; small differences are expected (component versions, comments).
|