요원 스킬의 진정한 잠재력을 놓치고 계실 수도 있습니다!

AAcademind
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Cloud Code나 Codex, 혹은 다른 에이전트 기반 엔지니어링 도구를 사용할 때
00:00:05이 모든 도구에서 지원하며 반드시 이해하고 사용해야 할 정말 중요한 개념은
00:00:12에이전트 스킬(Agent Skills)입니다. 단순히 마크다운 파일 묶음이거나
00:00:18설정이 번거롭다는 이유로 무시하기 쉽지만, 제 경험상 그럴 가치가 충분합니다.
00:00:24며칠 전 Anthropic의 Cloud Code 팀원이 올린 포스트에서
00:00:31그들이 내부적으로 사용하는 다양한 유형의 스킬들을 공유했는데요.
00:00:37실제로 생성하려는 스킬의 유형을 구분할 수 있습니다. 결국은 다 마크다운 파일일 뿐이지만
00:00:42몇 가지를 더 추가할 수도 있죠. 나중에 다시 설명하겠지만, 마크다운 파일에 들어가는 내용은
00:00:49매우 다를 수 있습니다. 여기 보이는 이미지와 포스트 전체 내용이 꽤 압도적이라
00:00:56'스킬 설정에 일주일이나 써야 한다면 차라리 안 쓰고 말지'라는 생각에 포기할 수도 있습니다.
00:01:02그래서 이번 영상에서는 그에 대한 대안을 제시해 드리고자 합니다.
00:01:08단순히 여러분이 신경 써야 할 세 가지 핵심 스킬 유형만 갖춰도 더 나은 결과를 얻을 수 있습니다.
00:01:15참고로 이 모든 도구는 스킬을 지원합니다. 제 강의에서는 스킬 설정 방법과
00:01:20능동적으로 호출하는 법, Cloud Code나 Codex용 스킬 구축법을 다루고 있으니
00:01:26해당 강의나 미래의 강의를 포함한 모든 강의를 듣고 싶으시다면
00:01:31현재 진행 중인 프로모션을 통해 매우 저렴한 가격에 연간 멤버십을 이용하실 수 있습니다.
00:01:35링크는 아래에 있습니다. 자, 이 스킬들은 특정 위치에 저장되는
00:01:41단순한 마크다운 파일들입니다. 정확한 위치는 사용하는 도구에 따라 다르지만
00:01:46결국 프롬프트 템플릿이나 에이전트 엔지니어링 세션에 주입될 수 있는
00:01:52추가적인 컨텍스트 조각들입니다. 그리고
00:02:01첫 번째 스킬 유형은 문서화 또는 지식 스킬입니다.
00:02:09무슨 뜻일까요? 여기 제 academy.com 프로젝트, 즉 제 웹사이트 프로젝트를 보면
00:02:15AI 에이전트에게 노출하는 일종의 문서나 지식에 해당하는
00:02:25여러 에이전트 스킬이 있습니다. 예를 들어, 여기 타입스크립트 지식이나
00:02:33더 고급 타입스크립트 기능들, 이를테면 나온 지 10년이나 된 게 아닌
00:02:40"satisfies" 키워드 같은 최신 기능들에 대한 지식이 있죠. 에이전트가 인지하거나 상기했으면 하는 내용인데,
00:02:50학습 데이터에서 많이 보지 못했을 수도 있어서 에이전트가 먼저 떠올리지 않을 수도 있기 때문입니다.
00:02:58이런 내용은 공식 타입스크립트 문서에서도 찾을 수 있는 것들이지만,
00:03:04문제는 명시적으로 지시하지 않는 한 에이전트가 공식 문서를
00:03:11직접 찾아갈 가능성이 낮다는 점입니다. 그래서 차라리 저만의 스킬을 만드는 거죠.
00:03:17이 스킬에는 메타데이터가 포함되어 있습니다. 메타데이터가 중요한 이유는 스킬의 핵심 원리가
00:03:24모든 가용 스킬을 매번 컨텍스트 윈도우에 로드하는 것이 아니라,
00:03:30메타데이터만 먼저 로드한 뒤, AI 에이전트가 여러분의 프롬프트와 작업에 따라
00:03:37어떤 스킬을 더 읽어올지 스스로 결정하기 때문입니다. 도구에 따라 직접 호출할 수도 있지만,
00:03:43에이전트가 메타데이터를 보고 스스로 로드하는 것이 핵심 아이디어입니다.
00:03:47여기 에이전트에게 이 스킬을 언제 사용해야 할지 알려주는 메타데이터를 넣었습니다.
00:03:55이것이 에이전트가 가지고 있지 않을 수도 있는 추가 문서나 지식을 제공하는
00:04:02첫 번째 유형의 스킬입니다. 너무 최신이라 학습 데이터에 없는
00:04:08라이브러리를 사용하거나, 에이전트가 잘 모를 것 같은 내용을
00:04:13인지시키고 싶을 때 사용합니다. 이것이 제가 말하는 첫 번째 유형의 스킬입니다.
00:04:18두 번째 스킬 유형은 동작, 모범 사례, 접근 방식 등입니다.
00:04:29프로젝트를 진행하다 보면 코드 스타일이나 처리 방식에 대해
00:04:37특정 선호도가 생기기 마련입니다. 예를 들어, 저는 "clean modern react code" 스킬이 있는데,
00:04:45이것은 리액트 기능을 설명하는 문서라기보다는 에이전트가 리액트 코드를 작성할 때
00:04:50따라야 할 규칙들을 정립하여 특정 안티 패턴이 덜 발생하도록 하는 것입니다.
00:04:59적어도 현재로서는 AI 에이전트가 항상 최고 품질의 코드를 생성하지는 않는 경향이 있습니다.
00:05:08코드 품질이 중요한지에 대해서는 논란이 있을 수 있고, 이에 대해 다른 채널에서 별도 영상을 만들기도 했지만,
00:05:13제 생각엔 코드 품질은 코드 리뷰를 위해서라도 중요합니다.
00:05:18성능에 영향을 줄 수 있고, 유지보수나 확장의 용이성에도
00:05:23영향을 미치기 때문입니다. 따라서 에이전트가 사용했으면 하는 특정 동작이나 패턴이 있다면,
00:05:29좋은 리액트 코드를 작성하는 법, 가령 useEffect 사용을 지양하고
00:05:36어떻게 대체할 수 있는지 등을 알려주는 이러한 동작 지침 스킬이 흥미로울 수 있습니다.
00:05:43이것은 추가적인 문서나 지식을 제공하는 것보다는
00:05:50동작을 지시하는 것에 가깝습니다. 흥미로운 점은 이 스킬 파일 안에
00:05:55이 스킬에 대해 흥미로운 점은 여기에 파일과 관련된 더 자세한 내용을 담은 몇 가지 관련 파일이 있다는 것입니다.
00:06:02말씀드렸듯이 모든 스킬 파일은 지연 로딩(lazy loading)되는데,
00:06:09스킬 파일 내에서 여기 references 폴더의 useEffect.md 파일처럼 다른 파일을 참조하면
00:06:15AI는 자신이 useEffect를 다루고 있다는 사실을 알 때만 그 파일을 로드하기로 결정할 수 있습니다.
00:06:21그러면 에이전트는 제가 작성한 안티 패턴에 대한 상세한 내용을 파악하게 되죠.
00:06:27이런 종류의 스킬을 설정하는 것은 충분히 가치 있는 일입니다. 왜냐하면
00:06:33어떤 리액트 프로젝트에도 복사해서 쓸 수 있고 매번 새로 쓸 필요가 없으며,
00:06:39더 나은 코드로 이어지기 때문입니다. 이것이 제가 권장하는 두 번째 스킬 유형입니다.
00:06:45설명하고 싶은 모든 패턴을 한꺼번에 생각할 필요는 없습니다. 그저 단계적으로 진행하세요.
00:06:52프로젝트에서 AI 에이전트가 원치 않는 행동을 지속적으로 반복한다면,
00:06:58적절한 타이밍에 로드될 확률을 높일 수 있는 좋은 설명을 곁들인 스킬을 추가하세요.
00:07:04그 스킬에 지침을 넣어 문제를 해결하세요. 시간이 지나면 여러분만의
00:07:11특정 모범 사례와 강제하고 싶은 동작들이 담긴 스킬 라이브러리가 구축될 것입니다.
00:07:17그러면 다음 프로젝트에서도 사용할 수 있죠. 처음부터 너무 거창하고 위협적인 과제로 생각하지 마시고
00:07:22단계별로 스킬 기반을 다져 나가세요. 이제 세 번째 유형의 스킬인데,
00:07:29이것은 앞서 말한 것들과는 다른 기능 중심의 스킬입니다.
00:07:37지금까지는 문서화와 특정 동작 강제에 대해 이야기했습니다.
00:07:43Cloud Code나 Codex 같은 에이전트 도구들은 온갖 일을 할 수 있습니다. 코드를 쓰는 건 당연하고
00:07:49프로젝트 내에서 코드 작성에만 국한되지도 않습니다. 코드를 쓸 수 있다는 건,
00:07:55원한다면 컴퓨터에서 무엇이든 할 수 있다는 뜻이죠. 예를 들어 PDF 문서를 분석하게 할 수도 있고,
00:08:03제 시스템에는 프로그래밍에만 국한되지 않은 전역 스킬들이 있습니다.
00:08:09에이전트에게 이미지를 생성하는 법을 알려주는 스킬을 설정할 수도 있습니다. 무슨 뜻일까요?
00:08:16AI로 이미지나 비디오를 생성할 수 있는 다양한 서비스나 API가 있습니다. fal.ai 같은 것들이죠.
00:08:24참고로 유료 광고는 아닙니다. replicate 같은 다른 서비스들도 있죠.
00:08:29프로젝트를 위해 웹사이트에 넣을 더미 이미지가 필요하거나,
00:08:34아니면 벽에 걸어둘 이미지를 출력하고 싶을 때 이런 서비스들을 이용할 수 있습니다.
00:08:41Codex, Cloud Code, 혹은 제가 좋아하는 Py 에이전트 등을 사용해
00:08:49이미지 생성을 요청할 수 있습니다. 기본적으로 이런 도구들은 이미지 생성 기능이
00:08:54내장되어 있지 않아 실패할 가능성이 큽니다. 하지만 적절한 스킬을 제공한다면(이것도 마크다운 파일입니다),
00:09:00그 안에 이미지 생성을 위해 서드파티 API와 상호작용하는 법을 기술할 수 있습니다.
00:09:06그 상호작용을 설명하는 것만으로도 한 방법이겠지만, 한 단계 더 나아갈 수 있습니다.
00:09:12스킬에 스크립트를 포함할 수도 있습니다. 모든 스킬에 필요한 건 아니지만, 제 이미지 생성 스킬은 그렇게 되어 있죠.
00:09:18이 스크립트는 솔직히 AI가 작성했습니다. 이른바 "바이브 코딩(vibe coded)" 된 것이죠.
00:09:26여기 fal API와 상호작용하는 스크립트가 있습니다.
00:09:34이미지 생성 서비스 문서의 내용을 프롬프트에 넣고 AI 에이전트에게
00:09:40fal API를 활용해 이미지를 생성할 수 있는 도구를 작성해 달라고 했습니다. 그래서 작은 CLI 도구가 만들어졌죠.
00:09:49해당 API와 통신하며 다양한 파라미터로 이미지를 생성하는 작은 스크립트입니다.
00:09:56그리고 스킬 마크다운 파일은 그 스크립트의 사용법을 설명합니다.
00:10:02스크립트를 가리키며 에이전트에게 어떤 파라미터를 넣어 실행할지 등을 알려주죠.
00:10:08여기에 제 fal 키가 담긴 .env 파일이 있습니다. 이 스크립트가
00:10:18스킬 파일의 지침대로 Bun을 통해 실행될 때, .env 파일이 자동으로 로드됩니다.
00:10:23따라서 에이전트에게 직접 키를 노출할 필요가 없습니다. "이미지 좀 생성해 줘, 키는 여기 있어"라고 말할 필요가 없는 거죠.
00:10:29대신 그냥 이미지 생성을 요청하면, 에이전트는 설명된 내용에 따라
00:10:34필요할 때 이 스킬을 로드하고, 스크립트만 실행하면 된다는 것을 배웁니다.
00:10:39구현 세부 사항은 걱정할 필요가 없죠. 이것이 제가 흥미롭다고 생각하는 또 다른 종류의 스킬입니다.
00:10:45꼭 프로그래밍에 관련된 것일 필요는 없습니다. 코드를 포맷팅하는
00:10:52스크립트 기반 스킬일 수도 있겠죠. 하지만 일반적으로 이 에이전트들을
00:10:57단순한 코드 생성 이상의 용도로 활용할 수 있기 때문에
00:11:02분명히 인지해 두어야 할 스킬 카테고리입니다. 전체적으로 너무 복잡하게 생각하지 마세요.
00:11:08그렇다고 방치하지도 마시고, 단계적으로 스킬 라이브러리를 구축해 보세요.
00:11:14다른 사람들이 만든 스킬을 찾아볼 수 있는 skills.sh 같은 스킬 레지스트리도 있다는 점을 참고하세요.
00:11:21다만 두 가지 중요한 주의사항이 있습니다. 유용할 순 있지만 제가 하지 않을 행동은,
00:11:29가령 "리액트, Tailwind, Better Auth로 프로젝트를 만드니까 관련 있을 것 같은
00:11:35모든 스킬을 검색해서 다 설치해야지"라고 생각하는 것입니다.
00:11:40이건 오히려 역효과를 낼 수 있습니다. 컨텍스트 윈도우에 점점 더 많은 메타데이터를 로드하게 되는데,
00:11:47그중 일부 스킬은 전혀 상관이 없을 수도 있기 때문입니다. 이 점을 유의해야 합니다.
00:11:53이론적으로 추가 가능한 모든 스킬을 무작정 넣기보다는, 선택적으로 집중해야 합니다.
00:11:57AI가 지속적으로 틀리는 부분이나 추가 문서가 반드시 필요하다고 판단되는 부분에 집중하세요.
00:12:04이것이 첫 번째 주의사항이고, 레지스트리에 관한 다른 하나는
00:12:09다른 사람이 작성한 스킬을 포함시킨다는 점입니다. 배운 대로 이 스킬들은 결국 프롬프트입니다.
00:12:16만약 그 프롬프트 중 하나에 악의적인 내용이 들어있다면 프롬프트 인젝션 공격으로 이어질 수 있어
00:12:22문제가 될 수 있습니다. skills.sh 같은 일부 레지스트리는 제가 알기로
00:12:28이런 위험을 줄이기 위해 일종의 스캐닝을 수행하지만, 100% 안전할 수는 없습니다.
00:12:36그러므로 인식하고 있어야 할 부분입니다. 다른 사람이 작성한 스킬을 사용할 때는
00:12:40직접 읽어보세요. 악의적인 내용이 없는지 직접 확인해 보는 것이 좋습니다.
00:12:47이건 그냥 주의의 말씀이었고요. 결론적으로 스킬을 사용해 보세요. 너무 복잡한
00:12:54시스템을 구축해야 한다는 압박감은 버리시고, 가볍게 시도해 보시면서
00:13:00세 가지 핵심 스킬 유형을 기억해 두시기 바랍니다.

