[00:00]
안녕하세요 엔지니어 여러분, 인디개발자 댄입니다.
[00:03]
여러분의 코드베이스를 열었을 때
[00:05]
AI 코딩 도구가 readme보다 더 빠르고
[00:08]
정확하게 코드베이스를 이해하는 것을
[00:10]
상상해보세요. 이런 특별한 능력을
[00:13]
활용할 수 있게 해주는 세 가지
[00:16]
핵심 폴더가 있습니다.
[00:19]
이것들을 상세히 분석해서
[00:21]
여러분이 컴퓨팅 성능을 최대한
[00:23]
활용할 수 있도록 설명하겠습니다. AI
[00:26]
코딩 도구의 종류와 상관없이 생성형 AI
[00:29]
시대의 엔지니어링에서 가장 중요한
[00:32]
사실이 있습니다.
[00:35]
Cursor, Windsor, Fline, Codeex나
[00:37]
Claude code 등 어떤 도구를 사용하든
[00:41]
여러분은 이미 알고 계실 겁니다.
[00:43]
컨텍스트가 전부라는 것을요.
[00:46]
에이전트가 중요한 정보를 볼 수 없다면
[00:49]
필요한 것을 만들 수 없습니다.
[00:52]
이 세 가지 핵심 디렉토리가
[00:54]
이 문제를 포괄적이고 체계적으로
[00:56]
해결해 줍니다.
[00:59]
이 세 가지 핵심 디렉토리와
[01:02]
엔지니어링 작업에서의 가치에 대해 설명하겠습니다.
[01:07]
먼저 기초가 되는 AI docs부터 시작하겠습니다.
[01:11]
이것은 AI 코딩 도구의 영구 메모리로
[01:14]
생각하시면 됩니다. AI 도구가 즉시
[01:17]
접근할 수 있는 지식 저장소죠.
[01:20]
Claude code의 프로그래밍 가능한
[01:22]
코드베이스 내부에는,
[01:25]
지난주 영상에서 논의했듯이,
[01:27]
AI docs 디렉토리가 있습니다.
[01:30]
이 디렉토리 안에는 두 개의
[01:32]
마크다운 파일이 있습니다.
[01:35]
Cloud code 모범 사례와 OpenAI의 agent SDK입니다.
[01:39]
이제 어떤 에이전트든 실행하고
[01:41]
이 파일들을 빠르게 읽을 수 있으며,
[01:44]
신속하게 작업을 수행할 수 있습니다.
[01:46]
AI docs에는 무엇이 들어갈까요?
[01:48]
서드파티 API 문서,
[01:50]
통합 세부사항, 사용자 지정
[01:52]
패턴과 규칙,
[01:54]
구현 노트 등
[01:56]
코드베이스와 관련된 모든 것이
[01:58]
AI docs에 들어갑니다. 저는 주로
[02:01]
서드파티 문서를 저장해서
[02:04]
코드베이스를 반복적으로 빠르게
[02:06]
시작할 수 있게 합니다.
[02:09]
AI docs 디렉토리는 AI 에이전트를 위한 영구 데이터베이스입니다.
[02:15]
다음으로 specs 디렉토리가 있습니다.
[02:17]
specs 디렉토리에는 무엇이 들어갈까요?
[02:19]
Specs는 specification의 줄임말로
[02:22]
계획을 의미합니다.
[02:24]
PRD나 제품 문서 등으로 알려져 있죠.
[02:27]
이것들은 AI 코딩 도구로
[02:29]
대규모 작업을 수행하는
[02:32]
새로운 작업 단위입니다.
[02:33]
이제 에이전틱 코딩 도구로
[02:35]
하나의 프롬프트 안에서
[02:38]
여러 도구를 사용할 수 있게 되었습니다.
[02:41]
Claude code, Cursor, Line 같은
[02:43]
강력한 에이전틱 코딩 도구들로요.
[02:46]
specs 디렉토리는 전체 코드베이스에서
[02:48]
가장 중요한 폴더입니다.
[02:52]
여기서 우리는 훌륭한 계획을 작성하고
[02:55]
컴퓨팅 능력을 확장하여
[02:57]
한 번에 더 많은 작업을 수행할 수 있습니다.
[03:00]
이 1,000 토큰의 프롬프트가
[03:04]
전체 코드베이스로 확장되었습니다.
[03:08]
이것이 가능한 이유는
[03:10]
에이전틱 코딩 때문입니다.
[03:12]
프롬프트 내에서 자체 검증 루프를
[03:15]
작성할 수 있죠. 에이전틱 코딩은
[03:18]
AI 코딩의 상위 집합이며,
[03:21]
매우 강력합니다.
[03:23]
Claude Code와 같은 훌륭한 도구를 사용하면
[03:25]
'specs' 디렉토리에 있는 모든 저장소의
[03:28]
계획들을 완전한 코드베이스와
[03:30]
기능으로 확장할 수 있죠. 이것이 바로
[03:33]
여러분이 반드시 specs 디렉토리를 가져야 하는 이유입니다.
[03:35]
이곳에는 AI 코딩 도구에 넘길 모든 작업의
[03:38]
계획을 상세히 기술해야 합니다.
[03:40]
만약 여러분이 아직도 반복적으로
[03:43]
프롬프트를 주고받으면서
[03:45]
계속해서 왔다 갔다 하고 있다면,
[03:47]
저는 단언할 수 있습니다.
[03:49]
여러분은 시간을 낭비하고 있으며
[03:51]
컴퓨팅 자원을 최대한 활용하지 못하고 있다는 걸요.
[03:53]
자리에 앉아서, 시간을 들여 생각하고, 계획하고, 그 다음 구현하세요.
[03:58]
이 영상에서 소개할
[04:00]
강력한 새로운 계획 기법이 있는데,
[04:02]
이를 통해 계획 단계에서 컴퓨팅을 활용하여
[04:04]
AI 코딩 도구와 더 빠르게 반복할 수 있습니다.
[04:07]
여기서 핵심 아이디어는 매우 간단합니다.
[04:09]
모든 체계적인 AI 코딩 멤버들이 알고 있고
[04:12]
이 채널을 따르는 모든 분들이
[04:14]
알고 있는 것처럼,
[04:16]
계획이 곧 프롬프트이며
[04:19]
훌륭한 계획이 곧 훌륭한 프롬프팅입니다.
[04:22]
상세하고 포괄적인 스펙 계획,
[04:24]
PRD 등 원하는 것을 작성함으로써
[04:28]
할 수 있는 일을 확장할 수 있습니다.
[04:30]
이렇게 작성한 작업을
[04:32]
AI 코딩 도구와 에이전틱
[04:34]
코딩 도구에 넘기면
[04:37]
그들이 여러분을 위해 작업을, 완료할 것입니다.
[04:41]
이제 제가 만드는 모든 코드베이스에는
[04:44]
AI docs 디렉토리, specs 디렉토리
[04:46]
그리고 .claude가 있습니다.
[04:48]
.claude는 새롭게 등장한 디렉토리입니다.
[04:51]
명확히 말씀드리면, 이것은 Claude Code에
[04:54]
특화된 것이지만, 이 디렉토리들에
[04:56]
작성하는 내용은 Claude Code에
[04:58]
국한되지 않습니다. just prompt 코드베이스에서
[05:01]
.claude를 열고 commands 디렉토리로 가보면
[05:04]
여러 가지 다른 명령어들이 있는 것을
[05:06]
볼 수 있습니다.
[05:08]
이것들은 무엇이고 우리의 엔지니어링 작업을
[05:10]
확장하는데 어떻게 유용할까요?
[05:13]
이것들은 단순한 프롬프트입니다.
[05:15]
just prompt 코드베이스에서
[05:17]
Claude Code를 열고 슬래시를 입력하면
[05:20]
이 모든 명령어들의 이름이
[05:23]
상단에 표시됩니다. 이것들은
[05:25]
세션 간에 재사용 가능한
[05:27]
실행 가능한 프롬프트입니다.
[05:30]
모든 코드베이스에서 설정하기를
[05:33]
추천하는 가장 중요한 재사용 가능한
[05:35]
프롬프트는 컨텍스트 프라이밍 프롬프트입니다.
[05:37]
여기서 Claude Code, CodeEx, Cursor 등
[05:40]
어떤 도구를 사용하든
[05:42]
Claude Code에만 국한되지 않습니다.
[05:44]
이 디렉토리들의 이름은
[05:46]
무엇이든 될 수 있죠. 만약 프라이밍이나
[05:48]
just prompt 서버를 실행하면
[05:50]
기본 컨텍스트 프라임이 실행됩니다.
[05:53]
이것은 이러한 명령어들을 실행하여
[05:54]
도구 호출을 사용하고,
[05:56]
README를 읽고, get ls files를 실행하여
[05:59]
프로젝트의 컨텍스트를 이해합니다.
[06:00]
모든 코드베이스에서
[06:02]
이렇게 설정하여 중요한 파일들과 아이디어들을
[06:05]
빠르게 다룰 수 있게 하는 것을 추천합니다.
[06:08]
우리가 하고 있는 이 작업의
[06:09]
큰 아이디어가 무엇일까요? 시간이 지나도
[06:12]
우리의 에이전틱 도구의 새로운 인스턴스를
[06:15]
쉽게 설정할 수 있게 만드는 것입니다.
[06:19]
여기서 시간이란 일상적인 기준뿐만 아니라
[06:20]
세션별 기준도 포함됩니다. Claude Code나
[06:23]
CodeEx 또는 다른 AI 코딩 도구를
[06:25]
사용해보셨다면, 컨텍스트가 소진될 것입니다.
[06:28]
현재 컨텍스트 창을 보시면
[06:30]
최신 모델들의 컨텍스트 제한이
[06:32]
대부분 20만 또는 100만 토큰으로 제한되어 있습니다.
[06:35]
AI 코딩 도구를 사용하다 보면
[06:36]
결국 컨텍스트가 소진되어
[06:38]
리셋을 해야 하는 상황이 옵니다.
[06:39]
이것이 바로 컨텍스트 프라임이 하는 일이고
[06:42]
cloud commands 디렉토리가 제공하는 기능입니다.
[06:44]
이는 클라우드 코드에 특화되어 있지만
[06:46]
어떤 AI 코딩 도구에도
[06:48]
적용할 수 있습니다.
[06:50]
자, 새 창을 열어서
[06:52]
codeex-m3를 열고
[06:55]
상대 경로를 복사해서 실행하면
[06:58]
동일한 기능을 수행합니다.
[07:01]
여기서 우리가 하는 일이 뭘까요?
[07:03]
클라우드 코드에서 했던 것처럼
[07:04]
AI 코딩 도구의 초기 컨텍스트를 설정하여
[07:06]
모든 것을 이해하고 위치를 파악할 수 있게 합니다.
[07:10]
보시다시피 깔끔한 요약이 출력되었고
[07:12]
이제 준비가 완료되었습니다.
[07:14]
컨텍스트가 준비되었죠.
[07:16]
이 디렉토리들은 컨텍스트 프라이밍에만
[07:18]
국한되지 않습니다.
[07:20]
우리는 울트라 디프 리뷰를 구축했는데
[07:23]
이는 diff를 생성한 다음
[07:26]
여러 언어 모델이 검토하고
[07:28]
피드백을 제공하는 기능입니다.
[07:31]
이것은 앞으로 이 채널에서
[07:33]
자주 다룰 주제입니다.
[07:34]
Agentic 코딩 도구 덕분에
[07:35]
프롬프트의 활용 가능성이
[07:37]
무한해졌습니다.
[07:40]
어떤 도구든 실행할 수 있고
[07:42]
여기처럼 커스텀 MCP 서버도 실행할 수 있으며
[07:44]
코드베이스 내 재사용 가능한 프롬프트로
[07:47]
엄청난 작업을 수행할 수 있습니다.
[07:50]
이것이 제가 모든 코드베이스에
[07:52]
필수적으로 포함하는
[07:53]
세 가지 핵심 디렉토리입니다.
[07:56]
AI docs는 AI 코딩 도구를 위한
[07:59]
영구적인 지식 베이스입니다.
[08:02]
Specs는 계획을 정의하는 곳으로
[08:03]
AI 코딩 도구와
[08:05]
agentic 코딩 도구에 전달할
[08:07]
작업을 정의합니다.
[08:09]
그리고 dotcloud가 있는데
[08:11]
이름은 자유롭게 지을 수 있습니다.
[08:12]
이곳에는 agentic 코딩 도구에서
[08:15]
즉시 사용할 수 있는 재사용 가능한
[08:18]
프롬프트를 저장합니다.
[08:20]
재사용 가능한 프롬프트는
[08:22]
코딩 외에도 필수적인 패턴입니다.
[08:24]
다양한 형태로 반복 사용할 수 있는
[08:26]
연산이 필요하기 때문입니다.
[08:29]
이는 재사용, 검증 및 개선이 가능한
[08:31]
프롬프트를 만듦으로써 가능합니다.
[08:33]
특히 이메일을 작성할 때 유용합니다.
[08:37]
실제로 어떻게 작동하는지 보여드리겠습니다.
[08:39]
Pocket Pick에 간단하고 명확한
[08:42]
새로운 기능을 구현해보겠습니다.
[08:44]
제가 원했던 작은 개선사항이 있는데
[08:46]
이를 구현해보겠습니다.
[08:48]
먼저 열어보고
[08:49]
Pocket Pick에 대해 간단히 설명드리겠습니다.
[08:51]
개발자로서 우리는 아이디어, 패턴,
[08:53]
코드 스니펫을 자주 재사용하지만
[08:55]
이를 관리하기가 쉽지 않습니다.
[08:58]
Pocket Pick이 바로 이 문제의 해결책입니다.
[09:00]
이 간단한 MCP 서버는 개인 지식 베이스 항목을
[09:04]
생성하고 저장합니다.
[09:06]
재사용하고 싶은 코드 스니펫, 파일,
[09:09]
문서들을 간단한 SQLite 데이터베이스에 저장하죠.
[09:12]
사용 가능한 도구들을 보시면
[09:14]
추가, 추가 추가 파일, 목록 찾기 등
[09:16]
오늘 우리가 하고자 하는 주요 변경사항은
[09:18]
add 명령어를 업데이트하는 것입니다.
[09:22]
여기 데이터 타입을 보면
[09:24]
pocket pick 데이터베이스에 새 항목을 추가할 때
[09:26]
텍스트, 태그, 데이터베이스 경로가 있습니다.
[09:29]
현재는 ID가 자동으로 생성되고 있는데,
[09:32]
검색 기능을 개선하여
[09:33]
pocket 항목을 생성할 때
[09:35]
ID를 직접 전달할 수 있도록 하고 싶습니다.
[09:38]
pocket add와 pocket add file로
[09:40]
이렇게 하면 ID로 pocket get과
[09:42]
pocket file을 쉽게 실행할 수 있게 됩니다.
[09:46]
어떻게 할까요?
[09:47]
이 세 가지 필수
[09:49]
디렉토리를 사용할 것입니다.
[09:51]
이 디렉토리들을 통해 이번 세션과
[09:54]
앞으로도 더 빠르게 작업할 수 있습니다.
[09:55]
저는 물론 Claude 코드를 사용할 건데,
[09:57]
현재 제가 가장 좋아하는 도구입니다.
[09:58]
첫 번째로 할 일은 프라이밍입니다.
[10:00]
이미 이 명령어를 가지고 있어서
[10:03]
시간을 절약하고 있죠. 트리처럼 실행될 겁니다.
[10:06]
.gitignore가 있고,
[10:08]
코딩 도구를 위한 트리 형식을 보여줄 겁니다.
[10:11]
작동하는 걸 볼 수 있죠.
[10:13]
전체 화면으로 보겠습니다.
[10:14]
보시다시피 다음 파일들을
[10:16]
읽으라고 했고, 이제 다 로드됐습니다.
[10:18]
/cost를 입력하면
[10:21]
정확한 비용을 볼 수 있는데,
[10:23]
에이전트를 프라이밍하는데 20센트가 들었네요.
[10:26]
이제 실제 작업을 시작할 시간입니다.
[10:27]
어떻게 실제 작업을 할까요?
[10:29]
반복적으로 프롬프트하지 않습니다. 그건 2024년의 구식 방식이죠.
[10:32]
우리는 간결하고 주도적인 계획을 만듭니다.
[10:36]
한 단계 더 나아가서
[10:38]
제가 좋아하는 새로운 기법을
[10:40]
계획 초안 작성이라고 부르는데요,
[10:42]
여기서 큰 차이점은 저와
[10:45]
AI 코딩 도구 모두가
[10:47]
이 계획 초안 작성에 참여한다는 겁니다.
[10:49]
제가 직접 계획을 쓰고,
[10:50]
파일을 만들고, 그런 작업을 하는 대신
[10:53]
Claude 코드가
[10:55]
첫 계획 초안을 만들게 할 겁니다. specs/
[10:58]
require-id라는 새로운 기능 ID 문자열을 만들고
[11:04]
돌아가서 readme를 보면
[11:07]
여기서 간단한 계획을
[11:09]
세울 수 있습니다. pocket add와
[11:12]
pocket 내부에 이것을 넣고 싶습니다. 계획을
[11:17]
이런 섹션들로
[11:18]
나눌 겁니다. 이 계획을 작성하기 위해
[11:21]
울트라링크를 사용하겠습니다.
[11:23]
확실히 과잉일 수 있지만
[11:24]
이는 Claude 코드의 추론
[11:26]
능력을 촉발시킬 것입니다.
[11:29]
여기서 제가 하는 건 Claude 코드에게
[11:32]
이 코드베이스의 첫 초안을 작성하게 하는 겁니다.
[11:34]
이 코드베이스를 간단히 살펴봤고,
[11:36]
아키텍처와 작동 방식을 대충 기억하고 있습니다.
[11:38]
하지만 우리의 주도적 코딩 도구는 말 그대로
[11:40]
우리보다 수백 배 빠르게 읽을 수 있죠.
[11:43]
이미 이 코드베이스를 저보다
[11:45]
더 잘 이해하고 있습니다.
[11:47]
SQL 같은 테이블 구조도 파악했고,
[11:50]
모든 명령어도 알고 있죠.
[11:52]
UV piest도 볼 수 있고,
[11:54]
이 코드베이스의 구조를 이해하고 있습니다.
[11:56]
말 그대로 지금
[11:58]
이 코드베이스에 대해 저보다
[12:00]
더 많이 알고 있죠. 제대로 프라이밍했기 때문입니다.
[12:03]
이제 진행하면서
[12:04]
알고 있는 모든 것을 바탕으로
[12:07]
첫 계획 초안을 작성할 것입니다.
[12:08]
여기서 새로운 작업 흐름은 무엇일까요?
[12:10]
기본적인 계획을 수립하고,
[12:12]
AI 코딩 도구로 초안을 만든 다음
[12:15]
계획을 반복적으로 개선하고 실행하는 것입니다.
[12:17]
이제 이 계획을 실행해 보겠습니다.
[12:20]
저는 이것을 수락하고
[12:21]
새로운 스펙이 생성된 것을 확인할 수 있습니다.
[12:23]
이제 이것이 어떻게 보이는지 살펴보겠습니다.
[12:26]
이것이 바로 계획입니다. 첫 번째 초안인데
[12:28]
꽤 잘 나왔죠?
[12:30]
문제를 매우 간단명료하게 설명하고 있습니다.
[12:32]
사용자가 add와 add_file 도구를 사용해
[12:34]
pocket pick 데이터베이스에 항목을 추가할 때
[12:36]
ID가 자동으로 생성됩니다.
[12:38]
이것이 문제 설명이고
[12:40]
그 다음은 해결책입니다.
[12:42]
이 기능은 이러한 도구들을 수정하여
[12:44]
사용자가 필수 매개변수로
[12:46]
ID를 직접 제공하도록 하여
[12:48]
더 나은 제어와 식별을 가능하게 합니다.
[12:51]
정확히 이것이 목표입니다.
[12:53]
이제 우리는 검토 단계에 있습니다.
[12:55]
우리는 날이 갈수록 더욱더
[12:57]
코드 리뷰어, 계획 리뷰어가 되어가고 있습니다.
[12:59]
우리는 정보의 큐레이터가 되어가고 있죠.
[13:02]
코드 아이디어의 큐레이터가 되어
[13:04]
이를 AI 코딩 도구에 전달하는 것입니다.
[13:07]
이 방식의 좋은 점은
[13:08]
코드베이스를 반복적으로 업데이트하면서
[13:10]
나쁜 임시 상태로 만들지 않는다는 것입니다.
[13:13]
우리는 이 파일에서만 작업하고 있습니다.
[13:15]
모든 것을 이 파일 내에서 처리하고 있죠.
[13:18]
자, 이제 전체를 살펴보겠습니다.
[13:20]
보시다시피
[13:21]
서버 모듈에 새로운 ID 필드가 있습니다.
[13:24]
이것이 핵심적인 변경사항이죠.
[13:26]
기능 추가도 잘 되어 있고,
[13:29]
서버 구현도 완벽해 보입니다.
[13:32]
테스트 변경사항을 보면
[13:35]
모든 파일 위치를 알고 있죠.
[13:36]
이것이 정말 중요한 부분입니다.
[13:38]
우리는 context prime을 연결하고 있고
[13:41]
AI docs 디렉토리는 건너뛰고 있습니다.
[13:44]
지금은 필요하지 않기 때문이죠.
[13:46]
코드베이스를 처음 시작할 때는
[13:48]
더 중요할 수 있습니다.
[13:51]
자체 검증 섹션이 있고
[13:53]
readme 업데이트도 포함되어 있습니다.
[13:55]
적절한 컨텍스트를 제공하고
[13:57]
재사용 가능한 프롬프트를 사용하여
[13:59]
올바른 맥락을 제공하고
[14:02]
세 문장 정도의 간단한 프롬프트로
[14:05]
추론 모델의 기능을 활성화했습니다.
[14:07]
우리는 꽤 좋은 계획을 가지고 있습니다.
[14:10]
이것으로 80% 정도는
[14:12]
해결될 것 같습니다.
[14:13]
이제 여기서
[14:15]
불필요한 내용을 삭제하겠습니다.
[14:18]
몇 가지 추천사항이 있는데,
[14:20]
AI 에이전트가
[14:22]
이러한 추가 옵션들을 구현하지 않기를 바랍니다.
[14:23]
보통 코딩 도구나 언어 모델은
[14:25]
텍스트가 많으면 의미를 만들어내려고 합니다.
[14:29]
패턴을 찾으려고 시도하죠.
[14:30]
그래서 이 스키마 관련 내용은
[14:32]
삭제하도록 하겠습니다.
[14:34]
대신 한 가지를 추가하겠습니다.
[14:36]
다른 테스트들을 확인하여
[14:38]
add 기능을 사용하는지 살펴보고
[14:41]
필요한 경우 업데이트하는 것이 중요합니다.
[14:46]
그리고 이제
[14:48]
경로를 명확하게 열어서
[14:50]
어디를 봐야 할지
[14:52]
매우 명확하게 하겠습니다.
[14:54]
사실 이것은 완전히 불필요하지만
[14:56]
사실 불필요한 작업이지만
[14:58]
명확하게 하기 위해 이렇게 합니다.
[15:00]
좋습니다. 훌륭한 계획이 나왔네요.
[15:02]
이제 좋은 방법을 보여드리겠습니다.
[15:05]
계획을 실행하기 전에
[15:08]
항상 커밋을 하는 것이 좋습니다.
[15:09]
여기서 했던 작업들을 되돌리고
[15:11]
이 파일을 확인한 다음
[15:14]
계획을 커밋하고나서
[15:16]
계획을 실행할 것입니다.
[15:18]
자, 이제 시작하겠습니다.
[15:21]
이 파일을 구현하겠습니다.
[15:25]
Claude에 새로운 기능이 있는데
[15:27]
바로 할 일 목록 시스템입니다.
[15:29]
이것은 에이전트 코딩 도구에서
[15:32]
새롭게 등장하는 패턴으로
[15:33]
먼저 계획을 수립하고
[15:35]
그 계획을 실행하는 방식입니다.
[15:37]
이제 에이전트 모드 또는
[15:39]
YOLO 모드로 전환하겠습니다.
[15:42]
이제 자동 수락이 활성화되어
[15:43]
AI 코딩 도구가
[15:44]
모든 작업을 자동으로 처리할 것입니다.
[15:47]
여기서 언급해야 할 중요한 점은
[15:49]
AI docs MCP 서버 git 저장소 통합을
[15:53]
추가했어야 했지만
[15:56]
이 기능이 이미 작동 중이라
[15:58]
필요하지 않았습니다.
[16:00]
사실 여기에는
[16:03]
서드파티 문서에서
[16:05]
추가할 만한 정보가
[16:06]
코드베이스에 이미 포함되어 있어서
[16:09]
모든 디렉토리 중에서 AI docs는
[16:11]
통합이 완료되고 실행되면
[16:13]
가장 덜 중요할 수 있지만
[16:15]
동시에 간과해서는 안 됩니다.
[16:16]
AI 코딩 도구를 위한
[16:18]
영구적인 지식 베이스를 갖는 것의 힘을
[16:21]
에이전트 코딩 도구를 위한
[16:23]
필요할 때마다 참조할 수 있는
[16:25]
지식 베이스의 가치를
[16:26]
특히 컨텍스트 윈도우를
[16:28]
계속해서 확장할 때
[16:30]
더욱 중요해집니다.
[16:32]
또한 때로는 특정 기능에 대한
[16:35]
컨텍스트 프라이밍이 필요합니다.
[16:38]
프라임을 복사해서
[16:40]
ID 기능 추가와 같은 프라이밍을 할 수 있죠.
[16:44]
보시다시피
[16:46]
우리의 훌륭한 에이전트
[16:48]
코딩 도구가 모든
[16:50]
변경사항을 처리하고 있습니다.
[16:52]
특정 기능에 대한 컨텍스트
[16:54]
프라임을 사용하면 이를 추가하고
[16:57]
특정 파일을 추가할 수 있습니다.
[16:59]
예를 들어 기능별 파일이나
[17:02]
파이썬 파일 등을 여러 개 추가할 수 있죠.
[17:06]
이렇게 하면
[17:07]
특정 기능 세트에 대해
[17:10]
반복적으로 컨텍스트 프라이밍이 가능합니다.
[17:13]
이는 큰 변경사항을 다룰 때
[17:15]
특히 유용하지만, 보통은
[17:17]
필요하지 않을 수 있으며
[17:18]
주요 프라임 메서드만으로 충분합니다.
[17:21]
에이전트 코딩 도구가
[17:23]
이러한 변경사항들을 처리하고 있고
[17:25]
매우 빠르게 구현되었는데
[17:26]
이는 좋은 계획을 세웠기 때문입니다.
[17:28]
IDK를 매우 상세하고 명확하게 작성했죠.
[17:31]
주요 에이전트 코딩
[17:33]
멤버들에게 감사드립니다.
[17:35]
모든 키워드에
[17:36]
정보가 가득 담겨있고
[17:38]
원하는 바를 매우 상세하게 표현했습니다.
[17:40]
참조되는 항목들을 볼 수 있습니다. README가
[17:41]
지금 업데이트되고 있는데, 이것은 모두
[17:43]
AI 코딩 도구가 올바른 정보를 보고
[17:46]
그 정보를 바탕으로 계획을 수립하도록
[17:49]
특정 구조를 지정했기 때문입니다.
[17:52]
제가 잘 작동한다고 알고 있는 구조죠.
[17:55]
바로 이런 부분에서 여러분의 경험과
[17:56]
판단력, 그리고 안목이 필요합니다.
[17:58]
코드베이스에 대해 높은 수준의
[18:00]
이해도가 있어야 합니다.
[18:02]
그리고 보시다시피 자체 검증을
[18:05]
수행하고 있습니다. 스스로를
[18:07]
테스트하고 있죠. 정말 좋네요.
[18:09]
이 부분이 매우 중요한데,
[18:11]
마지막에 추가했습니다. ID 파라미터를
[18:13]
다른 테스트 파일에 포함시키는 거죠.
[18:15]
요약하자면, 우리는
[18:17]
계획을 수립하는 훌륭한 프롬프트를 만들었고,
[18:19]
이제는 메타적인 접근을 하고 있습니다.
[18:21]
에이전트가 우리를 위한 계획을 작성하도록
[18:24]
프롬프트를 작성하고, 그것을 수정하고
[18:27]
반복하면서 발전시킵니다.
[18:29]
그리고 그 계획을 AI 코딩 도구나
[18:32]
에이전트 디코딩 도구에
[18:33]
다시 전달합니다. 보시다시피
[18:35]
테스트를 진행하면서
[18:37]
모든 add 명령어에 ID 파라미터를
[18:39]
추가해야 합니다. 이게 제대로
[18:42]
작동하도록 말이죠. 계속해서
[18:44]
진행되고 있습니다. 이것이 바로 Claude Code가
[18:47]
뛰어난 이유죠. 작업을 멈추지 않고
[18:49]
계속 작업할지 묻지도 않습니다.
[18:52]
그냥 계속 작업을 수행하죠. 저는
[18:55]
Claude Code의 이런 점이 정말 마음에 듭니다.
[18:58]
이런 방식으로 모델을 설계했고,
[18:59]
프롬프트를 설계했습니다. 계속
[19:01]
반복해서 말씀드리지만, Anthropic의
[19:03]
Claude Code 팀이 놀라운 작업을 하고 있으며
[19:05]
그들이 이 도구들을 실제로 사용한다는 게
[19:08]
분명합니다. test_find에서
[19:09]
하나의 테스트 케이스를 놓쳤네요.
[19:11]
원한다면 열어서
[19:13]
나란히 볼 수 있습니다. 그 기능에
[19:16]
이제 추가된 ID가 필요하다는 걸 알 수 있죠.
[19:19]
작업에 대한 간단한 요약이 여기 있습니다.
[19:21]
한번 살펴보겠습니다.
[19:23]
가장 중요한 점은 자체 검증이
[19:24]
켜져 있다는 겁니다.
[19:26]
그래서 거의 모든 것이 제대로
[19:29]
작동한다고 확신할 수 있습니다.
[19:32]
모든 테스트가 통과했죠. 우리의 코딩 도구가
[19:34]
스스로를 테스트하고 있습니다.
[19:37]
스펙을 열어보면 다시 한 번
[19:40]
하단에서 볼 수 있듯이
[19:41]
자체 검증이 매우 중요합니다.
[19:44]
명령을 내렸고,
[19:46]
자체 검증이 필요합니다. 다시 강조하자면,
[19:48]
이것이 바로 에이전틱 코딩과
[19:49]
AI 코딩의 큰 차이점입니다. 저는 단순히
[19:52]
코드를 생성하는 프롬프트만 작성하는 게 아닙니다.
[19:54]
엔지니어링 작업을 수행하는
[19:57]
프롬프트를 작성합니다. 구축하고,
[19:59]
계획하고, 테스트하는 전체 과정이죠.
[20:02]
전체 개발 수명 주기를 다룹니다.
[20:05]
이것이 바로 강력한
[20:06]
기능입니다. 여러분이 활용할 수 있는 거죠.
[20:09]
우리가 여기서 논의한 것과 같은 가치 있는
[20:11]
아이디어를 매주 월요일마다
[20:13]
공유하려고 합니다. 어디서 찾을 수 있는지
[20:15]
아시죠. 아직 구독하지 않으셨다면,
[20:17]
꼭 여정에 동참해 주세요.
[20:19]
우리가 잠든 동안에도 스스로 구축하는
[20:22]
살아있는 소프트웨어를 만들 것입니다. 그리고 이 세 가지
[20:24]
이러한 세 가지 핵심 디렉토리인 AI, docs, spec,
[20:28]
그리고 claude를 통해
[20:31]
우리의 엔지니어링 작업을 확장할 수 있습니다.
[20:33]
이를 통해 AI 코딩 도구와 에이전트 코딩 도구에
[20:36]
더 많은 작업을 위임할 수 있죠.
[20:39]
이 영상이 도움됐다면 좋아요를 눌러주세요.
[20:41]
알고리즘이 여러분의 관심사를
[20:42]
파악할 수 있도록 해주세요.
[20:44]
여기서 모든 테스트가 통과된 것을 볼 수 있습니다.
[20:46]
실행할 필요는 없지만, 물론 가능합니다.
[20:50]
업데이트된 pocket pick에서
[20:53]
무엇을 전달해야 하는지 readme를 확인해보죠.
[20:55]
이것은 비교적 간단할 겁니다.
[20:57]
네, 매우 간단하네요. 이걸 사용해보겠습니다.
[20:59]
update를 입력하고... 자 됐습니다.
[21:03]
네, 데이터베이스입니다. 괜찮네요.
[21:05]
현재 작업 디렉토리를 사용할 수 있습니다.
[21:07]
좋습니다. 이제 claude를 실행하겠습니다.
[21:09]
MCP 서버를 활성화하면
[21:11]
찾은 것을 확인할 수 있습니다. yes를 누르고
[21:13]
이제 프롬프트를 매우 구체적으로 작성하겠습니다.
[21:14]
Updated pocket pick.
[21:18]
pocket add를 입력하고, ID는
[21:21]
임의의 코드를 복사해보겠습니다.
[21:24]
예를 들어, MCP.json
[21:26]
형식을 코드 스니펫으로
[21:28]
기억하고 싶다고 가정해보죠.
[21:30]
그걸 복사해서 add를 입력하고
[21:33]
ID를 전달하겠습니다. 이것은 MCP JSON이 될 것이고
[21:36]
내용은 이렇습니다. 좋습니다.
[21:39]
이제 새로운 Pocket add를
[21:42]
업데이트된 Pocket Pick MCP 서버로 실행하겠습니다.
[21:44]
여기 있네요. Updated Pocket Pick. Add.
[21:46]
ID와 텍스트가 있습니다.
[21:48]
엔터를 누르면 새로운 항목이 추가될 겁니다.
[21:51]
그 도구 이름이 뭐였더라...?
[21:54]
아,
[21:55]
찾았습니다. 이걸로 하죠.
[21:58]
pocket to file by ID입니다.
[22:00]
이걸 실행하고 싶었죠.
[22:03]
id를 입력하고 그건
[22:05]
mcp_json이었고, 출력 파일은...
[22:09]
절대 경로로 mcpnew.json을 지정하겠습니다.
[22:14]
이제 새로운 ID로 검색할 겁니다.
[22:17]
보시다시피 우리는
[22:20]
업데이트된 pocket pick mcp 서버를 실행 중이고
[22:22]
이 디렉토리에 출력할 겁니다.
[22:24]
실행해보죠.
[22:26]
어떻게 작동하는지 봅시다.
[22:27]
콘텐츠가 성공적으로 작성됐습니다.
[22:29]
열어보면, MCP 서버에서
[22:31]
SQLite 데이터베이스로부터
[22:34]
이 기능이 실행되고 있음을 확인할 수 있습니다.
[22:37]
보시다시피 새로운 로컬
[22:38]
데이터베이스가 있습니다.
[22:40]
이는 스니펫을 저장하고 재사용하는
[22:42]
훌륭한 방법입니다.
[22:44]
이 코드베이스의 링크는
[22:45]
관심 있으신 분들을 위해 설명란에 있습니다.
[22:47]
정말 놀랍게도 얼마나 빨리
[22:50]
이것을 구축했는지 보세요.
[22:52]
변경된 모든 파일들을 보세요.
[22:54]
그리고 무엇이 수행되었는지 기억하세요.
[22:57]
매우 정확하고 정밀했죠.
[22:59]
이 모든 것이 이러한 핵심 파일들 덕분입니다.
[23:02]
이러한 핵심 디렉토리들이
[23:05]
이 코드베이스와 모든 코드베이스에서
[23:07]
우리가 할 수 있는 일을 확장시켜 줍니다.
[23:10]
더 많은 시간을 함께 보내면서
[23:12]
채널을 시청하면서 분명해지길 바랍니다.
[23:14]
이는 결국 패턴에 관한 것입니다.
[23:16]
원칙에 관한 것이고,
[23:18]
새로운 엔지니어링 시대에 대한 접근 방식입니다.
[23:20]
특정 도구에 얽매이지 마세요.
[23:22]
그리고 확장성 없는 아이디어에
[23:25]
얽매이지 마세요. 작업, 코드베이스,
[23:28]
그리고 가장 중요한 것은
[23:30]
시간을 초월해야 합니다.
[23:33]
AI docs는 AI 도구를 위한
[23:35]
영구적인 지식 기반입니다.
[23:38]
Specs는 작업을 계획하는 곳입니다.
[23:40]
에이전트 코딩 도구에 더 많은 작업을 위임하는 곳이죠.
[23:43]
기억하세요, 훌륭한 계획이
[23:45]
훌륭한 프롬프팅입니다. 그리고 doclude가 있습니다.
[23:48]
여기서는 코드베이스에서 시간을 두고
[23:50]
재사용할 수 있는 프롬프트를 만듭니다.
[23:53]
여기서 가장 중요한 프롬프트는
[23:55]
컨텍스트 프라임 프롬프트입니다.
[23:57]
에이전트가 필수 정보를 가지고
[23:59]
간결하게 작업할 수 있도록 설정하세요.
[24:02]
전체 코드베이스에 대한 접근 권한을 주는 데
[24:05]
토큰을 낭비하지 마세요. 정확하고 집중적으로 하세요.
[24:07]
너무 많은 컨텍스트를 가지는 것은
[24:10]
충분하지 않은 것만큼이나 나쁩니다.
[24:12]
너무 많은 컨텍스트는 에이전트를 혼란스럽게 하고,
[24:15]
너무 적으면 작업을 완료할 수 없습니다.
[24:17]
이것들을 함께 사용하면
[24:19]
엔지니어링 작업을 더욱 확장할 수 있습니다.
[24:21]
시청해주셔서 감사합니다.
[24:24]
집중하면서 계속 구축해 나가세요.