@vodailoc/kilo-kit-mcp 1.1.0 → 1.1.1
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/.mcp/kilo-kit.codex-windows.toml +5 -0
- package/LICENSE +190 -190
- package/QUICKSTART.md +265 -255
- package/README.md +290 -266
- package/mcp/README.md +29 -5
- package/mcp/dist/server.js +1 -1
- package/mcp/package.json +1 -2
- package/package.json +3 -2
- package/skills/README.md +647 -647
- package/skills/SKILLS_INDEX.md +139 -139
- package/skills/ai-media/ai-multimodal/.env.example +97 -97
- package/skills/ai-media/ai-multimodal/SKILL.md +357 -357
- package/skills/ai-media/ai-multimodal/references/audio-processing.md +373 -373
- package/skills/ai-media/ai-multimodal/references/image-generation.md +558 -558
- package/skills/ai-media/ai-multimodal/references/video-analysis.md +502 -502
- package/skills/ai-media/ai-multimodal/references/vision-understanding.md +483 -483
- package/skills/ai-media/ai-multimodal/scripts/document_converter.py +395 -395
- package/skills/ai-media/ai-multimodal/scripts/gemini_batch_process.py +480 -480
- package/skills/ai-media/ai-multimodal/scripts/media_optimizer.py +506 -506
- package/skills/ai-media/ai-multimodal/scripts/requirements.txt +26 -26
- package/skills/ai-media/ai-multimodal/scripts/tests/requirements.txt +20 -20
- package/skills/ai-media/ai-multimodal/scripts/tests/test_document_converter.py +299 -299
- package/skills/ai-media/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -362
- package/skills/ai-media/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -373
- package/skills/ai-media/media-processing/SKILL.md +358 -358
- package/skills/ai-media/media-processing/references/ffmpeg-encoding.md +358 -358
- package/skills/ai-media/media-processing/references/ffmpeg-filters.md +503 -503
- package/skills/ai-media/media-processing/references/ffmpeg-streaming.md +403 -403
- package/skills/ai-media/media-processing/references/format-compatibility.md +375 -375
- package/skills/ai-media/media-processing/references/imagemagick-batch.md +612 -612
- package/skills/ai-media/media-processing/references/imagemagick-editing.md +623 -623
- package/skills/ai-media/media-processing/scripts/batch_resize.py +342 -342
- package/skills/ai-media/media-processing/scripts/media_convert.py +311 -311
- package/skills/ai-media/media-processing/scripts/requirements.txt +24 -24
- package/skills/ai-media/media-processing/scripts/tests/requirements.txt +2 -2
- package/skills/ai-media/media-processing/scripts/tests/test_batch_resize.py +372 -372
- package/skills/ai-media/media-processing/scripts/tests/test_media_convert.py +259 -259
- package/skills/ai-media/media-processing/scripts/tests/test_video_optimize.py +397 -397
- package/skills/ai-media/media-processing/scripts/video_optimize.py +414 -414
- package/skills/ai-media/screenshot/LICENSE.txt +201 -201
- package/skills/ai-media/screenshot/SKILL.md +267 -267
- package/skills/ai-media/screenshot/agents/openai.yaml +6 -6
- package/skills/ai-media/screenshot/assets/screenshot-small.svg +5 -5
- package/skills/ai-media/screenshot/scripts/ensure_macos_permissions.sh +54 -54
- package/skills/ai-media/screenshot/scripts/macos_display_info.swift +22 -22
- package/skills/ai-media/screenshot/scripts/macos_permissions.swift +40 -40
- package/skills/ai-media/screenshot/scripts/macos_window_info.swift +126 -126
- package/skills/ai-media/screenshot/scripts/take_screenshot.ps1 +163 -163
- package/skills/ai-media/screenshot/scripts/take_screenshot.py +585 -585
- package/skills/ai-media/sora/LICENSE.txt +201 -201
- package/skills/ai-media/sora/SKILL.md +153 -153
- package/skills/ai-media/sora/agents/openai.yaml +6 -6
- package/skills/ai-media/sora/assets/sora-small.svg +4 -4
- package/skills/ai-media/sora/references/cinematic-shots.md +53 -53
- package/skills/ai-media/sora/references/cli.md +248 -248
- package/skills/ai-media/sora/references/codex-network.md +28 -28
- package/skills/ai-media/sora/references/prompting.md +137 -137
- package/skills/ai-media/sora/references/sample-prompts.md +95 -95
- package/skills/ai-media/sora/references/social-ads.md +42 -42
- package/skills/ai-media/sora/references/troubleshooting.md +58 -58
- package/skills/ai-media/sora/references/video-api.md +45 -45
- package/skills/ai-media/sora/scripts/sora.py +970 -970
- package/skills/design/aesthetic/SKILL.md +121 -121
- package/skills/design/aesthetic/assets/design-guideline-template.md +163 -163
- package/skills/design/aesthetic/assets/design-story-template.md +135 -135
- package/skills/design/aesthetic/references/design-principles.md +62 -62
- package/skills/design/aesthetic/references/design-resources.md +75 -75
- package/skills/design/aesthetic/references/micro-interactions.md +53 -53
- package/skills/design/aesthetic/references/storytelling-design.md +50 -50
- package/skills/design/figma/LICENSE.txt +202 -202
- package/skills/design/figma/SKILL.md +42 -42
- package/skills/design/figma/agents/openai.yaml +14 -14
- package/skills/design/figma/assets/figma-small.svg +3 -3
- package/skills/design/figma/assets/icon.svg +28 -28
- package/skills/design/figma/references/figma-mcp-config.md +35 -35
- package/skills/design/figma/references/figma-tools-and-prompts.md +34 -34
- package/skills/design/figma-implement-design/LICENSE.txt +202 -202
- package/skills/design/figma-implement-design/SKILL.md +264 -264
- package/skills/design/figma-implement-design/agents/openai.yaml +14 -14
- package/skills/design/figma-implement-design/assets/figma-small.svg +3 -3
- package/skills/design/figma-implement-design/assets/icon.svg +28 -28
- package/skills/design/frontend-design/SKILL.md +41 -41
- package/skills/design/frontend-design/references/animejs.md +395 -395
- package/skills/design/ui-styling/LICENSE.txt +201 -201
- package/skills/design/ui-styling/SKILL.md +321 -321
- package/skills/design/ui-styling/canvas-fonts/ArsenalSC-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/BigShoulders-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Boldonse-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/BricolageGrotesque-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/CrimsonPro-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/DMMono-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/EricaOne-OFL.txt +94 -94
- package/skills/design/ui-styling/canvas-fonts/GeistMono-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Gloock-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/IBMPlexMono-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/InstrumentSans-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Italiana-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/JetBrainsMono-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Jura-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/LibreBaskerville-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Lora-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/NationalPark-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Outfit-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/PixelifySans-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/PoiretOne-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/RedHatMono-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Silkscreen-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/SmoochSans-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/Tektur-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/WorkSans-OFL.txt +93 -93
- package/skills/design/ui-styling/canvas-fonts/YoungSerif-OFL.txt +93 -93
- package/skills/design/ui-styling/references/canvas-design-system.md +320 -320
- package/skills/design/ui-styling/references/shadcn-accessibility.md +471 -471
- package/skills/design/ui-styling/references/shadcn-components.md +424 -424
- package/skills/design/ui-styling/references/shadcn-theming.md +373 -373
- package/skills/design/ui-styling/references/tailwind-customization.md +483 -483
- package/skills/design/ui-styling/references/tailwind-responsive.md +382 -382
- package/skills/design/ui-styling/references/tailwind-utilities.md +455 -455
- package/skills/design/ui-styling/scripts/requirements.txt +17 -17
- package/skills/design/ui-styling/scripts/shadcn_add.py +292 -292
- package/skills/design/ui-styling/scripts/tailwind_config_gen.py +456 -456
- package/skills/design/ui-styling/scripts/tests/requirements.txt +3 -3
- package/skills/design/ui-styling/scripts/tests/test_shadcn_add.py +266 -266
- package/skills/design/ui-styling/scripts/tests/test_tailwind_config_gen.py +336 -336
- package/skills/engineering/aspnet-core/LICENSE.txt +201 -201
- package/skills/engineering/aspnet-core/SKILL.md +61 -61
- package/skills/engineering/aspnet-core/agents/openai.yaml +5 -5
- package/skills/engineering/aspnet-core/references/_sections.md +40 -40
- package/skills/engineering/aspnet-core/references/apis-minimal-and-controllers.md +81 -81
- package/skills/engineering/aspnet-core/references/data-state-and-services.md +69 -69
- package/skills/engineering/aspnet-core/references/program-and-pipeline.md +103 -103
- package/skills/engineering/aspnet-core/references/realtime-grpc-and-background-work.md +58 -58
- package/skills/engineering/aspnet-core/references/security-and-identity.md +75 -75
- package/skills/engineering/aspnet-core/references/source-map.md +43 -43
- package/skills/engineering/aspnet-core/references/stack-selection.md +63 -63
- package/skills/engineering/aspnet-core/references/testing-performance-and-operations.md +92 -92
- package/skills/engineering/aspnet-core/references/ui-blazor.md +53 -53
- package/skills/engineering/aspnet-core/references/ui-mvc.md +56 -56
- package/skills/engineering/aspnet-core/references/ui-razor-pages.md +55 -55
- package/skills/engineering/aspnet-core/references/versioning-and-upgrades.md +51 -51
- package/skills/engineering/backend-development/SKILL.md +95 -95
- package/skills/engineering/backend-development/references/backend-api-design.md +495 -495
- package/skills/engineering/backend-development/references/backend-architecture.md +454 -454
- package/skills/engineering/backend-development/references/backend-authentication.md +338 -338
- package/skills/engineering/backend-development/references/backend-code-quality.md +659 -659
- package/skills/engineering/backend-development/references/backend-debugging.md +904 -904
- package/skills/engineering/backend-development/references/backend-devops.md +494 -494
- package/skills/engineering/backend-development/references/backend-mindset.md +387 -387
- package/skills/engineering/backend-development/references/backend-performance.md +397 -397
- package/skills/engineering/backend-development/references/backend-security.md +290 -290
- package/skills/engineering/backend-development/references/backend-technologies.md +256 -256
- package/skills/engineering/backend-development/references/backend-testing.md +429 -429
- package/skills/engineering/better-auth/SKILL.md +204 -204
- package/skills/engineering/better-auth/references/advanced-features.md +553 -553
- package/skills/engineering/better-auth/references/database-integration.md +577 -577
- package/skills/engineering/better-auth/references/email-password-auth.md +416 -416
- package/skills/engineering/better-auth/references/oauth-providers.md +430 -430
- package/skills/engineering/better-auth/scripts/better_auth_init.py +521 -521
- package/skills/engineering/better-auth/scripts/requirements.txt +15 -15
- package/skills/engineering/better-auth/scripts/tests/test_better_auth_init.py +421 -421
- package/skills/engineering/code-review/SKILL.md +140 -140
- package/skills/engineering/code-review/references/code-review-reception.md +208 -208
- package/skills/engineering/code-review/references/requesting-code-review.md +104 -104
- package/skills/engineering/code-review/references/verification-before-completion.md +138 -138
- package/skills/engineering/context-engineering/SKILL.md +86 -86
- package/skills/engineering/context-engineering/references/context-compression.md +84 -84
- package/skills/engineering/context-engineering/references/context-degradation.md +93 -93
- package/skills/engineering/context-engineering/references/context-fundamentals.md +75 -75
- package/skills/engineering/context-engineering/references/context-optimization.md +82 -82
- package/skills/engineering/context-engineering/references/evaluation.md +89 -89
- package/skills/engineering/context-engineering/references/memory-systems.md +88 -88
- package/skills/engineering/context-engineering/references/multi-agent-patterns.md +90 -90
- package/skills/engineering/context-engineering/references/project-development.md +97 -97
- package/skills/engineering/context-engineering/references/tool-design.md +86 -86
- package/skills/engineering/context-engineering/scripts/compression_evaluator.py +329 -329
- package/skills/engineering/context-engineering/scripts/context_analyzer.py +294 -294
- package/skills/engineering/databases/SKILL.md +232 -232
- package/skills/engineering/databases/references/mongodb-aggregation.md +447 -447
- package/skills/engineering/databases/references/mongodb-atlas.md +465 -465
- package/skills/engineering/databases/references/mongodb-crud.md +408 -408
- package/skills/engineering/databases/references/mongodb-indexing.md +442 -442
- package/skills/engineering/databases/references/postgresql-administration.md +594 -594
- package/skills/engineering/databases/references/postgresql-performance.md +527 -527
- package/skills/engineering/databases/references/postgresql-psql-cli.md +467 -467
- package/skills/engineering/databases/references/postgresql-queries.md +475 -475
- package/skills/engineering/databases/scripts/db_backup.py +502 -502
- package/skills/engineering/databases/scripts/db_migrate.py +414 -414
- package/skills/engineering/databases/scripts/db_performance_check.py +444 -444
- package/skills/engineering/databases/scripts/requirements.txt +20 -20
- package/skills/engineering/databases/scripts/tests/requirements.txt +4 -4
- package/skills/engineering/databases/scripts/tests/test_db_backup.py +340 -340
- package/skills/engineering/databases/scripts/tests/test_db_migrate.py +277 -277
- package/skills/engineering/databases/scripts/tests/test_db_performance_check.py +370 -370
- package/skills/engineering/diagnose/SKILL.md +117 -117
- package/skills/engineering/diagnose/scripts/hitl-loop.template.sh +41 -41
- package/skills/engineering/docs-seeker/SKILL.md +207 -207
- package/skills/engineering/docs-seeker/WORKFLOWS.md +505 -505
- package/skills/engineering/docs-seeker/references/best-practices.md +632 -632
- package/skills/engineering/docs-seeker/references/documentation-sources.md +461 -461
- package/skills/engineering/docs-seeker/references/error-handling.md +621 -621
- package/skills/engineering/docs-seeker/references/limitations.md +821 -821
- package/skills/engineering/docs-seeker/references/performance.md +574 -574
- package/skills/engineering/docs-seeker/references/tool-selection.md +262 -262
- package/skills/engineering/frontend-development/SKILL.md +398 -398
- package/skills/engineering/frontend-development/resources/common-patterns.md +330 -330
- package/skills/engineering/frontend-development/resources/complete-examples.md +871 -871
- package/skills/engineering/frontend-development/resources/component-patterns.md +501 -501
- package/skills/engineering/frontend-development/resources/data-fetching.md +766 -766
- package/skills/engineering/frontend-development/resources/file-organization.md +501 -501
- package/skills/engineering/frontend-development/resources/loading-and-error-states.md +500 -500
- package/skills/engineering/frontend-development/resources/performance.md +405 -405
- package/skills/engineering/frontend-development/resources/routing-guide.md +363 -363
- package/skills/engineering/frontend-development/resources/styling-guide.md +427 -427
- package/skills/engineering/frontend-development/resources/typescript-standards.md +417 -417
- package/skills/engineering/improve-codebase-architecture/DEEPENING.md +37 -37
- package/skills/engineering/improve-codebase-architecture/INTERFACE-DESIGN.md +44 -44
- package/skills/engineering/improve-codebase-architecture/LANGUAGE.md +53 -53
- package/skills/engineering/improve-codebase-architecture/SKILL.md +71 -71
- package/skills/engineering/openai-docs/LICENSE.txt +201 -201
- package/skills/engineering/openai-docs/SKILL.md +69 -69
- package/skills/engineering/openai-docs/agents/openai.yaml +14 -14
- package/skills/engineering/openai-docs/assets/openai-small.svg +3 -3
- package/skills/engineering/openai-docs/references/gpt-5p4-prompting-guide.md +433 -433
- package/skills/engineering/openai-docs/references/latest-model.md +35 -35
- package/skills/engineering/openai-docs/references/upgrading-to-gpt-5p4.md +164 -164
- package/skills/engineering/playwright/LICENSE.txt +201 -201
- package/skills/engineering/playwright/NOTICE.txt +14 -14
- package/skills/engineering/playwright/SKILL.md +147 -147
- package/skills/engineering/playwright/agents/openai.yaml +6 -6
- package/skills/engineering/playwright/assets/playwright-small.svg +3 -3
- package/skills/engineering/playwright/references/cli.md +116 -116
- package/skills/engineering/playwright/references/workflows.md +95 -95
- package/skills/engineering/playwright/scripts/playwright_cli.sh +25 -25
- package/skills/engineering/playwright-interactive/LICENSE.txt +201 -201
- package/skills/engineering/playwright-interactive/NOTICE.txt +13 -13
- package/skills/engineering/playwright-interactive/SKILL.md +689 -689
- package/skills/engineering/playwright-interactive/agents/openai.yaml +6 -6
- package/skills/engineering/playwright-interactive/assets/playwright-small.svg +3 -3
- package/skills/engineering/render-deploy/LICENSE.txt +201 -201
- package/skills/engineering/render-deploy/SKILL.md +479 -479
- package/skills/engineering/render-deploy/agents/openai.yaml +14 -14
- package/skills/engineering/render-deploy/assets/docker.yaml +62 -62
- package/skills/engineering/render-deploy/assets/go-api.yaml +35 -35
- package/skills/engineering/render-deploy/assets/nextjs-postgres.yaml +35 -35
- package/skills/engineering/render-deploy/assets/node-express.yaml +25 -25
- package/skills/engineering/render-deploy/assets/python-django.yaml +89 -89
- package/skills/engineering/render-deploy/assets/render-small.svg +3 -3
- package/skills/engineering/render-deploy/assets/static-site.yaml +54 -54
- package/skills/engineering/render-deploy/references/blueprint-spec.md +718 -718
- package/skills/engineering/render-deploy/references/codebase-analysis.md +49 -49
- package/skills/engineering/render-deploy/references/configuration-guide.md +603 -603
- package/skills/engineering/render-deploy/references/deployment-details.md +224 -224
- package/skills/engineering/render-deploy/references/direct-creation.md +113 -113
- package/skills/engineering/render-deploy/references/error-patterns.md +13 -13
- package/skills/engineering/render-deploy/references/post-deploy-checks.md +36 -36
- package/skills/engineering/render-deploy/references/runtimes.md +473 -473
- package/skills/engineering/render-deploy/references/service-types.md +450 -450
- package/skills/engineering/render-deploy/references/troubleshooting-basics.md +36 -36
- package/skills/engineering/repomix/SKILL.md +215 -215
- package/skills/engineering/repomix/references/configuration.md +211 -211
- package/skills/engineering/repomix/references/usage-patterns.md +232 -232
- package/skills/engineering/repomix/scripts/README.md +179 -179
- package/skills/engineering/repomix/scripts/repomix_batch.py +455 -455
- package/skills/engineering/repomix/scripts/repos.example.json +15 -15
- package/skills/engineering/repomix/scripts/requirements.txt +15 -15
- package/skills/engineering/repomix/scripts/tests/test_repomix_batch.py +531 -531
- package/skills/engineering/setup-matt-pocock-skills/SKILL.md +121 -121
- package/skills/engineering/setup-matt-pocock-skills/domain.md +51 -51
- package/skills/engineering/setup-matt-pocock-skills/issue-tracker-github.md +22 -22
- package/skills/engineering/setup-matt-pocock-skills/issue-tracker-gitlab.md +23 -23
- package/skills/engineering/setup-matt-pocock-skills/issue-tracker-local.md +19 -19
- package/skills/engineering/setup-matt-pocock-skills/triage-labels.md +15 -15
- package/skills/engineering/shopify/README.md +66 -66
- package/skills/engineering/shopify/SKILL.md +319 -319
- package/skills/engineering/shopify/references/app-development.md +470 -470
- package/skills/engineering/shopify/references/extensions.md +493 -493
- package/skills/engineering/shopify/references/themes.md +498 -498
- package/skills/engineering/shopify/scripts/requirements.txt +19 -19
- package/skills/engineering/shopify/scripts/shopify_init.py +423 -423
- package/skills/engineering/shopify/scripts/tests/test_shopify_init.py +385 -385
- package/skills/engineering/tdd/SKILL.md +109 -109
- package/skills/engineering/tdd/deep-modules.md +33 -33
- package/skills/engineering/tdd/interface-design.md +31 -31
- package/skills/engineering/tdd/mocking.md +59 -59
- package/skills/engineering/tdd/refactoring.md +10 -10
- package/skills/engineering/tdd/tests.md +61 -61
- package/skills/engineering/to-issues/SKILL.md +81 -81
- package/skills/engineering/to-prd/SKILL.md +74 -74
- package/skills/engineering/triage/AGENT-BRIEF.md +168 -168
- package/skills/engineering/triage/OUT-OF-SCOPE.md +101 -101
- package/skills/engineering/triage/SKILL.md +103 -103
- package/skills/engineering/web-frameworks/SKILL.md +324 -324
- package/skills/engineering/web-frameworks/references/nextjs-app-router.md +465 -465
- package/skills/engineering/web-frameworks/references/nextjs-data-fetching.md +459 -459
- package/skills/engineering/web-frameworks/references/nextjs-optimization.md +511 -511
- package/skills/engineering/web-frameworks/references/nextjs-server-components.md +495 -495
- package/skills/engineering/web-frameworks/references/remix-icon-integration.md +603 -603
- package/skills/engineering/web-frameworks/references/turborepo-caching.md +551 -551
- package/skills/engineering/web-frameworks/references/turborepo-pipelines.md +517 -517
- package/skills/engineering/web-frameworks/references/turborepo-setup.md +542 -542
- package/skills/engineering/web-frameworks/scripts/nextjs_init.py +547 -547
- package/skills/engineering/web-frameworks/scripts/requirements.txt +16 -16
- package/skills/engineering/web-frameworks/scripts/tests/requirements.txt +3 -3
- package/skills/engineering/web-frameworks/scripts/tests/test_nextjs_init.py +319 -319
- package/skills/engineering/web-frameworks/scripts/tests/test_turborepo_migrate.py +374 -374
- package/skills/engineering/web-frameworks/scripts/turborepo_migrate.py +394 -394
- package/skills/engineering/write-a-skill/SKILL.md +117 -117
- package/skills/kilo-kit/SKILL.md +346 -346
- package/skills/kilo-kit/_template/SKILL.md +185 -185
- package/skills/kilo-kit/debugging/root-cause/SKILL.md +360 -360
- package/skills/kilo-kit/debugging/systematic/SKILL.md +339 -339
- package/skills/kilo-kit/debugging/verification/SKILL.md +424 -424
- package/skills/kilo-kit/development/backend/SKILL.md +540 -540
- package/skills/kilo-kit/development/security/SKILL.md +529 -529
- package/skills/kilo-kit/quality/code-review/SKILL.md +297 -297
- package/skills/kilo-kit/quality/testing/SKILL.md +540 -540
- package/skills/kilo-kit/references/output-formats.md +204 -204
- package/skills/kilo-kit/references/patterns.md +156 -156
- package/skills/kilo-kit/references/performance-benchmarks.md +90 -90
- package/skills/operations/chrome-devtools/SKILL.md +392 -392
- package/skills/operations/chrome-devtools/references/cdp-domains.md +694 -694
- package/skills/operations/chrome-devtools/references/performance-guide.md +940 -940
- package/skills/operations/chrome-devtools/references/puppeteer-reference.md +953 -953
- package/skills/operations/chrome-devtools/scripts/PERSISTENT-BROWSER.md +107 -107
- package/skills/operations/chrome-devtools/scripts/README.md +213 -213
- package/skills/operations/chrome-devtools/scripts/__tests__/selector.test.js +210 -210
- package/skills/operations/chrome-devtools/scripts/click.js +79 -79
- package/skills/operations/chrome-devtools/scripts/close-persistent.js +36 -36
- package/skills/operations/chrome-devtools/scripts/console.js +75 -75
- package/skills/operations/chrome-devtools/scripts/evaluate.js +49 -49
- package/skills/operations/chrome-devtools/scripts/fill.js +72 -72
- package/skills/operations/chrome-devtools/scripts/install-deps.sh +181 -181
- package/skills/operations/chrome-devtools/scripts/install.sh +83 -83
- package/skills/operations/chrome-devtools/scripts/launch-persistent.js +71 -71
- package/skills/operations/chrome-devtools/scripts/lib/browser.js +144 -144
- package/skills/operations/chrome-devtools/scripts/lib/selector.js +178 -178
- package/skills/operations/chrome-devtools/scripts/navigate.js +46 -46
- package/skills/operations/chrome-devtools/scripts/network.js +102 -102
- package/skills/operations/chrome-devtools/scripts/package-lock.json +1206 -1206
- package/skills/operations/chrome-devtools/scripts/package.json +15 -15
- package/skills/operations/chrome-devtools/scripts/performance.js +145 -145
- package/skills/operations/chrome-devtools/scripts/screenshot.js +180 -180
- package/skills/operations/chrome-devtools/scripts/snapshot.js +131 -131
- package/skills/operations/devops/.env.example +76 -76
- package/skills/operations/devops/SKILL.md +285 -285
- package/skills/operations/devops/references/browser-rendering.md +305 -305
- package/skills/operations/devops/references/cloudflare-d1-kv.md +123 -123
- package/skills/operations/devops/references/cloudflare-platform.md +271 -271
- package/skills/operations/devops/references/cloudflare-r2-storage.md +280 -280
- package/skills/operations/devops/references/cloudflare-workers-advanced.md +312 -312
- package/skills/operations/devops/references/cloudflare-workers-apis.md +309 -309
- package/skills/operations/devops/references/cloudflare-workers-basics.md +418 -418
- package/skills/operations/devops/references/docker-basics.md +297 -297
- package/skills/operations/devops/references/docker-compose.md +292 -292
- package/skills/operations/devops/references/gcloud-platform.md +297 -297
- package/skills/operations/devops/references/gcloud-services.md +304 -304
- package/skills/operations/devops/scripts/cloudflare_deploy.py +269 -269
- package/skills/operations/devops/scripts/docker_optimize.py +320 -320
- package/skills/operations/devops/scripts/requirements.txt +20 -20
- package/skills/operations/devops/scripts/tests/requirements.txt +3 -3
- package/skills/operations/devops/scripts/tests/test_cloudflare_deploy.py +285 -285
- package/skills/operations/devops/scripts/tests/test_docker_optimize.py +436 -436
- package/skills/operations/mcp-builder/LICENSE.txt +201 -201
- package/skills/operations/mcp-builder/SKILL.md +328 -328
- package/skills/operations/mcp-builder/reference/evaluation.md +601 -601
- package/skills/operations/mcp-builder/reference/mcp_best_practices.md +915 -915
- package/skills/operations/mcp-builder/reference/node_mcp_server.md +915 -915
- package/skills/operations/mcp-builder/reference/python_mcp_server.md +751 -751
- package/skills/operations/mcp-builder/scripts/connections.py +151 -151
- package/skills/operations/mcp-builder/scripts/evaluation.py +373 -373
- package/skills/operations/mcp-builder/scripts/example_evaluation.xml +22 -22
- package/skills/operations/mcp-builder/scripts/requirements.txt +2 -2
- package/skills/operations/mcp-management/README.md +219 -219
- package/skills/operations/mcp-management/SKILL.md +175 -175
- package/skills/operations/mcp-management/assets/tools.json +3043 -3043
- package/skills/operations/mcp-management/references/configuration.md +114 -114
- package/skills/operations/mcp-management/references/gemini-cli-integration.md +201 -201
- package/skills/operations/mcp-management/references/mcp-protocol.md +116 -116
- package/skills/operations/mcp-management/scripts/.env.example +10 -10
- package/skills/operations/mcp-management/scripts/cli.ts +155 -155
- package/skills/operations/mcp-management/scripts/dist/analyze-tools.js +70 -70
- package/skills/operations/mcp-management/scripts/dist/cli.js +131 -131
- package/skills/operations/mcp-management/scripts/dist/mcp-client.js +115 -115
- package/skills/operations/mcp-management/scripts/mcp-client.ts +163 -163
- package/skills/operations/mcp-management/scripts/package.json +18 -18
- package/skills/operations/mcp-management/scripts/tsconfig.json +15 -15
- package/skills/problem-solving/collision-zone-thinking/SKILL.md +62 -62
- package/skills/problem-solving/defense-in-depth/SKILL.md +130 -130
- package/skills/problem-solving/inversion-exercise/SKILL.md +58 -58
- package/skills/problem-solving/meta-pattern-recognition/SKILL.md +54 -54
- package/skills/problem-solving/root-cause-tracing/SKILL.md +177 -177
- package/skills/problem-solving/root-cause-tracing/find-polluter.sh +63 -63
- package/skills/problem-solving/scale-game/SKILL.md +63 -63
- package/skills/problem-solving/sequential-thinking/README.md +118 -118
- package/skills/problem-solving/sequential-thinking/SKILL.md +93 -93
- package/skills/problem-solving/sequential-thinking/references/advanced.md +122 -122
- package/skills/problem-solving/sequential-thinking/references/examples.md +274 -274
- package/skills/problem-solving/simplification-cascades/SKILL.md +76 -76
- package/skills/problem-solving/when-stuck/SKILL.md +88 -88
- package/skills/productivity/caveman/SKILL.md +49 -49
- package/skills/productivity/grill-me/SKILL.md +10 -10
- package/skills/productivity/grill-with-docs/ADR-FORMAT.md +47 -47
- package/skills/productivity/grill-with-docs/CONTEXT-FORMAT.md +77 -77
- package/skills/productivity/grill-with-docs/SKILL.md +88 -88
- package/skills/productivity/writing-skills/graphviz-conventions.dot +171 -171
- package/skills/productivity/zoom-out/SKILL.md +7 -7
- package/skills/writing-docs/doc/LICENSE.txt +201 -201
- package/skills/writing-docs/doc/SKILL.md +80 -80
- package/skills/writing-docs/doc/agents/openai.yaml +6 -6
- package/skills/writing-docs/doc/assets/doc-small.svg +3 -3
- package/skills/writing-docs/doc/scripts/render_docx.py +296 -296
- package/skills/writing-docs/docx/LICENSE.txt +30 -30
- package/skills/writing-docs/docx/SKILL.md +196 -196
- package/skills/writing-docs/docx/docx-js.md +349 -349
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -1499
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -146
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -1085
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -11
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -3081
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -23
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -185
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -287
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -1676
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -28
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -144
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -174
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -25
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -18
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -59
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -56
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -195
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -582
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -25
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -4439
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -570
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -509
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -12
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -108
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -96
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -3646
- package/skills/writing-docs/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -116
- package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -42
- package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -50
- package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -49
- package/skills/writing-docs/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -33
- package/skills/writing-docs/docx/ooxml/schemas/mce/mc.xsd +75 -75
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -560
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -67
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -14
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -20
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -13
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -4
- package/skills/writing-docs/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -8
- package/skills/writing-docs/docx/ooxml/scripts/pack.py +159 -159
- package/skills/writing-docs/docx/ooxml/scripts/unpack.py +29 -29
- package/skills/writing-docs/docx/ooxml/scripts/validate.py +69 -69
- package/skills/writing-docs/docx/ooxml/scripts/validation/__init__.py +15 -15
- package/skills/writing-docs/docx/ooxml/scripts/validation/base.py +951 -951
- package/skills/writing-docs/docx/ooxml/scripts/validation/docx.py +274 -274
- package/skills/writing-docs/docx/ooxml/scripts/validation/pptx.py +315 -315
- package/skills/writing-docs/docx/ooxml/scripts/validation/redlining.py +279 -279
- package/skills/writing-docs/docx/ooxml.md +609 -609
- package/skills/writing-docs/docx/scripts/__init__.py +1 -1
- package/skills/writing-docs/docx/scripts/document.py +1276 -1276
- package/skills/writing-docs/docx/scripts/templates/comments.xml +2 -2
- package/skills/writing-docs/docx/scripts/templates/commentsExtended.xml +2 -2
- package/skills/writing-docs/docx/scripts/templates/commentsExtensible.xml +2 -2
- package/skills/writing-docs/docx/scripts/templates/commentsIds.xml +2 -2
- package/skills/writing-docs/docx/scripts/templates/people.xml +2 -2
- package/skills/writing-docs/docx/scripts/utilities.py +374 -374
- package/skills/writing-docs/mermaidjs-v11/SKILL.md +115 -115
- package/skills/writing-docs/mermaidjs-v11/references/cli-usage.md +228 -228
- package/skills/writing-docs/mermaidjs-v11/references/configuration.md +232 -232
- package/skills/writing-docs/mermaidjs-v11/references/diagram-types.md +315 -315
- package/skills/writing-docs/mermaidjs-v11/references/examples.md +344 -344
- package/skills/writing-docs/mermaidjs-v11/references/integration.md +310 -310
- package/skills/writing-docs/pdf/LICENSE.txt +30 -30
- package/skills/writing-docs/pdf/SKILL.md +294 -294
- package/skills/writing-docs/pdf/forms.md +205 -205
- package/skills/writing-docs/pdf/reference.md +611 -611
- package/skills/writing-docs/pdf/scripts/check_bounding_boxes.py +70 -70
- package/skills/writing-docs/pdf/scripts/check_bounding_boxes_test.py +226 -226
- package/skills/writing-docs/pdf/scripts/check_fillable_fields.py +12 -12
- package/skills/writing-docs/pdf/scripts/convert_pdf_to_images.py +35 -35
- package/skills/writing-docs/pdf/scripts/create_validation_image.py +41 -41
- package/skills/writing-docs/pdf/scripts/extract_form_field_info.py +152 -152
- package/skills/writing-docs/pdf/scripts/fill_fillable_fields.py +114 -114
- package/skills/writing-docs/pdf/scripts/fill_pdf_form_with_annotations.py +107 -107
- package/skills/writing-docs/pptx/LICENSE.txt +30 -30
- package/skills/writing-docs/pptx/SKILL.md +483 -483
- package/skills/writing-docs/pptx/html2pptx.md +624 -624
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -1499
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -146
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -1085
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -11
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -3081
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -23
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -185
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -287
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -1676
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -28
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -144
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -174
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -25
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -18
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -59
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -56
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -195
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -582
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -25
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -4439
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -570
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -509
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -12
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -108
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -96
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -3646
- package/skills/writing-docs/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -116
- package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -42
- package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -50
- package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -49
- package/skills/writing-docs/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -33
- package/skills/writing-docs/pptx/ooxml/schemas/mce/mc.xsd +75 -75
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -560
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -67
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -14
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -20
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -13
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -4
- package/skills/writing-docs/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -8
- package/skills/writing-docs/pptx/ooxml/scripts/pack.py +159 -159
- package/skills/writing-docs/pptx/ooxml/scripts/unpack.py +29 -29
- package/skills/writing-docs/pptx/ooxml/scripts/validate.py +69 -69
- package/skills/writing-docs/pptx/ooxml/scripts/validation/__init__.py +15 -15
- package/skills/writing-docs/pptx/ooxml/scripts/validation/base.py +951 -951
- package/skills/writing-docs/pptx/ooxml/scripts/validation/docx.py +274 -274
- package/skills/writing-docs/pptx/ooxml/scripts/validation/pptx.py +315 -315
- package/skills/writing-docs/pptx/ooxml/scripts/validation/redlining.py +279 -279
- package/skills/writing-docs/pptx/ooxml.md +426 -426
- package/skills/writing-docs/pptx/scripts/html2pptx.js +978 -978
- package/skills/writing-docs/pptx/scripts/inventory.py +1020 -1020
- package/skills/writing-docs/pptx/scripts/rearrange.py +231 -231
- package/skills/writing-docs/pptx/scripts/replace.py +385 -385
- package/skills/writing-docs/pptx/scripts/thumbnail.py +450 -450
- package/skills/writing-docs/slides/LICENSE.txt +201 -201
- package/skills/writing-docs/slides/SKILL.md +71 -71
- package/skills/writing-docs/slides/agents/openai.yaml +6 -6
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/code.js +104 -104
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/image.js +333 -333
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/index.js +33 -33
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/latex.js +51 -51
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/layout.js +643 -643
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/layout_builders.js +358 -358
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/svg.js +36 -36
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/text.js +789 -789
- package/skills/writing-docs/slides/assets/pptxgenjs_helpers/util.js +24 -24
- package/skills/writing-docs/slides/assets/slides-small.svg +3 -3
- package/skills/writing-docs/slides/references/pptxgenjs-helpers.md +61 -61
- package/skills/writing-docs/slides/scripts/create_montage.py +300 -300
- package/skills/writing-docs/slides/scripts/detect_font.py +873 -873
- package/skills/writing-docs/slides/scripts/ensure_raster_image.py +202 -202
- package/skills/writing-docs/slides/scripts/render_slides.py +273 -273
- package/skills/writing-docs/slides/scripts/slides_test.py +201 -201
- package/skills/writing-docs/template-skill/SKILL.md +26 -26
- package/skills/writing-docs/xlsx/LICENSE.txt +30 -30
- package/skills/writing-docs/xlsx/SKILL.md +288 -288
- package/skills/writing-docs/xlsx/recalc.py +177 -177
- package/src/core/KILO_MASTER.md +448 -448
- package/src/tools/validate-skill.js +421 -421
|
@@ -1,517 +1,517 @@
|
|
|
1
|
-
# Turborepo Task Pipelines
|
|
2
|
-
|
|
3
|
-
Task orchestration, dependencies, and parallel execution strategies.
|
|
4
|
-
|
|
5
|
-
## Pipeline Configuration
|
|
6
|
-
|
|
7
|
-
Define tasks in `turbo.json`:
|
|
8
|
-
|
|
9
|
-
```json
|
|
10
|
-
{
|
|
11
|
-
"$schema": "https://turbo.build/schema.json",
|
|
12
|
-
"pipeline": {
|
|
13
|
-
"build": {
|
|
14
|
-
"dependsOn": ["^build"],
|
|
15
|
-
"outputs": ["dist/**", ".next/**"]
|
|
16
|
-
},
|
|
17
|
-
"test": {
|
|
18
|
-
"dependsOn": ["build"],
|
|
19
|
-
"outputs": ["coverage/**"]
|
|
20
|
-
},
|
|
21
|
-
"lint": {},
|
|
22
|
-
"dev": {
|
|
23
|
-
"cache": false,
|
|
24
|
-
"persistent": true
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Task Dependencies
|
|
31
|
-
|
|
32
|
-
### Topological Dependencies (^)
|
|
33
|
-
|
|
34
|
-
`^` means "run this task in dependencies first":
|
|
35
|
-
|
|
36
|
-
```json
|
|
37
|
-
{
|
|
38
|
-
"pipeline": {
|
|
39
|
-
"build": {
|
|
40
|
-
"dependsOn": ["^build"]
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
Example flow:
|
|
47
|
-
```
|
|
48
|
-
packages/ui (dependency)
|
|
49
|
-
↓ builds first
|
|
50
|
-
apps/web (depends on @repo/ui)
|
|
51
|
-
↓ builds second
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### Internal Dependencies
|
|
55
|
-
|
|
56
|
-
Run tasks in same package first:
|
|
57
|
-
|
|
58
|
-
```json
|
|
59
|
-
{
|
|
60
|
-
"pipeline": {
|
|
61
|
-
"deploy": {
|
|
62
|
-
"dependsOn": ["build", "test"]
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
Execution order in same package:
|
|
69
|
-
1. Run `build`
|
|
70
|
-
2. Run `test`
|
|
71
|
-
3. Run `deploy`
|
|
72
|
-
|
|
73
|
-
### Combined Dependencies
|
|
74
|
-
|
|
75
|
-
Mix topological and internal:
|
|
76
|
-
|
|
77
|
-
```json
|
|
78
|
-
{
|
|
79
|
-
"pipeline": {
|
|
80
|
-
"test": {
|
|
81
|
-
"dependsOn": ["^build", "lint"]
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Execution order:
|
|
88
|
-
1. Build all dependencies (`^build`)
|
|
89
|
-
2. Lint current package (`lint`)
|
|
90
|
-
3. Run tests (`test`)
|
|
91
|
-
|
|
92
|
-
## Task Configuration Options
|
|
93
|
-
|
|
94
|
-
### outputs
|
|
95
|
-
|
|
96
|
-
Define what gets cached:
|
|
97
|
-
|
|
98
|
-
```json
|
|
99
|
-
{
|
|
100
|
-
"build": {
|
|
101
|
-
"outputs": [
|
|
102
|
-
"dist/**", // All files in dist
|
|
103
|
-
".next/**", // Next.js build
|
|
104
|
-
"!.next/cache/**", // Exclude Next.js cache
|
|
105
|
-
"build/**", // Build directory
|
|
106
|
-
"public/dist/**" // Public assets
|
|
107
|
-
]
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
### cache
|
|
113
|
-
|
|
114
|
-
Enable/disable caching:
|
|
115
|
-
|
|
116
|
-
```json
|
|
117
|
-
{
|
|
118
|
-
"dev": {
|
|
119
|
-
"cache": false // Don't cache dev server
|
|
120
|
-
},
|
|
121
|
-
"build": {
|
|
122
|
-
"cache": true // Cache build (default)
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
### persistent
|
|
128
|
-
|
|
129
|
-
Keep task running (for dev servers):
|
|
130
|
-
|
|
131
|
-
```json
|
|
132
|
-
{
|
|
133
|
-
"dev": {
|
|
134
|
-
"cache": false,
|
|
135
|
-
"persistent": true // Don't kill after completion
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### env
|
|
141
|
-
|
|
142
|
-
Environment variables affecting output:
|
|
143
|
-
|
|
144
|
-
```json
|
|
145
|
-
{
|
|
146
|
-
"build": {
|
|
147
|
-
"env": [
|
|
148
|
-
"NODE_ENV",
|
|
149
|
-
"NEXT_PUBLIC_API_URL",
|
|
150
|
-
"DATABASE_URL"
|
|
151
|
-
]
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
### passThroughEnv
|
|
157
|
-
|
|
158
|
-
Pass env vars without affecting cache:
|
|
159
|
-
|
|
160
|
-
```json
|
|
161
|
-
{
|
|
162
|
-
"build": {
|
|
163
|
-
"passThroughEnv": [
|
|
164
|
-
"DEBUG", // Pass through but don't invalidate cache
|
|
165
|
-
"LOG_LEVEL"
|
|
166
|
-
]
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
### inputs
|
|
172
|
-
|
|
173
|
-
Override default input detection:
|
|
174
|
-
|
|
175
|
-
```json
|
|
176
|
-
{
|
|
177
|
-
"build": {
|
|
178
|
-
"inputs": [
|
|
179
|
-
"src/**/*.ts",
|
|
180
|
-
"!src/**/*.test.ts", // Exclude test files
|
|
181
|
-
"package.json"
|
|
182
|
-
]
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
```
|
|
186
|
-
|
|
187
|
-
### outputMode
|
|
188
|
-
|
|
189
|
-
Control output display:
|
|
190
|
-
|
|
191
|
-
```json
|
|
192
|
-
{
|
|
193
|
-
"build": {
|
|
194
|
-
"outputMode": "full" // Show all output
|
|
195
|
-
},
|
|
196
|
-
"dev": {
|
|
197
|
-
"outputMode": "hash-only" // Show cache hash only
|
|
198
|
-
},
|
|
199
|
-
"test": {
|
|
200
|
-
"outputMode": "new-only" // Show new output only
|
|
201
|
-
},
|
|
202
|
-
"lint": {
|
|
203
|
-
"outputMode": "errors-only" // Show errors only
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
## Running Tasks
|
|
209
|
-
|
|
210
|
-
### Basic Execution
|
|
211
|
-
|
|
212
|
-
```bash
|
|
213
|
-
# Run build in all packages
|
|
214
|
-
turbo run build
|
|
215
|
-
|
|
216
|
-
# Run multiple tasks
|
|
217
|
-
turbo run build test lint
|
|
218
|
-
|
|
219
|
-
# Run with specific package manager
|
|
220
|
-
pnpm turbo run build
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
### Filtering
|
|
224
|
-
|
|
225
|
-
Run tasks in specific packages:
|
|
226
|
-
|
|
227
|
-
```bash
|
|
228
|
-
# Single package
|
|
229
|
-
turbo run build --filter=web
|
|
230
|
-
turbo run build --filter=@repo/ui
|
|
231
|
-
|
|
232
|
-
# Multiple packages
|
|
233
|
-
turbo run build --filter=web --filter=api
|
|
234
|
-
|
|
235
|
-
# All apps
|
|
236
|
-
turbo run build --filter='./apps/*'
|
|
237
|
-
|
|
238
|
-
# Pattern matching
|
|
239
|
-
turbo run test --filter='*-api'
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
### Dependency Filtering
|
|
243
|
-
|
|
244
|
-
```bash
|
|
245
|
-
# Package and its dependencies
|
|
246
|
-
turbo run build --filter='...web'
|
|
247
|
-
|
|
248
|
-
# Package's dependencies only (exclude package itself)
|
|
249
|
-
turbo run build --filter='...^web'
|
|
250
|
-
|
|
251
|
-
# Package and its dependents
|
|
252
|
-
turbo run test --filter='ui...'
|
|
253
|
-
|
|
254
|
-
# Package's dependents only
|
|
255
|
-
turbo run test --filter='^ui...'
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
### Git-Based Filtering
|
|
259
|
-
|
|
260
|
-
Run only on changed packages:
|
|
261
|
-
|
|
262
|
-
```bash
|
|
263
|
-
# Changed since main branch
|
|
264
|
-
turbo run build --filter='[main]'
|
|
265
|
-
|
|
266
|
-
# Changed since HEAD~1
|
|
267
|
-
turbo run build --filter='[HEAD~1]'
|
|
268
|
-
|
|
269
|
-
# Changed in working directory
|
|
270
|
-
turbo run test --filter='...[HEAD]'
|
|
271
|
-
|
|
272
|
-
# Package and dependencies, only if changed
|
|
273
|
-
turbo run build --filter='...[origin/main]'
|
|
274
|
-
```
|
|
275
|
-
|
|
276
|
-
## Concurrency Control
|
|
277
|
-
|
|
278
|
-
### Parallel Execution (Default)
|
|
279
|
-
|
|
280
|
-
Turborepo runs tasks in parallel when safe:
|
|
281
|
-
|
|
282
|
-
```bash
|
|
283
|
-
# Run with default parallelism
|
|
284
|
-
turbo run build
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
### Limit Concurrency
|
|
288
|
-
|
|
289
|
-
```bash
|
|
290
|
-
# Max 3 tasks at once
|
|
291
|
-
turbo run build --concurrency=3
|
|
292
|
-
|
|
293
|
-
# 50% of CPU cores
|
|
294
|
-
turbo run build --concurrency=50%
|
|
295
|
-
|
|
296
|
-
# No parallelism (sequential)
|
|
297
|
-
turbo run build --concurrency=1
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
### Continue on Error
|
|
301
|
-
|
|
302
|
-
```bash
|
|
303
|
-
# Don't stop on first error
|
|
304
|
-
turbo run test --continue
|
|
305
|
-
```
|
|
306
|
-
|
|
307
|
-
## Task Execution Order
|
|
308
|
-
|
|
309
|
-
Example monorepo:
|
|
310
|
-
```
|
|
311
|
-
apps/
|
|
312
|
-
├── web (depends on @repo/ui, @repo/utils)
|
|
313
|
-
└── docs (depends on @repo/ui)
|
|
314
|
-
packages/
|
|
315
|
-
├── ui (depends on @repo/utils)
|
|
316
|
-
└── utils (no dependencies)
|
|
317
|
-
```
|
|
318
|
-
|
|
319
|
-
With config:
|
|
320
|
-
```json
|
|
321
|
-
{
|
|
322
|
-
"pipeline": {
|
|
323
|
-
"build": {
|
|
324
|
-
"dependsOn": ["^build"]
|
|
325
|
-
}
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
```
|
|
329
|
-
|
|
330
|
-
Execution order for `turbo run build`:
|
|
331
|
-
1. **Wave 1** (parallel): `@repo/utils` (no dependencies)
|
|
332
|
-
2. **Wave 2** (parallel): `@repo/ui` (depends on utils)
|
|
333
|
-
3. **Wave 3** (parallel): `web` and `docs` (both depend on ui)
|
|
334
|
-
|
|
335
|
-
## Complex Pipeline Examples
|
|
336
|
-
|
|
337
|
-
### Full-Stack Application
|
|
338
|
-
|
|
339
|
-
```json
|
|
340
|
-
{
|
|
341
|
-
"pipeline": {
|
|
342
|
-
"build": {
|
|
343
|
-
"dependsOn": ["^build"],
|
|
344
|
-
"outputs": [".next/**", "dist/**"]
|
|
345
|
-
},
|
|
346
|
-
"test": {
|
|
347
|
-
"dependsOn": ["^build"],
|
|
348
|
-
"outputs": ["coverage/**"]
|
|
349
|
-
},
|
|
350
|
-
"lint": {
|
|
351
|
-
"dependsOn": ["^build"]
|
|
352
|
-
},
|
|
353
|
-
"typecheck": {
|
|
354
|
-
"dependsOn": ["^build"]
|
|
355
|
-
},
|
|
356
|
-
"dev": {
|
|
357
|
-
"cache": false,
|
|
358
|
-
"persistent": true
|
|
359
|
-
},
|
|
360
|
-
"deploy": {
|
|
361
|
-
"dependsOn": ["build", "test", "lint", "typecheck"]
|
|
362
|
-
}
|
|
363
|
-
}
|
|
364
|
-
}
|
|
365
|
-
```
|
|
366
|
-
|
|
367
|
-
### Monorepo with Code Generation
|
|
368
|
-
|
|
369
|
-
```json
|
|
370
|
-
{
|
|
371
|
-
"pipeline": {
|
|
372
|
-
"generate": {
|
|
373
|
-
"cache": false,
|
|
374
|
-
"outputs": ["src/generated/**"]
|
|
375
|
-
},
|
|
376
|
-
"build": {
|
|
377
|
-
"dependsOn": ["^build", "generate"],
|
|
378
|
-
"outputs": ["dist/**"]
|
|
379
|
-
},
|
|
380
|
-
"test": {
|
|
381
|
-
"dependsOn": ["generate"],
|
|
382
|
-
"outputs": ["coverage/**"]
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
}
|
|
386
|
-
```
|
|
387
|
-
|
|
388
|
-
### Database-Dependent Pipeline
|
|
389
|
-
|
|
390
|
-
```json
|
|
391
|
-
{
|
|
392
|
-
"pipeline": {
|
|
393
|
-
"db:generate": {
|
|
394
|
-
"cache": false
|
|
395
|
-
},
|
|
396
|
-
"db:migrate": {
|
|
397
|
-
"cache": false
|
|
398
|
-
},
|
|
399
|
-
"build": {
|
|
400
|
-
"dependsOn": ["^build", "db:generate"],
|
|
401
|
-
"outputs": ["dist/**"]
|
|
402
|
-
},
|
|
403
|
-
"test:unit": {
|
|
404
|
-
"dependsOn": ["build"]
|
|
405
|
-
},
|
|
406
|
-
"test:integration": {
|
|
407
|
-
"dependsOn": ["db:migrate"],
|
|
408
|
-
"cache": false
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
```
|
|
413
|
-
|
|
414
|
-
## Dry Run
|
|
415
|
-
|
|
416
|
-
Preview execution without running:
|
|
417
|
-
|
|
418
|
-
```bash
|
|
419
|
-
# See what would run
|
|
420
|
-
turbo run build --dry-run
|
|
421
|
-
|
|
422
|
-
# JSON output for scripts
|
|
423
|
-
turbo run build --dry-run=json
|
|
424
|
-
|
|
425
|
-
# Show full task graph
|
|
426
|
-
turbo run build --graph
|
|
427
|
-
```
|
|
428
|
-
|
|
429
|
-
## Force Execution
|
|
430
|
-
|
|
431
|
-
Ignore cache and run tasks:
|
|
432
|
-
|
|
433
|
-
```bash
|
|
434
|
-
# Force rebuild everything
|
|
435
|
-
turbo run build --force
|
|
436
|
-
|
|
437
|
-
# Force specific package
|
|
438
|
-
turbo run build --filter=web --force
|
|
439
|
-
```
|
|
440
|
-
|
|
441
|
-
## Output Control
|
|
442
|
-
|
|
443
|
-
```bash
|
|
444
|
-
# Show only errors
|
|
445
|
-
turbo run build --output-logs=errors-only
|
|
446
|
-
|
|
447
|
-
# Show new logs only
|
|
448
|
-
turbo run build --output-logs=new-only
|
|
449
|
-
|
|
450
|
-
# Show cache hash only
|
|
451
|
-
turbo run build --output-logs=hash-only
|
|
452
|
-
|
|
453
|
-
# Show full output
|
|
454
|
-
turbo run build --output-logs=full
|
|
455
|
-
```
|
|
456
|
-
|
|
457
|
-
## Best Practices
|
|
458
|
-
|
|
459
|
-
1. **Use topological dependencies** - `^build` ensures correct build order
|
|
460
|
-
2. **Cache build outputs** - Define `outputs` for faster rebuilds
|
|
461
|
-
3. **Disable cache for dev** - Set `cache: false` for dev servers
|
|
462
|
-
4. **Mark persistent tasks** - Use `persistent: true` for long-running tasks
|
|
463
|
-
5. **Filter strategically** - Use filters to run only affected tasks
|
|
464
|
-
6. **Control concurrency** - Limit parallelism for resource-intensive tasks
|
|
465
|
-
7. **Configure env vars** - Include vars that affect output in `env`
|
|
466
|
-
8. **Use dry-run** - Preview execution plan before running
|
|
467
|
-
9. **Continue on error in CI** - Use `--continue` to see all errors
|
|
468
|
-
10. **Leverage git filtering** - Run only on changed packages in CI
|
|
469
|
-
|
|
470
|
-
## Common Patterns
|
|
471
|
-
|
|
472
|
-
### CI/CD Pipeline
|
|
473
|
-
|
|
474
|
-
```yaml
|
|
475
|
-
# .github/workflows/ci.yml
|
|
476
|
-
jobs:
|
|
477
|
-
build:
|
|
478
|
-
steps:
|
|
479
|
-
- run: turbo run build test lint --filter='...[origin/main]'
|
|
480
|
-
```
|
|
481
|
-
|
|
482
|
-
Only build/test/lint changed packages and their dependents.
|
|
483
|
-
|
|
484
|
-
### Development Workflow
|
|
485
|
-
|
|
486
|
-
```bash
|
|
487
|
-
# Start all dev servers
|
|
488
|
-
turbo run dev
|
|
489
|
-
|
|
490
|
-
# Start specific app with dependencies
|
|
491
|
-
turbo run dev --filter=web...
|
|
492
|
-
```
|
|
493
|
-
|
|
494
|
-
### Pre-commit Hook
|
|
495
|
-
|
|
496
|
-
```json
|
|
497
|
-
// package.json
|
|
498
|
-
{
|
|
499
|
-
"scripts": {
|
|
500
|
-
"pre-commit": "turbo run lint test --filter='...[HEAD]'"
|
|
501
|
-
}
|
|
502
|
-
}
|
|
503
|
-
```
|
|
504
|
-
|
|
505
|
-
Only lint/test changed packages.
|
|
506
|
-
|
|
507
|
-
### Deployment
|
|
508
|
-
|
|
509
|
-
```bash
|
|
510
|
-
# Build and test specific app
|
|
511
|
-
turbo run build test --filter=web...
|
|
512
|
-
|
|
513
|
-
# Deploy if successful
|
|
514
|
-
turbo run deploy --filter=web
|
|
515
|
-
```
|
|
516
|
-
|
|
517
|
-
Build app and its dependencies, then deploy.
|
|
1
|
+
# Turborepo Task Pipelines
|
|
2
|
+
|
|
3
|
+
Task orchestration, dependencies, and parallel execution strategies.
|
|
4
|
+
|
|
5
|
+
## Pipeline Configuration
|
|
6
|
+
|
|
7
|
+
Define tasks in `turbo.json`:
|
|
8
|
+
|
|
9
|
+
```json
|
|
10
|
+
{
|
|
11
|
+
"$schema": "https://turbo.build/schema.json",
|
|
12
|
+
"pipeline": {
|
|
13
|
+
"build": {
|
|
14
|
+
"dependsOn": ["^build"],
|
|
15
|
+
"outputs": ["dist/**", ".next/**"]
|
|
16
|
+
},
|
|
17
|
+
"test": {
|
|
18
|
+
"dependsOn": ["build"],
|
|
19
|
+
"outputs": ["coverage/**"]
|
|
20
|
+
},
|
|
21
|
+
"lint": {},
|
|
22
|
+
"dev": {
|
|
23
|
+
"cache": false,
|
|
24
|
+
"persistent": true
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Task Dependencies
|
|
31
|
+
|
|
32
|
+
### Topological Dependencies (^)
|
|
33
|
+
|
|
34
|
+
`^` means "run this task in dependencies first":
|
|
35
|
+
|
|
36
|
+
```json
|
|
37
|
+
{
|
|
38
|
+
"pipeline": {
|
|
39
|
+
"build": {
|
|
40
|
+
"dependsOn": ["^build"]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Example flow:
|
|
47
|
+
```
|
|
48
|
+
packages/ui (dependency)
|
|
49
|
+
↓ builds first
|
|
50
|
+
apps/web (depends on @repo/ui)
|
|
51
|
+
↓ builds second
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Internal Dependencies
|
|
55
|
+
|
|
56
|
+
Run tasks in same package first:
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{
|
|
60
|
+
"pipeline": {
|
|
61
|
+
"deploy": {
|
|
62
|
+
"dependsOn": ["build", "test"]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Execution order in same package:
|
|
69
|
+
1. Run `build`
|
|
70
|
+
2. Run `test`
|
|
71
|
+
3. Run `deploy`
|
|
72
|
+
|
|
73
|
+
### Combined Dependencies
|
|
74
|
+
|
|
75
|
+
Mix topological and internal:
|
|
76
|
+
|
|
77
|
+
```json
|
|
78
|
+
{
|
|
79
|
+
"pipeline": {
|
|
80
|
+
"test": {
|
|
81
|
+
"dependsOn": ["^build", "lint"]
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Execution order:
|
|
88
|
+
1. Build all dependencies (`^build`)
|
|
89
|
+
2. Lint current package (`lint`)
|
|
90
|
+
3. Run tests (`test`)
|
|
91
|
+
|
|
92
|
+
## Task Configuration Options
|
|
93
|
+
|
|
94
|
+
### outputs
|
|
95
|
+
|
|
96
|
+
Define what gets cached:
|
|
97
|
+
|
|
98
|
+
```json
|
|
99
|
+
{
|
|
100
|
+
"build": {
|
|
101
|
+
"outputs": [
|
|
102
|
+
"dist/**", // All files in dist
|
|
103
|
+
".next/**", // Next.js build
|
|
104
|
+
"!.next/cache/**", // Exclude Next.js cache
|
|
105
|
+
"build/**", // Build directory
|
|
106
|
+
"public/dist/**" // Public assets
|
|
107
|
+
]
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### cache
|
|
113
|
+
|
|
114
|
+
Enable/disable caching:
|
|
115
|
+
|
|
116
|
+
```json
|
|
117
|
+
{
|
|
118
|
+
"dev": {
|
|
119
|
+
"cache": false // Don't cache dev server
|
|
120
|
+
},
|
|
121
|
+
"build": {
|
|
122
|
+
"cache": true // Cache build (default)
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### persistent
|
|
128
|
+
|
|
129
|
+
Keep task running (for dev servers):
|
|
130
|
+
|
|
131
|
+
```json
|
|
132
|
+
{
|
|
133
|
+
"dev": {
|
|
134
|
+
"cache": false,
|
|
135
|
+
"persistent": true // Don't kill after completion
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### env
|
|
141
|
+
|
|
142
|
+
Environment variables affecting output:
|
|
143
|
+
|
|
144
|
+
```json
|
|
145
|
+
{
|
|
146
|
+
"build": {
|
|
147
|
+
"env": [
|
|
148
|
+
"NODE_ENV",
|
|
149
|
+
"NEXT_PUBLIC_API_URL",
|
|
150
|
+
"DATABASE_URL"
|
|
151
|
+
]
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### passThroughEnv
|
|
157
|
+
|
|
158
|
+
Pass env vars without affecting cache:
|
|
159
|
+
|
|
160
|
+
```json
|
|
161
|
+
{
|
|
162
|
+
"build": {
|
|
163
|
+
"passThroughEnv": [
|
|
164
|
+
"DEBUG", // Pass through but don't invalidate cache
|
|
165
|
+
"LOG_LEVEL"
|
|
166
|
+
]
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### inputs
|
|
172
|
+
|
|
173
|
+
Override default input detection:
|
|
174
|
+
|
|
175
|
+
```json
|
|
176
|
+
{
|
|
177
|
+
"build": {
|
|
178
|
+
"inputs": [
|
|
179
|
+
"src/**/*.ts",
|
|
180
|
+
"!src/**/*.test.ts", // Exclude test files
|
|
181
|
+
"package.json"
|
|
182
|
+
]
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### outputMode
|
|
188
|
+
|
|
189
|
+
Control output display:
|
|
190
|
+
|
|
191
|
+
```json
|
|
192
|
+
{
|
|
193
|
+
"build": {
|
|
194
|
+
"outputMode": "full" // Show all output
|
|
195
|
+
},
|
|
196
|
+
"dev": {
|
|
197
|
+
"outputMode": "hash-only" // Show cache hash only
|
|
198
|
+
},
|
|
199
|
+
"test": {
|
|
200
|
+
"outputMode": "new-only" // Show new output only
|
|
201
|
+
},
|
|
202
|
+
"lint": {
|
|
203
|
+
"outputMode": "errors-only" // Show errors only
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## Running Tasks
|
|
209
|
+
|
|
210
|
+
### Basic Execution
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
# Run build in all packages
|
|
214
|
+
turbo run build
|
|
215
|
+
|
|
216
|
+
# Run multiple tasks
|
|
217
|
+
turbo run build test lint
|
|
218
|
+
|
|
219
|
+
# Run with specific package manager
|
|
220
|
+
pnpm turbo run build
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### Filtering
|
|
224
|
+
|
|
225
|
+
Run tasks in specific packages:
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
# Single package
|
|
229
|
+
turbo run build --filter=web
|
|
230
|
+
turbo run build --filter=@repo/ui
|
|
231
|
+
|
|
232
|
+
# Multiple packages
|
|
233
|
+
turbo run build --filter=web --filter=api
|
|
234
|
+
|
|
235
|
+
# All apps
|
|
236
|
+
turbo run build --filter='./apps/*'
|
|
237
|
+
|
|
238
|
+
# Pattern matching
|
|
239
|
+
turbo run test --filter='*-api'
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
### Dependency Filtering
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
# Package and its dependencies
|
|
246
|
+
turbo run build --filter='...web'
|
|
247
|
+
|
|
248
|
+
# Package's dependencies only (exclude package itself)
|
|
249
|
+
turbo run build --filter='...^web'
|
|
250
|
+
|
|
251
|
+
# Package and its dependents
|
|
252
|
+
turbo run test --filter='ui...'
|
|
253
|
+
|
|
254
|
+
# Package's dependents only
|
|
255
|
+
turbo run test --filter='^ui...'
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
### Git-Based Filtering
|
|
259
|
+
|
|
260
|
+
Run only on changed packages:
|
|
261
|
+
|
|
262
|
+
```bash
|
|
263
|
+
# Changed since main branch
|
|
264
|
+
turbo run build --filter='[main]'
|
|
265
|
+
|
|
266
|
+
# Changed since HEAD~1
|
|
267
|
+
turbo run build --filter='[HEAD~1]'
|
|
268
|
+
|
|
269
|
+
# Changed in working directory
|
|
270
|
+
turbo run test --filter='...[HEAD]'
|
|
271
|
+
|
|
272
|
+
# Package and dependencies, only if changed
|
|
273
|
+
turbo run build --filter='...[origin/main]'
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
## Concurrency Control
|
|
277
|
+
|
|
278
|
+
### Parallel Execution (Default)
|
|
279
|
+
|
|
280
|
+
Turborepo runs tasks in parallel when safe:
|
|
281
|
+
|
|
282
|
+
```bash
|
|
283
|
+
# Run with default parallelism
|
|
284
|
+
turbo run build
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### Limit Concurrency
|
|
288
|
+
|
|
289
|
+
```bash
|
|
290
|
+
# Max 3 tasks at once
|
|
291
|
+
turbo run build --concurrency=3
|
|
292
|
+
|
|
293
|
+
# 50% of CPU cores
|
|
294
|
+
turbo run build --concurrency=50%
|
|
295
|
+
|
|
296
|
+
# No parallelism (sequential)
|
|
297
|
+
turbo run build --concurrency=1
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### Continue on Error
|
|
301
|
+
|
|
302
|
+
```bash
|
|
303
|
+
# Don't stop on first error
|
|
304
|
+
turbo run test --continue
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
## Task Execution Order
|
|
308
|
+
|
|
309
|
+
Example monorepo:
|
|
310
|
+
```
|
|
311
|
+
apps/
|
|
312
|
+
├── web (depends on @repo/ui, @repo/utils)
|
|
313
|
+
└── docs (depends on @repo/ui)
|
|
314
|
+
packages/
|
|
315
|
+
├── ui (depends on @repo/utils)
|
|
316
|
+
└── utils (no dependencies)
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
With config:
|
|
320
|
+
```json
|
|
321
|
+
{
|
|
322
|
+
"pipeline": {
|
|
323
|
+
"build": {
|
|
324
|
+
"dependsOn": ["^build"]
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
Execution order for `turbo run build`:
|
|
331
|
+
1. **Wave 1** (parallel): `@repo/utils` (no dependencies)
|
|
332
|
+
2. **Wave 2** (parallel): `@repo/ui` (depends on utils)
|
|
333
|
+
3. **Wave 3** (parallel): `web` and `docs` (both depend on ui)
|
|
334
|
+
|
|
335
|
+
## Complex Pipeline Examples
|
|
336
|
+
|
|
337
|
+
### Full-Stack Application
|
|
338
|
+
|
|
339
|
+
```json
|
|
340
|
+
{
|
|
341
|
+
"pipeline": {
|
|
342
|
+
"build": {
|
|
343
|
+
"dependsOn": ["^build"],
|
|
344
|
+
"outputs": [".next/**", "dist/**"]
|
|
345
|
+
},
|
|
346
|
+
"test": {
|
|
347
|
+
"dependsOn": ["^build"],
|
|
348
|
+
"outputs": ["coverage/**"]
|
|
349
|
+
},
|
|
350
|
+
"lint": {
|
|
351
|
+
"dependsOn": ["^build"]
|
|
352
|
+
},
|
|
353
|
+
"typecheck": {
|
|
354
|
+
"dependsOn": ["^build"]
|
|
355
|
+
},
|
|
356
|
+
"dev": {
|
|
357
|
+
"cache": false,
|
|
358
|
+
"persistent": true
|
|
359
|
+
},
|
|
360
|
+
"deploy": {
|
|
361
|
+
"dependsOn": ["build", "test", "lint", "typecheck"]
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
### Monorepo with Code Generation
|
|
368
|
+
|
|
369
|
+
```json
|
|
370
|
+
{
|
|
371
|
+
"pipeline": {
|
|
372
|
+
"generate": {
|
|
373
|
+
"cache": false,
|
|
374
|
+
"outputs": ["src/generated/**"]
|
|
375
|
+
},
|
|
376
|
+
"build": {
|
|
377
|
+
"dependsOn": ["^build", "generate"],
|
|
378
|
+
"outputs": ["dist/**"]
|
|
379
|
+
},
|
|
380
|
+
"test": {
|
|
381
|
+
"dependsOn": ["generate"],
|
|
382
|
+
"outputs": ["coverage/**"]
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
### Database-Dependent Pipeline
|
|
389
|
+
|
|
390
|
+
```json
|
|
391
|
+
{
|
|
392
|
+
"pipeline": {
|
|
393
|
+
"db:generate": {
|
|
394
|
+
"cache": false
|
|
395
|
+
},
|
|
396
|
+
"db:migrate": {
|
|
397
|
+
"cache": false
|
|
398
|
+
},
|
|
399
|
+
"build": {
|
|
400
|
+
"dependsOn": ["^build", "db:generate"],
|
|
401
|
+
"outputs": ["dist/**"]
|
|
402
|
+
},
|
|
403
|
+
"test:unit": {
|
|
404
|
+
"dependsOn": ["build"]
|
|
405
|
+
},
|
|
406
|
+
"test:integration": {
|
|
407
|
+
"dependsOn": ["db:migrate"],
|
|
408
|
+
"cache": false
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
## Dry Run
|
|
415
|
+
|
|
416
|
+
Preview execution without running:
|
|
417
|
+
|
|
418
|
+
```bash
|
|
419
|
+
# See what would run
|
|
420
|
+
turbo run build --dry-run
|
|
421
|
+
|
|
422
|
+
# JSON output for scripts
|
|
423
|
+
turbo run build --dry-run=json
|
|
424
|
+
|
|
425
|
+
# Show full task graph
|
|
426
|
+
turbo run build --graph
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
## Force Execution
|
|
430
|
+
|
|
431
|
+
Ignore cache and run tasks:
|
|
432
|
+
|
|
433
|
+
```bash
|
|
434
|
+
# Force rebuild everything
|
|
435
|
+
turbo run build --force
|
|
436
|
+
|
|
437
|
+
# Force specific package
|
|
438
|
+
turbo run build --filter=web --force
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
## Output Control
|
|
442
|
+
|
|
443
|
+
```bash
|
|
444
|
+
# Show only errors
|
|
445
|
+
turbo run build --output-logs=errors-only
|
|
446
|
+
|
|
447
|
+
# Show new logs only
|
|
448
|
+
turbo run build --output-logs=new-only
|
|
449
|
+
|
|
450
|
+
# Show cache hash only
|
|
451
|
+
turbo run build --output-logs=hash-only
|
|
452
|
+
|
|
453
|
+
# Show full output
|
|
454
|
+
turbo run build --output-logs=full
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
## Best Practices
|
|
458
|
+
|
|
459
|
+
1. **Use topological dependencies** - `^build` ensures correct build order
|
|
460
|
+
2. **Cache build outputs** - Define `outputs` for faster rebuilds
|
|
461
|
+
3. **Disable cache for dev** - Set `cache: false` for dev servers
|
|
462
|
+
4. **Mark persistent tasks** - Use `persistent: true` for long-running tasks
|
|
463
|
+
5. **Filter strategically** - Use filters to run only affected tasks
|
|
464
|
+
6. **Control concurrency** - Limit parallelism for resource-intensive tasks
|
|
465
|
+
7. **Configure env vars** - Include vars that affect output in `env`
|
|
466
|
+
8. **Use dry-run** - Preview execution plan before running
|
|
467
|
+
9. **Continue on error in CI** - Use `--continue` to see all errors
|
|
468
|
+
10. **Leverage git filtering** - Run only on changed packages in CI
|
|
469
|
+
|
|
470
|
+
## Common Patterns
|
|
471
|
+
|
|
472
|
+
### CI/CD Pipeline
|
|
473
|
+
|
|
474
|
+
```yaml
|
|
475
|
+
# .github/workflows/ci.yml
|
|
476
|
+
jobs:
|
|
477
|
+
build:
|
|
478
|
+
steps:
|
|
479
|
+
- run: turbo run build test lint --filter='...[origin/main]'
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
Only build/test/lint changed packages and their dependents.
|
|
483
|
+
|
|
484
|
+
### Development Workflow
|
|
485
|
+
|
|
486
|
+
```bash
|
|
487
|
+
# Start all dev servers
|
|
488
|
+
turbo run dev
|
|
489
|
+
|
|
490
|
+
# Start specific app with dependencies
|
|
491
|
+
turbo run dev --filter=web...
|
|
492
|
+
```
|
|
493
|
+
|
|
494
|
+
### Pre-commit Hook
|
|
495
|
+
|
|
496
|
+
```json
|
|
497
|
+
// package.json
|
|
498
|
+
{
|
|
499
|
+
"scripts": {
|
|
500
|
+
"pre-commit": "turbo run lint test --filter='...[HEAD]'"
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
```
|
|
504
|
+
|
|
505
|
+
Only lint/test changed packages.
|
|
506
|
+
|
|
507
|
+
### Deployment
|
|
508
|
+
|
|
509
|
+
```bash
|
|
510
|
+
# Build and test specific app
|
|
511
|
+
turbo run build test --filter=web...
|
|
512
|
+
|
|
513
|
+
# Deploy if successful
|
|
514
|
+
turbo run deploy --filter=web
|
|
515
|
+
```
|
|
516
|
+
|
|
517
|
+
Build app and its dependencies, then deploy.
|