Key Takeaway

에이전트 스킬은 단순한 설정을 넘어 AI의 한계를 보완하고 복잡한 작업을 수행하게 하는 핵심 도구이며, 이를 단계적으로 구축하여 나만의 개발 자산으로 만드는 것이 중요합니다.

Highlights

AI 에이전트 도구(Cloud Code, Codex 등)의 잠재력을 극대화하기 위한 '에이전트 스킬'의 중요성

에이전트 스킬의 3가지 핵심 유형: 지식/문서화, 동작/모범 사례, 기능/스크립트 기반 스킬

메타데이터를 활용한 지연 로딩(Lazy Loading) 방식으로 컨텍스트 효율성 최적화

단계적인 스킬 라이브러리 구축을 통해 프로젝트 간 재사용성 및 코드 품질 향상

외부 스킬 레지스트리 사용 시 발생할 수 있는 프롬프트 인젝션 보안 위험 및 주의사항

Timeline

에이전트 스킬의 개념과 중요성

Cloud Code나 Codex와 같은 에이전트 기반 엔지니어링 도구에서 '에이전트 스킬'이 왜 필수적인지 설명하며 시작합니다. 많은 사용자가 설정의 번거로움 때문에 이를 무시하지만, 실제로는 에이전트의 능력을 비약적으로 높여주는 핵심 요소입니다. Anthropic 팀의 사례를 통해 스킬이 단순한 마크다운 파일 이상의 가치가 있음을 강조합니다. 화자는 스킬 설정을 너무 복잡하게 생각하지 말고, 제안하는 세 가지 핵심 유형에 집중할 것을 권장합니다. 이는 에이전트 엔지니어링 세션에 추가적인 컨텍스트를 주입하여 결과물의 수준을 높이는 전략적 방법입니다.

