직접 작성해보기 전까지는 토큰 낭비라 여겼던 LLM SKILL의 진짜 가치
원문 제목 — I Thought SKILLs Were a Waste of Tokens Until I Wrote My Own
📄 전문 번역
솔직히 말하면, LLM 에이전트에 SKILL이 왜 필요한지 이해하지 못했다. MCP는 명확했다. LLM에게 데이터베이스나 Figma 접근 권한을 주는 유용한 기능이다. 단점이라면 토큰 낭비를 피하려면 30개의 MCP 서버를 동시에 연결하지 말고, 작업에 실제로 필요한 것만 연결하는 것이 좋다는 정도다. 이런 관점에서 SKILL은 토큰을 미친 듯이 잡아먹는 쓸모없는 오버헤드로 보였다. TikTok에서는 SKILL을 연결하거나 여러 개를 한꺼번에 연결하면 행복을 누릴 수 있다는 식의 이야기를 자주 봤는데, 첫 생각은 이것을 모두 연결하면 구독 한도가 점심이 아니라 아침에 이미 소진될 것이라는 것이었다.
그렇다면 SKILL은 왜 유용하고 필요한 것일까? 첫째, MCP와 비교해 SKILL은 컨텍스트를 부풀리지 않는다. 연결된 각 SKILL은 수만 토큰이 아니라 100~200토큰 정도만 추가한다. 처음에는 SKILL의 이름과 설명만 컨텍스트에 들어가므로 자신의 SKILL 30개를 큰 부담 없이 추가할 수 있다. SKILL 사용이 필요해지면 LLM 에이전트가 작업 컨텍스트에서 필요성을 파악해 스스로 설명을 불러오거나, 사용자가 이 SKILL을 사용하라고 지시하면 된다.
둘째, LLM 모델은 가장 인기 있고 잘 알려진 것들로 학습된다. LLM이 Git을 문제없이 다루거나 Python 프로그램을 작성할 수 있다는 것은 누구나 아는 사실이지만, 직접 개발한 프로그램이거나 업무에 잘 알려지지 않은 도구나 기술이 필요하다면 SKILL이 단순히 대체 불가능하다. SKILL.md 파일을 만들어 사용법을 설명해두면 LLM이 인터넷에서 문서를 검색하고 웹사이트를 헤매며 사용법을 익힐 필요가 없고, 프로그램이 비공개여서 인터넷에 아무것도 없는 경우에는 더욱 그렇다. 셋째, 에이전트는 Git 사용, 테스트 실행, 프로젝트 빌드, 릴리스 생성은 알지만 회사에서 릴리스를 어떻게 만드는지는 모른다. SKILL은 변경 사항 확인, 테스트 실행, CHANGELOG.md 업데이트, 버전 증가, 패키지 빌드, Git 태그 생성, 릴리스 게시 같은 일련의 작업 순서를 설명해 에이전트가 기술이 아니라 특정 비즈니스 프로세스를 학습하도록 돕는다.
넷째, SKILL은 단순한 지시문이 아니라 도구의 전체 세트다. SKILL.md 외에도 준비된 스크립트, 문서, 템플릿 등의 파일을 담을 수 있으며, 이 파일들은 컨텍스트에 자동으로 로드되지 않는다. 에이전트는 필요할 때만 파일을 읽고, 코드 생성에 토큰을 소모하지 않고 준비된 스크립트를 실행할 수 있다. 즉 SKILL은 컨텍스트를 부풀리지 않으면서 지시문, 문서, 실행 코드를 하나의 패키지로 결합하게 해준다. 예를 들어 my-skill 폴더 아래 SKILL.md와 함께 scripts 폴더의 generate.py와 validate.py, references 폴더의 api.md, assets 폴더의 template.html을 두는 구조가 가능하다.
가장 흥미로운 점은 필자가 SKILL의 가치를 실감한 것이 직접 작성한 프로그램 blueprint4llm 덕분이었다는 것이다. LLM 에이전트에게 작업을 설명하는 plan.md 파일 생성을 요청하면 보통 읽기 힘든 거대한 텍스트 벽이 나오는데, 여기에 플로우차트, 표, 다이어그램, UI 프로토타입을 더하고 싶었다. Markdown 파일에서 시각화 수단은 표와 Mermaid 다이어그램뿐이므로, blueprint4llm으로 PlantUML, draw.io, Pencil, Balsamiq, Graphviz, Figma, OpenAPI, Excalidraw, Vega-Lite, ECharts, D2 지원을 .md 파일에 추가했다. 이 SKILL을 연결하면 plan.md가 긴 텍스트가 아니라 플로우차트, 프로토타입, 차트 등으로 제공되며, plan.md 생성 외에도 예를 들어 아티클의 모든 문단에 삽화를 추가하는 데 활용했다.
💬 주요 댓글 번역 (3)
🔍 루키 분석
이 글은 LLM 에이전트의 SKILL 기능을 토큰 낭비로 여기던 필자가 직접 SKILL을 작성한 뒤 인식이 바뀌었다는 후기다. SKILL은 MCP와 달리 컨텍스트를 크게 부풀리지 않으면서 문서, 스크립트, 비즈니스 프로세스를 하나의 패키지로 제공할 수 있다는 점이 핵심 장점으로 제시된다. 필자는 이를 활용해 Markdown 파일에 PlantUML, draw.io, Figma 등 다양한 다이어그램 형식 지원을 추가한 blueprint4llm을 소개한다.
— 루키 · glm-5.3-flash:cloud
이제 이것들을 도메인별로 조직화하고, 각 도메인의 SKILL이 특정 SKILL을 참조하게 하라. 작업 후 SKILL 수정을 핵심 에이전트의 일부로 만들면, 특정 작업 전문성에 집중하는 거의 자가 개선형 에이전트를 갖게 된다.
좋은 아이디어다! 특히 작업 후 SKILL 수정 부분이 그렇다. 에이전트가 실제 경험을 바탕으로 점진적으로 자신의 전문성을 쌓을 수 있다. 다만 변경 사항을 적용하기 전에 검토 단계를 추가하겠다. 그렇지 않으면 자신의 실수를 강화하기 시작할 수 있다.
100~200토큰 주장은 SKILL이 닫혀 있는 동안에만 성립한다. 모델이 SKILL.md와 참조 파일을 열면 본문이 어차피 컨텍스트에 들어가므로, 모두 '나를 사용하라'고 말하는 30개의 설명은 거의 일치하지 않는 30개의 짧은 설명보다 비용이 더 든다. 실제로 나타나는 절약은 에이전트가 프롬프트에 붙여넣는 대신 실행하는 스크립트다. SKILL을 언제 로드하지 말아야 하는지 설명에 명시하는 부분이 대부분의 인덱스가 건너뛰는 부분이다.