Ultracite

Ultracite

Hayden Bleasel · 코딩

Ultracite는 JavaScript와 TypeScript를 위한 무료·무설정 린터 겸 포매터 프리셋이다. Biome, Oxlint, ESLint에 연결되며, AI 에이전트에게도 팀과 같은 규칙을 넘겨준다.

Ultracite 미리보기

Ultracite 소개

What Is Ultracite

Ultracite는 코드 품질 도구용 프리셋이자 무설정 린터 겸 코드 포매터다. 스스로 코드를 검사하거나 정리하지는 않는다. 이미 익숙한 엔진, 예컨대 Biome, Oxlint, ESLint 위에 올라가서, 대부분의 JavaScript와 TypeScript 프로젝트가 결국 원하게 되는 규칙 묶음을 건넨다. 관리자인 Hayden Bleasel이 MIT 라이선스로 오픈소스로 공개했으니 살 것도, 라이선스를 딸 것도 없다.

이 도구가 해결하는 문제는 설정이다. 새 프로젝트는 보통 며칠을 옛 저장소에서 설정을 복사하고, 따옴표 스타일을 두고 다투고, 같은 설정을 모든 앱에 옮겨 다니는 데 쓴다. Ultracite는 이걸 npx ultracite init 한 줄로 줄인다. 이 명령이 설정 파일을 쓰고, 편집기를 연결하고, 몇 초 만에 끝난다. 타입 안전성도 챙긴다. 설치 시 tsconfig.json에서 엄격한 null 검사를 켜는데, 이미 직접 관리하고 있다면 그대로 둔다.

가장 큰 한계는 관례에 대한 태도다. Ultracite는 일부러 관점이 뚜렷하므로, 모든 규칙을 손으로 조정하는 걸 좋아한다면 답답하게 느껴질 수 있다. 대신 얻는 건 설정 파일을 관리하지 않고 코드를 내보내는 데 집중하는 일이다.

Getting Started

  1. 프로젝트 폴더에서 터미널을 열고 npx ultracite init을 실행한다. 설치 과정이 포매터와 린터, 프레임워크, 편집기, AI 에이전트 선택을 안내한다.
  2. 물어보면 툴체인을 고른다. 속도면 Oxlint와 Oxfmt, 단일 바이너리면 Biome, 특정 플러그인에 의존한다면 ESLint와 Prettier, Stylelint다.
  3. 설치 프로그램이 설정 파일을 쓰고 package.json을 갱신하도록 맡긴다. 서로 충돌할 ESLint와 Prettier 설정은 알아서 지운다.
  4. ultracite check로 파일을 건드리지 않고 문제를 확인하고, ultracite fix로 안전한 자동 수정을 적용한다.
  5. 편집기에서 파일을 저장해 정리와 수정이 곧바로 도는 걸 확인한 뒤, 마음 놓고 커밋한다.

제품 정보

Ultracite의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.

무료 플랜예
유료 플랜$0
플랫폼Command line, VS Code, Cursor, Windsurf, Zed, CI pipelines
개발사Hayden Bleasel
카테고리코딩
출시일Nov 2024
최근 업데이트Oct 2025
웹사이트 방문 수N/A
웹사이트 글로벌 순위N/A
API 제공 여부아니요

추천 대상

이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.

사용자

  • JavaScript와 TypeScript 개발자
  • 신입을 받는 팀
  • AI 보조 도구를 쓰는 개발자

작업

  • 어질러진 저장소 정리
  • 모노레포 일관성 유지
  • 커밋 전에 스타일 적용
  • 어려운 수정을 AI 에이전트에 위임

활용 상황

  • 새 프로젝트를 시작하며 설정 문서 열 권을 읽지 않고도 탄탄한 기본값을 원할 때.
  • 오래된 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 등 에이전트를 위한 문맥 파일을 생성해, 제안이 프로젝트 스타일에 가까워진다. AI 편집이 끝난 직후 코드를 다시 정리하는 훅과 재사용 가능한 skill도 함께 온다.

안전한 자동 수정

ultracite fix는 포매팅과 바꿔도 안전한 많은 lint 오류를 고친다. 쓰지 않는 import 삭제나 ==를 ===로 바꾸는 일이 그렇다. 위험한 재작성은 --unsafe 옵션 뒤에 기다리고, 개발자 판단이 필요한 항목은 조용히 바꾸지 않고 표시만 한다.

편집기와 CI 지원 범위

VS Code, Cursor, Windsurf에서 저장하면 정리가 돌고, init은 Zed 설정도 쓸 수 있다. 모든 툴체인이 ultracite check와 ultracite fix로 명령줄에서 돌기 때문에, 같은 검사가 어떤 편집기에서든 CI에서든 통한다. 저장 시 자동 정리도 그대로 동작한다.

모노레포와 Git 훅 지원

설정 하나가 모노레포의 모든 패키지로 뻗어, 쌓이기 마련인 중복 설정 파일 더미를 없앤다. Husky, Lefthook, lint-staged, pre-commit에도 연결되어, 스테이징된 파일이 검토에 도착하기 전에 깔끔해진다.

타입 안전 기본값

설치 시 tsconfig.json에서 엄격한 null 검사를 켠다. 이미 켜져 있거나 직접 껐다면 그대로 둔다. 프리셋은 안전하지 않은 타입을 잡아내고 수정을 권하는 lint 규칙도 더해, 실행 시점의 오류를 일찍 줄인다.

장단점

장점

  • MIT 라이선스로 무료 오픈소스이며 유료 요금제나 좌석 제한이 없다.
  • 검사와 포매팅 설정을 몇 시간에서 한 줄로 줄인다.
  • Biome와 Oxlint 같은 Rust 엔진 덕에 큰 프로젝트에서도 검사가 빠르다.
  • AI 에이전트에 맞는 규칙 파일을 만들어 사람과 모델이 같은 스타일을 공유한다.
  • 모노레포는 물론 CSS, JSON, Markdown 같은 비 JavaScript 파일까지 덮는다.

단점

  • 기본값의 관점이 뚜렷해, 규칙을 많이 끄면 얻는 게 적다. 프로젝트 FAQ도 이를 인정한다.
  • 규칙이 예상 밖으로 동작할 때는 Biome나 ESLint 같은 토대 도구를 알아야 한다.
  • 호스팅 대시보드나 GUI가 없어 설정과 보고가 터미널에 머문다.
  • 명령줄과 편집기 설정은 JavaScript와 TypeScript를 겨냥하며 다른 언어는 대상이 아니다.

자주 묻는 질문

Ultracite는 린터가 아니라 프리셋이다. Biome, Oxlint, ESLint 위에서 도는 규칙과 설정 묶음이며, 실제로 정리하고 검사하는 건 그 셋이다. 규칙을 직접 고르고 조정하는 수고를 덜어주는 설정 계층이라고 보면 된다.