00:00:00코딩용 CLI가 부상하면서, 코드를 대신 작성해 주는 AI 에이전트를 관리하는 다양한 도구들이 많이 등장했습니다.
00:00:06오늘 영상에서는 주요 도구 몇 가지를 소개해 드리고 서로 어떻게 다른지 비교해 보겠습니다.
00:00:10제가 현재 일상적으로 사용하는 도구는 Conductor지만, 이 분야는 유연성이 높아서 저도 여러 도구를 번갈아 가며 사용하곤 합니다.
00:00:16최근 인기를 얻기 시작한 다른 도구로는 SuperSet, C-Mux가 있고, Codex 앱도 꽤 괜찮습니다.
00:00:23그리고 많은 분이 Ghosty, Warp, iTerm 같은 일반 터미널에서 작업을 하시죠.
00:00:27물론 Cursor나 VS Code를 사용하는 분들도 여전히 많습니다.
00:00:31이번 영상에서는 Conductor, SuperSet, C-Mux에 집중할 건데, 아직 많은 분이 써보지 않은 아주 새로운 도구들이기 때문입니다.
00:00:36VS Code나 Cursor는 이미 사용법을 잘 아실 테니 깊게 다루지는 않겠습니다.
00:00:40가장 먼저 소개할 도구는 Conductor입니다. 지금 제 화면에 떠 있는 바로 이 프로그램입니다.
00:00:44보시는 것처럼 여러 개의 채팅창이 병렬로 실행되고 있습니다.
00:00:48이건 제가 현재 'Inbox Zero' 프로젝트를 위해 실제로 진행 중인 작업들입니다.
00:00:50측면에 있는 각 채팅은 서로 다른 워크트리(work tree)를 의미합니다.
00:00:53워크트리가 생소하실 수도 있는데, AI 에이전트를 병렬로 실행하는 방식이 유행하면서 아주 유명해졌습니다.
00:00:58핵심 프로젝트를 가져와서 컴퓨터의 새 폴더에 그대로 복제하는 방식이라고 보시면 됩니다.
00:01:03여기 보시면 Inbox Zero 저장소가 있고, 컴퓨터에 여러 개의 복사본이 생성되어 있습니다.
00:01:08이건 Belgrade, 저건 Algiers라고 부르는데요.
00:01:10각각 고유한 이름을 가지고 있고, 그게 바로 여기 사이드바에 보이는 항목들입니다.
00:01:15각 항목은 제가 작업할 수 있는 독립된 브랜치와 같습니다.
00:01:18각자 별도의 PR(Pull Request)도 연결되어 있죠.
00:01:20따라서 여기서 수정한 내용이 저기 있는 작업에 영향을 주지 않습니다.
00:01:25마치 7명의 서로 다른 직원, 즉 AI 에이전트가 여러분을 위해 일하고 있는 것과 같습니다.
00:01:30각 에이전트가 서로 간섭하지 않고 각기 다른 파일을 동시에 수정하며 병렬로 작업할 수 있습니다.
00:01:35Conductor의 작동 방식을 보여드리자면, 일반적인 채팅 형태입니다.
00:01:38여기 진행 중인 작업이 하나 있는데, AI에게 작업을 계속하라고 지시해 보겠습니다.
00:01:43작업이 준비되고 완료되면 연결된 PR을 바로 확인할 수 있습니다.
00:01:49여기서 클릭 한 번으로 머지(merge)할 수도 있고요.
00:01:51리뷰 버튼을 누르면 새 탭에 새 에이전트가 생성되어 해당 워크트리나 브랜치의 변경 사항을 검토합니다.
00:01:59서로 다른 파일들도 확인할 수 있습니다.
00:02:01여기는 .env.example 파일이네요.
00:02:03그리고 오른쪽에는 일반 터미널이 있습니다.
00:02:07워크트리 방식은 메인 프로젝트를 새 위치에 복사해서 붙여넣는 방식이기 때문에,
00:02:13해당 폴더를 위한 새로운 설정 작업이 필요한 경우가 많습니다.
00:02:17그래서 오늘 다룰 모든 프로젝트에는 설정(setup) 스크립트와 실행(run) 스크립트가 있습니다.
00:02:24설정 스크립트는 제가 새 워크트리에서 작업을 시작하기 위해 '플러스' 버튼을 누를 때, pnpm install을 실행하거나 새 포트에서 프로젝트를 구동하는 등의 작업을 수행합니다.
00:02:35어떻게 활용할지는 사용자 마음입니다.
00:02:36보통 설정 스크립트로 의존성을 설치하고, 실행 스크립트로 앱을 띄운 뒤 localhost:3000 같은 포트에서 확인하게 됩니다.
00:02:46모든 워크트리를 각기 다른 포트에서 동시에 실행할 수도 있습니다.
00:02:50워크트리마다 변경 사항이 다르기 때문에 이런 방식이 꼭 필요합니다.
00:02:54한 폴더에서 프로젝트를 실행한다고 해서 다른 폴더에 있는 변경 사항까지 보여주지는 않으니까요.
00:03:00또 하나 좋은 점은 체크(checks) 기능을 볼 수 있다는 것입니다.
00:03:04빌드 상태나 GitHub 코멘트 같은 것들이죠.
00:03:07보시는 것처럼 많은 체크가 진행 중이고, AI 코드 리뷰 도구인 Kubik과 Baz의 코멘트도 와 있습니다.
00:03:15하나를 클릭해 보면 리뷰 과정에서 남겨진 코멘트를 확인할 수 있습니다.
00:03:19원한다면 이 코멘트들을 채팅창에 추가하고 전송 버튼을 눌러 AI가 자동으로 수정하게 할 수도 있습니다.
00:03:25다음으로 보여드릴 도구는 SuperSet입니다.
00:03:28보시다시피 아주 비슷한 개념입니다.
00:03:30측면에 여러 에이전트가 실행되고 있죠.
00:03:32솔직히 많은 프로젝트가 Conductor에서 영감을 받았다고 생각합니다. 그래서 인터페이스가 비슷해지고 있는 거죠.
00:03:39오른쪽에서 커밋할 수 있는 기능도 있고요.
00:03:41프로젝트의 다양한 파일들도 보입니다.
00:03:44여기서 흥미로운 점은 터미널 경험이 더 기본 기능처럼 잘 구현되어 있다는 것입니다.
00:03:49Claude Code나 Codex를 그대로 실행하고 싶다면 그렇게 할 수 있습니다.
00:03:54여기 일반적인 실행 화면이 보이시죠.
00:03:56자체적인 채팅 인터페이스도 갖추고 있습니다.
00:03:58이 방식이 더 편하시다면 사용해 보세요. 이건 꽤 최근에 추가된 기능입니다.
00:04:00Conductor는 전용 채팅 인터페이스 사용을 권장하지만, SuperSet은,
00:04:04그 부분에서 더 유연합니다.
00:04:06Claude Code나 Codex의 순정 버전을 사용하고 싶은 이유는 최신 기능을 모두 사용할 수 있기 때문입니다.
00:04:13예를 들어 Codex에 업데이트가 있어서 새로운 슬래시(/) 명령어가 생겼다고 해보죠.
00:04:18Conductor에서 슬래시를 쳐도 업데이트가 안 되어 있으면 나타나지 않을 수 있습니다.
00:04:22Conductor는 기본적으로 Claude Code나 Codex를 감싸고 있는 래퍼(wrapper)지만, 자체 인터페이스를 쓰기 때문에 1:1로 완벽히 일치하지는 않습니다.
00:04:29하지만 여기서는 SuperSet의 채팅 인터페이스를 쓰면서도 CLI를 직접적으로 병용할 수 있습니다.
00:04:36SuperSet의 또 다른 특징은 메인 브랜치에서도 직접 작업할 수 있다는 점입니다.
00:04:40의외로 Conductor에서는 이 작업이 좀 번거롭습니다.
00:04:43제가 알기로 Conductor에서는 메인 브랜치에서 바로 작업할 수 없습니다.
00:04:47Cursor나 VS Code 같은 에디터로 프로젝트를 열어야 하죠.
00:04:52참고로 Conductor에도 동일한 기능이 있습니다.
00:04:54여기서처럼 SuperSet에 있는 프로젝트를 Zed 같은 다른 에디터로 즉시 열 수 있습니다.
00:05:01이 부분은 똑같은 개념입니다.
00:05:03Finder나 Ghosty 등 원하는 곳에서 열 수 있죠.
00:05:06SuperSet의 또 다른 멋진 점은 브라우저 탭을 열 수 있다는 건데, 보시는 것처럼 Inbox Zero가 SuperSet 내부에서 직접 실행됩니다.
00:05:15프런트엔드 코딩을 할 때 특히 유용합니다.
00:05:18두 앱 모두 Linear 및 GitHub와 동기화된다는 점도 말씀드려야겠네요.
00:05:22예를 들어 Linear 이슈를 기반으로 새로운 워크트리를 생성할 수 있습니다.
00:05:27SuperSet이 가진 다른 기능들도 여기 있습니다.
00:05:29클라우드 워크스페이스와 모바일 앱이 출시되면 정말 흥미로울 것 같습니다.
00:05:34Conductor도 비슷한 방향으로 나아가지 않을까 싶네요.
00:05:36이런 앱들은 아시다시피 변화 속도가 굉장히 빠릅니다.
00:05:39오늘 보여드리는 모습도 3개월 뒤면 완전히 다른 이야기가 되어 있을 겁니다.
00:05:42SuperSet의 실제 사용법을 보여드리면, Codex나 Claude Code, 심지어 OpenCode 같은 다양한 옵션 중에서 선택할 수 있습니다.
00:05:50이게 Conductor와 비교했을 때 SuperSet의 또 다른 장점이라고 생각합니다.
00:05:54Conductor는 Codex와 Claude Code로 제한되어 있거든요.
00:05:57여기서는 사용할 수 있는 옵션이 훨씬 많습니다.
00:05:59그럼 변경 사항을 만들고 워크스페이스를 생성해 보겠습니다.
00:06:03워크스페이스가 설정되면서 몇 가지 작업이 진행 중인 게 보이시죠.
00:06:06여기서는 Codex가 열렸고, 동시에 다른 창에서는 pnpm install이 실행되고 있습니다.
00:06:15완료되었으니 PR을 생성해 달라고 요청해 보겠습니다.
00:06:19그나저나 측면을 보시면 저희 브랜치 이름이 바뀌어 있습니다.
00:06:22브라우저에서 미리보기를 열 수 있어서 편하네요.
00:06:26PR이 준비되었습니다.
00:06:27여기에 링크가 생성되었네요.
00:06:29측면을 보면 1915번 PR이고 체크가 돌아가고 있습니다. Conductor와 매우 유사한 경험이죠.
00:06:37여기서 클릭해서 변경 사항이나 커밋 내역을 볼 수 있습니다.
00:06:40차이점(diff)을 보고 싶으면 여기를 클릭하면 되고, 아래쪽에서 CI 체크가 돌아가는 것도 보입니다.
00:06:48GitHub Actions나 연결된 다른 봇들이 이 작업을 수행합니다.
00:06:52Vercel 봇과 Socket Security는 이미 끝났고, AI 코드 리뷰어와 E2E 테스트가 아직 진행 중이네요.
00:07:00SuperSet과 Conductor를 사용할 때 알아두어야 할 점이 있습니다.
00:07:03파일 검색은 가능하지만, 특정 단어를 검색하는 기능은 없는 것 같습니다.
00:07:07그래서 종종 다른 에디터로 코드를 열게 됩니다.
00:07:10만약 프로젝트 전체에서 특정 텍스트를 찾고 싶다면,
00:07:12현재 Conductor나 SuperSet에서는 그게 불가능해 보입니다.
00:07:17그리 대단한 건 아니지만, 상황 파악을 위해 다른 에디터를 열어야 할 때가 꽤 있습니다.
00:07:24그래도 일상적인 작업의 대부분은 Conductor 사이드바에서 여러 에이전트를 관리하며 해결합니다.
00:07:29참고로 여기를 보시면,
00:07:31방금 요청한 변경 사항이 생성되고 있습니다.
00:07:33PR 생성이나 리뷰 버튼을 누르면 프로세스가 계속 이어집니다.
00:07:37워크플로를 훨씬 쉽게 만들어 주는 유용한 내장 버튼들이 많습니다.
00:07:42다음으로 살펴볼 도구는 C-Mux입니다.
00:07:44그 전에 Ghosty가 어떤 모습인지 간단히 보여드릴게요.
00:07:46Ghosty는 그냥 또 다른 터미널입니다.
00:07:48정말 멋진 도구니까 다운로드해 보세요.
00:07:49Zig 언어로 만들어져서 성능이 아주 좋습니다. 여기 Ghosty에서 실행 중인 Codex가 보이시죠.
00:07:51똑같은 모습입니다.
00:07:53이건 iTerm2에서 돌아가는 Claude Code이고요.
00:07:56여기는 Warp가 실행 중입니다.
00:08:00Warp도 멋진 터미널인데, 터미널 자체에 AI 기능을 접목했다는 점이 돋보입니다.
00:08:04에이전트 기반 코딩 같은 기능도 다양하게 제공하죠.
00:08:07그 기능을 많이 써보지는 않아서 깊게 들어가지는 않겠습니다.
00:08:10하지만 명령어를 직접 입력하는 대신 자연어로 터미널을 다룰 수 있어 아주 편리합니다.
00:08:16Warp를 실제로 사용하면 이런 모습입니다.
00:08:18이제 C-Mux로 넘어가 보면, 이건 Ghosty를 기반으로 만든 macOS 네이티브 앱입니다.
00:08:24수직 탭, 에이전트 알림 링, 분할 창, 그리고 자동화를 위한 소켓 API를 지원합니다.
00:08:30보시는 것처럼 측면에 수많은 작업이 돌아가고 있습니다.
00:08:33여기 여러 개의 창이 동시에 실행되는 것도 보이시죠.
00:08:37심지어 브라우저 탭도 띄울 수 있습니다.
00:08:39C-Mux를 처음 열었을 때의 실제 모습은 이렇습니다.
00:08:43기본은 성능이 뛰어난 Ghosty 터미널이지만, 여기서부터 다양한 작업이 가능해집니다.
00:08:48Tmux와 유사하게 작동하기 시작하는데요. 모르시는 분들을 위해 Tmux의 개념을 보여드릴게요.
00:08:53제 터미널에서 실행 중인 Tmux입니다.
00:08:55Tmux 내에서 여러 창을 분할할 수 있는데, 쉽게 말해 터미널 속의 터미널입니다.
00:09:00전문 용어로는 '터미널 멀티플렉서'라고 부르죠.
00:09:03지금 C-Mux 안에서 Tmux를 실행해 봤는데, 이건 일단 종료하겠습니다.
00:09:08다시 C-Mux 화면입니다. 창을 계속해서 여러 개로 분할할 수 있습니다.
00:09:13이게 정말 좋은 게, 만약 4개의 Codex를 동시에 돌리고 싶다면 그렇게 할 수 있다는 겁니다.
00:09:18여러 개의 창을 따로 관리할 필요가 전혀 없죠.
00:09:21물론 이쪽에서 다른 터미널을 열고 왔다 갔다 하며 작업할 수도 있습니다.
00:09:27C-Mux의 정말 대단한 점 중 하나는 호출 가능한 CLI라는 것입니다.
00:09:32예를 들어 'cmux new split left'라고 입력하면 새 탭을 생성하게 할 수 있습니다.
00:09:37Claude Code를 사용한다면 여러 탭에서 동시에 여러 에이전트를 띄우도록 설정하는 상황을 상상해 보세요.
00:09:44또한 Claude Code가 C-Mux CLI를 사용해 다른 요소들을 제어하게 할 수도 있습니다.
00:09:49여기 1905번 PR이 보이시죠.
00:09:52Claude Code에게 "여기 사이드바에 PR을 보여줘"라고 말하는 것만으로 간단히 설정할 수 있었습니다.
00:09:59알림 같은 것들을 자동으로 처리하거나 커스터마이징하는 것도 가능합니다.
00:10:04예를 들어 Claude Code나 Codex가 작업을 마치면, C-Mux CLI를 호출해 몇 번 탭에서 작업이 완료되었는지 알림을 보내게 할 수 있죠.
00:10:14브라우저 실행이나 브라우저 자동화에도 활용할 수 있습니다.
00:10:18여기서 'cmux browser open getinboxzero.com'을 입력하면,
00:10:21보시는 것처럼 여기 새 탭에 바로 나타납니다.
00:10:24더 자세한 기능은 문서를 참고해 보세요.
00:10:27여기 브라우저 자동화 CLI 설명이 있네요.
00:10:30알림 관리 방법도 나와 있습니다.
00:10:33'cmux notify'를 한번 테스트해 보겠습니다.
00:10:36보시는 것처럼 새로운 알림이 떴습니다. 좋네요.
00:10:39이제 Tmux와 C-Mux의 차이점에 대해 말씀드릴게요.
00:10:42Tmux는 원격 세션 작업에 정말 탁월합니다.
00:10:46서버와의 연결이 끊겨도 Tmux는 계속 실행 중이기 때문이죠.
00:10:50C-Mux는 Mac 전용이라 서버에서는 아마 작동하지 않을 겁니다.
00:10:54즉, 컴퓨터에서 작업하다가 밖에서 휴대폰으로 이어서 하려고 할 때는 도움이 되지 않습니다.
00:11:00저는 개인적으로 휴대폰에서 'Echo'라는 도구를 씁니다. 3달러 정도 하는 아주 저렴한 앱인데요.
00:11:05기본적으로 컴퓨터에 SSH로 접속할 수 있게 해줍니다.
00:11:08이미 Tmux에서 Claude Code 세션이 돌아가고 있다면, 폰에서 바로 이어서 작업을 계속할 수 있습니다.
00:11:14컴퓨터와 폰을 동일한 Tailscale 네트워크로 묶어두면 간단히 설정할 수 있죠.
00:11:18그렇게 했을 때의 경험인데, 생각보다 아주 쾌적합니다.
00:11:21자주 쓰지는 않지만 앱 자체가 아주 단순하고 깔끔합니다.
00:11:25한번 살펴보시는 걸 추천합니다.
00:11:27준비한 영상은 여기까지입니다. 어떤 도구들이 있는지,
00:11:31그리고 어떻게 활용할 수 있는지 아이디어를 얻으셨길 바랍니다.
00:11:34솔직히 말씀드리면 모든 도구가 거의 비슷한 일을 합니다.
00:11:37결국은 약간씩 다른 인터페이스를 통해 AI와 대화하는 것뿐이니까요.
00:11:41저에게 가장 중요한 건 여러 에이전트를 동시에 병렬로 돌릴 수 있느냐입니다.
00:11:45그걸 가장 쉽게 구현하는 방법이 바로 워크트리였습니다.
00:11:48C-Mux는 워크트리 관련 내장 기능이 없다는 점을 말씀드려야겠네요.
00:11:52그래서 따로 설정을 위한 스크립트를 찾아보셔야 합니다.
00:11:55하지만 Claude를 쓴다면 그냥 'Claude worktree'라고 명령어를 쳐서,
00:11:58새로운 워크트리에 모든 설정을 마칠 수도 있습니다.
00:12:01워크트리는 Git에 내장된 기능이라 사실 어떤 앱을 쓰든 활용 가능합니다.
00:12:05하지만 Conductor나 SuperSet처럼 플러스 버튼 하나로
00:12:09새 워크트리가 생기고 모든 게 자동으로 세팅되는 방식은,
00:12:11따로 신경 쓸 게 없어서 정말 편리합니다.
00:12:14C-Mux를 쓰시더라도 인터넷에 비슷한 기능을 도와주는 스크립트들이 많습니다.
00:12:17코드 몇 줄만으로도 똑같이 구현할 수 있고요.
00:12:20오늘 영상이 재미있고 유익하셨기를 바랍니다.
00:12:23앞으로 올라올 영상들을 위해 구독 잊지 마시고요. 괜찮으시다면,
00:12:26GitInboxZero.com에 방문해 GitHub 별점도 부탁드려요. 완전히 오픈 소스입니다.
00:12:31이메일 관리를 도와주고 빠르게 '인박스 제로' 상태로 만들어 주는 AI 이메일 비서입니다.