Pacwich:基於Bun、NPM或pnpm的輕量級新單體倉庫工具
Pacwich 是一款零配置即可使用的單體倉庫工具,運行在 Bun、npm 和 pnpm 工作區之上。它提供 TypeScript API、可調試的受影響圖、工作區代碼共享規則,以及 AI 集成等功能,旨在將單體倉庫工具與包管理器解耦。
Pacwich 是一款新型單體倉庫工具,專為 Bun、npm 和 pnpm 工作區設計,無需任何配置即可開始使用。它允許開發者編排工作區中普通的 package.json 腳本,並提供了一個 TypeScript API 用於擴展。Pacwich 的核心優勢在於將單體倉庫工具與包管理器解耦,使用户可以靈活選擇底層包管理器,同時享受統一的工具鏈體驗。
該工具包含一個可調試、可配置的受影響圖(affected graph),幫助開發者準確識別變更影響的範圍。與傳統單體倉庫工具不同,Pacwich 的受影響圖可以通過配置調整,並且支持調試輸出,使得在大型項目中追蹤依賴關係變得透明。此外,Pacwich 支持為工作區代碼共享制定規則,確保代碼組織結構清晰,避免不必要的耦合。對於配置文件,用户可以選擇 JSON 或 TypeScript/JavaScript 格式,滿足不同團隊的習慣。
Pacwich 還引入了多項 AI 集成功能,包括 Skills(技能)、AGENTS.md(智能體描述文件)、一個 MCP(模型上下文協議)服務器以及 /llms.txt 文件。這些功能旨在提升開發效率和自動化水平,例如通過 AGENTS.md 定義 AI 輔助開發的工作流,或者通過 MCP 服務器讓語言模型直接與項目交互。這些特性使得 Pacwich 不僅僅是傳統的構建工具,更是面向 AI 輔助開發的下一代基礎設施。
值得注意的是,Pacwich 是原 bun-workspaces 包的延續,後者現已棄用。官方聲稱,bun-workspaces 用户遷移到 Pacwich 平均只需極少的改動,甚至無需變更。遷移指南和啓動博客文章詳細解釋了背後的設計緣由和開發策略。
安裝方式靈活,用户可以選擇全局安裝或本地安裝。全局安裝的 pacwich 命令在本地版本可用時會自動委託給本地版本。支持通過 npm、pnpm 和 bun 三種包管理器進行安裝。全局安裝命令如 npm install -g pacwich,本地安裝則作為 devDependency 添加。更多詳情請訪問 Pacwich 官方文檔。