跨個別儲存庫管理多個套件會增加複雜性與不一致性。此技能提供使用 Turborepo、Nx 與 pnpm workspaces 設定 monorepo 的實證模式,以實現程式碼共用與高效建置。
下載技能 ZIP
在 Claude 中上傳
前往 設定 → 功能 → 技能 → 上傳技能
開啟並開始使用
測試它
正在使用「monorepo-management」。 設定 Turborepo monorepo 結構
預期結果:
已建立包含 apps/web (Next.js)、apps/docs (Next.js)、packages/ui (React 元元件)、packages/config (共用設定) 與 packages/tsconfig (TypeScript 設定) 的 monorepo。已在 turbo.json 中設定 build、test、lint 與 dev 管線。
正在使用「monorepo-management」。 為三個套件設定 pnpm workspace
預期結果:
已使用 apps 與 packages 目錄設定 pnpm-workspace.yaml。已建立 .npmrc 並啟用 shamefully-hoist 與 auto-install-peers。已在 workspace 根目錄安裝共用相依性,並在需要處為特定套件設定覆寫。
正在使用「monorepo-management」。 最佳化 Turborepo 快取
預期結果:
已在 turbo.json 管線中設定適當的 dependsOn 鏈、用於快取的 outputs 與用於快取失效的 inputs。已啟用 Vercel 遠端快取。未變更套件的建置時間從 12 分鐘縮短至 3 分鐘。
安全審計
安全This skill contains documentation-only markdown files with instructional code examples. Static analysis flagged 60 patterns (external commands, network URLs, filesystem references, environment variables) but all are false positives - they appear in markdown code blocks as examples, not executable code. No security threats detected after manual review.
品質評分
你能建構什麼
建構多應用平台的新創公司
新創公司需要在 web 應用、行動應用與文件網站之間共用 UI 元元件與工具,同時維持一致的開發工具。
整合微服務的企業
企業希望將相關的微服務整合至 monorepo,以便進行跨服務重構並共用型別定義。
開原始函��庫維護者
維護者希望將大型函式庫拆分為多個聚焦的套件,同時保持在單一儲存庫中以利協調。
試試這些提示
協助我使用 Turborepo 與 pnpm 建立新的 monorepo。我需要兩個應用(web 與 docs)以及一個共用 UI 套件。請提供初始資料夾結構與關鍵設定檔。
我有三個獨立的儲存庫:一個 Next.js 應用、一個 React 元件函式庫,以及一個共用工具套件。引導我將它們遷移至單一的 pnpm workspace 與 Turborepo。
我的 monorepo 建置需要 15 分鐘。分析我的 turbo.json 設定並建議改進快取、平行化與遠端快取設定以縮短建置時間。
為我的 Turborepo monorepo 建立一個 GitHub Actions 工作流程,在拉取請求上執行 lint、test 與 build,並在合併至 main 時僅部署受影響的應用。
最佳實務
- 在根層級鎖定相依性版本,並對內部套件使用 workspace 協定
- 精��設定 Turborepo inputs 與 outputs 以在確保正確性的同時最大化快取��中率
- 使用 Changesets 進行多個套件的協調版本管理與發布
避免
- 未在 package.json 相依性中宣告套件即進行匯入
- 在 monorepo 中的套件之間建立循環相依性
- 設定快取 outputs 過於寬鬆,導致未快取檔案產生過時建置