turborepo

Configure and optimize Turborepo task pipelines, caching, and monorepo workflows.

1|Updated Mar 5, 2026
One-click install
npx skills add https://github.com/Alwahdi/mikrotik-whisperer --skill turborepo-alwahdi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: turborepo
Source: https://github.com/Alwahdi/mikrotik-whisperer/tree/main/.agents/skills/turborepo
Command: npx skills add https://github.com/Alwahdi/mikrotik-whisperer --skill turborepo-alwahdi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Setting up and debugging Turborepo monorepos involves many subtle configuration decisions—task dependencies, cache invalidation, environment variable hashing, and CI filtering—where small mistakes silently break caching or parallelization. This Skill provides decision trees, anti-pattern detection, and reference documentation to configure turbo.json correctly the first time. ## Core Features & Use Cases - Task Pipeline Configuration: Guides creation of package-level tasks with correct dependsOn, outputs, inputs, and env declarations in turbo.json. - Cache Debugging & Optimization: Diagnoses cache misses, configures remote caching, and explains hash inputs including globalDependencies versus global.inputs behavior. - Filtering & CI Setup: Covers --affected, --filter syntax, GitHub Actions workflows, Vercel deployment, and turbo-ignore for running only changed packages. - Use Case: A developer notices CI rebuilds everything on every pull request. Use this Skill to add --affected with proper fetch-depth, declare env variables in task hashes, and enable remote caching so only changed packages rebuild. ## Quick Start Ask the assistant to review your turbo.json and package.json scripts for anti-patterns and configure a cached build pipeline for your monorepo.

Frequently Asked Questions about turborepo

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure tasks in turbo.json for a monorepo?

Add scripts to each package's package.json, then register tasks in root turbo.json with dependsOn and outputs. Root package.json should only delegate via turbo run commands, never contain task logic itself.

How do I run only changed packages in Turborepo CI?

Use turbo run build --affected, which compares your branch against the default branch and runs tasks in changed packages plus their dependents. Ensure your CI checkout uses fetch-depth of at least 2 so the merge base is available.

Why is my Turborepo cache not working?

Common causes include missing outputs keys for file-producing tasks, environment variables not declared in env, or .env files absent from inputs. Use --summarize or --dry to inspect hash inputs and identify what invalidates the cache.

What is the difference between dependsOn ^build and build in turbo.json?

The caret syntax ^build runs the build task in dependency packages first, while plain build runs it in the same package. Use ^build for build ordering across packages and build for same-package task sequencing like test depending on build.

Should I use turbo or turbo run in package.json scripts?

Always use turbo run in package.json scripts, CI workflows, and any committed code. The turbo shorthand is intended only for one-off interactive terminal commands typed directly by humans.

When should I use Package Configurations instead of root turbo.json overrides?

Use a turbo.json with extends ["//"] inside a package when multiple packages need different task settings, such as framework-specific outputs. This keeps root turbo.json clean and configuration close to the code it affects.