Agent Skills: Monorepo Management

Manage monorepo architectures using Lerna, Turborepo, and Nx. Configure workspaces, dependency versioning, and cross-package testing.

UncategorizedID: aj-geddes/useful-ai-prompts/monorepo-management

Install this agent skill to your local

pnpm dlx add-skill https://github.com/aj-geddes/useful-ai-prompts/tree/HEAD/skills/monorepo-management

Skill Files

Browse the full folder contents for monorepo-management.

Download Skill

Loading file tree…

skills/monorepo-management/SKILL.md

Skill Metadata

Name
monorepo-management
Description
>

Monorepo Management

Table of Contents

Overview

Establish scalable monorepo structures that support multiple interdependent packages while maintaining build efficiency, dependency management, and deployment coordination.

When to Use

  • Multi-package projects
  • Shared libraries across services
  • Microservices architecture
  • Plugin-based systems
  • Multi-app platforms (web + mobile)
  • Workspace dependency management
  • Scaled team development

Quick Start

Minimal working example:

{
  "name": "monorepo-root",
  "version": "1.0.0",
  "private": true,
  "workspaces": ["packages/*", "apps/*"],
  "devDependencies": {
    "lerna": "^7.0.0",
    "turbo": "^1.10.0"
  },
  "scripts": {
    "lint": "npm run lint -r",
    "test": "npm run test -r",
    "build": "npm run build -r",
    "clean": "npm run clean -r"
  }
}

Reference Guides

Detailed implementations in the references/ directory:

| Guide | Contents | |---|---| | Npm Workspaces Configuration | Npm Workspaces Configuration, Lerna Configuration, Turborepo Configuration, Nx Workspace Configuration | | Monorepo Directory Structure | Monorepo Directory Structure | | Workspace Dependencies | Workspace Dependencies | | Lerna Commands | Lerna Commands | | Turborepo Commands | Turborepo Commands | | CI/CD for Monorepo | CI/CD for Monorepo | | Version Management Across Packages | Version Management Across Packages |

Best Practices

✅ DO

  • Use workspace protocols for dependencies
  • Implement shared tsconfig for consistency
  • Cache build outputs in CI/CD
  • Filter packages in CI to avoid unnecessary builds
  • Hoist common dependencies
  • Document workspace structure
  • Use consistent versioning strategy
  • Implement pre-commit hooks across workspace
  • Test cross-package dependencies
  • Version packages independently when appropriate

❌ DON'T

  • Create circular dependencies
  • Use hardcoded versions for workspace packages
  • Build all packages when only one changed
  • Forget to update lock files
  • Ignore workspace boundaries
  • Create tightly coupled packages
  • Skip dependency management
  • Use different tooling per package