monorepo

Diagnose cross-package dependency, build, and configuration issues in pnpm workspaces and Turborepo monorepos.

113|15|Updated Mar 3, 2026
One-click install
npx skills add https://github.com/avibebuilder/claude-prime --skill monorepo-avibebuilder
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: monorepo
Source: https://github.com/avibebuilder/claude-prime/tree/main/.claude/starter-skills/monorepo
Command: npx skills add https://github.com/avibebuilder/claude-prime --skill monorepo-avibebuilder

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Provides a single, opinionated approach to diagnose and fix cross-package coordination problems in pnpm workspaces and Turborepo monorepos, eliminating back-and-forth about whether an issue is "build", "CI", or "dependency" related. It reduces wasted time by owning workspace-level decisions like shared configs, package boundaries, install scopes, caching, and catalog version resolution so teams don't re-explain architecture on every incident.

Core Features & Use Cases

  • Workspace organization: Guidance for splitting apps vs packages, namespacing, and using a single root lockfile to preserve deterministic installs.
  • Dependency management: Enforce workspace:* protocol, hoist shared devDependencies, use peer deps for frameworks, and adopt pnpm catalogs for centralized versions.
  • Turborepo & caching: Configure dependsOn, outputs, env/globalEnv, persistent tasks, and remote cache to avoid silent cache misses and speed CI.
  • Troubleshooting & gotchas: Practical checks for missing outputs, filtering behavior in pnpm, tsconfig references, tailwind v4 sources, and steps to debug cache mismatches.
  • Use Case: Add a new package to packages/, run pnpm install, and let the skill validate workspace patterns, turbo.json outputs, and caching configuration to prevent build regressions.

Quick Start

Describe the interacting packages, the failing task or config (for example build, lint, or install), and ask the monorepo skill to diagnose workspace protocol, lockfile, turbo outputs, and caching implications.

Frequently Asked Questions about monorepo

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

FAQPage Schema
How do I fix Turborepo build order and caching issues across pnpm workspace packages?

Fix Turborepo build order and caching issues by configuring dependsOn, outputs, and env variables in turbo.json. Validate workspace:* protocol usage and ensure a single root lockfile to prevent silent cache misses and coordinate cross-package tasks correctly.

How do I add a new package to a pnpm monorepo without breaking the build?

Add a new package to packages/, run pnpm install, and validate workspace patterns, turbo.json outputs, and caching configuration. Enforce workspace:* protocol dependencies and check shared ESLint, tsconfig, and prettier references to prevent build regressions.

What is the pnpm catalog and how do I centralize dependency versions in a monorepo?

The pnpm catalog is a centralized version management feature in pnpm-workspace.yaml. Use it to enforce consistent dependency versions across all workspace packages, eliminating version conflicts and simplifying upgrades across your monorepo.

Why does Turborepo remote cache miss silently during CI builds?

Turborepo remote cache misses occur when turbo.json outputs, env, or globalEnv configurations are incomplete. Debug cache mismatches by verifying dependsOn declarations, persistent task definitions, and ensuring environment variables are properly scoped to changed packages.

Can I scope pnpm installs to only changed packages in a Turborepo monorepo?

Scope pnpm installs to changed packages using Turborepo filtering behavior. Configure pnpm-workspace.yaml correctly and maintain a single root lockfile to preserve deterministic installs while limiting CI overhead to packages with actual changes.

How do I share ESLint, tsconfig, and prettier configs across monorepo packages?

Share ESLint, tsconfig, and prettier configs across monorepo packages by hoisting shared devDependencies to the root and using TypeScript project references. Enforce workspace:* protocol for internal package dependencies and validate catalog resolution for external libraries.