첫 번째 스킬 유형: 문서화 및 지식 스킬

첫 번째 유형인 '지식 스킬'은 에이전트가 최신 라이브러리나 특정 프로젝트의 도메인 지식을 학습 데이터 없이도 인지하게 돕습니다. 예를 들어 타입스크립트의 최신 기능인 "satisfies" 키워드처럼 공식 문서에 있지만 에이전트가 놓치기 쉬운 내용을 마크다운으로 작성해 제공합니다. 여기서 핵심은 모든 스킬을 한꺼번에 로드하는 것이 아니라, 메타데이터를 통해 필요할 때만 불러오는 지연 로딩 방식입니다. 에이전트는 사용자의 프롬프트를 분석하여 관련 메타데이터가 있는 스킬을 스스로 선택해 학습합니다. 이를 통해 컨텍스트 윈도우를 낭비하지 않으면서도 매우 구체적이고 최신화된 답변을 얻을 수 있습니다.

두 번째 스킬 유형: 동작 지침 및 모범 사례

두 번째 유형은 에이전트에게 특정 코드 스타일이나 설계 패턴을 강제하는 '동작 지침' 스킬입니다. 단순히 리액트의 기능을 설명하는 것이 아니라, useEffect의 오용을 방지하는 법과 같은 구체적인 안티 패턴과 해결책을 정의합니다. AI 에이전트가 항상 최적의 품질을 보장하지 않기 때문에, 이러한 지침은 유지보수와 코드 리뷰 효율성에 큰 영향을 미칩니다. 특히 스킬 파일 내에서 다른 참조 파일을 연결하여 에이전트가 특정 상황에서만 상세 내용을 파악하도록 구성할 수 있습니다. 화자는 처음부터 완벽한 규칙을 만들려 하기보다, 에이전트가 반복적으로 실수하는 부분을 하나씩 스킬로 추가하며 라이브러리를 확장하라고 조언합니다.

