libghostty — Ghostty 터미널의 심장을 떼어낸 C 라이브러리, 1.0 공개
목차
터미널을 켤 때마다 쓰는 그 검은 창, 사실 그 안에는 '터미널 에뮬레이션'이라는 꽤 어려운 기술이 들어 있습니다. 그런데 그 기술을 통째로 떼어내 누구나 자기 프로그램에 붙일 수 있는 라이브러리로 만든 프로젝트가 1.0을 냈습니다.
이게 뭐에요?
libghostty는 Ghostty 터미널의 핵심 엔진을 떼어낸 C 라이브러리입니다. 터미널이 하는 일, 그러니까 키보드 입력을 받고 글자를 화면에 그리고 스크롤백을 관리하는 '터미널 에뮬레이션'을 독립된 라이브러리로 만든 것입니다. 1.0이라는 숫자는 라이브러리 자체뿐 아니라 C ABI(애플리케이션 바이너리 인터페이스)도 이제 안정됐다는 뜻입니다. MIT 라이선스의 오픈소스이고, 실행 시점에는 libc 말고는 아무것도 필요로 하지 않습니다.
뭐가 재밌어요?
- 당신이 이미 쓰고 있을 가능성이 큽니다: JetBrains IDE(IntelliJ, PyCharm, GoLand 등)의 내장 터미널이 이제 libghostty로 동작합니다. JetBrains 발표 기준 1,250만 명이 넘는 활성 사용자가 쓰는 터미널입니다.
- Neovim도 갈아타는 중입니다: Neovim은 libvterm을 libghostty-vt로 교체하는 PR을 이미 승인했습니다. 창 크기를 바꿀 때 스크롤백이 엉키는 10년 묵은 이슈가 이 교체로 해결됩니다.
- 터미널 하나 만드는 데 C 코드 1,500줄이면 됩니다: 만든 이의 말로는 libghostty를 쓰면 1,500줄 남짓한 C 코드로 웬만한 터미널보다 기능이 많고 빠른 터미널을 만들 수 있다고 합니다. Rust, Go, JavaScript, Swift, Python 등 웬만한 언어의 바인딩이 이미 있습니다.
- 쓰는 곳이 이미 백 개가 넘습니다: KDE가 Konsole 대체품을 실험 중이고, Vercel의 Turborepo가 작업 출력을 그리는 TUI에 쓰고, OrbStack 같은 상용 제품에도 들어가 있습니다. 에이전트 코딩 도구들도 이 위에서 만들어지고 있습니다.
- 가벼움이 무기입니다: 스레드를 만들지 않고, 메모리 할당도 개발자가 정한 할당기로만 합니다. 만든 이의 테스트에서는 4코어·8GB 서버에서 셸이 돌아가는 터미널 1만 개를 동시에 띄웠다고 합니다.
- 어디에나 붙습니다: Linux, macOS, iOS, FreeBSD, Windows, Android, WebAssembly까지 빌드와 테스트가 돌아갑니다. 베어메탈이나 WASI 같은 환경도 빌드 대상에 들어 있습니다.
지금 상태는?
2026년 11월 6일 libghostty-vt 1.0이 공개됐습니다. Ghostty 앱과는 별개의 릴리스 주기를 갖고, vt-X.Y.Z 형태의 태그로 따로 배포됩니다. 시맨틱 버저닝과 엄격한 ABI 호환 약속이 적용돼 배포판이 안심하고 패키징할 수 있게 됐고, 서명된 소스 tarball과 의존성 tarball, pkg-config·CMake 설정까지 갖춰졌습니다. Ghostty 저장소 자체의 지표는 확인 시점 기준 스타 약 6만 3천 개, MIT 라이선스입니다. 참고로 Ghostty 앱과 libghostty는 같은 저장소에서 관리되지만 릴리스는 분리돼 있습니다.
한 줄 평: "터미널을 '만드는' 시대에서 터미널을 '붙이는' 시대로 넘어가는 느낌입니다."
링크 모음
- 공식 사이트: https://ghostty.org/
- 문서·다운로드: https://lib.ghostty.org/
- GitHub: https://github.com/ghostty-org/ghostty
- 1.0 발표 글: https://mitchellh.com/writing/libghostty-1-0
댓글 0
아직 댓글이 없어요. 첫 댓글을 남겨 주세요.
댓글 남기기
댓글 입력창은 Blogger(Google)가 제공해요.

