[00:00]
무엇을 개발하든 상관없이
[00:02]
AI 코딩 어시스턴트와 작업할 때는
[00:03]
단순히 프롬프트만 작성하는 것 이상입니다.
[00:05]
시스템과 워크플로를 만드는 것이 핵심이며
[00:07]
이는 여러분의 필요에 맞게 진화할 수 있어야 합니다.
[00:10]
그냥 대충 넘어가고 싶은 유혹이 있다는 걸 압니다.
[00:12]
하지만 실질적인 것을 구축하려면
[00:14]
구조가 필요합니다.
[00:16]
맥락 엔지니어링 분야에 PRP 프레임워크나
[00:18]
BMAD, GitHub 스펙 키트 같은
[00:20]
다양한 전략들이 있는 데는 이유가 있습니다.
[00:23]
수많은 전략들이 있죠.
[00:25]
그런데 바로 여기에 문제가 있습니다.
[00:27]
말하자면 너무 많은 정보에
[00:29]
압도되기 쉽다는 것입니다.
[00:31]
이 모든 다른 전략들과
[00:33]
그것들이 여러분에게 어떻게 적용되는지
[00:35]
알기 어렵기 때문이죠.
[00:36]
이 문제의 해결책이 바로
[00:38]
이 영상에서 다룰 내용입니다.
[00:40]
PRP나 BMAD 같은 기존 프레임워크의
[00:43]
개념을 버리고
[00:45]
우리만의 것을 구축할 것입니다.
[00:46]
어떻게 작동하는지 보여드리겠습니다.
[00:48]
이 모든 기존 프레임워크에 담긴
[00:50]
철학과 전략을 이해할 수 있다면
[00:52]
실제로 이해하게 되어
[00:54]
더 잘 활용할 수 있을 뿐만 아니라
[00:56]
우리 필요에 맞게 조정하고
[00:58]
심지어 우리만의 워크플로와
[01:00]
시스템을 구축할 수도 있습니다.
[01:03]
바로 여기에 진정한 힘이 있습니다.
[01:05]
지금 보시는 이 다이어그램은
[01:07]
이 영상에서 다룰 모든 내용을
[01:09]
정말 잘 요약하고 있습니다.
[01:11]
여기서는 간단하고 기본적인 것에
[01:13]
초점을 맞추고 싶습니다.
[01:15]
AI 코딩 어시스턴트와 함께
[01:17]
무엇을 만들든 상관없이
[01:19]
멀리 갈 수 있는 프로세스를 제공하고 싶습니다.
[01:21]
제 코딩을 안내하는 주요 멘탈 모델은
[01:23]
계획, 구현, 그리고 검증이라는
[01:26]
3단계 프로세스입니다.
[01:28]
이를 중심으로 워크플로를 구축할 것입니다.
[01:30]
우선 높은 수준에서
[01:31]
다룰 모든 내용을
[01:33]
살펴보겠습니다.
[01:34]
그런 다음 세부적으로 들어가서
[01:36]
실제 예시도 보여드리겠습니다.
[01:38]
먼저 저는 항상 계획부터 시작합니다.
[01:41]
이를 위한 다단계 프로세스가 있습니다.
[01:43]
저는 '분위기 계획'이라고 부르는 것부터
[01:45]
시작합니다.
[01:46]
기본적으로 새로운 프로젝트나
[01:48]
기존 프로젝트의 코드베이스에
[01:50]
구현하고 싶은 다양한 아이디어들을
[01:52]
자유로운 형태로 탐색하는 것입니다.
[01:54]
그런 다음 새로운 기능이나
[01:56]
새로운 프로젝트에 대한
[01:58]
초기 요구사항을 만듭니다.
[02:00]
그리고 AI 코딩 어시스턴트가
[02:02]
작업을 완수하는 데 필요한
[02:04]
모든 맥락을 준비합니다.
[02:05]
이를 위해 슬래시 명령어가 훌륭합니다.
[02:07]
이 영상에서는 슬래시 명령어와
[02:09]
서브 에이전트, 그리고 AI 코딩의
[02:11]
다른 구성 요소들도 다룰 것입니다.
[02:13]
필요한 모든 맥락을 갖추면
[02:15]
실제로 코드를 생성하기 위해
[02:17]
실행에 옮기고 싶어집니다.
[02:19]
슬래시 명령어를 통해 미리 정의된
[02:22]
워크플로를 만드는 것도
[02:24]
이를 위해 환상적입니다.
[02:26]
작업을 관리하고 코드베이스를
[02:28]
연구하는 방법을
[02:30]
정의할 수 있습니다.
[02:32]
코딩 어시스턴트들이 자신의
[02:35]
작업을 검증하도록 하고, 우리도
[02:37]
그 과정에 참여해서 정말로
[02:39]
AI 코딩 어시스턴트의 프로젝트 매니저
[02:42]
역할을 할 수 있도록 합니다. 그리고 마지막으로
[02:44]
이 영상에서 다룰 내용은
[02:45]
AI 코딩 어시스턴스의 다양한
[02:48]
개념들과 이것들이 우리 워크플로의
[02:50]
다양한 부분에 어떻게 적용되는지입니다.
[02:52]
글로벌 규칙, 서브 에이전트,
[02:54]
슬래시 명령어 같은 것들 말이죠. 예를 들어,
[02:56]
실제로는 구현 단계에서 서브 에이전트를
[02:58]
사용하고 싶지 않습니다. 그래서 이것이
[03:01]
어떻게 작동하는지, 정말로 그 뒤에 있는
[03:01]
철학에 대해 이야기하겠습니다. 이것은 또한
[03:03]
PRP와 BMAD 같은 다양한 전략들이
[03:05]
어떻게 작동하는지 이해하는 데 도움이 될 것입니다. 이제
[03:08]
제가 여기서 라이브로 구축할 것은
[03:10]
이 영상의 초점이 아닙니다. 그래서
[03:13]
이것을 기회로 삼아 재미있고
[03:14]
다른 것을 해보려고 생각했습니다.
[03:16]
개인적으로 작업하고 있는 것을 보여드리는 것
[03:18]
말이죠. 왜냐하면 최근에 제 생산성
[03:20]
워크플로를 전면 개편하면서
[03:21]
Obsidian이라는 앱으로 전환했기 때문입니다.
[03:24]
이것은 무료이며 로컬 지식 관리
[03:27]
플랫폼입니다. 일종의
[03:28]
Notion 같은 것이라고 생각하시면 되는데, 차이점은
[03:30]
이것을 확장할 수 있는 오픈 소스 플러그인이
[03:32]
엄청나게 많다는 것입니다. 저도 몇 개 작업하고 있고
[03:35]
아마 앞으로 Obsidian과 관련된 콘텐츠를
[03:37]
훨씬 더 많이 만들게 될 것 같습니다. 왜냐하면
[03:39]
이것을 여러분의 세컨드 브레인으로도
[03:41]
사용할 수 있기 때문입니다. 정말 멋지고
[03:43]
제가 작업해온 AI 통합 기능들이
[03:45]
많이 있습니다. 이 영상에서 보여드릴
[03:47]
내용도 그 중 하나입니다. 그래서 우리는
[03:49]
오른쪽에 코파일럿 채팅을 가지고 있습니다.
[03:52]
이것은 연결되어 있는데, 여기 오른쪽 아래에서
[03:53]
볼 수 있듯이 Dynamis Obsidian
[03:55]
에이전트에 연결되어 있습니다. 제가 만든 AI 에이전트가
[03:58]
제 컴퓨터의 Docker에서 실행되고 있고
[04:00]
Obsidian이 바로 그것에 연결되어
[04:01]
있습니다. 정말 멋지죠. 그래서 저는 '~에 대해 말해줘'라고
[04:03]
말할 수 있고, 그다음에
[04:05]
지금 여러분이 보고 있는 이 파일처럼
[04:06]
Obsidian 내의 파일들을 참조할 수 있습니다.
[04:08]
이것을 보내면 제 커스텀 에이전트로 갑니다.
[04:10]
바로 여기 있는 이 연결이
[04:12]
우리가 이 영상에서 구축할 것입니다.
[04:14]
우리가 여기서 만들고 있는 커스텀 워크플로의
[04:16]
예시로 말이죠. 정말 멋집니다.
[04:17]
한번 보세요. 좋습니다. 이제
[04:20]
과정을 살펴보겠습니다. 여기서
[04:21]
계획 단계부터 시작하겠는데,
[04:23]
솔직히 이것은 단연코 가장 중요한
[04:25]
단계입니다. 왜냐하면 AI 코딩 어시스턴트를 위한
[04:27]
맥락을 올바르게 큐레이팅하지 않으면
[04:29]
완전히 실패하기 때문입니다. 그런데 이 영상의
[04:32]
모든 내용은 꽤 간략할 것입니다.
[04:34]
여기서는 기본부터 시작하고 싶습니다.
[04:36]
만약 정말로 저와 함께 AI 코딩 어시스턴스를
[04:38]
마스터하는 것에 대해 깊이 파고들고 싶다면
[04:40]
제가 9월 27일에 주최하는
[04:43]
반나절 워크샵에 꼭 참여해 보세요.
[04:44]
여기서 우리는 정말로
[04:46]
깊이 파고듭니다. AI 코딩 어시스턴스를 최대한
[04:48]
활용하기 위한 제 모든 전략을 한 곳에서
[04:51]
배울 수 있습니다. 그러니 그곳에서
[04:53]
뵐 수 있기를 바랍니다. 아래 링크를 확인해 보세요.
[04:55]
꼭 한번 살펴보세요.
[04:57]
저는 그 워크샵에 엄청난 가치를
[04:59]
쏟아 부을 예정입니다. 그리고 지금
[05:01]
여러분은 실제로 그 맛보기를 얻고 계시는 거죠.
[05:03]
우리가 여기서 다룰 내용들 중 많은 부분을
[05:04]
맛보게 될 것입니다. 여러분이 직접
[05:06]
AI 코딩 워크플로우를 구축할 수 있도록
[05:07]
도와드리겠습니다. 그래야 이런 다양한
[05:10]
프레임워크들에 들어가는 철학과
[05:11]
전략을 이해할 수 있습니다.
[05:13]
그럼 기획 단계부터 시작해보겠습니다.
[05:15]
기획 단계를 시작할 때 제가 항상
[05:17]
먼저 하는 것은 바이브 기획입니다.
[05:19]
이 부분에 대해 들어보세요.
[05:21]
제 AI 코딩 콘텐츠를 보셨다면
[05:23]
제가 바이브 코딩을 좋아하지 않는다는 걸
[05:26]
아실 텐데, 그건 다릅니다.
[05:27]
실제 구현에 들어갈 때는 확실히
[05:29]
많은 구조와 검증이 필요하거든요.
[05:31]
하지만 초기 기획 단계에서는
[05:33]
아이디어, 아키텍처, 개념을
[05:35]
탐색하고 기술 스택을 결정하는 일만
[05:38]
하는 것입니다. AI 코딩 어시스턴트를
[05:40]
연구 동반자로 활용하면서 말이죠.
[05:43]
이 과정이 구조화되지 않기를
[05:45]
의도적으로 원합니다. 초기 단계에서
[05:48]
작업할 때 더 자유로운
[05:49]
사고방식을 갖고 싶거든요.
[05:52]
새 프로젝트의 경우, 온라인 리소스나
[05:54]
이전에 구현했던 프로젝트들을
[05:56]
조사하는 것을 의미합니다.
[05:59]
저는 실제로 코드베이스에
[06:00]
예제 폴더를 만들어서 기존 프로젝트들을
[06:02]
거기에 넣고 코딩 어시스턴트와 함께
[06:05]
연구하는 방식을 즐겨 사용합니다.
[06:07]
그리고 기존 프로젝트의 경우
[06:09]
일반적으로 기존 코드베이스를
[06:11]
연구하고 분석해서 새로운 기능이
[06:13]
어디에 들어맞을지 확인합니다.
[06:15]
물론 이것이 전부는 아닙니다.
[06:16]
정말로 중요한 것은 AI 코딩
[06:18]
어시스턴트와 대화를 나누어
[06:20]
둘 다 완전히 기획하고 구현해야 할
[06:22]
것에 대해 같은 이해를
[06:23]
갖도록 하는 것입니다.
[06:26]
코딩 어시스턴트와 그런 대화를
[06:28]
나눈 후, 같은 컨텍스트
[06:29]
윈도우 안에서 제가 초기 MD라고
[06:32]
부르는 것을 만들도록 도움을
[06:34]
요청합니다. 이것은 기획을 위해
[06:36]
우리가 만드는 첫 번째 파일입니다.
[06:39]
단순한 마크다운 문서죠.
[06:41]
목표는 상세한 기능 요청서, 즉
[06:43]
PRD가 포함된 마크다운 문서를
[06:46]
만드는 것입니다. 이것은 좀 더
[06:48]
고차원적인 문서로, 다른 사람에게
[06:51]
줘서 구축하려는 것을
[06:52]
설명할 수 있는 종류의 것입니다.
[06:54]
이 시점에서는 아직 코딩
[06:56]
어시스턴트를 위한 매우 구체적인
[06:58]
프롬프트 전략까지는 들어가지 않습니다.
[07:01]
새 프로젝트의 경우 일반적으로
[07:03]
이것이 매우 고차원적이기를 원합니다.
[07:05]
구축하려는 애플리케이션의 간단한 MVP로
[07:07]
바이브 기획 단계에서 찾은
[07:09]
지원 문서와 예시들에 대한
[07:11]
많은 참조를 포함하는 것입니다.
[07:13]
그리고 기존 프로젝트의 경우
[07:15]
꽤 비슷하지만, 기존 코드베이스에
[07:17]
구축하려는 특정 기능에
[07:19]
훨씬 더 집중되고 상세할 것입니다.
[07:22]
제가 통합 포인트라고 부르는
[07:23]
것들에 대한 많은 참조를 포함해서요.
[07:25]
편집해야 할 파일들, 아키텍처를 위해
[07:27]
참조하고 싶은 파일들 말입니다.
[07:29]
다시 말해, 바이브 기획 단계에서
[07:31]
코딩 어시스턴트와 함께 발견한
[07:34]
모든 것들입니다.
[07:35]
코딩 어시스턴트와 함께한 바이브
[07:37]
계획 단계입니다. 이 초기 MD 문서를 만들고 나면,
[07:39]
요구사항을 가져와서 AI 코딩 어시스턴트를 위한
[07:42]
완전한 프롬프트로 전환하고 싶습니다.
[07:46]
그리고 여기서 컨텍스트 엔지니어링에 관한
[07:48]
전략들이 실제로 작동하게 됩니다.
[07:50]
제 채널에서 이 다이어그램을 본 적이 있을 겁니다.
[07:52]
하지만 Excalidraw에서 처음부터 다시 만들었어요.
[07:54]
자랑스러워해 주세요. 만드는 데 너무 많은
[07:56]
노력을 기울였거든요. 좀 바보 같긴 하지만,
[07:58]
어쨌든, RAG가 있고,
[08:00]
외부 문서를 우리 코딩 어시스턴트에 제공하고,
[08:04]
메모리, 즉 대화 기록 같은 것들이 있습니다.
[08:06]
그리고 태스크 관리가 있는데, 이건
[08:08]
계획 단계에서 매우 중요하고,
[08:10]
잠시 후에 이에 대해 이야기하겠습니다.
[08:12]
그리고 물론 프롬프트 엔지니어링이 있는데,
[08:14]
이는 초기 요청을 어떻게 가져와서
[08:15]
코딩 어시스턴트를 위한
[08:16]
공격 계획을 세우는 방식으로
[08:18]
구성하는가에 관한 것입니다.
[08:20]
그래서 이 단계의 목표는
[08:23]
두 번째 마크다운 문서를 생성하는 것입니다.
[08:25]
즉, 초기 MD를 가져와서
[08:28]
AI 코딩 어시스턴트를 위한
[08:30]
상세한 목표, 태스크, 자원 세트를 생성합니다.
[08:34]
기본적으로 작업을 효과적으로 완료하는 데
[08:36]
필요한 모든 것을 제공하는 것입니다.
[08:38]
우리는 PRD를 가져와서
[08:40]
완전한 구현 프롬프트로 바꾸고 있습니다.
[08:43]
그런데 이것이 바로
[08:45]
제 채널에서 다루는 PRP 프레임워크가
[08:47]
달성하는 것과 정확히 같습니다.
[08:49]
그래서 저는 기초부터 시작하고 있지만,
[08:51]
이것이 자연스럽게
[08:53]
전구가 켜지는 순간으로 이어진다는 것이
[08:54]
꽤 멋져요. '아, 맞아,
[08:56]
PRP, 완전히 말이 되는구나.
[08:57]
우리가 하고 있는 일이 바로 그거니까.'
[08:59]
PRP를 생성할 때,
[09:00]
초기 요구사항을 가져와서
[09:02]
코딩 어시스턴트를 위한 훨씬 더 구조화된
[09:04]
문서로 바꾸고 있습니다.
[09:07]
완료하고 싶은 태스크 리스트,
[09:08]
원하는 코드베이스 구조,
[09:11]
성공 기준, 참조하고 싶은
[09:13]
모든 문서 예시들과 같은 것들이 있습니다.
[09:15]
그것이 우리가 계획 문서로
[09:17]
만들고 있는 것입니다.
[09:18]
그리고 여기서 작업을 완료하는 데 도움이 되는
[09:21]
많은 도구들이 있습니다.
[09:23]
라이브 예시로 Archon을 보여드리겠고,
[09:25]
물론 PRP 프레임워크도 있고,
[09:27]
Cloud Code 같은 것들과 함께 제공되는
[09:29]
간단한 웹 검색 도구들도 있습니다.
[09:31]
이것은 컨텍스트 엔지니어링을 위한
[09:33]
RAG의 일부이고, Archon도 RAG용이며
[09:36]
태스크 관리를 위한 것이기도 합니다.
[09:38]
그리고 GitHub Spec Kit 같은
[09:40]
많은 다른 도구들이 나오고 있는데,
[09:42]
꽤 새로운 것이고 정말 멋지며,
[09:44]
우리가 여기서 바이브 계획과
[09:46]
함께 하고 있는 것과 매우 유사한 일을
[09:48]
도와주는 많은 명령들을 제공합니다.
[09:50]
그리고 초기 요구사항을 만들고
[09:52]
계획을 세우는 것 말입니다.
[09:53]
GitHub Spec Kit이 그런 일을 많이 해줍니다.
[09:55]
그래서 다시 말하지만, 이러한 다양한 전략들 뒤에 있는
[09:57]
철학을 이해하는 것입니다.
[09:59]
자, 이제 코드베이스로 들어가 보겠습니다.
[10:00]
실제로 어떻게 작동하는지 보여드리고 싶거든요.
[10:02]
간결함을 위해 이미 대화는 완료했지만,
[10:04]
과정을 안내해 드리겠습니다.
[10:07]
제가 어떻게 일반적인 프로세스를 진행하는지,
[10:10]
원칙들을 적용해서
[10:12]
AI 코딩 워크플로우를 만들기 시작하는지
[10:14]
여기서 보여드리겠습니다. 이건 단지 여러분이
[10:16]
만들 수 있는 것들의 한 예시일 뿐입니다.
[10:18]
자, 우선
[10:20]
Claude Code와 완전히 새로운 대화를 시작하겠습니다.
[10:22]
물론 어떤 코딩 어시스턴트를 사용하든
[10:23]
상관없이 작동합니다. 그리고
[10:25]
새로운 대화를 시작할 때마다 제가 가장 먼저 하는 것은
[10:28]
기존 코드베이스에서 작업할 때
[10:30]
지금 이 Obsidian 통합처럼 말이죠
[10:32]
프라이머 슬래시 명령을 실행하는 것입니다.
[10:34]
이제 슬래시 명령들에 대해
[10:36]
알아보기 시작하겠습니다.
[10:37]
슬래시 명령은 단순히 프롬프트를
[10:40]
재사용 가능한 워크플로우로
[10:42]
바꾸고 싶을 때 사용하는 것으로
[10:44]
여기서 다루고 있는 주제와 매우 일치합니다.
[10:46]
AI 코딩을 위한 시스템을 만드는 것
[10:48]
멘탈 모델뿐만 아니라 실제 워크플로우로도
[10:51]
이런 마크다운 슬래시 명령들로
[10:53]
만들어낸 것들 말이죠. 그래서
[10:56]
프라이머가 하는 일은 파일들을 읽기 위한
[10:58]
지침들을 나열해서 AI 코딩 어시스턴트가
[11:01]
우리 프로젝트를 빠르게 파악할 수 있도록
[11:03]
하는 것입니다. 새로운 대화를
[11:04]
시작할 때 말이죠. 그래서 이런 식으로
[11:07]
우리의 코딩 어시스턴트가 마치
[11:09]
이 프로젝트에서 우리와 함께
[11:10]
한동안 작업해온 것처럼 느껴지지만
[11:12]
실제로는 완전히 새로운 대화인 거죠.
[11:14]
그래서 제 코드베이스의 핵심 파일들을
[11:16]
통해 많은 조사를 합니다. 그리고
[11:18]
이 시점에서 저는 바이브 플래닝으로
[11:20]
넘어갈 준비가 되고, 슬래시 명령들은
[11:22]
여기 워크플로우의 대부분 단계에서 꽤 중요합니다.
[11:26]
실제로는 모든 단계에서요. 그래서
[11:28]
여기 다이어그램에서 이 부분이
[11:30]
플래닝 단계에 대해 이야기하고 있습니다.
[11:32]
여기서 우리는 글로벌 규칙들을
[11:34]
설정하고 싶습니다. 코딩 어시스턴트를 위한
[11:35]
핵심 지침들 말이죠. 그리고
[11:37]
서브 에이전트와 슬래시 명령을 사용해서
[11:40]
부분들을 자동화하고 플래닝 단계의
[11:42]
일부를 위한 워크플로우를 만듭니다. 그리고
[11:44]
검증과 구현에서도 많이 사용합니다.
[11:46]
다만 구현에는 서브 에이전트를
[11:48]
사용하지 않습니다. 잠시 후에
[11:50]
그 부분에 대해 말씀드리겠습니다.
[11:52]
네, 지금 우리는 바이브 플래닝
[11:53]
단계에 있습니다. 그리고 제가 말했듯이
[11:56]
구조화된 프롬프트는 없습니다.
[11:58]
여기서는 아주 기본적입니다. 제가
[11:59]
높은 수준에서 만들고 싶은 것을
[12:01]
설명하는데, 제 AI 에이전트가
[12:03]
제 Obsidian vault에 연결할 수 있기를 원하기 때문입니다.
[12:05]
과거 프로젝트에서 가져온 예시를 제공해서
[12:07]
참고하도록 합니다. 이건 그냥
[12:10]
높은 수준의 내용입니다. 이제 코드로
[12:12]
들어가 봅시다. 그런 다음 이런 탐색을 하고
[12:14]
이해도에 확신을 갖게 되면
[12:17]
더 자세히 설명하고 이해도를
[12:19]
수정할 수 있습니다. 같은 페이지에
[12:21]
있는지 확인하고요.
[12:22]
그러면 가서 초기 MD를
[12:25]
만들게 됩니다. 같은 페이지에 있고
[12:28]
플래닝을 했으니 이제 구조를
[12:30]
추가하기 시작합니다. 이 경우에는
[12:32]
제 초기 MD를 OpenAI API 호환성이라고
[12:35]
부르고 있습니다. 이건 그냥
[12:37]
AI 코딩 어시스턴트를 위한 초기 요청이 담긴
[12:39]
마크다운 문서입니다. 그래서
[12:41]
높은 수준에서 원하는 기능을 가지고 있고
[12:42]
고수준에서, 우리가 구축하고자 하는 엔드포인트들과
[12:44]
에이전트와 상호작용하고 싶은 몇 가지 예시들이 있습니다.
[12:46]
이 시점에서는 아직 완전히 계획되어 있지는 않지만,
[12:49]
이것이 우리가 전체 계획으로 발전시킬
[12:51]
초기 요청사항입니다.
[12:53]
핵심은 이 시점에서 우리는
[12:56]
그저 초기 MD 문서를 작성하고 있다는 점입니다.
[12:58]
그리고 그것을 구축했습니다.
[13:00]
이 시점이 우리의 첫 번째 대화의 끝입니다.
[13:03]
이제 새로운 대화로 넘어가고 싶습니다.
[13:05]
워크플로우의 다음 단계로 넘어가기 위해서죠.
[13:08]
그 요청사항을 받아서 모든 컨텍스트 엔지니어링을 통해
[13:11]
전체 계획으로 전환시키는 것입니다.
[13:12]
그래서 이 워크플로우 부분을 위한
[13:15]
또 다른 슬래시 명령어를 생성했습니다.
[13:17]
create plan.md라고 부르고 있습니다.
[13:19]
다시 말하지만, 이것은 계획 워크플로우가
[13:22]
어떤 모습일 수 있는지 보여주는 예시일 뿐입니다.
[13:24]
원하는 방식대로 구축할 수 있습니다.
[13:26]
일반적으로는 제가 이 다이어그램에서
[13:28]
다룬 원칙들을 따르는 것이 좋습니다.
[13:30]
그래서 3단계 프로세스를 안내해드리고,
[13:32]
이제 이 일반적인 흐름을 중심으로
[13:34]
슬래시 명령어와 서브 에이전트를 구축하고 있습니다.
[13:36]
제 프로젝트에 좀 더 특화된
[13:38]
몇 가지 작업들도 수행하고 있죠.
[13:40]
그래서 이런 종류의 플로우는
[13:42]
여러분이 만들고 있는 것에 가장 적합한 방식으로
[13:44]
구축할 수 있습니다.
[13:47]
제 create plan의 경우 기본적으로
[13:49]
방금 작성을 완료한 요구사항 문서를
[13:51]
가져와서 몇 가지 다른 단계를 거치도록 하고 있습니다.
[13:55]
먼저 요구사항을 읽고 이해합니다.
[13:57]
그 다음 연구 단계가 있는데,
[13:59]
여기서 RAG와 사용 가능한 경우
[14:01]
아콘을 위한 웹 검색을 사용하고 싶었습니다.
[14:03]
그리고 코드베이스 분석가
[14:04]
서브 에이전트도 있습니다. 그래서 광범위한 연구를 수행하기 위해
[14:09]
호출하는 서브 에이전트를 생성했습니다.
[14:12]
서브 에이전트에 대해 너무 깊이 들어가지는 않겠지만,
[14:14]
자체 컨텍스트 윈도우를 가지고 있기 때문에
[14:17]
매우 강력합니다.
[14:19]
많은 연구를 수행한 다음
[14:21]
주요 대화를 오염시키지 않고
[14:22]
그것의 요약을 출력할 수 있습니다.
[14:24]
따라서 우리의 컨텍스트 윈도우를
[14:26]
간결하고 집중된 상태로 유지할 수 있습니다.
[14:28]
이 서브 에이전트는 계획이
[14:30]
어떤 모습이어야 하는지 정확히 파악하기 위해
[14:32]
기존 코드베이스에 대한 많은 연구를 수행합니다.
[14:35]
따라서 작업별 구현 계획을 생성해야 하고,
[14:37]
원하는 코드베이스 구조, 참조하고 싶은 문서,
[14:40]
그리고 코드베이스 분석가와 이 전체
[14:42]
슬래시 명령어가 그것을 생성하는 데 도움을 줍니다.
[14:44]
그래서 대화로 돌아가서
[14:46]
그것이 어떤 모습인지 보여드리겠습니다.
[14:48]
먼저 여기서 요구사항 문서를
[14:50]
명령어의 인수로 전달하여
[14:52]
create plan을 실행했고,
[14:54]
코드베이스 분석가 서브 에이전트를
[14:56]
호출하는 것으로 시작됩니다.
[14:58]
많은 연구를 수행하고 이 새로운 기능을
[15:01]
코드베이스에 어떻게 통합할 것인지
[15:03]
정확히 파악합니다.
[15:05]
아콘과 함께 RAG 검색을 수행하고,
[15:07]
코드베이스 예시 검색을 수행한 다음
[15:09]
우리의 계획을 생성합니다.
[15:11]
그래서 이것은 초기 MD 문서를
[15:16]
다음 단계로 끌어올리는 것입니다.
[15:18]
모든 컨텍스트 엔지니어링과 함께 말이죠.
[15:22]
그리고 제가 말씀드린 이런 것들은
[15:24]
초기 MD를 모든 컨텍스트 엔지니어링과 함께 다음 단계로 끌어올립니다.
[15:26]
제가 말씀드린 이런 것들을
[15:28]
여기서 찾을 수 있습니다.
[15:30]
여기 단계별로 구현하고자 하는
[15:32]
모든 작업들이 있습니다.
[15:33]
그리고 정말 세부적으로 나뉘어져 있어요.
[15:35]
이게 항상 좋은 점이죠.
[15:36]
AI 코딩 어시스턴트와 함께
[15:39]
구체적으로 작업하고 싶다면
[15:41]
바로 이 플랜이 제공하는 것입니다.
[15:43]
수정해야 할 다양한 파일들,
[15:45]
새로 생성해야 할 파일들,
[15:47]
기존 패턴들을 따라하는 것,
[15:50]
작업을 완료하는데 필요한 모든 것들이 있습니다. 정말 멋지죠.
[15:52]
그리고 성공 기준도 있습니다.
[15:54]
원하는 코드베이스 구조 같은 걸
[15:55]
추가할 수도 있겠지만
[15:57]
이건 기존 파일을 수정하는 것에
[15:59]
더 중점을 둡니다.
[16:01]
제가 여기서 구축하고 있는 것에 대해서는
[16:03]
이 플랜이 완벽합니다.
[16:06]
플랜을 생성했으니
[16:09]
지금까지 제가 달성한 것의 끝입니다.
[16:11]
이제 포괄적인 플랜이 있으니
[16:13]
먼저 이를 검증하고
[16:15]
필요시 코딩 어시스턴트의 도움으로
[16:16]
몇 가지 조정을 하는 것을 권장합니다.
[16:18]
플랜에 확신이 서면
[16:21]
구현으로 넘어갈 시간입니다.
[16:23]
구현에서 가장 중요한 것은
[16:26]
코딩 어시스턴트를 가이드하는
[16:27]
워크플로우를 갖는 것입니다.
[16:30]
작업을 하나씩 처리하는 방법에 대해서요.
[16:33]
여기서 작업 관리가
[16:36]
가장 중요한 요소입니다.
[16:38]
특히 한 번의 요청으로
[16:40]
상당한 작업을 하려고 한다면요.
[16:42]
코딩 어시스턴트가 한 번에
[16:43]
너무 많은 일을 하려고 하면
[16:46]
많은 환상(hallucination)이 발생합니다.
[16:47]
그래서 작업은 더 큰 요청을 가능하게 하면서도
[16:50]
여전히 매번 하나의 작은 일에
[16:52]
매우 집중되고 세분화되게 하는 방법입니다.
[16:54]
계획 문서로 돌아가 보면
[16:57]
매우 세분화된 작업들이 있는 것을
[16:59]
하나씩 처리하고 있다는 걸 볼 수 있습니다.
[17:01]
그래서 이 워크플로우를 정의하기 위해
[17:04]
다른 슬래시 명령어를 만들 거예요.
[17:06]
정확히 어떤 슬래시 명령어가 될지는
[17:08]
작업 관리를 위해 무엇을 하는지에
[17:11]
전적으로 달려있습니다.
[17:13]
제 경우에는 작업 관리를 위해
[17:16]
아르콘(Archon)을 사용합니다.
[17:18]
그래서 제 워크플로우는
[17:20]
아르콘을 정확히 어떻게 사용할지에
[17:22]
대해 많이 다룹니다.
[17:24]
아르콘을 반드시 사용해야 하는 건
[17:26]
아닙니다. 여기서 중요한 건
[17:28]
이것이 제 워크플로우의 한 예라는 점입니다.
[17:30]
이 OpenAI API 호환
[17:32]
구현을 위해 이 모든 작업들을 생성하고 있습니다.
[17:34]
하지만 여러분은 Cloud Taskmaster나
[17:36]
다른 마크다운 문서를
[17:38]
작업 관리에 사용할 수도 있습니다.
[17:40]
어떤 방식으로 하든 상관없어요.
[17:42]
심지어 Cloud Code 같은
[17:45]
코딩 어시스턴트 내부의 작업 관리 도구도요.
[17:47]
중요한 건 작업 관리 중심의
[17:49]
워크플로우를 만드는 것입니다.
[17:51]
그래서 제가 플랜 실행으로 가면
[17:52]
높은 수준에서 이것이
[17:53]
어떤 모습인지 빠르게 보여드리겠습니다.
[17:56]
여러분의 워크플로우와는 많이 다를 수 있지만
[17:57]
PRP 프레임워크를 사용하든지, 아니면
[18:00]
BMAD 방법론을 사용한다면 프로젝트 브리프가 될 수도 있겠죠. 그리고
[18:01]
Archon에서 프로젝트를 설정하고 싶어요.
[18:03]
아직 설정되지 않았다면 말이죠.
[18:05]
이런 모든 작업들을 생성하고,
[18:07]
코드를 분석하고 싶어요. 그리고
[18:10]
여기에 사이클이 있는데, 작업을
[18:13]
할 일(to-do) 또는 진행중(doing)으로 표시해야 합니다.
[18:17]
그리고 해당 작업을 처리한 다음
[18:18]
검토(review)로 이동시키고
[18:20]
다음 작업으로 넘어갑니다.
[18:22]
모든 작업이 완료될 때까지 이 사이클을 반복하죠.
[18:24]
그러면 검증(validation)으로 넘어갑니다.
[18:26]
실제로 검증을 도와줄
[18:28]
서브 에이전트도 있어요. 그래서
[18:30]
자체 컨텍스트 윈도우 내에서
[18:32]
이 친구를 실행해서
[18:34]
다양한 테스트를 생성하고,
[18:36]
우리 코드가 제대로 작동하는지 확인한 다음
[18:37]
수정이 필요한 부분이 있으면
[18:39]
우리의 주 코딩 어시스턴트에게 보고합니다.
[18:42]
그래서 검증에 대한 제 일반적인 프로세스는
[18:44]
코딩 어시스턴트가 실행되는 동안
[18:46]
MCP 서버를 제대로 사용하는지
[18:48]
올바른 파일을 편집하고 올바른 위치를 보고 있는지
[18:51]
검증하는 것이에요.
[18:53]
일반적으로 이런 것들을 테스트하기 위해 적어도 어느 정도 가까이에서 지켜봅니다.
[18:56]
그리고 코드가 출력되면,
[18:58]
이 시점에서 우리의 계획은
[19:00]
AI 코딩 어시스턴트가 어떻게
[19:02]
자신의 작업을 검증할 수 있는지도
[19:04]
명시해야 합니다. 그리고
[19:06]
우리도 이 프로세스의 일부가 되어야 해요.
[19:09]
코드 리뷰를 수행하죠. 왜냐하면
[19:10]
우리는 대충 넘어가고 싶지 않거든요.
[19:11]
실제로 생성되는 코드를
[19:13]
살펴보고 이해하고 싶고,
[19:15]
원하는 수동 테스트를 실행하고 싶어요.
[19:16]
예를 들어 이 비디오 끝에서 보게 될
[19:18]
Obsidian의 에이전트와 실제로 대화하는 것처럼 말이죠.
[19:20]
서브 에이전트는 검증에 매우 유용할 수 있어요.
[19:23]
다시 말하지만, 우리는 격리된 컨텍스트 윈도우를 원하죠.
[19:25]
주 대화를 오염시키지 않기 위해서요.
[19:27]
그래서 서브 에이전트가 다양한 테스트를
[19:29]
실행하여 모든 것이 견고한지 확인할 수 있습니다.
[19:32]
검증에 대한 마지막 한 가지.
[19:33]
제 작업을 검토하는 데 사용하는 또 다른 에이전트가 있어요.
[19:36]
또 다른 검증 서브 에이전트라고 생각할 수 있는데,
[19:38]
바로 Code Rabbit입니다.
[19:40]
AI 기반 코드 리뷰 플랫폼이고
[19:42]
이번 영상을 후원해 주셨지만
[19:44]
저는 실제로 업무에서 매일 사용하고 있어요.
[19:47]
오픈소스 프로젝트에는 무료이므로
[19:49]
당연히 Code Rabbit을 Archon과 통합했습니다.
[19:51]
Archon GitHub 리포지토리에 생성되는
[19:54]
모든 단일 풀 리퀘스트는
[19:56]
Code Rabbit 에이전트에 의해 자동으로 검토됩니다.
[19:59]
제 코드베이스를 깊이 분석하고
[20:01]
제 풀 리퀘스트를 분석해서
[20:03]
어떤 영향을 미치는지 이해하고
[20:05]
여기에 개요를 제공해 줘요.
[20:07]
모든 PR에 대해 아름다운
[20:09]
시퀀스 다이어그램을 제공하고
[20:11]
검토자를 제안해 주며, 물론
[20:13]
가장 중요한 실제 코드 리뷰도 있어요.
[20:15]
권장하는 변경사항과 함께 말이죠.
[20:17]
저는 실제로 이것들을 가져다가
[20:19]
Claude Code나 제가 사용하는 다른
[20:21]
AI 코딩 어시스턴트에게 제공합니다.
[20:23]
그래서 이것은 제 개발 워크플로우의
[20:25]
중요한 부분이 되었고,
[20:27]
정말 감사하게 생각하고 있어요.
[20:31]
특히 매주 관리하고 있는 모든 풀 리퀘스트들 때문에 Archon에 Code Rabbit을 사용하게 되어 정말 감사합니다.
[20:34]
그리고 이제 CLI 도구도 제공하고 있어서
[20:35]
Code Rabbit을 GitHub에서 PR 리뷰하는 용도로만 사용하는 것이 아니라
[20:38]
이제 로컬에서 개발할 때 에이전트 중 하나로 사용할 수도 있습니다.
[20:40]
여러분의 머신에서 개발할 때 말이죠.
[20:42]
Code Rabbit은 유료 플랜에 대한 무료 체험도 제공하고
[20:44]
앞서 말씀드린 것처럼 Archon 같은 오픈소스 소프트웨어에는 무료입니다.
[20:46]
그리고 CLI와 IDE 도구를 통한 리뷰는
[20:48]
물론 속도 제한이 적용되지만 무료입니다.
[20:50]
만약 AI 도구로 생성한 엄청난 양의 코드 때문에
[20:53]
부담감을 느끼고 있다면
[20:55]
이것이 속도를 늦추지 않으면서도 품질을 유지할 수 있는 해답입니다.
[20:57]
설명란에 Code Rabbit 링크를 걸어두겠습니다.
[20:59]
정말 사용해보시길 강력히 추천합니다.
[21:01]
그럼 이제 실제 구현 과정을 살펴보겠습니다.
[21:03]
이 부분은 전반적으로 꽤 간단합니다
[21:05]
왜냐하면 계획 단계에서 대부분의 작업을 미리 해두었기 때문입니다.
[21:08]
이제 컨텍스트 엔지니어링의 모든 구성 요소가 포함된
[21:09]
계획 덕분에
[21:11]
우리가 생성한 계획을 전달하여
[21:13]
미리 정의된 워크플로우를 실행하기만 하면 됩니다.
[21:15]
다시 말해, 요구사항을 받아서 모든 작업으로 분해하는 execute plan 명령어가 있습니다.
[21:18]
이 경우 저는 모든 것을 archon에서 진행하고 있고
[21:20]
이미 이 구현 과정을 완료했습니다.
[21:21]
그래서 모든 작업이 완료된 상태입니다.
[21:24]
100% 완벽하게 처리했습니다. 정말 놀라운 결과죠.
[21:26]
터미널로 돌아가서
[21:28]
우리가 나눈 대화를 보여드리겠습니다.
[21:30]
여기서 처리한 작업이 많아서 일부가 잘려 보이지만
[21:33]
말 그대로 모든 것을 구현하라고 보냈습니다.
[21:35]
여기서 꽤 오랫동안 작업했습니다.
[21:38]
처리해야 할 것이 많았지만
[21:39]
제공한 모든 컨텍스트와 작업들이 어떻게 분할되었는지 때문에
[21:41]
코딩 어시스턴트를 상당히 신뢰하고 있습니다.
[21:43]
보시다시피 여기서 많은 작업 관리를
[21:45]
archon과 함께 수행하고 있었습니다.
[21:47]
변경사항을 적용하면서 말이죠. 작업 관리, 변경사항 적용을
[21:50]
번갈아가며 하는 사이클을 거쳤습니다.
[21:52]
그리고 맨 마지막에 검증 과정이 있습니다.
[21:53]
검증은 구현과 어느 정도 혼합되어 있고
[21:55]
여기서 우리의 전문 검증 서브 에이전트를 호출합니다.
[21:58]
꽤 오랫동안 작업했습니다.
[22:00]
실제로 필요했던 것보다 더 오래 걸렸을 수도 있어요.
[22:03]
유닛 테스트와 다른 방법들로 많은 검증을 수행해서
[22:05]
우리 코드가 완벽한지 확인했습니다.
[22:06]
여기서 제가 강조하고 싶은 중요한 점은
[22:09]
검증 과정에서는
[22:11]
서브 에이전트를 다시 사용한다는 것입니다.
[22:13]
계획과 검증에서는 서브 에이전트를 사용하지만
[22:15]
구현 과정에서는 의도적으로
[22:16]
어떤 서브 에이전트도 사용하지 않았습니다.
[22:19]
그 이유는 실제로 코드 변경사항을 만들고
[22:20]
구현을 수행할 때는
[22:23]
모든 것이 기본 컨텍스트 윈도우에
[22:25]
유지되기를 원하기 때문입니다.
[22:27]
클라우드 코드든 우리가 사용하는 AI 코딩 어시스턴트든 상관없이
[22:29]
전문화된 검증 서브 에이전트를 호출하는 것이죠.
[22:31]
여기서 꽤 오랫동안 작업했습니다.
[22:33]
실제로는 필요했던 것보다 더 오래 걸렸을 수도 있어요.
[22:36]
유닛 테스트와 다른 방법들로
[22:38]
우리 코드가 견고한지 확인하기 위해 많은 검증을 했습니다.
[22:40]
그리고 여기서 제가 강조하고 싶은 중요한 점은
[22:42]
검증을 위해서는
[22:43]
서브 에이전트를 다시 사용한다는 것입니다.
[22:45]
계획과 검증에서는 서브 에이전트를 사용하지만
[22:47]
구현 과정에서는 의도적으로
[22:49]
어떤 서브 에이전트도 사용하지 않았습니다.
[22:52]
그 이유는 실제로 코드 변경사항을 만들고
[22:55]
구현을 수행할 때는
[22:58]
모든 것이 기본 컨텍스트 윈도우에 유지되기를 원하기 때문입니다.
[23:00]
클라우드 코드든 우리가 사용하는
[23:03]
AI 코딩 어시스턴트든 상관없이 말이죠.
[23:05]
구현 과정에서 모든 것이
[23:07]
Claude Code나 다른 AI 코딩
[23:10]
어시스턴트의 주요 컨텍스트 창에
[23:12]
유지되길 원합니다. 만약 서로 다른 서브
[23:15]
에이전트가 코드베이스의 다른 부분을
[23:17]
구현한다면, 서로
[23:18]
소통하지 않고 메모리도
[23:20]
공유되지 않습니다. 그러면 충돌하는
[23:22]
변경사항과
[23:23]
중복되는 변경사항이 생기죠. 실제
[23:26]
코드 생성에 서브 에이전트를 사용하면
[23:27]
엉망이 됩니다. 그래서 저는 항상
[23:30]
사전 리서치를 위해서만 서브 에이전트를 사용하고
[23:33]
또한 검증 전문가도 두어서
[23:35]
코드 검증 방법에 대한 매우 구체적인
[23:37]
시스템 프롬프트를 이 에이전트에게
[23:38]
줄 수 있습니다. 이것이 제가
[23:41]
강조하고 싶은 중요한
[23:42]
구분점입니다. 슬래시 커맨드의 경우
[23:44]
구현의 모든 단계에서 사용하고
[23:46]
있습니다. 보셨듯이 말이죠. 그리고
[23:48]
글로벌 규칙의 경우, 이 비디오에서는
[23:50]
많이 다루지 않았지만, 실제로는
[23:52]
계획 단계에서
[23:53]
초기에 설정하는 것입니다. 높은 수준에서
[23:55]
생각할 때, 코딩
[23:56]
어시스턴트가 무엇을 하든
[23:58]
상관없이 말 그대로 따라야 할
[23:59]
지침들이 무엇인지, 프로젝트를
[24:01]
처음부터 시작하든, 새로운 기능을
[24:03]
추가하든, 버그를 수정하든,
[24:04]
claw.md나 코딩
[24:06]
어시스턴트 파일에 넣고 싶은 황금
[24:10]
규칙들이 많이 있습니다.
[24:11]
그리고 물론 마지막
[24:13]
단계는 우리의 자체 검토입니다.
[24:15]
코딩 어시스턴트가 출력한 모든 것에 대해
[24:17]
반드시 코드 리뷰를 수행해야
[24:19]
합니다. 그렇지 않으면
[24:20]
다시 맹목적인
[24:22]
코딩으로 돌아가는 거죠. 그래서 검토를 수행하고
[24:24]
수동 테스트도 실행합니다. 저는
[24:27]
Docker에서 에이전트 API를 다시 실행하고
[24:29]
Obsidian에 연결을
[24:31]
이미 설정해두었습니다. 잠깐
[24:32]
보여드리겠습니다. 채팅
[24:33]
창으로 가서 요약하라고 하고
[24:35]
이 비디오에서 계속
[24:37]
다뤄온 전체
[24:38]
다이어그램을 참조할게요. 그래서
[24:40]
에이전트에게 이것을 보내겠습니다.
[24:41]
OpenAI API 호환
[24:43]
엔드포인트를 사용하여 우리가 방금
[24:46]
구축한 것과 정확히 소통하고
[24:47]
있습니다. 그리고 여기 있습니다. 우리
[24:51]
다이어그램을 기반으로 한 전체 워크플로우의
[24:53]
요약을 얻었습니다. 정말
[24:55]
아름답습니다. 구현이
[24:57]
완벽합니다. 이제 우리는
[24:58]
다른 용도로도 사용할 수 있는 워크플로우를
[25:01]
갖게 되었습니다. 제가 사용한 전체
[25:02]
계획 슬래시 커맨드와 프라이머
[25:04]
그리고 검증과 실행을 위한 서브 에이전트들,
[25:06]
Archon에서의 작업 관리를 위한 전체 프로세스는
[25:09]
실제로 이 특정 구현에만
[25:11]
국한된 것이 아닙니다. 이것을
[25:14]
가져와서 제가 구축하고 싶은 어떤 것에든
[25:16]
재사용할 수 있습니다. 그리고 그것이 제가
[25:18]
이 비디오에서 여러분에게 설명하려는
[25:21]
주요한 것입니다. 여러분이 어떻게 규칙과 서브
[25:23]
에이전트, 슬래시 커맨드, 그리고 심지어
[25:25]
계획하고 구현하고 검증하는 방법에 대한 멘탈 모델을
[25:27]
조합으로 만들 수 있는지, 그리고 그것이
[25:29]
어떤 것에든 재사용할 수 있는
[25:31]
프로세스가 되는지를 말이죠. 여러분은 이제
[25:33]
AI 코딩 어시스턴트와 작업하기 위한 시스템을
[25:36]
구축했습니다. 그리고 PRP 프레임워크나
[25:37]
GitHub 스펙 킷 같은
[25:39]
다른 것들을 통합하기 시작할 때에도
[25:41]
여전히 같은 멘탈 모델을
[25:42]
따르면서, 단지 그런 접근법들을 사용해서
[25:45]
기본적으로 여러분이 가진 것을 보강하고
[25:46]
필요에 맞게 조정할 수 있습니다. 그것이
[25:49]
오늘 제가 여러분에게 드리는
[25:50]
모든 것입니다. 만약 이 비디오를
[25:52]
좋아하셨고 AI 코딩과 이런 종류의
[25:55]
워크플로우 구축에 대한 더 많은
[25:56]
내용을 기대하신다면, 좋아요와
[25:58]
구독을 정말 감사하게 생각하겠습니다. 그럼
[26:00]
다음 영상에서 뵙겠습니다.