세 번째 스킬 유형: 기능 및 스크립트 기반 스킬

세 번째 유형은 단순한 텍스트 가이드를 넘어 외부 API나 도구와 상호작용하는 '기능 중심 스킬'입니다. AI 에이전트가 기본적으로 수행하지 못하는 이미지 생성과 같은 작업을 위해 외부 서비스(예: fal.ai)의 API와 통신하는 스크립트를 포함할 수 있습니다. 화자는 직접 작성한 CLI 도구를 예로 들며, .env 파일에 키를 숨기고 에이전트에게는 스크립트 사용법만 마크다운으로 알려주는 방식을 소개합니다. 이를 통해 사용자는 에이전트에게 직접 API 키를 노출하지 않고도 복잡한 시스템 명령을 내릴 수 있게 됩니다. 이 방식은 코딩에 국한되지 않고 PDF 분석이나 데이터 포맷팅 등 다양한 전역적 기능으로 확장될 수 있는 강력한 잠재력을 가집니다.

스킬 레지스트리 활용 및 보안 주의사항

마지막으로 다른 사용자들이 만든 스킬을 공유하는 skills.sh와 같은 레지스트리 활용법과 주의사항을 다룹니다. 프로젝트와 관련 있는 모든 스킬을 무분별하게 설치하는 것은 컨텍스트 오버헤드를 발생시켜 오히려 성능을 저하시킬 수 있음을 경고합니다. 또한, 타인의 스킬은 결국 프롬프트의 집합이므로 악의적인 명령이 포함된 프롬프트 인젝션 공격의 위험이 있음을 인지해야 합니다. 따라서 외부 스킬을 가져올 때는 반드시 내용을 직접 검토하여 안전성을 확인하는 과정이 필요합니다. 영상은 스킬 시스템을 단계적으로 도입하여 에이전트의 진정한 잠재력을 깨우라는 격려와 함께 마무리됩니다.

Community Posts

View all posts