
Ultracite
Hayden Bleasel · 程式設計
Ultracite 是免費、免設定的 JavaScript 與 TypeScript 檢查與格式化預設組合。它能接上 Biome、Oxlint 或 ESLint,並讓 AI 代理遵循你團隊的同一套規則。

關於 Ultracite
What Is Ultracite
Ultracite 是一套給程式碼品質工具用的預設組合,也是免設定檢查工具。它本身不會檢查或格式化程式碼,而是疊在你早就熟悉的核心引擎上,例如 Biome、Oxlint 或 ESLint,再交給它們一組規則,而這些規則大多是 JavaScript 和 TypeScript 專案最後都會用到的。維護者 Hayden Bleasel 以 MIT 授權將它開源釋出,所以既不用付費,也不必取得授權。
它解決的是設定這件事。一個新專案往往得花上幾天,從舊的儲存庫複製設定、爭論引號要用哪一種,再把同一份設定搬進每個應用程式。Ultracite 把這些濃縮成 npx ultracite init 一行指令,寫好設定檔、接上你的編輯器,幾秒內就能完成。型別安全同樣没有放過:安裝時會在 tsconfig.json 開啟嚴格的空值檢查,除非你已經自己處理了這一塊。
它最大的限制在於對慣例的態度。Ultracite 刻意維持強烈主張,所以如果你喜歡逐條調整規則,用起來可能會覺得綁手綁腳。好處則是你不必再維護設定檔,可以專心交付程式碼。
Getting Started
- 在專案資料夾開啟終端機,執行
npx ultracite init。安裝流程會帶你選格式化工具與檢查工具、框架、編輯器,以及 AI 代理。 - 被問到時挑選你的工具鏈:想要速度就選 Oxlint 搭 Oxfmt,想要單一二進位檔就選 Biome,若你依賴特定外掛,則選 ESLint 搭 Prettier 和 Stylelint。
- 讓安裝程式寫入設定檔並更新
package.json。若 ESLint 與 Prettier 的設定會互相衝突,它會自動移除。 - 執行
ultracite check檢視問題但不改動檔案,再執行ultracite fix套用安全的自動修正。 - 在編輯器存檔,就能看到格式化和修正立刻生效,然後放心提交。
產品資訊
快速了解 Ultracite 的定價、支援平台與效能。
適合對象
這項工具最適合的使用者、任務與情境。
使用者
- JavaScript 與 TypeScript 開發者:把檢查與格式化的設定時間縮到一行指令,前提是專案跑在 Node.js 上。
- 正在帶新人的團隊:共用同一份預設組合,每個人從第一天就寫出一致的程式碼。
- 使用 AI 輔助工具的開發者:它會產生規則檔,讓 Copilot、Cursor 和 Claude Code 遵循你儲存庫的風格,而不是自創一套。
任務
- 整理凌亂的儲存庫:`ultracite fix` 會在整個專案套用格式化和簡單檢查錯誤的安全修正。
- 維持單一儲存庫多套件的一致性:一份設定就能涵蓋每個套件與應用程式,多餘的重複設定檔因此消失。
- 提交前先套用風格:掛勾會自動執行檢查,未經檢視的程式碼就難以混進去。
- 把難修的項目交給 AI 代理:`ultracite fix --claude` 或 `--codex` 會把剩下的問題交給程式開發代理處理。
情境
- 從零開始一個新專案,想要可靠的預設值,又不想翻十份設定說明。
- 從舊的 ESLint 和 Prettier 設定搬家,想找個更乾淨的起點。
- 在大型程式碼庫上於 CI 執行檢查,而反應速度很重要。
- 除了 TypeScript 還要處理 CSS 和 JSON,希望一條工具鏈就能全部包辦。
主要功能
免設定即可上手
只要一行 npx ultracite init,就會接上你選的檢查與格式化工具、編輯器設定,以及 AI 代理規則。你回答幾個問題,安裝程式就把檔案寫好。它甚至會清掉會互相打架的 ESLint 與 Prettier 設定,讓程式碼格式化的規則不必重複處理,也省下你之後除錯重複規則的功夫。
三種工具鏈任你挑
Ultracite 支援 Oxlint 搭 Oxfmt、Biome,或 ESLint 搭 Prettier 和 Stylelint。Oxlint 是最快的選項,官方說它的速度遠勝 ESLint。Biome 用單一 Rust 二進位檔結合檢查與格式化。ESLint 這條路則是留給依賴其龐大外掛庫的團隊。
給 AI 代理的規則檔
這是 Ultracite 與一般檢查工具最大的差別。init 會為 Claude Code、GitHub Copilot、Cursor、Gemini 等代理產生情境檔,讓它們的建議貼近你專案的風格。它還附上可重複使用的 skill,以及能在 AI 編輯後立刻重新格式化程式碼的掛勾。
安全的自動修正
ultracite fix 會修正格式化,以及許多安全無虞的檢查錯誤,例如移除未使用的匯入,或把 == 換成 ===。風險較高的改寫則藏在 --unsafe 選項後面,需要人為判斷的項目會被標示出來,而非悄悄改掉。
編輯器與 CI 全面涵蓋
在 VS Code、Cursor 和 Windsurf 裡存檔就會套用存檔自動格式化,init 也能寫入 Zed 的設定。每條工具鏈都能透過 ultracite check 與 ultracite fix 從命令列執行,也就是說同一套檢查在任何編輯器與 CI 都行得通。
支援單一儲存庫與 Git 掛勾
一份設定就能橫跨單一儲存庫裡的每個套件,長年累積的重複設定檔因此不再堆疊。Ultracite 也能接上 Husky、Lefthook、lint-staged 和 pre-commit,讓待提交的檔案在進入審查前就保持乾淨。
安全的型別預設值
安裝時會在 tsconfig.json 開啟嚴格的空值檢查,除非它已經開啟或你已經關掉。預設組合還會加入能揪出不安全型別的檢查規則並提出修正建議,提早擋下不少執行時期的錯誤。
優缺點
優點
- 以 MIT 授權免費開源,沒有付費方案也沒有席位限制。
- 把檢查與格式化的設定從數小時縮短成一行指令。
- Biome 和 Oxlint 這類 Rust 引擎,讓大型專案的檢查依然快速。
- 會產生與 AI 代理相符的規則檔,人與模型因此共用同一套風格。
- 涵蓋單一儲存庫,以及 CSS、JSON、Markdown 等非 JavaScript 檔案。
缺點
- 預設值主張強烈,官方常見問題也坦言,若你關掉大量規則,得到的助益就很有限。
- 規則做出意料之外的行為時,你還是得懂背後的工具,例如 Biome 或 ESLint。
- 沒有代管的儀表板或圖形介面,設定與報告都留在終端機裡。
- 命令列與編輯器的設定針對 JavaScript 和 TypeScript,並不支援其他語言。
常見問題
Ultracite 是預設組合,不是檢查工具。它是一組規則與設定,跑在 Biome、Oxlint 或 ESLint 之上,真正負責格式化和檢查的是後三者。你可以把它想成一層設定,替你省下逐條挑選與調整規則的麻煩。
相關內容
探索與 Ultracite 相關的工具、技能與文章。
Ultracite 替代方案
Forefront
Forefront · 程式設計Forefront 是一個用來打造開源 AI 的網頁平台。你可以用自己的資料微調主流的開源語言模型、評估它們的表現,再透過 API 執行,或匯出後自行架設。想要封閉式平台的便利、卻堅持要自己擁有模型與資料的開發者,就是這裡的目標客群。
Startkit
StartKit.AI · 程式設計Startkit 是一套用來打造 AI SaaS 與 AI 包裝產品的樣板。可以把它想成一個 AI 新創樣板,把枯燥的部分都先接好了:驗證、Stripe 與 Lemon Squeezy 付款、用量限制、交易型電子郵件,以及一套能與 OpenAI、Anthropic、Groq 或 Llama 溝通的 AI API 啟動套件。你複製儲存庫、設定價格,然後專心在產品中使用者真正願意付費的部分。它建構於 React 與 Tailwind 之上的 Next.js,所以大部分的樣板程式碼對你來說並不陌生。
Testim
Tricentis · 程式設計Testim 是專為網頁、行動與 Salesforce 應用程式打造的 AI 測試自動化平台,用來建立並執行端到端測試。它靠機器學習在介面變動時維持測試穩定,團隊因此少花時間修補壞掉的定位器。對於一款今天就能開始使用的自動化測試工具來說,這表現不算差。你透過在瀏覽器錄製動作來建立測試,需要更多控制時再補上 JavaScript。對忙碌的 QA 團隊來說,這是個可靠的選擇。
