Skip to content
Development
Skill

/shared-monorepo-nx

Nx monorepo build system — workspace configuration, project graph, task pipelines, caching, generators, plugins, and release management

From plugin
skills
26200 skills

Claude Code

$ npx -y skills add agents-inc/skills --skill shared-monorepo-nx --agent claude-code

SKILL.md

shared-monorepo-nx.SKILL.md
name: shared-monorepo-nx
description: Nx monorepo build system — workspace configuration, project graph, task pipelines, caching, generators, plugins, and release management

Monorepo Orchestration with Nx

> **Quick Guide:** Nx 22 for monorepo orchestration and build intelligence. Project graph for dependency analysis. Task pipelines with topological ordering and `dependsOn`. Local computation caching + Nx Cloud remote caching for massive speed gains. Inferred tasks (Project Crystal) auto-detect targets from tool config files. `nx affected` runs only what changed. `nx release` for versioning, changelogs, and publishing. Generators scaffold code, executors run tasks.

---

<critical_requirements>

CRITICAL: Before Using This Skill

**(You MUST enable caching with `"cache": true` on cacheable targets — builds, tests, linting — and set `"cache": false` or omit for side-effect tasks like `serve`)**

**(You MUST define `dependsOn: ["^build"]` in targetDefaults for build tasks to ensure topological ordering across the project graph)**

**(You MUST declare `inputs` and `outputs` for cached targets so Nx knows what to hash and what to restore)**

**(You MUST use inferred tasks (Project Crystal) as the default — only add `project.json` targets when overriding inferred configuration)**

**(You MUST use `nx affected -t <target>` in CI to only run tasks for changed projects and their dependents)**

</critical_requirements>

---

**Auto-detection:** Nx workspace, nx.json, project.json, nx generate, nx affected, nx graph, nx release, @nx/ plugins, Nx Cloud, inferred tasks, Project Crystal, nx migrate, targetDefaults, namedInputs, nx run-many, nx serve

**When to use:**

  • Setting up a new Nx monorepo or adding Nx to an existing repo
  • Configuring task pipelines, caching, and dependency ordering in nx.json
  • Generating projects, libraries, and components with Nx generators
  • Running affected commands to optimize CI builds
  • Configuring Nx Cloud for remote caching and distributed task execution
  • Managing releases with `nx release` (versioning, changelogs, publishing)
  • Setting up module federation for micro-frontend architectures
  • Migrating between Nx versions with `nx migrate`

**When NOT to use:**

  • Single application with no shared libraries (standard build tools suffice)
  • Projects already using Turborepo (do not mix monorepo orchestrators)
  • Very small projects where Nx setup overhead exceeds benefits
  • When all you need is `npm workspaces` without task orchestration

**Key patterns covered:**

  • Workspace setup and nx.json configuration
  • Task pipelines with `targetDefaults` and `dependsOn`
  • Local + remote caching strategies
  • Inferred tasks (Project Crystal) and plugin system
  • Affected commands and project graph
  • Generators and executors
  • Release management (`nx release`)
  • Module federation for micro-frontends

Examples

  • [Workspace Setup](examples/core.md) — Directory structure, nx.json config
  • [Task Pipeline & Caching](examples/tasks.md) — dependsOn ordering, namedInputs, cache configuration, affected commands
  • [Generators](examples/generators.md) — Built-in generators, custom generators, schemas, migrations
  • [CI & Release Management](examples/ci.md) — GitHub Actions, Nx Cloud, release configuration, module federation

**Additional resources:**

  • For CLI reference and decision frameworks, see [reference.md](reference.md)

---

<philosophy>

Philosophy

Nx is a build intelligence platform for monorepos. Unlike simple task runners, Nx understands the structure of your codebase through the **project graph** — a directed acyclic graph of projects and their dependencies. This graph enables intelligent task scheduling, fine-grained caching, and affected analysis.

Nx's core value proposition: **never run a task that has already been computed, and never run more tasks than necessary.**

**Key principles:**

  • **Project graph first** — Nx analyzes imports, configuration, and dependency relationships to build a graph of your workspace. Every feature (caching, affected, task pipelines) builds on this graph.
  • **Inferred configuration** — Since Project Crystal (Nx 18+), plugins auto-detect tasks from tool configs (vite.config.ts, jest.config.ts, etc.), dramatically reducing boilerplate.
  • **Computation caching** — Every task result is cached by default. Cache keys are computed from file inputs, environment, and dependency graph position.
  • **Affected analysis** — `nx affected` uses git diff + project graph to determine the minimum set of projects impacted by a change.

**When to use Nx:**

  • Monorepos with multiple apps sharing libraries
  • Teams needing remote cache sharing across developers and CI
  • Large codebases where build/test times are a bottleneck
  • Projects with complex task dependency chains requiring topological ordering
  • Organizations wanting enforced module boundaries between teams

**When NOT to use Nx:**

  • Single-app projects with no shared code (Vite/esbuild directly)
  • Polyrepo setups where repos are intentionally independent
  • Projects already using Turborepo (pick one orchestrator)
  • Prototypes or very small projects where setup cost exceeds benefit

</philosophy>

---

<patterns>

Core Patterns

Pattern 1: Workspace Setup and nx.json Configuration

The `nx.json` file is the central configuration for task behavior, caching, plugins, and workspace-wide defaults.

{
  "$schema": "./node_modules/nx/schemas/nx-schema.json",
  "namedInputs": {
    "production": [
      "default",
      "!{projectRoot}/**/*.spec.ts",
      "!{projectRoot}/**/*.test.ts"
    ]
  },
  "targetDefaults": {
    "build": {
      "dependsOn": ["^build"],
      "inputs": ["production", "^production"],
      "outputs": ["{projectRoot}/dist"],
      "cache": true
    }
  },
  "plugins": [
    { "plugin": "@nx/vite/plugin", "options": { "buildTargetName": "build" } }
  ]
}

**Why good:** `namedInputs` exclude test files from build cache keys, `dependsOn: ["^build"]` e

Read more
@agents-inc
Ships withskills

The official skills marketplace for Agents Inc. 230+ skills covering everything from React and Prisma to Redis, ElevenLabs, and infrastructure tooling. Pick the skills that match your stack and install them via Claude Code. Need more control?

Stars on GitHub

Momentum

stars in total
26
Star history of agents-inc/skills on GitHub, a chart by star-history.com

Other skills on skills.

ai-infrastructure-litellm

ai-infrastructure-lite…

LiteLLM proxy server setup, TypeScript client patterns via OpenAI SDK, model routing, fallbacks, load balancing, spend tracking,…

@agents-inc@agents-incInstall Skill
ai-infrastructure-modal

ai-infrastructure-moda…

Serverless GPU compute platform for AI model deployment — web endpoints, GPU functions, model serving, and TypeScript client…

@agents-inc@agents-incInstall Skill
ai-infrastructure-ollama

ai-infrastructure-olla…

Local LLM inference with the Ollama JavaScript client -- chat, streaming, tool calling, vision, embeddings, structured output,…

@agents-inc@agents-incInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills10d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about shared-monorepo-nx.

Which coding agents can use shared-monorepo-nx?
shared-monorepo-nx installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.