What problem does it solve? TypeScript monorepos often leak internal implementation details because nothing stops code from deep-importing into another package's subfolders. This Skill wires dependency-cruiser into a repo so every package becomes a deep module: only its root entry-point files are public, and everything in subfolders stays private. ## Core Features & Use Cases - Entry-point boundary enforcement: Installs four dependency-cruiser rules (entry-point boundary from app code, across packages, tests-through-entrypoints, and no-cycles) that fail the build on deep imports. - Environment detection and wiring: Detects the package manager (pnpm, yarn, bun, npm) and packages root, merges rules into any existing config, and adds a lint:boundaries script folded into the repo's umbrella check command. - Scaffolded example and proof: Creates a copy-me example package with a root entry point, hidden lib/ implementation, and tests, then proves the rules bite by observing a pass, an induced failure, and a pass again. - Use Case: A team adopting a packages-per-folder monorepo wants each package to expose small entry points (index.ts, client.ts) instead of barrel files, with CI rejecting any import that reaches into another package's internals. ## Quick Start Ask the agent to set up deep-module boundaries with dependency-cruiser for the packages in this TypeScript repo.