[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-microsoft-rushstack-best-practices":3,"mdc--eljqe5-key":52,"related-repo-microsoft-rushstack-best-practices":2234,"related-org-microsoft-rushstack-best-practices":2244},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":26,"repoUrl":27,"updatedAt":28,"license":29,"forks":30,"topics":31,"repo":47,"sourceUrl":50,"mdContent":51},"rushstack-best-practices","manage Rush monorepos with best practices","Provides best practices and guidance for working with Rush monorepos. Use when the user is working in a Rush-based repository, asks about Rush commands (install, update, build, rebuild), needs help with project selection, dependency management, build caching, subspace configuration, or troubleshooting Rush-specific issues.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"microsoft","Microsoft","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fmicrosoft.png",[12,16,19,22,23],{"name":13,"slug":14,"type":15},"Project Management","project-management","tag",{"name":17,"slug":18,"type":15},"Rush","rush",{"name":20,"slug":21,"type":15},"Local Development","local-development",{"name":9,"slug":8,"type":15},{"name":24,"slug":25,"type":15},"Engineering","engineering",6484,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Frushstack","2026-04-06T18:34:44.965032","MIT",700,[32,33,34,35,36,37,38,39,40,41,42,18,43,44,45,46],"api","api-extractor","build","bulk-suppressions","eslint","hacktoberfest","heft","lockfile-explorer","monorepo","nodejs","orchestrator","rushstack","toolchain","tsdoc","typescript",{"repoUrl":27,"stars":26,"forks":30,"topics":48,"description":49},[32,33,34,35,36,37,38,39,40,41,42,18,43,44,45,46],"Monorepo for tools developed by the Rush Stack community","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Frushstack\u002Ftree\u002FHEAD\u002Fskills\u002Frushstack-best-practices","---\nname: rushstack-best-practices\ndescription: Provides best practices and guidance for working with Rush monorepos. Use when the user is working in a Rush-based repository, asks about Rush commands (install, update, build, rebuild), needs help with project selection, dependency management, build caching, subspace configuration, or troubleshooting Rush-specific issues.\nlicense: MIT\nmetadata:\n  author: rushstack\n  version: \"1.0.0\"\n---\n\n# Rushstack Best Practices\n\nThis skill provides essential best practices for working with Rush monorepos. Following these guidelines ensures efficient dependency management, optimal build performance, and proper command usage.\n\n## Important Guidelines\n\n**When encountering unclear issues or questions:**\n\n1. **Never make assumptions** - If unsure about Rush behavior, configuration, or commands\n2. **Search official resources first** - Check documentation and existing issues before guessing\n3. **Provide accurate information** - Base responses on verified sources, not assumptions\n4. **Ask for clarification** - When the problem description is ambiguous or incomplete\n\n## Core Principles\n\n1. **Always use Rush commands** - Avoid npm\u002Fpnpm\u002Fyarn directly in a Rush monorepo\n2. **Use rushx for single projects** - Like npm run, but Rush-aware\n3. **rush install vs update** - install for CI, update after changes\n4. **rush build vs rebuild** - build for incremental, rebuild for clean\n5. **Projects at 2 levels** - Standard: apps\u002F, libraries\u002F, tools\u002F\n6. **Selection flags reduce scope** - Use --to, --from, --impacted-by\n7. **Build cache is automatic** - Configure output folders to enable\n8. **Subspace for large repos** - Isolate dependencies when needed\n\n## Project Selection Best Practices\n\nWhen running commands like `install`, `update`, `build`, `rebuild`, etc., by default all projects under the entire repository are processed. Use these selection flags to improve efficiency:\n\n### --to \u003CPROJECT>\nSelect specified project and all its dependencies.\n- Build specific project and its dependencies\n- Ensure complete dependency chain build\n```bash\nrush build --to @my-company\u002Fmy-project\nrush build --to my-project  # If project name is unique\nrush build --to .            # Use current directory's project\n```\n\n### --to-except \u003CPROJECT>\nSelect all dependencies of specified project, but not the project itself.\n- Update project dependencies without processing project itself\n- Pre-build dependencies\n```bash\nrush build --to-except @my-company\u002Fmy-project\n```\n\n### --from \u003CPROJECT>\nSelect specified project and all its downstream dependencies.\n- Validate changes' impact on downstream projects\n- Build all projects affected by specific project\n```bash\nrush build --from @my-company\u002Fmy-library\n```\n\n### --impacted-by \u003CPROJECT>\nSelect projects that might be affected by specified project changes, excluding dependencies.\n- Quick test of project change impacts\n- Use when dependency status is already correct\n```bash\nrush build --impacted-by @my-company\u002Fmy-library\n```\n\n### --impacted-by-except \u003CPROJECT>\nSimilar to `--impacted-by`, but excludes specified project itself.\n- Project itself has been manually built\n- Only need to test downstream impacts\n```bash\nrush build --impacted-by-except @my-company\u002Fmy-library\n```\n\n### --only \u003CPROJECT>\nOnly select specified project, completely ignore dependency relationships.\n- Dependency status is known to be correct\n- Combine with other selection parameters\n```bash\nrush build --only @my-company\u002Fmy-project\nrush build --impacted-by projectA --only projectB\n```\n\n## Command Usage Guidelines\n\n### Command Tool Selection\n\nChoose the correct command tool based on different scenarios:\n\n1. **`rush` command** - Execute operations affecting the entire repository or multiple projects\n   - Strict parameter validation and documentation\n   - Support for global and batch commands\n   - Suitable for standardized workflows\n   - Use cases: Dependency installation, building, publishing\n\n2. **`rushx` command** - Execute specific scripts for a single project\n   - Similar to `npm run` or `pnpm run`\n   - Uses Rush version selector for toolchain consistency\n   - Prepares shell environment based on Rush configuration\n   - Use cases: Running project-specific build scripts, tests, dev servers\n\n3. **`rush-pnpm` command** - Replace direct use of pnpm in Rush repository\n   - Sets correct PNPM workspace context\n   - Supports Rush-specific enhancements\n   - Provides compatibility checks with Rush\n   - Use cases: When direct PNPM commands are needed\n\n### Install vs Update\n\n| Command | Behavior | When to Use |\n|---------|----------|-------------|\n| `rush update` | Updates shrinkwrap, installs new dependencies | After cloning, after git pull, after modifying package.json |\n| `rush install` | Read-only install from existing shrinkwrap | CI\u002FCD pipelines, ensuring version consistency |\n\n### Build vs Rebuild\n\n| Command | Behavior | When to Use |\n|---------|----------|-------------|\n| `rush build` | Incremental build, only changed projects | Daily development, quick validation |\n| `rush rebuild` | Clean build all projects | Complete rebuild needed, investigating issues |\n\n## Dependency Management\n\n### Package Manager Selection\nChoose in `rush.json`:\n```json\n{\n  \"pnpmVersion\": \"8.x.x\"     \u002F\u002F Preferred - efficient, strict\n  \u002F\u002F \"npmVersion\": \"8.x.x\"   \u002F\u002F Alternative\n  \u002F\u002F \"yarnVersion\": \"1.x.x\"  \u002F\u002F Alternative\n}\n```\n\n### Version Constraints\nConfigure in `common\u002Fconfig\u002Fsubspaces\u002F\u003Csubspace>\u002Fcommon-versions.json`:\n```json\n{\n  \"preferredVersions\": {\n    \"react\": \"17.0.2\",\n    \"typescript\": \"~4.5.0\"\n  },\n  \"implicitlyPreferredVersions\": true,\n  \"allowedAlternativeVersions\": {\n    \"typescript\": [\"~4.5.0\", \"~4.6.0\"]\n  }\n}\n```\n\n### Adding\u002FRemoving Dependencies\nAlways use Rush commands, not npm\u002Fpnpm directly:\n```bash\nrush add -p lodash --dev      # Add dev dependency\nrush add -p react --exact     # Add exact version\nrush remove -p lodash         # Remove dependency\n```\n\n## Build Cache Configuration\n\nConfigure in `\u003Cproject>\u002Fconfig\u002Frush-project.json`:\n```json\n{\n  \"operationSettings\": [\n    {\n      \"operationName\": \"build\",\n      \"outputFolderNames\": [\"lib\", \"dist\"],\n      \"disableBuildCacheForOperation\": false,\n      \"dependsOnEnvVars\": [\"MY_ENV_VAR\"]\n    }\n  ]\n}\n```\n\n**Cache Behavior:**\n- Cache stored in `common\u002Ftemp\u002Fbuild-cache`\n- Invalidated by: source changes, dependency changes, env vars, command params\n- Parallel builds supported via `enableParallelism`\n\n## Troubleshooting\n\n### Dependency Issues\n- Avoid `npm`, `pnpm`, `yarn` - use Rush commands\n- Run `rush purge` to clean environment\n- Run `rush update --recheck` to force dependency check\n\n### Build Issues\n- Use `rush rebuild` to skip cache\n- Check `rushx build` output for specific errors\n- Use `--verbose` for detailed logs\n\n### Performance Issues\n- Use selection flags (`--to`, `--from`, etc.) to reduce scope\n- Enable build cache in rush-project.json\n- Consider subspace for very large monorepos\n\n## Subspace for Large Monorepos\n\n**What is Subspace:**\n- Allows multiple PNPM lock files in one Rush monorepo\n- Enables independent dependency management per team\u002Fproject group\n- Reduces risk from dependency updates\n- Improves install\u002Fupdate performance\n\n**When to Use:**\n- Large monorepos (50+ projects)\n- Multiple teams with different dependency needs\n- Conflicting version requirements\n- Need for faster dependency operations\n\n## Official Resources\n\n### Documentation & References\n\n**Official Websites:**\n- [RushStack.io](https:\u002F\u002Frushstack.io\u002F) - Main documentation site\n- [Rush.js.io](https:\u002F\u002Frushjs.io\u002F) - Rush build orchestrator documentation\n- [Heft.rushstack.io](https:\u002F\u002Fheft.rushstack.io\u002F) - Heft build tool documentation\n- [API Extractor](https:\u002F\u002Fapi-extractor.com\u002F) - API documentation and rollups\n\n**Search Existing Issues:**\n- Before creating new issues, search [rush-stack-builds issues](https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Frushstack\u002Fissues)\n\n### When to Search vs. Ask\n\n**Search these resources first when:**\n- Encountering error messages\n- Unsure about configuration options\n- Looking for examples or tutorials\n- Need to understand Rush behavior\n\n**Ask the user for clarification when:**\n- The specific use case is unclear\n- Multiple approaches are possible\n- Context is missing to provide accurate guidance\n- The issue might be environment-specific\n\n## Detailed References\n\nFor expanded information on specific domains, see:\n- `references\u002Fcore-commands.md` - Detailed command reference\n- `references\u002Fproject-configuration.md` - Configuration file specifications\n- `references\u002Fdependency-management.md` - Advanced dependency patterns\n- `references\u002Fbuild-system.md` - Build optimization and caching\n- `references\u002Fsubspace.md` - Subspace setup and usage\n",{"data":53,"body":56},{"name":4,"description":6,"license":29,"metadata":54},{"author":43,"version":55},"1.0.0",{"type":57,"children":58},"root",[59,67,73,80,89,134,140,223,229,264,275,280,294,385,394,399,412,439,448,453,466,494,503,508,521,548,557,570,583,610,619,624,637,693,699,705,710,840,846,923,929,997,1003,1009,1022,1118,1124,1136,1383,1389,1394,1488,1494,1505,1737,1745,1775,1781,1787,1842,1848,1888,1894,1927,1933,1941,1964,1972,1995,2001,2007,2015,2068,2076,2091,2097,2105,2128,2136,2159,2165,2170,2228],{"type":60,"tag":61,"props":62,"children":63},"element","h1",{"id":4},[64],{"type":65,"value":66},"text","Rushstack Best Practices",{"type":60,"tag":68,"props":69,"children":70},"p",{},[71],{"type":65,"value":72},"This skill provides essential best practices for working with Rush monorepos. Following these guidelines ensures efficient dependency management, optimal build performance, and proper command usage.",{"type":60,"tag":74,"props":75,"children":77},"h2",{"id":76},"important-guidelines",[78],{"type":65,"value":79},"Important Guidelines",{"type":60,"tag":68,"props":81,"children":82},{},[83],{"type":60,"tag":84,"props":85,"children":86},"strong",{},[87],{"type":65,"value":88},"When encountering unclear issues or questions:",{"type":60,"tag":90,"props":91,"children":92},"ol",{},[93,104,114,124],{"type":60,"tag":94,"props":95,"children":96},"li",{},[97,102],{"type":60,"tag":84,"props":98,"children":99},{},[100],{"type":65,"value":101},"Never make assumptions",{"type":65,"value":103}," - If unsure about Rush behavior, configuration, or commands",{"type":60,"tag":94,"props":105,"children":106},{},[107,112],{"type":60,"tag":84,"props":108,"children":109},{},[110],{"type":65,"value":111},"Search official resources first",{"type":65,"value":113}," - Check documentation and existing issues before guessing",{"type":60,"tag":94,"props":115,"children":116},{},[117,122],{"type":60,"tag":84,"props":118,"children":119},{},[120],{"type":65,"value":121},"Provide accurate information",{"type":65,"value":123}," - Base responses on verified sources, not assumptions",{"type":60,"tag":94,"props":125,"children":126},{},[127,132],{"type":60,"tag":84,"props":128,"children":129},{},[130],{"type":65,"value":131},"Ask for clarification",{"type":65,"value":133}," - When the problem description is ambiguous or incomplete",{"type":60,"tag":74,"props":135,"children":137},{"id":136},"core-principles",[138],{"type":65,"value":139},"Core Principles",{"type":60,"tag":90,"props":141,"children":142},{},[143,153,163,173,183,193,203,213],{"type":60,"tag":94,"props":144,"children":145},{},[146,151],{"type":60,"tag":84,"props":147,"children":148},{},[149],{"type":65,"value":150},"Always use Rush commands",{"type":65,"value":152}," - Avoid npm\u002Fpnpm\u002Fyarn directly in a Rush monorepo",{"type":60,"tag":94,"props":154,"children":155},{},[156,161],{"type":60,"tag":84,"props":157,"children":158},{},[159],{"type":65,"value":160},"Use rushx for single projects",{"type":65,"value":162}," - Like npm run, but Rush-aware",{"type":60,"tag":94,"props":164,"children":165},{},[166,171],{"type":60,"tag":84,"props":167,"children":168},{},[169],{"type":65,"value":170},"rush install vs update",{"type":65,"value":172}," - install for CI, update after changes",{"type":60,"tag":94,"props":174,"children":175},{},[176,181],{"type":60,"tag":84,"props":177,"children":178},{},[179],{"type":65,"value":180},"rush build vs rebuild",{"type":65,"value":182}," - build for incremental, rebuild for clean",{"type":60,"tag":94,"props":184,"children":185},{},[186,191],{"type":60,"tag":84,"props":187,"children":188},{},[189],{"type":65,"value":190},"Projects at 2 levels",{"type":65,"value":192}," - Standard: apps\u002F, libraries\u002F, tools\u002F",{"type":60,"tag":94,"props":194,"children":195},{},[196,201],{"type":60,"tag":84,"props":197,"children":198},{},[199],{"type":65,"value":200},"Selection flags reduce scope",{"type":65,"value":202}," - Use --to, --from, --impacted-by",{"type":60,"tag":94,"props":204,"children":205},{},[206,211],{"type":60,"tag":84,"props":207,"children":208},{},[209],{"type":65,"value":210},"Build cache is automatic",{"type":65,"value":212}," - Configure output folders to enable",{"type":60,"tag":94,"props":214,"children":215},{},[216,221],{"type":60,"tag":84,"props":217,"children":218},{},[219],{"type":65,"value":220},"Subspace for large repos",{"type":65,"value":222}," - Isolate dependencies when needed",{"type":60,"tag":74,"props":224,"children":226},{"id":225},"project-selection-best-practices",[227],{"type":65,"value":228},"Project Selection Best Practices",{"type":60,"tag":68,"props":230,"children":231},{},[232,234,241,243,249,250,255,256,262],{"type":65,"value":233},"When running commands like ",{"type":60,"tag":235,"props":236,"children":238},"code",{"className":237},[],[239],{"type":65,"value":240},"install",{"type":65,"value":242},", ",{"type":60,"tag":235,"props":244,"children":246},{"className":245},[],[247],{"type":65,"value":248},"update",{"type":65,"value":242},{"type":60,"tag":235,"props":251,"children":253},{"className":252},[],[254],{"type":65,"value":34},{"type":65,"value":242},{"type":60,"tag":235,"props":257,"children":259},{"className":258},[],[260],{"type":65,"value":261},"rebuild",{"type":65,"value":263},", etc., by default all projects under the entire repository are processed. Use these selection flags to improve efficiency:",{"type":60,"tag":265,"props":266,"children":268},"h3",{"id":267},"to",[269,271],{"type":65,"value":270},"--to ",{"type":60,"tag":272,"props":273,"children":274},"project",{},[],{"type":60,"tag":68,"props":276,"children":277},{},[278],{"type":65,"value":279},"Select specified project and all its dependencies.",{"type":60,"tag":281,"props":282,"children":283},"ul",{},[284,289],{"type":60,"tag":94,"props":285,"children":286},{},[287],{"type":65,"value":288},"Build specific project and its dependencies",{"type":60,"tag":94,"props":290,"children":291},{},[292],{"type":65,"value":293},"Ensure complete dependency chain build",{"type":60,"tag":295,"props":296,"children":301},"pre",{"className":297,"code":298,"language":299,"meta":300,"style":300},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","rush build --to @my-company\u002Fmy-project\nrush build --to my-project  # If project name is unique\nrush build --to .            # Use current directory's project\n","bash","",[302],{"type":60,"tag":235,"props":303,"children":304},{"__ignoreMap":300},[305,332,359],{"type":60,"tag":306,"props":307,"children":310},"span",{"class":308,"line":309},"line",1,[311,316,322,327],{"type":60,"tag":306,"props":312,"children":314},{"style":313},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[315],{"type":65,"value":18},{"type":60,"tag":306,"props":317,"children":319},{"style":318},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[320],{"type":65,"value":321}," build",{"type":60,"tag":306,"props":323,"children":324},{"style":318},[325],{"type":65,"value":326}," --to",{"type":60,"tag":306,"props":328,"children":329},{"style":318},[330],{"type":65,"value":331}," @my-company\u002Fmy-project\n",{"type":60,"tag":306,"props":333,"children":335},{"class":308,"line":334},2,[336,340,344,348,353],{"type":60,"tag":306,"props":337,"children":338},{"style":313},[339],{"type":65,"value":18},{"type":60,"tag":306,"props":341,"children":342},{"style":318},[343],{"type":65,"value":321},{"type":60,"tag":306,"props":345,"children":346},{"style":318},[347],{"type":65,"value":326},{"type":60,"tag":306,"props":349,"children":350},{"style":318},[351],{"type":65,"value":352}," my-project",{"type":60,"tag":306,"props":354,"children":356},{"style":355},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[357],{"type":65,"value":358},"  # If project name is unique\n",{"type":60,"tag":306,"props":360,"children":362},{"class":308,"line":361},3,[363,367,371,375,380],{"type":60,"tag":306,"props":364,"children":365},{"style":313},[366],{"type":65,"value":18},{"type":60,"tag":306,"props":368,"children":369},{"style":318},[370],{"type":65,"value":321},{"type":60,"tag":306,"props":372,"children":373},{"style":318},[374],{"type":65,"value":326},{"type":60,"tag":306,"props":376,"children":377},{"style":318},[378],{"type":65,"value":379}," .",{"type":60,"tag":306,"props":381,"children":382},{"style":355},[383],{"type":65,"value":384},"            # Use current directory's project\n",{"type":60,"tag":265,"props":386,"children":388},{"id":387},"to-except",[389,391],{"type":65,"value":390},"--to-except ",{"type":60,"tag":272,"props":392,"children":393},{},[],{"type":60,"tag":68,"props":395,"children":396},{},[397],{"type":65,"value":398},"Select all dependencies of specified project, but not the project itself.",{"type":60,"tag":281,"props":400,"children":401},{},[402,407],{"type":60,"tag":94,"props":403,"children":404},{},[405],{"type":65,"value":406},"Update project dependencies without processing project itself",{"type":60,"tag":94,"props":408,"children":409},{},[410],{"type":65,"value":411},"Pre-build dependencies",{"type":60,"tag":295,"props":413,"children":415},{"className":297,"code":414,"language":299,"meta":300,"style":300},"rush build --to-except @my-company\u002Fmy-project\n",[416],{"type":60,"tag":235,"props":417,"children":418},{"__ignoreMap":300},[419],{"type":60,"tag":306,"props":420,"children":421},{"class":308,"line":309},[422,426,430,435],{"type":60,"tag":306,"props":423,"children":424},{"style":313},[425],{"type":65,"value":18},{"type":60,"tag":306,"props":427,"children":428},{"style":318},[429],{"type":65,"value":321},{"type":60,"tag":306,"props":431,"children":432},{"style":318},[433],{"type":65,"value":434}," --to-except",{"type":60,"tag":306,"props":436,"children":437},{"style":318},[438],{"type":65,"value":331},{"type":60,"tag":265,"props":440,"children":442},{"id":441},"from",[443,445],{"type":65,"value":444},"--from ",{"type":60,"tag":272,"props":446,"children":447},{},[],{"type":60,"tag":68,"props":449,"children":450},{},[451],{"type":65,"value":452},"Select specified project and all its downstream dependencies.",{"type":60,"tag":281,"props":454,"children":455},{},[456,461],{"type":60,"tag":94,"props":457,"children":458},{},[459],{"type":65,"value":460},"Validate changes' impact on downstream projects",{"type":60,"tag":94,"props":462,"children":463},{},[464],{"type":65,"value":465},"Build all projects affected by specific project",{"type":60,"tag":295,"props":467,"children":469},{"className":297,"code":468,"language":299,"meta":300,"style":300},"rush build --from @my-company\u002Fmy-library\n",[470],{"type":60,"tag":235,"props":471,"children":472},{"__ignoreMap":300},[473],{"type":60,"tag":306,"props":474,"children":475},{"class":308,"line":309},[476,480,484,489],{"type":60,"tag":306,"props":477,"children":478},{"style":313},[479],{"type":65,"value":18},{"type":60,"tag":306,"props":481,"children":482},{"style":318},[483],{"type":65,"value":321},{"type":60,"tag":306,"props":485,"children":486},{"style":318},[487],{"type":65,"value":488}," --from",{"type":60,"tag":306,"props":490,"children":491},{"style":318},[492],{"type":65,"value":493}," @my-company\u002Fmy-library\n",{"type":60,"tag":265,"props":495,"children":497},{"id":496},"impacted-by",[498,500],{"type":65,"value":499},"--impacted-by ",{"type":60,"tag":272,"props":501,"children":502},{},[],{"type":60,"tag":68,"props":504,"children":505},{},[506],{"type":65,"value":507},"Select projects that might be affected by specified project changes, excluding dependencies.",{"type":60,"tag":281,"props":509,"children":510},{},[511,516],{"type":60,"tag":94,"props":512,"children":513},{},[514],{"type":65,"value":515},"Quick test of project change impacts",{"type":60,"tag":94,"props":517,"children":518},{},[519],{"type":65,"value":520},"Use when dependency status is already correct",{"type":60,"tag":295,"props":522,"children":524},{"className":297,"code":523,"language":299,"meta":300,"style":300},"rush build --impacted-by @my-company\u002Fmy-library\n",[525],{"type":60,"tag":235,"props":526,"children":527},{"__ignoreMap":300},[528],{"type":60,"tag":306,"props":529,"children":530},{"class":308,"line":309},[531,535,539,544],{"type":60,"tag":306,"props":532,"children":533},{"style":313},[534],{"type":65,"value":18},{"type":60,"tag":306,"props":536,"children":537},{"style":318},[538],{"type":65,"value":321},{"type":60,"tag":306,"props":540,"children":541},{"style":318},[542],{"type":65,"value":543}," --impacted-by",{"type":60,"tag":306,"props":545,"children":546},{"style":318},[547],{"type":65,"value":493},{"type":60,"tag":265,"props":549,"children":551},{"id":550},"impacted-by-except",[552,554],{"type":65,"value":553},"--impacted-by-except ",{"type":60,"tag":272,"props":555,"children":556},{},[],{"type":60,"tag":68,"props":558,"children":559},{},[560,562,568],{"type":65,"value":561},"Similar to ",{"type":60,"tag":235,"props":563,"children":565},{"className":564},[],[566],{"type":65,"value":567},"--impacted-by",{"type":65,"value":569},", but excludes specified project itself.",{"type":60,"tag":281,"props":571,"children":572},{},[573,578],{"type":60,"tag":94,"props":574,"children":575},{},[576],{"type":65,"value":577},"Project itself has been manually built",{"type":60,"tag":94,"props":579,"children":580},{},[581],{"type":65,"value":582},"Only need to test downstream impacts",{"type":60,"tag":295,"props":584,"children":586},{"className":297,"code":585,"language":299,"meta":300,"style":300},"rush build --impacted-by-except @my-company\u002Fmy-library\n",[587],{"type":60,"tag":235,"props":588,"children":589},{"__ignoreMap":300},[590],{"type":60,"tag":306,"props":591,"children":592},{"class":308,"line":309},[593,597,601,606],{"type":60,"tag":306,"props":594,"children":595},{"style":313},[596],{"type":65,"value":18},{"type":60,"tag":306,"props":598,"children":599},{"style":318},[600],{"type":65,"value":321},{"type":60,"tag":306,"props":602,"children":603},{"style":318},[604],{"type":65,"value":605}," --impacted-by-except",{"type":60,"tag":306,"props":607,"children":608},{"style":318},[609],{"type":65,"value":493},{"type":60,"tag":265,"props":611,"children":613},{"id":612},"only",[614,616],{"type":65,"value":615},"--only ",{"type":60,"tag":272,"props":617,"children":618},{},[],{"type":60,"tag":68,"props":620,"children":621},{},[622],{"type":65,"value":623},"Only select specified project, completely ignore dependency relationships.",{"type":60,"tag":281,"props":625,"children":626},{},[627,632],{"type":60,"tag":94,"props":628,"children":629},{},[630],{"type":65,"value":631},"Dependency status is known to be correct",{"type":60,"tag":94,"props":633,"children":634},{},[635],{"type":65,"value":636},"Combine with other selection parameters",{"type":60,"tag":295,"props":638,"children":640},{"className":297,"code":639,"language":299,"meta":300,"style":300},"rush build --only @my-company\u002Fmy-project\nrush build --impacted-by projectA --only projectB\n",[641],{"type":60,"tag":235,"props":642,"children":643},{"__ignoreMap":300},[644,664],{"type":60,"tag":306,"props":645,"children":646},{"class":308,"line":309},[647,651,655,660],{"type":60,"tag":306,"props":648,"children":649},{"style":313},[650],{"type":65,"value":18},{"type":60,"tag":306,"props":652,"children":653},{"style":318},[654],{"type":65,"value":321},{"type":60,"tag":306,"props":656,"children":657},{"style":318},[658],{"type":65,"value":659}," --only",{"type":60,"tag":306,"props":661,"children":662},{"style":318},[663],{"type":65,"value":331},{"type":60,"tag":306,"props":665,"children":666},{"class":308,"line":334},[667,671,675,679,684,688],{"type":60,"tag":306,"props":668,"children":669},{"style":313},[670],{"type":65,"value":18},{"type":60,"tag":306,"props":672,"children":673},{"style":318},[674],{"type":65,"value":321},{"type":60,"tag":306,"props":676,"children":677},{"style":318},[678],{"type":65,"value":543},{"type":60,"tag":306,"props":680,"children":681},{"style":318},[682],{"type":65,"value":683}," projectA",{"type":60,"tag":306,"props":685,"children":686},{"style":318},[687],{"type":65,"value":659},{"type":60,"tag":306,"props":689,"children":690},{"style":318},[691],{"type":65,"value":692}," projectB\n",{"type":60,"tag":74,"props":694,"children":696},{"id":695},"command-usage-guidelines",[697],{"type":65,"value":698},"Command Usage Guidelines",{"type":60,"tag":265,"props":700,"children":702},{"id":701},"command-tool-selection",[703],{"type":65,"value":704},"Command Tool Selection",{"type":60,"tag":68,"props":706,"children":707},{},[708],{"type":65,"value":709},"Choose the correct command tool based on different scenarios:",{"type":60,"tag":90,"props":711,"children":712},{},[713,751,802],{"type":60,"tag":94,"props":714,"children":715},{},[716,726,728],{"type":60,"tag":84,"props":717,"children":718},{},[719,724],{"type":60,"tag":235,"props":720,"children":722},{"className":721},[],[723],{"type":65,"value":18},{"type":65,"value":725}," command",{"type":65,"value":727}," - Execute operations affecting the entire repository or multiple projects",{"type":60,"tag":281,"props":729,"children":730},{},[731,736,741,746],{"type":60,"tag":94,"props":732,"children":733},{},[734],{"type":65,"value":735},"Strict parameter validation and documentation",{"type":60,"tag":94,"props":737,"children":738},{},[739],{"type":65,"value":740},"Support for global and batch commands",{"type":60,"tag":94,"props":742,"children":743},{},[744],{"type":65,"value":745},"Suitable for standardized workflows",{"type":60,"tag":94,"props":747,"children":748},{},[749],{"type":65,"value":750},"Use cases: Dependency installation, building, publishing",{"type":60,"tag":94,"props":752,"children":753},{},[754,764,766],{"type":60,"tag":84,"props":755,"children":756},{},[757,763],{"type":60,"tag":235,"props":758,"children":760},{"className":759},[],[761],{"type":65,"value":762},"rushx",{"type":65,"value":725},{"type":65,"value":765}," - Execute specific scripts for a single project",{"type":60,"tag":281,"props":767,"children":768},{},[769,787,792,797],{"type":60,"tag":94,"props":770,"children":771},{},[772,773,779,781],{"type":65,"value":561},{"type":60,"tag":235,"props":774,"children":776},{"className":775},[],[777],{"type":65,"value":778},"npm run",{"type":65,"value":780}," or ",{"type":60,"tag":235,"props":782,"children":784},{"className":783},[],[785],{"type":65,"value":786},"pnpm run",{"type":60,"tag":94,"props":788,"children":789},{},[790],{"type":65,"value":791},"Uses Rush version selector for toolchain consistency",{"type":60,"tag":94,"props":793,"children":794},{},[795],{"type":65,"value":796},"Prepares shell environment based on Rush configuration",{"type":60,"tag":94,"props":798,"children":799},{},[800],{"type":65,"value":801},"Use cases: Running project-specific build scripts, tests, dev servers",{"type":60,"tag":94,"props":803,"children":804},{},[805,815,817],{"type":60,"tag":84,"props":806,"children":807},{},[808,814],{"type":60,"tag":235,"props":809,"children":811},{"className":810},[],[812],{"type":65,"value":813},"rush-pnpm",{"type":65,"value":725},{"type":65,"value":816}," - Replace direct use of pnpm in Rush repository",{"type":60,"tag":281,"props":818,"children":819},{},[820,825,830,835],{"type":60,"tag":94,"props":821,"children":822},{},[823],{"type":65,"value":824},"Sets correct PNPM workspace context",{"type":60,"tag":94,"props":826,"children":827},{},[828],{"type":65,"value":829},"Supports Rush-specific enhancements",{"type":60,"tag":94,"props":831,"children":832},{},[833],{"type":65,"value":834},"Provides compatibility checks with Rush",{"type":60,"tag":94,"props":836,"children":837},{},[838],{"type":65,"value":839},"Use cases: When direct PNPM commands are needed",{"type":60,"tag":265,"props":841,"children":843},{"id":842},"install-vs-update",[844],{"type":65,"value":845},"Install vs Update",{"type":60,"tag":847,"props":848,"children":849},"table",{},[850,874],{"type":60,"tag":851,"props":852,"children":853},"thead",{},[854],{"type":60,"tag":855,"props":856,"children":857},"tr",{},[858,864,869],{"type":60,"tag":859,"props":860,"children":861},"th",{},[862],{"type":65,"value":863},"Command",{"type":60,"tag":859,"props":865,"children":866},{},[867],{"type":65,"value":868},"Behavior",{"type":60,"tag":859,"props":870,"children":871},{},[872],{"type":65,"value":873},"When to Use",{"type":60,"tag":875,"props":876,"children":877},"tbody",{},[878,901],{"type":60,"tag":855,"props":879,"children":880},{},[881,891,896],{"type":60,"tag":882,"props":883,"children":884},"td",{},[885],{"type":60,"tag":235,"props":886,"children":888},{"className":887},[],[889],{"type":65,"value":890},"rush update",{"type":60,"tag":882,"props":892,"children":893},{},[894],{"type":65,"value":895},"Updates shrinkwrap, installs new dependencies",{"type":60,"tag":882,"props":897,"children":898},{},[899],{"type":65,"value":900},"After cloning, after git pull, after modifying package.json",{"type":60,"tag":855,"props":902,"children":903},{},[904,913,918],{"type":60,"tag":882,"props":905,"children":906},{},[907],{"type":60,"tag":235,"props":908,"children":910},{"className":909},[],[911],{"type":65,"value":912},"rush install",{"type":60,"tag":882,"props":914,"children":915},{},[916],{"type":65,"value":917},"Read-only install from existing shrinkwrap",{"type":60,"tag":882,"props":919,"children":920},{},[921],{"type":65,"value":922},"CI\u002FCD pipelines, ensuring version consistency",{"type":60,"tag":265,"props":924,"children":926},{"id":925},"build-vs-rebuild",[927],{"type":65,"value":928},"Build vs Rebuild",{"type":60,"tag":847,"props":930,"children":931},{},[932,950],{"type":60,"tag":851,"props":933,"children":934},{},[935],{"type":60,"tag":855,"props":936,"children":937},{},[938,942,946],{"type":60,"tag":859,"props":939,"children":940},{},[941],{"type":65,"value":863},{"type":60,"tag":859,"props":943,"children":944},{},[945],{"type":65,"value":868},{"type":60,"tag":859,"props":947,"children":948},{},[949],{"type":65,"value":873},{"type":60,"tag":875,"props":951,"children":952},{},[953,975],{"type":60,"tag":855,"props":954,"children":955},{},[956,965,970],{"type":60,"tag":882,"props":957,"children":958},{},[959],{"type":60,"tag":235,"props":960,"children":962},{"className":961},[],[963],{"type":65,"value":964},"rush build",{"type":60,"tag":882,"props":966,"children":967},{},[968],{"type":65,"value":969},"Incremental build, only changed projects",{"type":60,"tag":882,"props":971,"children":972},{},[973],{"type":65,"value":974},"Daily development, quick validation",{"type":60,"tag":855,"props":976,"children":977},{},[978,987,992],{"type":60,"tag":882,"props":979,"children":980},{},[981],{"type":60,"tag":235,"props":982,"children":984},{"className":983},[],[985],{"type":65,"value":986},"rush rebuild",{"type":60,"tag":882,"props":988,"children":989},{},[990],{"type":65,"value":991},"Clean build all projects",{"type":60,"tag":882,"props":993,"children":994},{},[995],{"type":65,"value":996},"Complete rebuild needed, investigating issues",{"type":60,"tag":74,"props":998,"children":1000},{"id":999},"dependency-management",[1001],{"type":65,"value":1002},"Dependency Management",{"type":60,"tag":265,"props":1004,"children":1006},{"id":1005},"package-manager-selection",[1007],{"type":65,"value":1008},"Package Manager Selection",{"type":60,"tag":68,"props":1010,"children":1011},{},[1012,1014,1020],{"type":65,"value":1013},"Choose in ",{"type":60,"tag":235,"props":1015,"children":1017},{"className":1016},[],[1018],{"type":65,"value":1019},"rush.json",{"type":65,"value":1021},":",{"type":60,"tag":295,"props":1023,"children":1027},{"className":1024,"code":1025,"language":1026,"meta":300,"style":300},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"pnpmVersion\": \"8.x.x\"     \u002F\u002F Preferred - efficient, strict\n  \u002F\u002F \"npmVersion\": \"8.x.x\"   \u002F\u002F Alternative\n  \u002F\u002F \"yarnVersion\": \"1.x.x\"  \u002F\u002F Alternative\n}\n","json",[1028],{"type":60,"tag":235,"props":1029,"children":1030},{"__ignoreMap":300},[1031,1040,1082,1095,1109],{"type":60,"tag":306,"props":1032,"children":1033},{"class":308,"line":309},[1034],{"type":60,"tag":306,"props":1035,"children":1037},{"style":1036},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[1038],{"type":65,"value":1039},"{\n",{"type":60,"tag":306,"props":1041,"children":1042},{"class":308,"line":334},[1043,1048,1054,1059,1063,1068,1073,1077],{"type":60,"tag":306,"props":1044,"children":1045},{"style":1036},[1046],{"type":65,"value":1047},"  \"",{"type":60,"tag":306,"props":1049,"children":1051},{"style":1050},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[1052],{"type":65,"value":1053},"pnpmVersion",{"type":60,"tag":306,"props":1055,"children":1056},{"style":1036},[1057],{"type":65,"value":1058},"\"",{"type":60,"tag":306,"props":1060,"children":1061},{"style":1036},[1062],{"type":65,"value":1021},{"type":60,"tag":306,"props":1064,"children":1065},{"style":1036},[1066],{"type":65,"value":1067}," \"",{"type":60,"tag":306,"props":1069,"children":1070},{"style":318},[1071],{"type":65,"value":1072},"8.x.x",{"type":60,"tag":306,"props":1074,"children":1075},{"style":1036},[1076],{"type":65,"value":1058},{"type":60,"tag":306,"props":1078,"children":1079},{"style":355},[1080],{"type":65,"value":1081},"     \u002F\u002F Preferred - efficient, strict\n",{"type":60,"tag":306,"props":1083,"children":1084},{"class":308,"line":361},[1085,1090],{"type":60,"tag":306,"props":1086,"children":1087},{"style":355},[1088],{"type":65,"value":1089},"  \u002F\u002F \"npmVersion\": \"8.x.x\"",{"type":60,"tag":306,"props":1091,"children":1092},{"style":355},[1093],{"type":65,"value":1094},"   \u002F\u002F Alternative\n",{"type":60,"tag":306,"props":1096,"children":1098},{"class":308,"line":1097},4,[1099,1104],{"type":60,"tag":306,"props":1100,"children":1101},{"style":355},[1102],{"type":65,"value":1103},"  \u002F\u002F \"yarnVersion\": \"1.x.x\"",{"type":60,"tag":306,"props":1105,"children":1106},{"style":355},[1107],{"type":65,"value":1108},"  \u002F\u002F Alternative\n",{"type":60,"tag":306,"props":1110,"children":1112},{"class":308,"line":1111},5,[1113],{"type":60,"tag":306,"props":1114,"children":1115},{"style":1036},[1116],{"type":65,"value":1117},"}\n",{"type":60,"tag":265,"props":1119,"children":1121},{"id":1120},"version-constraints",[1122],{"type":65,"value":1123},"Version Constraints",{"type":60,"tag":68,"props":1125,"children":1126},{},[1127,1129,1135],{"type":65,"value":1128},"Configure in ",{"type":60,"tag":235,"props":1130,"children":1132},{"className":1131},[],[1133],{"type":65,"value":1134},"common\u002Fconfig\u002Fsubspaces\u002F\u003Csubspace>\u002Fcommon-versions.json",{"type":65,"value":1021},{"type":60,"tag":295,"props":1137,"children":1139},{"className":1024,"code":1138,"language":1026,"meta":300,"style":300},"{\n  \"preferredVersions\": {\n    \"react\": \"17.0.2\",\n    \"typescript\": \"~4.5.0\"\n  },\n  \"implicitlyPreferredVersions\": true,\n  \"allowedAlternativeVersions\": {\n    \"typescript\": [\"~4.5.0\", \"~4.6.0\"]\n  }\n}\n",[1140],{"type":60,"tag":235,"props":1141,"children":1142},{"__ignoreMap":300},[1143,1150,1175,1214,1247,1255,1281,1306,1366,1375],{"type":60,"tag":306,"props":1144,"children":1145},{"class":308,"line":309},[1146],{"type":60,"tag":306,"props":1147,"children":1148},{"style":1036},[1149],{"type":65,"value":1039},{"type":60,"tag":306,"props":1151,"children":1152},{"class":308,"line":334},[1153,1157,1162,1166,1170],{"type":60,"tag":306,"props":1154,"children":1155},{"style":1036},[1156],{"type":65,"value":1047},{"type":60,"tag":306,"props":1158,"children":1159},{"style":1050},[1160],{"type":65,"value":1161},"preferredVersions",{"type":60,"tag":306,"props":1163,"children":1164},{"style":1036},[1165],{"type":65,"value":1058},{"type":60,"tag":306,"props":1167,"children":1168},{"style":1036},[1169],{"type":65,"value":1021},{"type":60,"tag":306,"props":1171,"children":1172},{"style":1036},[1173],{"type":65,"value":1174}," {\n",{"type":60,"tag":306,"props":1176,"children":1177},{"class":308,"line":361},[1178,1183,1188,1192,1196,1200,1205,1209],{"type":60,"tag":306,"props":1179,"children":1180},{"style":1036},[1181],{"type":65,"value":1182},"    \"",{"type":60,"tag":306,"props":1184,"children":1185},{"style":313},[1186],{"type":65,"value":1187},"react",{"type":60,"tag":306,"props":1189,"children":1190},{"style":1036},[1191],{"type":65,"value":1058},{"type":60,"tag":306,"props":1193,"children":1194},{"style":1036},[1195],{"type":65,"value":1021},{"type":60,"tag":306,"props":1197,"children":1198},{"style":1036},[1199],{"type":65,"value":1067},{"type":60,"tag":306,"props":1201,"children":1202},{"style":318},[1203],{"type":65,"value":1204},"17.0.2",{"type":60,"tag":306,"props":1206,"children":1207},{"style":1036},[1208],{"type":65,"value":1058},{"type":60,"tag":306,"props":1210,"children":1211},{"style":1036},[1212],{"type":65,"value":1213},",\n",{"type":60,"tag":306,"props":1215,"children":1216},{"class":308,"line":1097},[1217,1221,1225,1229,1233,1237,1242],{"type":60,"tag":306,"props":1218,"children":1219},{"style":1036},[1220],{"type":65,"value":1182},{"type":60,"tag":306,"props":1222,"children":1223},{"style":313},[1224],{"type":65,"value":46},{"type":60,"tag":306,"props":1226,"children":1227},{"style":1036},[1228],{"type":65,"value":1058},{"type":60,"tag":306,"props":1230,"children":1231},{"style":1036},[1232],{"type":65,"value":1021},{"type":60,"tag":306,"props":1234,"children":1235},{"style":1036},[1236],{"type":65,"value":1067},{"type":60,"tag":306,"props":1238,"children":1239},{"style":318},[1240],{"type":65,"value":1241},"~4.5.0",{"type":60,"tag":306,"props":1243,"children":1244},{"style":1036},[1245],{"type":65,"value":1246},"\"\n",{"type":60,"tag":306,"props":1248,"children":1249},{"class":308,"line":1111},[1250],{"type":60,"tag":306,"props":1251,"children":1252},{"style":1036},[1253],{"type":65,"value":1254},"  },\n",{"type":60,"tag":306,"props":1256,"children":1258},{"class":308,"line":1257},6,[1259,1263,1268,1272,1276],{"type":60,"tag":306,"props":1260,"children":1261},{"style":1036},[1262],{"type":65,"value":1047},{"type":60,"tag":306,"props":1264,"children":1265},{"style":1050},[1266],{"type":65,"value":1267},"implicitlyPreferredVersions",{"type":60,"tag":306,"props":1269,"children":1270},{"style":1036},[1271],{"type":65,"value":1058},{"type":60,"tag":306,"props":1273,"children":1274},{"style":1036},[1275],{"type":65,"value":1021},{"type":60,"tag":306,"props":1277,"children":1278},{"style":1036},[1279],{"type":65,"value":1280}," true,\n",{"type":60,"tag":306,"props":1282,"children":1284},{"class":308,"line":1283},7,[1285,1289,1294,1298,1302],{"type":60,"tag":306,"props":1286,"children":1287},{"style":1036},[1288],{"type":65,"value":1047},{"type":60,"tag":306,"props":1290,"children":1291},{"style":1050},[1292],{"type":65,"value":1293},"allowedAlternativeVersions",{"type":60,"tag":306,"props":1295,"children":1296},{"style":1036},[1297],{"type":65,"value":1058},{"type":60,"tag":306,"props":1299,"children":1300},{"style":1036},[1301],{"type":65,"value":1021},{"type":60,"tag":306,"props":1303,"children":1304},{"style":1036},[1305],{"type":65,"value":1174},{"type":60,"tag":306,"props":1307,"children":1309},{"class":308,"line":1308},8,[1310,1314,1318,1322,1326,1331,1335,1339,1343,1348,1352,1357,1361],{"type":60,"tag":306,"props":1311,"children":1312},{"style":1036},[1313],{"type":65,"value":1182},{"type":60,"tag":306,"props":1315,"children":1316},{"style":313},[1317],{"type":65,"value":46},{"type":60,"tag":306,"props":1319,"children":1320},{"style":1036},[1321],{"type":65,"value":1058},{"type":60,"tag":306,"props":1323,"children":1324},{"style":1036},[1325],{"type":65,"value":1021},{"type":60,"tag":306,"props":1327,"children":1328},{"style":1036},[1329],{"type":65,"value":1330}," [",{"type":60,"tag":306,"props":1332,"children":1333},{"style":1036},[1334],{"type":65,"value":1058},{"type":60,"tag":306,"props":1336,"children":1337},{"style":318},[1338],{"type":65,"value":1241},{"type":60,"tag":306,"props":1340,"children":1341},{"style":1036},[1342],{"type":65,"value":1058},{"type":60,"tag":306,"props":1344,"children":1345},{"style":1036},[1346],{"type":65,"value":1347},",",{"type":60,"tag":306,"props":1349,"children":1350},{"style":1036},[1351],{"type":65,"value":1067},{"type":60,"tag":306,"props":1353,"children":1354},{"style":318},[1355],{"type":65,"value":1356},"~4.6.0",{"type":60,"tag":306,"props":1358,"children":1359},{"style":1036},[1360],{"type":65,"value":1058},{"type":60,"tag":306,"props":1362,"children":1363},{"style":1036},[1364],{"type":65,"value":1365},"]\n",{"type":60,"tag":306,"props":1367,"children":1369},{"class":308,"line":1368},9,[1370],{"type":60,"tag":306,"props":1371,"children":1372},{"style":1036},[1373],{"type":65,"value":1374},"  }\n",{"type":60,"tag":306,"props":1376,"children":1378},{"class":308,"line":1377},10,[1379],{"type":60,"tag":306,"props":1380,"children":1381},{"style":1036},[1382],{"type":65,"value":1117},{"type":60,"tag":265,"props":1384,"children":1386},{"id":1385},"addingremoving-dependencies",[1387],{"type":65,"value":1388},"Adding\u002FRemoving Dependencies",{"type":60,"tag":68,"props":1390,"children":1391},{},[1392],{"type":65,"value":1393},"Always use Rush commands, not npm\u002Fpnpm directly:",{"type":60,"tag":295,"props":1395,"children":1397},{"className":297,"code":1396,"language":299,"meta":300,"style":300},"rush add -p lodash --dev      # Add dev dependency\nrush add -p react --exact     # Add exact version\nrush remove -p lodash         # Remove dependency\n",[1398],{"type":60,"tag":235,"props":1399,"children":1400},{"__ignoreMap":300},[1401,1433,1463],{"type":60,"tag":306,"props":1402,"children":1403},{"class":308,"line":309},[1404,1408,1413,1418,1423,1428],{"type":60,"tag":306,"props":1405,"children":1406},{"style":313},[1407],{"type":65,"value":18},{"type":60,"tag":306,"props":1409,"children":1410},{"style":318},[1411],{"type":65,"value":1412}," add",{"type":60,"tag":306,"props":1414,"children":1415},{"style":318},[1416],{"type":65,"value":1417}," -p",{"type":60,"tag":306,"props":1419,"children":1420},{"style":318},[1421],{"type":65,"value":1422}," lodash",{"type":60,"tag":306,"props":1424,"children":1425},{"style":318},[1426],{"type":65,"value":1427}," --dev",{"type":60,"tag":306,"props":1429,"children":1430},{"style":355},[1431],{"type":65,"value":1432},"      # Add dev dependency\n",{"type":60,"tag":306,"props":1434,"children":1435},{"class":308,"line":334},[1436,1440,1444,1448,1453,1458],{"type":60,"tag":306,"props":1437,"children":1438},{"style":313},[1439],{"type":65,"value":18},{"type":60,"tag":306,"props":1441,"children":1442},{"style":318},[1443],{"type":65,"value":1412},{"type":60,"tag":306,"props":1445,"children":1446},{"style":318},[1447],{"type":65,"value":1417},{"type":60,"tag":306,"props":1449,"children":1450},{"style":318},[1451],{"type":65,"value":1452}," react",{"type":60,"tag":306,"props":1454,"children":1455},{"style":318},[1456],{"type":65,"value":1457}," --exact",{"type":60,"tag":306,"props":1459,"children":1460},{"style":355},[1461],{"type":65,"value":1462},"     # Add exact version\n",{"type":60,"tag":306,"props":1464,"children":1465},{"class":308,"line":361},[1466,1470,1475,1479,1483],{"type":60,"tag":306,"props":1467,"children":1468},{"style":313},[1469],{"type":65,"value":18},{"type":60,"tag":306,"props":1471,"children":1472},{"style":318},[1473],{"type":65,"value":1474}," remove",{"type":60,"tag":306,"props":1476,"children":1477},{"style":318},[1478],{"type":65,"value":1417},{"type":60,"tag":306,"props":1480,"children":1481},{"style":318},[1482],{"type":65,"value":1422},{"type":60,"tag":306,"props":1484,"children":1485},{"style":355},[1486],{"type":65,"value":1487},"         # Remove dependency\n",{"type":60,"tag":74,"props":1489,"children":1491},{"id":1490},"build-cache-configuration",[1492],{"type":65,"value":1493},"Build Cache Configuration",{"type":60,"tag":68,"props":1495,"children":1496},{},[1497,1498,1504],{"type":65,"value":1128},{"type":60,"tag":235,"props":1499,"children":1501},{"className":1500},[],[1502],{"type":65,"value":1503},"\u003Cproject>\u002Fconfig\u002Frush-project.json",{"type":65,"value":1021},{"type":60,"tag":295,"props":1506,"children":1508},{"className":1024,"code":1507,"language":1026,"meta":300,"style":300},"{\n  \"operationSettings\": [\n    {\n      \"operationName\": \"build\",\n      \"outputFolderNames\": [\"lib\", \"dist\"],\n      \"disableBuildCacheForOperation\": false,\n      \"dependsOnEnvVars\": [\"MY_ENV_VAR\"]\n    }\n  ]\n}\n",[1509],{"type":60,"tag":235,"props":1510,"children":1511},{"__ignoreMap":300},[1512,1519,1544,1552,1589,1648,1673,1714,1722,1730],{"type":60,"tag":306,"props":1513,"children":1514},{"class":308,"line":309},[1515],{"type":60,"tag":306,"props":1516,"children":1517},{"style":1036},[1518],{"type":65,"value":1039},{"type":60,"tag":306,"props":1520,"children":1521},{"class":308,"line":334},[1522,1526,1531,1535,1539],{"type":60,"tag":306,"props":1523,"children":1524},{"style":1036},[1525],{"type":65,"value":1047},{"type":60,"tag":306,"props":1527,"children":1528},{"style":1050},[1529],{"type":65,"value":1530},"operationSettings",{"type":60,"tag":306,"props":1532,"children":1533},{"style":1036},[1534],{"type":65,"value":1058},{"type":60,"tag":306,"props":1536,"children":1537},{"style":1036},[1538],{"type":65,"value":1021},{"type":60,"tag":306,"props":1540,"children":1541},{"style":1036},[1542],{"type":65,"value":1543}," [\n",{"type":60,"tag":306,"props":1545,"children":1546},{"class":308,"line":361},[1547],{"type":60,"tag":306,"props":1548,"children":1549},{"style":1036},[1550],{"type":65,"value":1551},"    {\n",{"type":60,"tag":306,"props":1553,"children":1554},{"class":308,"line":1097},[1555,1560,1565,1569,1573,1577,1581,1585],{"type":60,"tag":306,"props":1556,"children":1557},{"style":1036},[1558],{"type":65,"value":1559},"      \"",{"type":60,"tag":306,"props":1561,"children":1562},{"style":313},[1563],{"type":65,"value":1564},"operationName",{"type":60,"tag":306,"props":1566,"children":1567},{"style":1036},[1568],{"type":65,"value":1058},{"type":60,"tag":306,"props":1570,"children":1571},{"style":1036},[1572],{"type":65,"value":1021},{"type":60,"tag":306,"props":1574,"children":1575},{"style":1036},[1576],{"type":65,"value":1067},{"type":60,"tag":306,"props":1578,"children":1579},{"style":318},[1580],{"type":65,"value":34},{"type":60,"tag":306,"props":1582,"children":1583},{"style":1036},[1584],{"type":65,"value":1058},{"type":60,"tag":306,"props":1586,"children":1587},{"style":1036},[1588],{"type":65,"value":1213},{"type":60,"tag":306,"props":1590,"children":1591},{"class":308,"line":1111},[1592,1596,1601,1605,1609,1613,1617,1622,1626,1630,1634,1639,1643],{"type":60,"tag":306,"props":1593,"children":1594},{"style":1036},[1595],{"type":65,"value":1559},{"type":60,"tag":306,"props":1597,"children":1598},{"style":313},[1599],{"type":65,"value":1600},"outputFolderNames",{"type":60,"tag":306,"props":1602,"children":1603},{"style":1036},[1604],{"type":65,"value":1058},{"type":60,"tag":306,"props":1606,"children":1607},{"style":1036},[1608],{"type":65,"value":1021},{"type":60,"tag":306,"props":1610,"children":1611},{"style":1036},[1612],{"type":65,"value":1330},{"type":60,"tag":306,"props":1614,"children":1615},{"style":1036},[1616],{"type":65,"value":1058},{"type":60,"tag":306,"props":1618,"children":1619},{"style":318},[1620],{"type":65,"value":1621},"lib",{"type":60,"tag":306,"props":1623,"children":1624},{"style":1036},[1625],{"type":65,"value":1058},{"type":60,"tag":306,"props":1627,"children":1628},{"style":1036},[1629],{"type":65,"value":1347},{"type":60,"tag":306,"props":1631,"children":1632},{"style":1036},[1633],{"type":65,"value":1067},{"type":60,"tag":306,"props":1635,"children":1636},{"style":318},[1637],{"type":65,"value":1638},"dist",{"type":60,"tag":306,"props":1640,"children":1641},{"style":1036},[1642],{"type":65,"value":1058},{"type":60,"tag":306,"props":1644,"children":1645},{"style":1036},[1646],{"type":65,"value":1647},"],\n",{"type":60,"tag":306,"props":1649,"children":1650},{"class":308,"line":1257},[1651,1655,1660,1664,1668],{"type":60,"tag":306,"props":1652,"children":1653},{"style":1036},[1654],{"type":65,"value":1559},{"type":60,"tag":306,"props":1656,"children":1657},{"style":313},[1658],{"type":65,"value":1659},"disableBuildCacheForOperation",{"type":60,"tag":306,"props":1661,"children":1662},{"style":1036},[1663],{"type":65,"value":1058},{"type":60,"tag":306,"props":1665,"children":1666},{"style":1036},[1667],{"type":65,"value":1021},{"type":60,"tag":306,"props":1669,"children":1670},{"style":1036},[1671],{"type":65,"value":1672}," false,\n",{"type":60,"tag":306,"props":1674,"children":1675},{"class":308,"line":1283},[1676,1680,1685,1689,1693,1697,1701,1706,1710],{"type":60,"tag":306,"props":1677,"children":1678},{"style":1036},[1679],{"type":65,"value":1559},{"type":60,"tag":306,"props":1681,"children":1682},{"style":313},[1683],{"type":65,"value":1684},"dependsOnEnvVars",{"type":60,"tag":306,"props":1686,"children":1687},{"style":1036},[1688],{"type":65,"value":1058},{"type":60,"tag":306,"props":1690,"children":1691},{"style":1036},[1692],{"type":65,"value":1021},{"type":60,"tag":306,"props":1694,"children":1695},{"style":1036},[1696],{"type":65,"value":1330},{"type":60,"tag":306,"props":1698,"children":1699},{"style":1036},[1700],{"type":65,"value":1058},{"type":60,"tag":306,"props":1702,"children":1703},{"style":318},[1704],{"type":65,"value":1705},"MY_ENV_VAR",{"type":60,"tag":306,"props":1707,"children":1708},{"style":1036},[1709],{"type":65,"value":1058},{"type":60,"tag":306,"props":1711,"children":1712},{"style":1036},[1713],{"type":65,"value":1365},{"type":60,"tag":306,"props":1715,"children":1716},{"class":308,"line":1308},[1717],{"type":60,"tag":306,"props":1718,"children":1719},{"style":1036},[1720],{"type":65,"value":1721},"    }\n",{"type":60,"tag":306,"props":1723,"children":1724},{"class":308,"line":1368},[1725],{"type":60,"tag":306,"props":1726,"children":1727},{"style":1036},[1728],{"type":65,"value":1729},"  ]\n",{"type":60,"tag":306,"props":1731,"children":1732},{"class":308,"line":1377},[1733],{"type":60,"tag":306,"props":1734,"children":1735},{"style":1036},[1736],{"type":65,"value":1117},{"type":60,"tag":68,"props":1738,"children":1739},{},[1740],{"type":60,"tag":84,"props":1741,"children":1742},{},[1743],{"type":65,"value":1744},"Cache Behavior:",{"type":60,"tag":281,"props":1746,"children":1747},{},[1748,1759,1764],{"type":60,"tag":94,"props":1749,"children":1750},{},[1751,1753],{"type":65,"value":1752},"Cache stored in ",{"type":60,"tag":235,"props":1754,"children":1756},{"className":1755},[],[1757],{"type":65,"value":1758},"common\u002Ftemp\u002Fbuild-cache",{"type":60,"tag":94,"props":1760,"children":1761},{},[1762],{"type":65,"value":1763},"Invalidated by: source changes, dependency changes, env vars, command params",{"type":60,"tag":94,"props":1765,"children":1766},{},[1767,1769],{"type":65,"value":1768},"Parallel builds supported via ",{"type":60,"tag":235,"props":1770,"children":1772},{"className":1771},[],[1773],{"type":65,"value":1774},"enableParallelism",{"type":60,"tag":74,"props":1776,"children":1778},{"id":1777},"troubleshooting",[1779],{"type":65,"value":1780},"Troubleshooting",{"type":60,"tag":265,"props":1782,"children":1784},{"id":1783},"dependency-issues",[1785],{"type":65,"value":1786},"Dependency Issues",{"type":60,"tag":281,"props":1788,"children":1789},{},[1790,1817,1830],{"type":60,"tag":94,"props":1791,"children":1792},{},[1793,1795,1801,1802,1808,1809,1815],{"type":65,"value":1794},"Avoid ",{"type":60,"tag":235,"props":1796,"children":1798},{"className":1797},[],[1799],{"type":65,"value":1800},"npm",{"type":65,"value":242},{"type":60,"tag":235,"props":1803,"children":1805},{"className":1804},[],[1806],{"type":65,"value":1807},"pnpm",{"type":65,"value":242},{"type":60,"tag":235,"props":1810,"children":1812},{"className":1811},[],[1813],{"type":65,"value":1814},"yarn",{"type":65,"value":1816}," - use Rush commands",{"type":60,"tag":94,"props":1818,"children":1819},{},[1820,1822,1828],{"type":65,"value":1821},"Run ",{"type":60,"tag":235,"props":1823,"children":1825},{"className":1824},[],[1826],{"type":65,"value":1827},"rush purge",{"type":65,"value":1829}," to clean environment",{"type":60,"tag":94,"props":1831,"children":1832},{},[1833,1834,1840],{"type":65,"value":1821},{"type":60,"tag":235,"props":1835,"children":1837},{"className":1836},[],[1838],{"type":65,"value":1839},"rush update --recheck",{"type":65,"value":1841}," to force dependency check",{"type":60,"tag":265,"props":1843,"children":1845},{"id":1844},"build-issues",[1846],{"type":65,"value":1847},"Build Issues",{"type":60,"tag":281,"props":1849,"children":1850},{},[1851,1863,1876],{"type":60,"tag":94,"props":1852,"children":1853},{},[1854,1856,1861],{"type":65,"value":1855},"Use ",{"type":60,"tag":235,"props":1857,"children":1859},{"className":1858},[],[1860],{"type":65,"value":986},{"type":65,"value":1862}," to skip cache",{"type":60,"tag":94,"props":1864,"children":1865},{},[1866,1868,1874],{"type":65,"value":1867},"Check ",{"type":60,"tag":235,"props":1869,"children":1871},{"className":1870},[],[1872],{"type":65,"value":1873},"rushx build",{"type":65,"value":1875}," output for specific errors",{"type":60,"tag":94,"props":1877,"children":1878},{},[1879,1880,1886],{"type":65,"value":1855},{"type":60,"tag":235,"props":1881,"children":1883},{"className":1882},[],[1884],{"type":65,"value":1885},"--verbose",{"type":65,"value":1887}," for detailed logs",{"type":60,"tag":265,"props":1889,"children":1891},{"id":1890},"performance-issues",[1892],{"type":65,"value":1893},"Performance Issues",{"type":60,"tag":281,"props":1895,"children":1896},{},[1897,1917,1922],{"type":60,"tag":94,"props":1898,"children":1899},{},[1900,1902,1908,1909,1915],{"type":65,"value":1901},"Use selection flags (",{"type":60,"tag":235,"props":1903,"children":1905},{"className":1904},[],[1906],{"type":65,"value":1907},"--to",{"type":65,"value":242},{"type":60,"tag":235,"props":1910,"children":1912},{"className":1911},[],[1913],{"type":65,"value":1914},"--from",{"type":65,"value":1916},", etc.) to reduce scope",{"type":60,"tag":94,"props":1918,"children":1919},{},[1920],{"type":65,"value":1921},"Enable build cache in rush-project.json",{"type":60,"tag":94,"props":1923,"children":1924},{},[1925],{"type":65,"value":1926},"Consider subspace for very large monorepos",{"type":60,"tag":74,"props":1928,"children":1930},{"id":1929},"subspace-for-large-monorepos",[1931],{"type":65,"value":1932},"Subspace for Large Monorepos",{"type":60,"tag":68,"props":1934,"children":1935},{},[1936],{"type":60,"tag":84,"props":1937,"children":1938},{},[1939],{"type":65,"value":1940},"What is Subspace:",{"type":60,"tag":281,"props":1942,"children":1943},{},[1944,1949,1954,1959],{"type":60,"tag":94,"props":1945,"children":1946},{},[1947],{"type":65,"value":1948},"Allows multiple PNPM lock files in one Rush monorepo",{"type":60,"tag":94,"props":1950,"children":1951},{},[1952],{"type":65,"value":1953},"Enables independent dependency management per team\u002Fproject group",{"type":60,"tag":94,"props":1955,"children":1956},{},[1957],{"type":65,"value":1958},"Reduces risk from dependency updates",{"type":60,"tag":94,"props":1960,"children":1961},{},[1962],{"type":65,"value":1963},"Improves install\u002Fupdate performance",{"type":60,"tag":68,"props":1965,"children":1966},{},[1967],{"type":60,"tag":84,"props":1968,"children":1969},{},[1970],{"type":65,"value":1971},"When to Use:",{"type":60,"tag":281,"props":1973,"children":1974},{},[1975,1980,1985,1990],{"type":60,"tag":94,"props":1976,"children":1977},{},[1978],{"type":65,"value":1979},"Large monorepos (50+ projects)",{"type":60,"tag":94,"props":1981,"children":1982},{},[1983],{"type":65,"value":1984},"Multiple teams with different dependency needs",{"type":60,"tag":94,"props":1986,"children":1987},{},[1988],{"type":65,"value":1989},"Conflicting version requirements",{"type":60,"tag":94,"props":1991,"children":1992},{},[1993],{"type":65,"value":1994},"Need for faster dependency operations",{"type":60,"tag":74,"props":1996,"children":1998},{"id":1997},"official-resources",[1999],{"type":65,"value":2000},"Official Resources",{"type":60,"tag":265,"props":2002,"children":2004},{"id":2003},"documentation-references",[2005],{"type":65,"value":2006},"Documentation & References",{"type":60,"tag":68,"props":2008,"children":2009},{},[2010],{"type":60,"tag":84,"props":2011,"children":2012},{},[2013],{"type":65,"value":2014},"Official Websites:",{"type":60,"tag":281,"props":2016,"children":2017},{},[2018,2032,2044,2056],{"type":60,"tag":94,"props":2019,"children":2020},{},[2021,2030],{"type":60,"tag":2022,"props":2023,"children":2027},"a",{"href":2024,"rel":2025},"https:\u002F\u002Frushstack.io\u002F",[2026],"nofollow",[2028],{"type":65,"value":2029},"RushStack.io",{"type":65,"value":2031}," - Main documentation site",{"type":60,"tag":94,"props":2033,"children":2034},{},[2035,2042],{"type":60,"tag":2022,"props":2036,"children":2039},{"href":2037,"rel":2038},"https:\u002F\u002Frushjs.io\u002F",[2026],[2040],{"type":65,"value":2041},"Rush.js.io",{"type":65,"value":2043}," - Rush build orchestrator documentation",{"type":60,"tag":94,"props":2045,"children":2046},{},[2047,2054],{"type":60,"tag":2022,"props":2048,"children":2051},{"href":2049,"rel":2050},"https:\u002F\u002Fheft.rushstack.io\u002F",[2026],[2052],{"type":65,"value":2053},"Heft.rushstack.io",{"type":65,"value":2055}," - Heft build tool documentation",{"type":60,"tag":94,"props":2057,"children":2058},{},[2059,2066],{"type":60,"tag":2022,"props":2060,"children":2063},{"href":2061,"rel":2062},"https:\u002F\u002Fapi-extractor.com\u002F",[2026],[2064],{"type":65,"value":2065},"API Extractor",{"type":65,"value":2067}," - API documentation and rollups",{"type":60,"tag":68,"props":2069,"children":2070},{},[2071],{"type":60,"tag":84,"props":2072,"children":2073},{},[2074],{"type":65,"value":2075},"Search Existing Issues:",{"type":60,"tag":281,"props":2077,"children":2078},{},[2079],{"type":60,"tag":94,"props":2080,"children":2081},{},[2082,2084],{"type":65,"value":2083},"Before creating new issues, search ",{"type":60,"tag":2022,"props":2085,"children":2088},{"href":2086,"rel":2087},"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Frushstack\u002Fissues",[2026],[2089],{"type":65,"value":2090},"rush-stack-builds issues",{"type":60,"tag":265,"props":2092,"children":2094},{"id":2093},"when-to-search-vs-ask",[2095],{"type":65,"value":2096},"When to Search vs. Ask",{"type":60,"tag":68,"props":2098,"children":2099},{},[2100],{"type":60,"tag":84,"props":2101,"children":2102},{},[2103],{"type":65,"value":2104},"Search these resources first when:",{"type":60,"tag":281,"props":2106,"children":2107},{},[2108,2113,2118,2123],{"type":60,"tag":94,"props":2109,"children":2110},{},[2111],{"type":65,"value":2112},"Encountering error messages",{"type":60,"tag":94,"props":2114,"children":2115},{},[2116],{"type":65,"value":2117},"Unsure about configuration options",{"type":60,"tag":94,"props":2119,"children":2120},{},[2121],{"type":65,"value":2122},"Looking for examples or tutorials",{"type":60,"tag":94,"props":2124,"children":2125},{},[2126],{"type":65,"value":2127},"Need to understand Rush behavior",{"type":60,"tag":68,"props":2129,"children":2130},{},[2131],{"type":60,"tag":84,"props":2132,"children":2133},{},[2134],{"type":65,"value":2135},"Ask the user for clarification when:",{"type":60,"tag":281,"props":2137,"children":2138},{},[2139,2144,2149,2154],{"type":60,"tag":94,"props":2140,"children":2141},{},[2142],{"type":65,"value":2143},"The specific use case is unclear",{"type":60,"tag":94,"props":2145,"children":2146},{},[2147],{"type":65,"value":2148},"Multiple approaches are possible",{"type":60,"tag":94,"props":2150,"children":2151},{},[2152],{"type":65,"value":2153},"Context is missing to provide accurate guidance",{"type":60,"tag":94,"props":2155,"children":2156},{},[2157],{"type":65,"value":2158},"The issue might be environment-specific",{"type":60,"tag":74,"props":2160,"children":2162},{"id":2161},"detailed-references",[2163],{"type":65,"value":2164},"Detailed References",{"type":60,"tag":68,"props":2166,"children":2167},{},[2168],{"type":65,"value":2169},"For expanded information on specific domains, see:",{"type":60,"tag":281,"props":2171,"children":2172},{},[2173,2184,2195,2206,2217],{"type":60,"tag":94,"props":2174,"children":2175},{},[2176,2182],{"type":60,"tag":235,"props":2177,"children":2179},{"className":2178},[],[2180],{"type":65,"value":2181},"references\u002Fcore-commands.md",{"type":65,"value":2183}," - Detailed command reference",{"type":60,"tag":94,"props":2185,"children":2186},{},[2187,2193],{"type":60,"tag":235,"props":2188,"children":2190},{"className":2189},[],[2191],{"type":65,"value":2192},"references\u002Fproject-configuration.md",{"type":65,"value":2194}," - Configuration file specifications",{"type":60,"tag":94,"props":2196,"children":2197},{},[2198,2204],{"type":60,"tag":235,"props":2199,"children":2201},{"className":2200},[],[2202],{"type":65,"value":2203},"references\u002Fdependency-management.md",{"type":65,"value":2205}," - Advanced dependency patterns",{"type":60,"tag":94,"props":2207,"children":2208},{},[2209,2215],{"type":60,"tag":235,"props":2210,"children":2212},{"className":2211},[],[2213],{"type":65,"value":2214},"references\u002Fbuild-system.md",{"type":65,"value":2216}," - Build optimization and caching",{"type":60,"tag":94,"props":2218,"children":2219},{},[2220,2226],{"type":60,"tag":235,"props":2221,"children":2223},{"className":2222},[],[2224],{"type":65,"value":2225},"references\u002Fsubspace.md",{"type":65,"value":2227}," - Subspace setup and usage",{"type":60,"tag":2229,"props":2230,"children":2231},"style",{},[2232],{"type":65,"value":2233},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":2235,"total":309},[2236],{"slug":4,"name":4,"fn":5,"description":6,"org":2237,"tags":2238,"stars":26,"repoUrl":27,"updatedAt":28},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2239,2240,2241,2242,2243],{"name":24,"slug":25,"type":15},{"name":20,"slug":21,"type":15},{"name":9,"slug":8,"type":15},{"name":13,"slug":14,"type":15},{"name":17,"slug":18,"type":15},{"items":2245,"total":2425},[2246,2254,2275,2296,2311,2328,2339,2352,2367,2382,2401,2413],{"slug":4,"name":4,"fn":5,"description":6,"org":2247,"tags":2248,"stars":26,"repoUrl":27,"updatedAt":28},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2249,2250,2251,2252,2253],{"name":24,"slug":25,"type":15},{"name":20,"slug":21,"type":15},{"name":9,"slug":8,"type":15},{"name":13,"slug":14,"type":15},{"name":17,"slug":18,"type":15},{"slug":2255,"name":2255,"fn":2256,"description":2257,"org":2258,"tags":2259,"stars":2272,"repoUrl":2273,"updatedAt":2274},"azure-ai-agents-persistent-dotnet","build AI agents with Azure .NET SDK","Azure AI Agents Persistent SDK for .NET. Low-level SDK for creating and managing AI agents with threads, messages, runs, and tools. Use for agent CRUD, conversation threads, streaming responses, function calling, file search, and code interpreter. Triggers: \"PersistentAgentsClient\", \"persistent agents\", \"agent threads\", \"agent runs\", \"streaming agents\", \"function calling agents .NET\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2260,2263,2266,2269],{"name":2261,"slug":2262,"type":15},".NET","net",{"name":2264,"slug":2265,"type":15},"Agents","agents",{"name":2267,"slug":2268,"type":15},"Azure","azure",{"name":2270,"slug":2271,"type":15},"LLM","llm",2804,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fskills","2026-07-03T16:32:10.297433",{"slug":2276,"name":2276,"fn":2277,"description":2278,"org":2279,"tags":2280,"stars":2272,"repoUrl":2273,"updatedAt":2295},"azure-ai-anomalydetector-java","build anomaly detection applications with Java","Build anomaly detection applications with Azure AI Anomaly Detector SDK for Java. Use when implementing univariate\u002Fmultivariate anomaly detection, time-series analysis, or AI-powered monitoring.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2281,2284,2285,2288,2291,2292],{"name":2282,"slug":2283,"type":15},"Analytics","analytics",{"name":2267,"slug":2268,"type":15},{"name":2286,"slug":2287,"type":15},"Data Analysis","data-analysis",{"name":2289,"slug":2290,"type":15},"Java","java",{"name":9,"slug":8,"type":15},{"name":2293,"slug":2294,"type":15},"Monitoring","monitoring","2026-05-13T06:14:16.261754",{"slug":2297,"name":2297,"fn":2298,"description":2299,"org":2300,"tags":2301,"stars":2272,"repoUrl":2273,"updatedAt":2310},"azure-ai-contentsafety-java","build content moderation applications with Azure AI","Build content moderation applications with Azure AI Content Safety SDK for Java. Use when implementing text\u002Fimage analysis, blocklist management, or harm detection for hate, violence, sexual content, and self-harm.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2302,2305,2306,2307],{"name":2303,"slug":2304,"type":15},"AI Infrastructure","ai-infrastructure",{"name":2267,"slug":2268,"type":15},{"name":2289,"slug":2290,"type":15},{"name":2308,"slug":2309,"type":15},"Security","security","2026-07-07T06:53:31.293235",{"slug":2312,"name":2312,"fn":2313,"description":2314,"org":2315,"tags":2316,"stars":2272,"repoUrl":2273,"updatedAt":2327},"azure-ai-contentsafety-py","detect harmful content with Azure AI Content Safety","Azure AI Content Safety SDK for Python. Use for detecting harmful content in text and images with multi-severity classification.\nTriggers: \"azure-ai-contentsafety\", \"ContentSafetyClient\", \"content moderation\", \"harmful content\", \"text analysis\", \"image analysis\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2317,2318,2321,2322,2323,2326],{"name":2267,"slug":2268,"type":15},{"name":2319,"slug":2320,"type":15},"Compliance","compliance",{"name":2270,"slug":2271,"type":15},{"name":9,"slug":8,"type":15},{"name":2324,"slug":2325,"type":15},"Python","python",{"name":2308,"slug":2309,"type":15},"2026-07-18T05:14:23.017504",{"slug":2329,"name":2329,"fn":2330,"description":2331,"org":2332,"tags":2333,"stars":2272,"repoUrl":2273,"updatedAt":2338},"azure-ai-language-conversations-py","implement conversational language understanding with Python","Implement Conversational Language Understanding (CLU) using the azure-ai-language-conversations Python SDK. Use when working with ConversationAnalysisClient to analyze conversation intent and entities, building NLP features, or integrating language understanding into applications.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2334,2335,2336,2337],{"name":2282,"slug":2283,"type":15},{"name":2267,"slug":2268,"type":15},{"name":2270,"slug":2271,"type":15},{"name":2324,"slug":2325,"type":15},"2026-07-31T05:54:29.068751",{"slug":2340,"name":2340,"fn":2341,"description":2342,"org":2343,"tags":2344,"stars":2272,"repoUrl":2273,"updatedAt":2351},"azure-ai-translation-text-py","translate text using Azure AI services","Azure AI Text Translation SDK for real-time text translation, transliteration, language detection, and dictionary lookup. Use for translating text content in applications.\nTriggers: \"text translation\", \"translator\", \"translate text\", \"transliterate\", \"TextTranslationClient\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2345,2348,2349,2350],{"name":2346,"slug":2347,"type":15},"API Development","api-development",{"name":2267,"slug":2268,"type":15},{"name":9,"slug":8,"type":15},{"name":2324,"slug":2325,"type":15},"2026-07-18T05:14:16.988376",{"slug":2353,"name":2353,"fn":2354,"description":2355,"org":2356,"tags":2357,"stars":2272,"repoUrl":2273,"updatedAt":2366},"azure-ai-vision-imageanalysis-py","analyze images with Azure AI Vision","Azure AI Vision Image Analysis SDK for captions, tags, objects, OCR, people detection, and smart cropping. Use for computer vision and image understanding tasks.\nTriggers: \"image analysis\", \"computer vision\", \"OCR\", \"object detection\", \"ImageAnalysisClient\", \"image caption\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2358,2359,2362,2365],{"name":2267,"slug":2268,"type":15},{"name":2360,"slug":2361,"type":15},"Computer Vision","computer-vision",{"name":2363,"slug":2364,"type":15},"Images","images",{"name":2324,"slug":2325,"type":15},"2026-07-18T05:14:18.007737",{"slug":2368,"name":2368,"fn":2369,"description":2370,"org":2371,"tags":2372,"stars":2272,"repoUrl":2273,"updatedAt":2381},"azure-appconfiguration-java","manage configuration with Azure App Configuration","Azure App Configuration SDK for Java. Centralized application configuration management with key-value settings, feature flags, and snapshots.\nTriggers: \"ConfigurationClient java\", \"app configuration java\", \"feature flag java\", \"configuration setting java\", \"azure config java\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2373,2374,2377,2380],{"name":2267,"slug":2268,"type":15},{"name":2375,"slug":2376,"type":15},"Configuration","configuration",{"name":2378,"slug":2379,"type":15},"Feature Flags","feature-flags",{"name":2289,"slug":2290,"type":15},"2026-07-03T16:32:01.278468",{"slug":2383,"name":2383,"fn":2384,"description":2385,"org":2386,"tags":2387,"stars":2272,"repoUrl":2273,"updatedAt":2400},"azure-cosmos-rust","build applications with Azure Cosmos DB","Azure Cosmos DB library for Rust (NoSQL API). Document CRUD, containers, and globally distributed data.\nTriggers: \"cosmos db rust\", \"CosmosClient rust\", \"document crud rust\", \"NoSQL rust\", \"partition key rust\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2388,2391,2394,2397],{"name":2389,"slug":2390,"type":15},"Cosmos DB","cosmos-db",{"name":2392,"slug":2393,"type":15},"Database","database",{"name":2395,"slug":2396,"type":15},"NoSQL","nosql",{"name":2398,"slug":2399,"type":15},"Rust","rust","2026-07-31T05:54:27.021432",{"slug":2402,"name":2402,"fn":2384,"description":2403,"org":2404,"tags":2405,"stars":2272,"repoUrl":2273,"updatedAt":2412},"azure-cosmos-ts","Azure Cosmos DB JavaScript\u002FTypeScript SDK (@azure\u002Fcosmos) for data plane operations. Use for CRUD operations on documents, queries, bulk operations, and container management. Triggers: \"Cosmos DB\", \"@azure\u002Fcosmos\", \"CosmosClient\", \"document CRUD\", \"NoSQL queries\", \"bulk operations\", \"partition key\", \"container.items\".\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2406,2407,2408,2409,2410],{"name":2389,"slug":2390,"type":15},{"name":2392,"slug":2393,"type":15},{"name":9,"slug":8,"type":15},{"name":2395,"slug":2396,"type":15},{"name":2411,"slug":46,"type":15},"TypeScript","2026-07-03T16:31:19.368382",{"slug":2414,"name":2414,"fn":2415,"description":2416,"org":2417,"tags":2418,"stars":2272,"repoUrl":2273,"updatedAt":2424},"azure-data-tables-java","build table storage applications with Java","Build table storage applications with Azure Tables SDK for Java. Use when working with Azure Table Storage or Cosmos DB Table API for NoSQL key-value data, schemaless storage, or structured data at scale.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2419,2420,2421,2422,2423],{"name":2267,"slug":2268,"type":15},{"name":2389,"slug":2390,"type":15},{"name":2392,"slug":2393,"type":15},{"name":2289,"slug":2290,"type":15},{"name":2395,"slug":2396,"type":15},"2026-05-13T06:14:17.582229",267]