[00:00]
어제 나는 선임 소프트웨어 엔지니어인 친구와 함께 앉아서
[00:01]
그가 새로운 스타트업을 위해 코드를 작성하는 것을 지켜봤어요.
[00:04]
솔직히 말하면
[00:06]
나는 그의 말을 듣고 있었던 것이 더 정확해요.
[00:08]
그의 말을 듣고 있었던 것이 더 정확해요.
[00:10]
맞습니다. 그는 여러 개의 AI 모델을 실행하고 있었고
[00:12]
그냥 말 그대로 그들과 대화하면서
[00:13]
무엇을 하고 싶은지 매우 명확하게 설명하고 있었어요.
[00:15]
이제 저는 1분 길이의
[00:17]
초상세한 음성 메시지를
[00:19]
이 LLM들에게 보내는 것에 대해 이야기하고 있어요.
[00:21]
그리고 솔직히 말하면, 제가 지금 코딩할 때도
[00:24]
꽤 비슷한 방식으로 하고 있어요. 모델들이
[00:26]
너무 좋아져서 제가 작성하는 코드의 거의 90%가
[00:29]
AI가 생성한 것이고, 저는
[00:31]
많은 양의 코드를 수동으로 작성할 필요가 거의 없어요
[00:33]
18개월 전에 했던 것처럼 말이죠.
[00:35]
이제 이것은
[00:37]
워크플로우에 AI를 통합하는 것이
[00:39]
점점 더 중요해지고 있다는 것을 의미하고, 만약
[00:41]
효과적으로 사용하는 사람들을 따라가고 싶다면
[00:42]
이것을 정말 진지하게 받아들여야 해요.
[00:44]
자, 제가 이런 말을 하는 이유는
[00:46]
손으로 코딩하는 것이 서서히 사라지고 있다는 점을 강조하기 위해서예요.
[00:49]
우리는 코드 바이 프롬프트 세상으로 훨씬 더 이동하고 있어요.
[00:51]
그리고 오늘 비디오에서
[00:54]
저는 Warp라고 불리는 매우 강력한 도구를 시연함으로써
[00:56]
그것을 여러분에게 증명해 보일 거예요.
[00:58]
자, 큰 그림에서 보면 Warp는
[01:01]
에이전틱 개발 환경입니다
[01:02]
터미널과 매우 유사해 보이는 애플리케이션으로 제공되죠.
[01:04]
매우 흥미로운 기능들이 많이 있고
[01:07]
에이전틱 개발에 대한 새로운 접근법을 제시하고 있어요
[01:09]
Cursor나 Claude Code 같은 것들과 비교해서 말이죠.
[01:11]
자, 저는 이 비디오를 위해 그들과 팀을 이뤘고
[01:13]
이 도구를 어떻게 활용하는지에 대한 튜토리얼을 제공할 거예요.
[01:15]
그러니까 계속 지켜봐 주세요.
[01:17]
이 도구를 활용하는 방법에 대한 튜토리얼을 제공할 거예요.
[01:18]
그러니까 계속 지켜봐 주세요.
[01:20]
좋아요, 이제 컴퓨터 앞에 있고
[01:21]
바로 시작해보고 싶어요.
[01:23]
지금 저는 Warp 랜딩 페이지에 있어요.
[01:25]
warp.dev에 있다는 걸 보실 수 있어요.
[01:26]
확인해보고 싶으시면 설명란에 이 링크도 남겨둘게요.
[01:28]
확인해보고 싶으시면 설명란에 이 링크도 남겨둘게요.
[01:30]
그리고 그 이유는 Warp를 사용하고 싶다면
[01:31]
이 도구를 다운로드해야 하기 때문인데
[01:33]
독립 실행형 애플리케이션이거든요.
[01:35]
예를 들어 Claude Code 같은 CLI 도구가 아니에요.
[01:37]
Claude Code 같은 CLI 도구가 아니에요.
[01:39]
좋아요, 만약 가지고 놀고 싶다면 지금 다운로드하세요.
[01:41]
다운로드는 무료이고
[01:43]
각자의 운영체제에 맞게 할 수 있어요
[01:44]
또는 Brew 같은 것을 사용해서 설치할 수도 있어요.
[01:47]
가격 책정에 관해서는 물론 무료 티어가 있어요.
[01:49]
그러니까 그걸로 가지고 놀 수 있어요.
[01:51]
그리고 원한다면
[01:53]
프로, 터보로 업그레이드할 수도 있어요
[01:54]
엔터프라이즈 티어도 있고요.
[01:55]
어쨌든, 에디터로 넘어가 보죠
[01:58]
실제로 어떻게 생겼는지 보여드리고 싶거든요.
[01:59]
좋아요, 이게 Warp예요. 열어봤어요.
[02:01]
다시 말하지만, 독립 실행형 애플리케이션이라서
[02:03]
먼저 설치해야 해요.
[02:05]
그리고 여기서부터 이게 꽤 친숙해 보일 거예요
[02:06]
우리 대부분이 익숙한 터미널 환경과 매우 유사하기 때문이죠
[02:08]
여기에 타이핑하는 것과 말이에요.
[02:10]
이제 몇 가지를 보여드리고 싶어요
[02:11]
이것이 할 수 있는 것들을 말이죠
[02:13]
그리고 이 사용자 인터페이스 뒤의 논리와
[02:14]
이것이 본격적인 IDE와 어떻게 비교되는지
[02:16]
이야기하고 싶어요
[02:18]
이야기하고 싶어요
[02:20]
본격적인 IDE와 비교해서 말이에요
[02:22]
커서 같은 도구에서는 화면의 80%가
[02:24]
파일과 코드들로 가득 차 있잖아요.
[02:26]
그런 것들 말이에요. 자, 여기서부터
[02:28]
일반 터미널처럼 사용할 수 있어요.
[02:29]
예를 들어 뭔가를 만들어보겠습니다.
[02:31]
make test라고 입력하고 그냥 실행할 수도 있고
[02:33]
또는 자연어로 질문할 수도 있어요.
[02:35]
예를 들어 '내 데스크톱으로 이동해줘'라고
[02:37]
말할 수 있죠. 간단한 예시지만
[02:41]
실제로 감지해낼 거예요.
[02:42]
자연어를 사용하고 있다는 것을 말이죠.
[02:44]
명령어를 실행하려는 게 아니라요.
[02:46]
그래서 올바른 명령어를 생성해줄 거예요.
[02:48]
좋아요, 짠! 이걸 실행해보죠.
[02:50]
그러면 데스크톱으로 이동하게 됩니다.
[02:52]
네, 이제 데스크톱 디렉토리에 있어요.
[02:53]
여기서 확인할 수 있죠. 이제
[02:55]
'make dir test'라고 입력해보겠습니다.
[02:57]
이렇게요. 디렉토리를 만들었고
[02:59]
cd로 그 디렉토리에 들어갈 수 있고
[03:01]
일반 터미널처럼 사용할 수 있어요.
[03:02]
하지만 정말 강력한 기능은
[03:04]
언제든지 AI 통합 기능을 사용할 수 있다는 점이에요.
[03:06]
여기서 ls를 사용해보겠습니다.
[03:08]
아무것도 없다는 것을 확인했고
[03:09]
이제 이렇게 말해보겠습니다.
[03:10]
'크리스마스 트리를 출력하는 새로운 파이썬 파일을 만들어줘'
[03:17]
뭐 그런 식으로요.
[03:19]
크리스마스 트리 같은 걸 말이죠.
[03:21]
이 폴더 안에 생성해줄 거예요.
[03:22]
어떻게 하는지 봅시다.
[03:24]
diff를 로딩하고 있는 것을 볼 수 있고
[03:26]
코드를 생성할 수 있을 거예요.
[03:27]
네, 됐네요!
[03:29]
파이썬 스크립트를 생성해준 것을 볼 수 있어요.
[03:31]
꽤 기본적이지만 완성됐네요.
[03:33]
여기서 여러 옵션이 있죠?
[03:34]
취소할 수도 있고, 수정할 수도 있어요.
[03:36]
수정을 누르면
[03:38]
새로운 프롬프트를 입력해서
[03:39]
이 스크립트를 조정할 수 있어요.
[03:41]
직접 편집할 수도 있고요.
[03:43]
그렇게 하면 전체화면으로 열려요.
[03:45]
그리고 뭔가를 출력하거나
[03:46]
주석을 추가할 수 있어요.
[03:48]
일반 파일에서 하는 것처럼
[03:50]
직접 작업할 수 있어요.
[03:52]
물론 변경사항을 적용할 수도 있고요.
[03:54]
적용해보겠습니다. 이제 실제로 파일을 만들어줄 거예요.
[03:56]
잠깐만 기다려보세요.
[03:58]
크리스마스 트리라는 파이썬 파일을
[03:59]
만들었다고 나오네요.
[04:01]
그리고 실행할 명령어도 보여주고 있어요.
[04:02]
이걸로 실행할 수 있다고 하네요.
[04:04]
실제로 이걸 눌러서
[04:06]
터미널에서 실행해볼 수 있어요.
[04:08]
명령어가 나타나네요. 엔터를 누르면
[04:11]
크리스마스 트리가 출력됩니다.
[04:13]
멋지네요! 아주 기본적인 예시지만
[04:15]
인터페이스가 어떻게 생겼는지
[04:17]
어떻게 작동하는지 보여드리려고 했어요.
[04:18]
다른 설정들도 많이 있어요.
[04:20]
몇 가지 빠르게 살펴보고
[04:21]
다시 이 UI 결정에 대해서도
[04:23]
얘기해보고 싶어요.
[04:25]
여기 터미널 왼쪽 하단 모서리에
[04:26]
세 가지 모드가 있는 것을 볼 수 있어요.
[04:28]
자동 감지, 에이전트 모드,
[04:30]
그리고 터미널 모드가 있어요.
[04:32]
꽤 직관적이에요. 터미널 모드로 설정하면
[04:34]
일반 명령어만 입력할 수 있고
[04:35]
LLM이 작동하지 않아요.
[04:37]
에이전트 모드로 설정하면
[04:38]
에이전트 모드로 설정하면, 이건 자연어로 소통하게 됩니다.
[04:40]
그리고 자동 감지 모드로 설정하면,
[04:42]
제가 주로 사용하는 모드인데,
[04:44]
사용자가 원하는 것을 자동으로 감지해서
[04:46]
그에 맞게 응답해줍니다.
[04:48]
물론 여기서
[04:49]
사용할 모델을 변경할 수도 있습니다.
[04:51]
예를 들어, Claude
[04:52]
Sonnet으로 바꿀 수도 있는데,
[04:54]
저는 보통 자동 모드로 그냥 두거든요.
[04:56]
좋습니다.
[04:58]
지금까지 이 도구가 무엇을 할 수 있는지 조금 보셨으니,
[05:00]
왜 이것이 터미널 인터페이스로 되어 있는지
[05:02]
설명해보겠습니다.
[05:04]
서두에서 말했듯이, 우리는 점점 더
[05:07]
코드를 수동으로 수많은 줄 작성하는 대신
[05:09]
프롬프트로 코딩하는 방향으로 이동하고 있습니다.
[05:11]
Cursor 같은 에디터나
[05:12]
VS Code 같은 IDE를 생각해보면,
[05:15]
화면의 80-85%가 코딩과 파일에 할애됩니다.
[05:18]
하지만 현실적으로, 대부분의 시간을
[05:20]
작은 AI 채팅 창에서 작업하고 있죠.
[05:22]
그리고 몇 가지 명령어를 실행하고,
[05:24]
환경을 설정하는 등의 작업을 합니다.
[05:25]
그래서 화면의 대부분이
[05:28]
거의 보지도 않는 것에
[05:29]
할애되는 것은 말이 안 되죠.
[05:30]
대부분의 시간에는
[05:32]
그저 AI와 상호작용하고 있으니까요.
[05:34]
그래서 Warp의 논리는
[05:36]
완전한 코딩 환경에서
[05:38]
모든 코드를 화면에 보여주는 대신,
[05:40]
실제로 개발자들이
[05:42]
일상적으로 하는 작업에
[05:44]
더 가까운 인터페이스에 두자는 것입니다.
[05:46]
즉, 주로 AI와 상호작용하는 것이죠.
[05:48]
이게 여기의 논리입니다.
[05:50]
여러분이 이에 동의하는지
[05:51]
동의하지 않는지,
[05:53]
그리고 이런 인터페이스를 어떻게 생각하는지
[05:55]
알려주세요.
[05:57]
개인적으로는
[05:58]
다루기가 꽤 매끄럽습니다.
[06:00]
특히 수동으로 수많은 줄의 코드를 작성하지 않을 때는요.
[06:03]
어쨌든, 이제
[06:04]
더 고급 예제로 넘어가서
[06:06]
Warp 같은 도구를 사용하는
[06:08]
장점을 보여드리겠습니다.
[06:10]
방금 AI Scraper라는
[06:12]
새 폴더를 만들었습니다.
[06:13]
앞으로 몇 분 동안 시도해볼 것은
[06:15]
Warp를 사용해서 확장 가능한 웹 스크래핑 API를 만드는 것입니다.
[06:18]
먼저 계획이 필요합니다.
[06:19]
이 계획을 더 명확하게 만들고
[06:23]
README 파일에 넣어달라고 요청하겠습니다.
[06:30]
좋습니다.
[06:32]
제가 가지고 있는
[06:34]
기본 계획을 붙여넣겠습니다.
[06:34]
전부 읽지는 않겠지만,
[06:36]
요점은 몇 가지
[06:37]
다른 구성 요소들을 원한다는 것입니다.
[06:39]
컨테이너화하고 싶고, Docker를 사용하고 싶습니다.
[06:41]
VPS에 배포하고 싶고,
[06:42]
실제 스크래핑을 위해서는
[06:44]
Python과 Playwright를 사용하고
[06:47]
API를 제공하기 위해 기본적인 FastAPI 서버를 원합니다.
[06:49]
여기서 엔터를 누르고
[06:50]
이 계획으로 시작하겠습니다.
[06:52]
계획이 완료되면
[06:54]
구성 요소별로 구축을 시작하고
[06:55]
Warp의 기능 중 하나인
[06:57]
멀티스레드 에이전트를 어떻게 사용할 수 있는지 보여드리겠습니다.
[06:59]
방금 여기서 계획을 완료했습니다.
[07:01]
스크롤해서 살펴봤는데, 이건
[07:02]
실제로 꽤 괜찮아 보이네요. 그래서
[07:04]
지금으로서는 이걸 조정할 게 없으니
[07:05]
그냥 '변경사항 적용'을 누르겠습니다. 그리고
[07:07]
이 계획을 사용해서 이제
[07:09]
이 컴포넌트들을 만들어보겠습니다. 이제
[07:11]
이 시점에서, 실제로 이걸
[07:12]
Git 저장소로 초기화해서 이
[07:13]
작업을 잃지 않도록 하겠습니다. 그래서
[07:15]
새로운 git 저장소를 만들고
[07:16]
첫 번째 커밋을 만들어달라고 하겠습니다. 좋아요, git init이네요
[07:21]
실행해보죠. 그냥 엔터를 누르면
[07:25]
자동으로 실행됩니다.
[07:26]
코드베이스를 인덱싱 중이라고 나오네요. 좋아요
[07:28]
인덱싱해서 모든 걸
[07:31]
더 잘 파악할 수 있도록 해보죠. 좋아요
[07:33]
브랜치를 main으로 변경한다고 하네요
[07:35]
엔터를 눌러서 실행해보죠
[07:36]
다음 명령어가 뭔지 봅시다
[07:38]
readme를 추가하라고 하네요
[07:40]
좋아 보입니다. 좋아요, 커밋을 만들어줬네요
[07:42]
이 커밋은 너무 자세합니다. 그래서
[07:44]
더 간단하게 만들어달라고 하겠습니다
[07:45]
이렇게 길게 하고 싶지 않거든요. 그러면 더 나은
[07:48]
명령어를 줄 거예요
[07:50]
여기서. 좋아요, 완벽하네요
[07:51]
훨씬 낫네요
[07:53]
실행해보죠. 좋아요
[07:55]
readme가 여기 있네요. 그리고 이제
[07:57]
실제로 우리가 main 브랜치에 있다는 걸
[07:58]
감지하네요. 그래서 그걸 보여주고
[08:00]
git 기능도 있습니다
[08:01]
이제 보여드리고 싶은 건
[08:03]
예를 들어 ls를 사용해서
[08:04]
파일을 보면, readme.md 같은 파일을
[08:06]
실제로 열 수 있다는 겁니다. 여기를 누르면
[08:09]
파일 열기나 Warp에서 열기가 나타납니다
[08:11]
Warp에서 열기를 누르면
[08:13]
여기 안에서 바로 파일을
[08:15]
볼 수 있습니다. 이 경우에는
[08:17]
마크다운 파일의 미리보기를 보고 있지만
[08:18]
코드 파일들도 열 수 있고
[08:20]
그런 것들도 마찬가지입니다. 좋아요
[08:22]
이제 여기서 다음 단계로
[08:24]
넘어가고 싶습니다. 첫 번째로
[08:26]
하고 싶은 건 아마
[08:27]
스크래퍼 작업을 시작하는 거예요. 그래서
[08:30]
설명된 계획을 바탕으로 스크래퍼 워커
[08:33]
만들기를 시작해달라고 하겠습니다. 이 프롬프트를 조금
[08:39]
개선하고 바로 돌아오겠습니다
[08:41]
좋아요, 프롬프트를 조금
[08:42]
개선했습니다. 실행해보죠
[08:44]
시간이 좀 걸릴 거예요
[08:45]
끝나면 바로 돌아와서
[08:47]
다른 컴포넌트들을 만들기
[08:49]
시작하겠습니다
[08:51]
지금은 AI 스크래핑 부분으로
[08:52]
시작하고 있거든요
[08:53]
워커가 완료되면 API, 데이터베이스 설정 등으로
[08:56]
넘어가겠습니다
[08:57]
좋아요, 몇 분 동안
[09:00]
이걸 작업했습니다
[09:01]
여러 가지 프롬프트를 시도했지만
[09:02]
전체 스크래퍼 시스템을 거의
[09:04]
생성하도록 했습니다
[09:06]
여기를 스크롤해보면 많은
[09:08]
diff들이 있는 걸 볼 수 있습니다
[09:10]
많은 것들이 우리를 위해
[09:11]
생성되었습니다. 이 모든 명령어들이
[09:13]
실행되었습니다. 또한 하고 있는 일을
[09:15]
테스트하도록 했습니다. 테스트
[09:17]
스크립트를 생성해줬어요. 이제 ls를 해보면
[09:19]
스크래퍼 디렉토리가
[09:20]
있는 걸 볼 수 있습니다. 스크래퍼로 cd해서 ls를 해보죠
[09:23]
거기에 있습니다. 그리고 우리가 가진
[09:24]
모든 다양한 파일들을 볼 수 있습니다. 우리는
[09:26]
docker 파일, example.py, models.py,
[09:28]
main.py를 가지고 있습니다. 그리고 이들 중 하나를
[09:30]
열고 싶다면, warp에서 직접 열 수 있습니다.
[09:32]
그리고 여기서 모든 코드를 볼 수 있습니다.
[09:34]
그리고 물론 원한다면
[09:35]
warp 내에서 바로 무언가를
[09:37]
편집할 수 있습니다. 좋아요. 그럼 이제
[09:40]
거기서 나가서 그냥 열린 탭으로
[09:41]
두거나 여기로 다시 돌아갈 수 있습니다.
[09:44]
좋습니다. 이제 이것을 얻었으니
[09:45]
멀티 스레드 에이전트
[09:47]
기능을 보여드리고 싶습니다. 이것은 여러
[09:49]
에이전트가 병렬로 실행되고
[09:52]
함께 작업할 수 있게 해줍니다. 이 시점에서
[09:54]
cd . 하면 ls로 보면
[09:57]
scraper 디렉토리가 있지만 여전히
[10:00]
API를 만들어야 합니다. 우리는
[10:02]
PostgreSQL 데이터베이스나 Redis
[10:04]
데이터베이스를 설정해야 하고 그 다음
[10:06]
모든 docker 관련 작업들을 해야 합니다. 그래서
[10:08]
제가 할 일은 두 개의
[10:09]
프롬프트를 여기서 준비하는 것입니다. 하나는
[10:11]
API를 설정하는 것이고 다른 하나는
[10:12]
모든 데이터베이스 관련 작업을 설정하는 것이고
[10:14]
정확히 같은 시간에
[10:16]
실행할 것입니다. 그러니 준비하는 시간을 좀 주세요.
[10:18]
좋습니다. 방금 두 개의
[10:19]
프롬프트를 준비했습니다. 하나는 PostgreSQL
[10:20]
데이터베이스와 Redis
[10:22]
설정을 위한 것이고 다른 하나는
[10:23]
FastAPI 서버를 만드는 것입니다. 제가
[10:26]
두 개의 별도 창을 가지고 있다는 것을 보세요. 그리고
[10:28]
여전히 다른 채팅 창이
[10:29]
여기에 열려있습니다. 그래서 제가 할 수 있는 것은
[10:31]
여기서 엔터를 누르고, 여기서도
[10:33]
엔터를 누를 수 있습니다. 그러면 둘 다
[10:35]
정확히 같은 시간에 병렬로
[10:36]
실행됩니다. 그래서 우리는 하나가
[10:38]
완료되기를 기다렸다가 다른 것을 실행할 필요가 없습니다.
[10:40]
그냥 계속 진행하고 실행할 수 있습니다. 그래서
[10:42]
에이전트들은 지금 여전히 실행 중입니다. 하지만
[10:43]
흥미로운 것을
[10:44]
보여드리고 싶습니다. 에이전트라고 표시된
[10:46]
여기 위의 이 버튼을 누르면
[10:47]
모든 활성 에이전트들을 보여줍니다. 그리고
[10:49]
노란색이 보이면, 이것은
[10:51]
에이전트가 당신을 기다리고 있다는 뜻입니다. 여기서
[10:53]
가서 변경사항 적용을 누르겠습니다. 그리고 이제
[10:55]
여기로 돌아가면 보라색으로
[10:56]
바뀌는 것을 볼 수 있습니다. 그래서 실제로 우리는
[10:58]
이 탭들 사이를 계속 전환할 필요가 없습니다. 당신은
[10:59]
그냥 보고 말할 수 있습니다, "좋아, 음,
[11:01]
색깔이 뭐지? 여기서 조치를
[11:02]
취해야 하나?" 네, 그렇습니다. 그리고 실제로
[11:04]
설정에서 이것을 활성화하면 알림을 받을 수 있습니다
[11:06]
그래서 언제 돌아가서
[11:08]
에이전트에서 이 조치를 취해야 하는지 알 수 있습니다
[11:09]
이것은 꽤 멋진 기능이라고 생각합니다. 그래서 이것이
[11:11]
제가 말하는 것의 예입니다. 당신은
[11:12]
방금 이 작은 알림이 팝업되는 것을
[11:14]
볼 수 있습니다. "이봐, 우리가
[11:15]
실제로 여기서 이 조치를 취해야 합니다. 왜냐하면
[11:17]
저는 다른 에이전트에 있기 때문입니다." 그래서 만약
[11:18]
제가 지금 여기로 가면, 변경사항 적용을 누를 수 있고
[11:20]
그러면 바로 그것이 사라져야 합니다. 좋아요, 그래서
[11:21]
이 두 에이전트 모두 이제 완료되었습니다.
[11:23]
그들이 저에게 주는 것을 볼 수 있습니다
[11:26]
이 최종 출력은 다양한 서비스들을 시작하기 위해
[11:28]
제가 해야 할 일을 알려줍니다.
[11:30]
그리고 다시, 제가 터미널에서 이것과 함께 작업하는 것을 좋아하는 이유 중 하나는
[11:33]
에이전트들이 실행하는 명령어들이 많기 때문입니다
[11:34]
코드를 생성하는 것과 동시에 말이죠. 자,
[11:37]
이 시점에서 두 에이전트 모두 작업을 완료했습니다
[11:39]
맞죠? 이제 제가 할 일은
[11:40]
음성 입력을 활성화하고
[11:41]
LLM과 직접 대화를 시작하는 것입니다.
[11:44]
실제로 자동 모드로 다시 전환해보겠습니다.
[11:46]
이 디렉토리를 읽어주시고
[11:48]
모든 설치 및 구성 명령어를 실행한 다음
[11:50]
API를 테스트해서 제대로 작동하는지
[11:53]
확인해주시겠어요?
[11:55]
좋습니다. 그럼 정지 버튼을 누르겠습니다.
[11:58]
여기 있네요. 엔터를 눌러보겠습니다.
[12:00]
어떤 일이 일어나는지 봅시다.
[12:02]
이것이 바로 터미널 내에서
[12:04]
실행하는 것의 강력함이라고 생각합니다
[12:05]
모든 명령어를 대신 실행해주기 때문이죠.
[12:07]
우리는 모든 작업을
[12:09]
실제로 수행되어야 할 바로 그 장소에서 하고 있습니다
[12:11]
맞죠? 채팅 창에서
[12:13]
명령어를 복사해서 터미널로 옮기거나
[12:14]
여러 곳에 분산시켜 놓는 대신
[12:16]
터미널 내에서 직접 사용할 수 있습니다
[12:18]
그리고 여러 개를 동시에 열어둘 수 있다는 점도
[12:19]
정말 마음에 듭니다.
[12:21]
매우 자연스러운 방식으로 느껴집니다.
[12:23]
좋습니다. 그리고 실제로 이 시점에서
[12:24]
작업을 좀 더 쉽게 만들기 위해
[12:26]
자율 모드를 활성화하고 싶습니다
[12:28]
그래야 매번 이런 명령어들을
[12:29]
수동으로 실행할 필요가 없거든요.
[12:31]
설정으로 가서 Warp 프리뷰, 그다음 설정으로 가면 됩니다.
[12:33]
여러분의 경우에는
[12:34]
그냥 Warp에서 설정으로 가면 됩니다.
[12:36]
이 중 일부를 활성화할 수 있습니다.
[12:38]
AI로 가보면
[12:39]
여기서 토글할 수 있는 여러 항목들이 보입니다.
[12:41]
예를 들어 권한에서 코드 차이 적용은
[12:43]
항상 허용으로 설정할 수 있고
[12:44]
파일 읽기는 항상 허용
[12:46]
계획 생성도 허용, 에이전트 측면에서
[12:48]
명령어 실행도 항상 허용으로 설정합니다
[12:50]
그리고 아래쪽에는 당연히
[12:52]
명령어 거부 목록이 있습니다
[12:55]
에이전트가 할 수 없도록 해야 할 것들이죠
[12:58]
예를 들어 많은 것들을 삭제하는 것 같은
[13:00]
그런 명령어를 추가할 수 있습니다
[13:02]
rm dot을 거부 명령어로 추가하면
[13:03]
모든 것을 삭제할 수 없게 됩니다
[13:05]
MCP 서버 호출도 마찬가지고
[13:06]
여기서 살펴볼 수 있는 여러 기능들이 있습니다.
[13:09]
그리고 당연히 음성 모드도 활성화/비활성화할 수 있고
[13:11]
음성 모드 토글을 위한
[13:13]
키 바인딩도 설정할 수 있습니다.
[13:15]
지금은 자율 모드로 설정했는데
[13:16]
명령어 실행을 거의 항상 허용했기 때문입니다.
[13:18]
에이전트에게 완전한 자율성을 부여합니다.
[13:20]
승인이 필요하지 않습니다.
[13:21]
이제 다시 돌아가겠습니다.
[13:24]
좋습니다. 그리고 실행해보겠습니다.
[13:26]
이제 이 시점에서
[13:27]
명령어들을 자동으로 실행하고
[13:29]
이 모든 것들을 설정해야 합니다.
[13:31]
여기 보세요. 이제 우리의 허가를 구하지 않고
[13:34]
명령어를 생성하고 실행하고 있습니다.
[13:37]
좋습니다. 그리고 정말 흥미로운 점은
[13:39]
실제로 제가 아무것도 하지 않았는데도
[13:41]
Docker Desktop을 자동으로 실행해줬다는 것입니다
[13:43]
보시는 것처럼 이제
[13:44]
허가 없이 명령어를 생성하고 실행하고 있습니다
[13:45]
좋습니다.
[13:47]
정말 흥미로운 점은
[13:49]
제가 아무것도 하지 않았는데도
[13:50]
Docker Desktop을 자동으로 실행해줬다는 것입니다
[13:52]
자동으로 실행되었습니다 왜냐하면
[13:54]
이게 실행되지 않고 있었거든요. 이제 Docker가
[13:56]
실행되고 있는 걸 볼 수 있지만 제가 한 건 아니에요.
[13:57]
여기서 명령어를 실행할 수 있었고
[13:59]
Docker를 열어주고 그 데몬 스레드를 시작해서
[14:01]
이제 Docker에 연결하고
[14:02]
실제로 Docker 파일을 실행할 수 있게 됐어요.
[14:04]
이 에이전트가 실행되는 동안
[14:06]
보여드리고 싶은 몇 가지 설정을
[14:08]
만지작거리고 있었어요.
[14:09]
Warp 미리보기로 가서
[14:10]
여기 설정으로 다시 가면
[14:12]
활성화할 수 있는 많은 기능들이 있어요.
[14:14]
물론 계정도 확인할 수 있고
[14:15]
제가 언급했던 AI 설정도 볼 수 있어요.
[14:16]
그리고 주목할 점은
[14:18]
MCP 서버를 추가할 수 있다는 거예요.
[14:20]
여기를 클릭하면 추가할 수 있어요.
[14:22]
이 영상에서는 보여드리지 않겠지만
[14:23]
물론 규칙도 있어요.
[14:25]
규칙에 대해 들어본 적이 없다면
[14:26]
실제로 AI가 항상 따를
[14:27]
규칙을 만들 수 있어요.
[14:29]
예를 들어, 여기서 간단한 규칙을 하나 만들었는데
[14:31]
설치할 때 PIP를 절대 사용하지 말고
[14:33]
PIP 대신 항상 UV를 사용하라고 했어요.
[14:35]
이런 규칙을 원하는 만큼 추가할 수 있어요.
[14:37]
이 도구를 점점 더 많이 사용할수록
[14:39]
더 강력해지는 이유는
[14:41]
지속적으로 지식 베이스나
[14:43]
이런 규칙들을
[14:45]
에이전트에 추가할 수 있기 때문이에요.
[14:47]
다른 몇 가지 기능들도 있는데
[14:49]
외관 설정이 아마 유용할 거예요.
[14:51]
예를 들어, 화면 투명도나
[14:52]
테마 등을 조정할 수 있어요.
[14:55]
폰트 크기도 조정할 수 있는데
[14:57]
보기 편하게 하려고 조금 키웠어요.
[14:58]
그리고 기능으로 갈 수 있어요.
[15:01]
여기에는 정말 많은 기능들이 있어요.
[15:03]
다 살펴보지는 않겠지만
[15:04]
보여드리고 싶은 한 가지는
[15:06]
Warp Drive라는 기능이에요.
[15:08]
이 사이드 토글 바를 열면
[15:11]
꽤 작은 아이콘이지만
[15:12]
누르면 이 Warp Drive가
[15:14]
팝업으로 나타납니다.
[15:16]
프로 구독을 사용하고 있어서
[15:17]
팀이 있는 걸 볼 수 있어요. 없을 수도 있지만
[15:19]
아래에 개인 섹션이 있어서
[15:21]
MCP 서버에 빠르게 접근할 수 있고
[15:23]
규칙들과 노트북이라는
[15:25]
기능들이 있어요.
[15:27]
너무 깊이 들어가지는 않겠지만
[15:28]
기본적으로 Warp에서는
[15:30]
다양한 터미널 명령어들을
[15:32]
사용해볼 수 있는 인터랙티브한
[15:33]
플레이그라운드 같은 노트북을 만들 수 있어요.
[15:35]
이런 블록들을 모두 추가할 수 있고
[15:36]
블록을 직접 실행할 수도 있어요.
[15:38]
꽤 흥미롭고 주목할 만한 기능이에요.
[15:40]
여기서 이 노트북을 닫을게요
[15:42]
정말 필요하지 않거든요.
[15:44]
마지막으로 여기서 보여드릴 건
[15:45]
위로 가서 드라이브로 가면
[15:47]
할 수 있는 다른 많은 기능들이 있어요.
[15:49]
예를 들어, 새로운 개인
[15:51]
환경 변수를 만들 수 있어요.
[15:52]
이걸 누르면
[15:54]
이 셸 내에서 지속적으로 유지되는
[15:56]
환경 변수를 가질 수 있어요.
[15:57]
.env 파일에서 로드해야 하는 대신
[15:59]
물론 그렇게 할 수도 있지만
[16:01]
실제로 여기에 직접 추가할 수 있어서
[16:03]
코드나 이 개인 셸 환경에서
[16:04]
실행되는 모든 것에서 접근할 수 있습니다.
[16:07]
또한 팀을 위해서도 추가할 수 있는데,
[16:09]
팀 기능은 나중에 다루겠습니다.
[16:10]
어쨌든, 지금은 Docker가
[16:12]
완전히 실행될 때까지 기다려야 합니다.
[16:14]
여러 패키지를 설치해야 하거든요.
[16:15]
그 다음에 코드가 제대로
[16:17]
작동하는지 확인할 수 있습니다.
[16:18]
좋습니다. 이제 모든 컨테이너가
[16:20]
여기서 실행되고 있네요.
[16:22]
그리고 실제로 한 가지
[16:23]
보여드리고 싶은 것이 있습니다.
[16:26]
탭으로 가면 실제로 탭을
[16:28]
분할할 수 있습니다. 예를 들어,
[16:29]
분할 창을 선택할 수 있죠?
[16:32]
여기서 새 탭을 열고 curl을 사용해서
[16:36]
지금 Docker로 실행 중인
[16:38]
API를 테스트할 수 있습니다.
[16:40]
그러면 해당 명령어를 생성하고
[16:41]
테스트할 수 있어야 합니다.
[16:42]
전체 배포 과정은 진행하지 않겠습니다.
[16:44]
시간이 좀 걸리거든요.
[16:45]
가상 사설 서버도 필요하고
[16:47]
그런 것들이 있습니다.
[16:48]
하지만 모든 것이 실행되고 있고,
[16:50]
실제로 수동으로 코드를
[16:52]
많이 변경할 필요가 없었습니다.
[16:54]
여러 에이전트가 실행되고,
[16:55]
터미널 모드에서 작동하며,
[16:57]
작업 내용을 검토하는 등의
[16:58]
작업을 수행했기 때문입니다.
[17:00]
실제로 이 엔드포인트에 접근해서
[17:02]
응답을 받을 수 있는지 확인해보겠습니다.
[17:04]
좋네요. 응답이 오고 있다고 나오네요.
[17:06]
이 엔드포인트도 확인해보겠습니다.
[17:08]
명령어를 보고 싶다면
[17:10]
응답을 받았다는 걸 확인할 수 있습니다.
[17:13]
그리고 에러도 하나 발생했네요.
[17:14]
물론 이 과정을 계속
[17:15]
진행할 수 있습니다. 모델이
[17:17]
이런 문제를 해결해줄 수 있거든요.
[17:19]
에러는 발생하는 것이고,
[17:21]
디버깅이 필요하죠.
[17:23]
하지만 지금은 여기까지면 충분할 것 같습니다.
[17:24]
이 영상에서 보여드리고 싶었던
[17:26]
기능들은 거의 다 보여드린 것 같네요.
[17:28]
마지막으로 다시 말씀드리면
[17:30]
팀 기능이 있습니다.
[17:31]
원한다면 실제로 워크플로우를
[17:33]
여기에 추가할 수 있습니다.
[17:34]
폴더, 프롬프트, 노트북,
[17:36]
환경 변수를 팀과 공유할 수 있습니다.
[17:37]
다시 말하지만, 이 부분은
[17:39]
자세히 다루지 않겠습니다.
[17:40]
지금 당장 함께 작업할 사람이
[17:42]
필요하거든요. 하지만 알아둘만한
[17:43]
흥미로운 기능입니다.
[17:45]
어쨌든, 이 도구는 정말 멋지다고 생각합니다.
[17:46]
확실히 제 워크플로우의
[17:47]
일부로 사용할 것 같습니다.
[17:49]
그리고 정말로 이런 새로운 유형의
[17:51]
UI를 높이 평가합니다.
[17:53]
코딩이 이런 방향으로 나아갈 것이라고
[17:55]
생각하거든요. 이런 터미널 환경에서
[17:57]
AI와 많이 상호작용하면서 작업하는 것이
[18:00]
에디터나 IDE에서 작업하는 것과
[18:02]
대조되는 방식이죠.
[18:04]
대부분의 코드를 직접 건드릴
[18:06]
필요가 없어지니까요.
[18:07]
어쨌든, 이 도구에 대한
[18:08]
여러분의 생각을 댓글로 알려주시고
[18:12]
다음 영상에서 뵙겠습니다.