.rulesync/rules/nx-conventions.md
project.json files, use {projectRoot} to reference paths relative to the project root. Do not prefix with ./ — Nx interpolates {projectRoot} as a complete relative path from the workspace root (e.g. tools/ssr-example), so {projectRoot}/script.sh is correct while ./{projectRoot}/script.sh is invalid.package.json-only project, set "nx": {"includedScripts": []} in the package.json. An empty array suppresses all inferred script targets while keeping the project visible to Nx for dependency tracking.Each monorepo has a synthetic project named all (typically at utilities/all/project.json) that acts as an aggregate orchestrator for monorepo-wide operations.
How it works:
nx:noop executor with dependsOn: ["^<target>"] to cascade operations across all packages without doing any work itself.implicitDependencies array, so running a target on all triggers that target on every listed package.defaultProject in nx.json, so bare commands like nx run build or nx run test run against all and therefore cascade to all packages.Key guidance:
all as a real, buildable project — it has no meaningful source code.nx run ag-studio:build) rather than relying on the default project.