turborepo

Design and implement Turborepo workflows, tasks, and pipelines across a monorepo.

Updated Feb 3, 2026
One-click install
npx skills add https://github.com/ehyland/skills --skill turborepo-ehyland
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: turborepo
Source: https://github.com/ehyland/skills/tree/main/skills/turborepo
Command: npx skills add https://github.com/ehyland/skills --skill turborepo-ehyland

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps teams design and implement Turborepo workflows, tasks, and pipelines across a monorepo, enabling scalable build orchestration.

Core Features & Use Cases

  • Guidance on configuring turbo.json and package configurations to enable per-package tasks, proper caching, and parallel execution.
  • Tools to generate and wire workflows for apps and libraries, including CI optimization and selective builds.
  • Use cases include setting up a new build pipeline across multiple packages, defining outputs and inputs, and aligning tasks with dependency graphs.

Quick Start

Load the Turborepo skill and scaffold a new workflow, then run a simple example like turbo run build --filter=./apps/web to validate the setup.

Frequently Asked Questions about turborepo

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

FAQPage Schema
How do I set up a monorepo build pipeline with task caching?

Monorepo build pipelines orchestrate tasks across multiple packages with caching to avoid redundant work. Configure turbo.json to define task dependencies, outputs, and inputs, then run filtered tasks like `turbo run build --filter=./apps/web` to execute only affected packages and leverage cached results.

What's the best way to configure outputs and inputs for monorepo tasks?

Proper outputs and inputs configuration enables Turborepo's caching mechanism. Define outputs as build artifacts (dist, build folders) and inputs as source files that trigger cache invalidation. This ensures tasks run only when dependencies change, speeding up CI and local workflows.

Can I use remote caching to share build artifacts across CI environments?

Remote caching extends Turborepo's caching across machines and CI runs. Configure remote caching in turbo.json to store and retrieve task outputs from a central location, allowing teams to reuse builds across pipelines, reducing CI time and bandwidth.

How do I optimize CI pipelines in a monorepo with selective builds?

CI optimization uses filtering and dependency graphs to run only affected tasks. Turborepo analyzes package dependencies and task graphs to execute targeted builds for changed workspaces, reducing unnecessary work and accelerating feedback loops in continuous integration.

Do I need to configure per-package tasks instead of root-level commands?

Per-package tasks are essential for monorepo scalability and caching effectiveness. Each package defines its own tasks in package.json, allowing Turborepo to understand dependencies, parallelize execution, and cache results independently, rather than running root-wide commands that bypass optimization.

What happens when tasks have dependencies across multiple packages?

Turborepo's dependency graph awareness ensures tasks execute in the correct order. Define task dependencies in turbo.json using the `dependsOn` field to specify which tasks must complete before others run, enabling efficient parallelization while respecting package relationships.