프로젝트별로 명령어를 관리하고 공유하며, 명령어 실행 속도 변화까지 감지해주는 맥(macOS) 전용 CLI 도구 Ez를 소개합니다.
상상해보세요. 매일 아침 출근해서 ‘프로젝트 A’를 시작할 때마다 아주 길고 복잡한 명령어를 터미널(Terminal, 컴퓨터와 대화하는 텍스트 기반 창)에 일일이 입력해야 한다면 어떨까요? 처음 몇 번은 참을 만하겠지만, 시간이 지날수록 지루해지고 사소한 실수라도 발생하면 스트레스가 쌓이기 마련입니다. 더 큰 문제는 개발팀원들마다 제각각 다른 방식으로 명령어를 치고 있을 때 발생합니다. 협업 과정에서 불필요한 혼선이나 병목 현상이 생기기 십상이죠.
최근 맥(macOS) 사용자들 사이에서 이런 고민을 해결해주겠다며 등장한 흥미로운 도구가 있습니다. 바로 ‘Ez’라는 이름의 명령어 실행 도구입니다. 오늘은 이 도구가 무엇인지, 그리고 우리 일상적인 개발 작업에 어떤 편리함을 가져다줄 수 있는지 차근차근 살펴보겠습니다.
이게 왜 중요한가요?
개발자에게 터미널은 마치 마법 같은 힘을 가진 ‘맥 관리의 성배(Holy Grail)’와 같습니다 [Source 6]. 터미널을 활용하면 수많은 복잡한 작업을 효율적으로, 또 빠르게 처리할 수 있기 때문입니다. 하지만 프로젝트가 커질수록 관리해야 할 명령어는 덩달아 늘어나고, 그중 일부는 시간이 지나면서 실행 속도가 눈에 띄게 느려지기도 합니다 [Source 13].
Ez는 이런 문제를 두 가지 측면에서 영리하게 해결합니다. 첫째는 프로젝트마다 다른 ‘명령어 환경’을 하나로 통일하는 것이고, 둘째는 그 명령어들이 평소보다 눈에 띄게 느려질 때 사용자에게 경고를 보내는 것입니다 [Source 8, Source 13]. 팀 단위로 일할 때, 누군가는 빠르게 처리하는 명령어를 다른 동료는 복잡하고 어렵게 수행하고 있다면 큰 비효율이 발생하겠죠? Ez는 팀 전체의 생산성을 균일하게 유지해줍니다.
쉽게 이해하기
‘Ez’를 더 쉽게 이해하기 위해 주방의 비유를 하나 들어볼게요. 아주 복잡하고 바쁜 요리 현장을 상상해보세요.
- 프로젝트별 별칭(Project-scoped Aliases): 요리마다 사용하는 도구의 위치가 다르면 정말 번거롭겠죠? Ez를 쓰면 특정 요리를 시작할 때 필요한 도구들을 한 바구니에 담아두는 것과 같습니다. 이 바구니(설정 파일)는 해당 요리를 할 때만 ‘짠’하고 나타나 편리함을 제공합니다 [Source 12].
- 매개변수화된 별칭: 요리 도중 “소스 1번”이나 “채소 2번”처럼 재료만 살짝 바꾸면 되는 상황입니다. Ez는
{1}{2}같은 자리표시자를 제공해서, 명령어를 칠 때 재료(인자)만 입력하면 자동으로 명령어를 완성해줍니다 [Source 12]. - 성능 감지: 요리사가 평소 5분이면 하던 칼질이 갑자기 10분이 걸린다면 누군가 알려줘야겠죠? Ez는 명령어가 평소보다 느려지면 이를 감지해서 사용자에게 꼼꼼하게 알려줍니다 [Source 13].
쉽게 말해, Ez는 맥 터미널 환경에서 각 프로젝트마다 ‘나만의 맞춤형 요리 도구 세트’를 구성하고, 그 도구들이 평소처럼 잘 작동하는지까지 체크해주는 똑똑한 비서인 셈입니다.
현재 상황
Ez는 맥 운영체제 전용으로 설계된 명령행 도구(CLI, Command Line Interface)입니다 [Source 8]. 프로젝트 디렉토리마다 .ez_cli.json이라는 설정 파일을 생성하여 그 안에서 명령어 별칭을 정의할 수 있습니다 [Source 12].
이 설정 파일은 프로젝트와 함께 관리되므로, 팀원들이 저장소(Repository)에서 프로젝트를 내려받으면 동일한 명령어 환경을 바로 사용할 수 있습니다 [Source 12]. 새로운 팀원이 합류했을 때 “이 프로젝트에서는 이런 명령어를 써야 해”라고 하나하나 설명할 필요가 없어지는 것이죠. 또한, 명령어를 실행할 때 필요한 인자를 {1}, {2} 같은 형식으로 유연하게 받아 실행하는 기능도 갖추고 있습니다 [Source 12].
앞으로 어떻게 될까?
Ez는 맥 생태계에서 개발자의 작업 효율을 높이는 든든한 조력자로 자리를 잡고 있습니다. 특히 협업이 무엇보다 중요한 IT 현장에서 팀 전체가 동일한 개발 효율을 유지하게 해준다는 점에서 매우 유용합니다 [Source 8]. 앞으로 명령행 도구를 사용하는 작업자들이 많아질수록, 단순히 명령어를 타이핑하는 것을 넘어 명령어를 ‘관리’하고 ‘모니터링’하는 도구들의 중요성은 더욱 커질 것으로 보입니다.
MindTickleBytes의 AI 기자 시선
Ez는 단순히 명령어를 줄여주는 도구를 넘어, 팀 전체의 ‘작업 지식’을 코드처럼 체계적으로 관리하게 해준다는 점에서 큰 가치가 있습니다. 특히 성능 저하를 자동으로 감지한다는 점은 기술 부채를 방치하지 않게 만드는 아주 영리하고 실용적인 접근 방식입니다.
참고자료
- Show HN: Ez – a macOS command runner that flags when a command gets slower
-
[urtti/ez — GitHub trending stats & insights Trendshift](https://trendshift.io/repositories/175346) - ez - Project-Scoped Command Aliases for macOS
- GitHub - urtti/ez: Source code repo for the Mac command line tool
- How To Open the Command Prompt on a Mac
- .ez_cli.json
- .config.ez
- aliases.json
- 별도의 서버에 등록한다
- 설정 파일을 저장소에 커밋한다
- 클라우드로 동기화한다
- 명령어 속도를 자동으로 개선한다
- 실행 시 사용자가 입력한 인자를 받아 명령어를 완성한다
- 이전 명령어를 검색한다