LLM 에이전트의 외부화(Externalization)에 대한 리뷰 논문 (1/2): 가중치에서 하네스로, 메모리와 스킬

핵심 요약

  • Externalization in LLM Agents는 상하이교통대학교 등 5개 기관 연구진이 정리한 54쪽 분량의 리뷰 논문입니다. 저자들은 최근 LLM 에이전트의 발전을, 모델 가중치를 바꾸는 일이 아니라 모델이 감당하던 인지 부담을 메모리, 스킬, 프로토콜, 하네스로 옮기는 외부화(Externalization) 로 설명합니다.
  • 저자들은 Donald Norman의 인지적 인공물(Cognitive Artifact) 이론을 빌려 옵니다. 메모리는 회상을 재인으로, 스킬은 즉흥적인 생성을 검증된 절차의 조합으로, 프로토콜은 임기응변식 조정을 구조화된 계약으로 바꾼다는 것입니다. 하네스는 네 번째 외부화가 아니라 이 셋이 함께 동작하는 실행 환경으로 정의합니다.
  • 1부에서는 에이전트의 능력이 가중치에서 컨텍스트, 하네스로 옮겨 간 흐름을 살펴봅니다. 이어서 메모리(작업 컨텍스트, 에피소드 경험, 의미 지식, 개인화 메모리), 스킬(작업 절차, 판단 휴리스틱, 규범적 제약)의 설계 공간을 다룹니다.
  • 이 논문은 새로운 실험이나 벤치마크 없이 기존 연구와 제품을 해석하는 개념 틀이며, 스킬을 인지적 인공물로 보는 해석은 직접적인 실증이 아닌 주로 이론적인 해석이라고 저자들 스스로 밝히고 있습니다.

LLM 에이전트 외부화(Externalization) 리뷰 소개

Externalization in LLM Agents: A Unified Review of Memory, Skills, Protocols and Harness Engineering은 메모리, 스킬, 프로토콜, 하네스 엔지니어링을 외부화라는 하나의 관점으로 묶어 설명하는 리뷰 논문입니다. 저자들은 LLM 에이전트가 점점 모델 가중치를 고치는 대신 모델 주변의 실행 환경을 다시 구성하는 방식으로 만들어지고 있다는 관찰에서 출발합니다. 상하이교통대학교(SJTU), 중산대학교, Shanghai Innovation Institute, 카네기멜런대학교(CMU), OPPO 소속 연구진 21명이 2026년 4월 9일 arXiv에 공개했고, 참고문헌은 204편입니다.

코딩 에이전트에게 큰 저장소에서 새 기능을 구현하고 테스트를 실행한 뒤 PR(Pull Request)을 열라고 요청하는 상황을 생각해 보겠습니다. 저자들이 직접 드는 예시입니다. 외부화가 없다면 모델은 저장소 구조, 프로젝트 관례, 작업이 어디까지 진행되었는지, 도구 호출 형식을 모두 하나의 프롬프트 안에 붙잡고 있어야 합니다. 반면 외부화가 있다면 프로젝트 메모리가 맥락을 공급하고 스킬 문서가 관례와 작업 순서를 담습니다. 프로토콜로 정의된 도구 인터페이스는 올바른 스키마를 강제하고, 하네스는 단계의 순서를 정하며 출력 검증과 실패 처리를 맡습니다. 저자들은 이때 기반 모델은 그대로일 수 있고, 바뀌는 것은 모델이 풀어야 하는 과제의 형태라고 설명합니다.

이번 글은 2편으로 나누어 정리하려고 합니다. 1부에서는 논문의 중심 주장과 이론적 배경, 가중치에서 컨텍스트를 거쳐 하네스로 이어진 역사적 흐름, 그리고 세 가지 외부화 중 메모리와 스킬을 다룹니다. 2부에서는 프로토콜, 이 셋을 묶는 하네스 엔지니어링, 모듈 사이의 상호작용, 그리고 저자들이 제시한 향후 과제를 이어서 살펴봅니다.

모델 바깥을 바꾸는 에이전트 개발의 흐름

에이전트 분야의 발전은 흔히 더 큰 모델, 더 나은 학습 절차, 더 정교한 추론 과정의 경쟁으로 설명됩니다. 저자들은 이 요인들이 중요하다는 점을 인정하면서도, 실제 시스템에서 관찰되는 패턴을 다 설명하지는 못한다고 지적합니다. 신뢰성이 크게 오른 사례의 상당수가 기반 모델을 바꾸지 않고 모델 주변의 환경을 바꾼 결과라는 것입니다. 지속되는 메모리 추가, 재사용할 수 있는 스킬 정리, 도구 인터페이스 표준화, 실행 제한, 동작 계측, 명시적인 제어 로직을 통한 작업 라우팅이 여기에 해당합니다.

그래서 저자들은 질문을 바꿉니다. "모델이 얼마나 유능한가"뿐 아니라 "모델이 매번 내부에서 풀지 않아도 되도록 어떤 부담을 바깥으로 옮겼는가"를 함께 물어야 한다는 것입니다.

이 분야의 기존 서베이들은 검색 증강 생성(RAG), 딥 서치, 도구 학습, 에이전트 아키텍처 전반, 프로토콜 상호운용성처럼 각자 한 조각을 다뤄 왔습니다. 저자들은 개념적으로 가장 가까운 선행 연구로 언어 에이전트의 인지 아키텍처를 정리한 CoALA를 꼽습니다. 그러면서도 아직 부족한 것은 이 발전들이 왜 외부화라는 하나의 방향으로 수렴하는지, 그 수렴이 에이전트의 정의를 어떻게 바꾸는지에 대한 공통된 설명이라고 봅니다. 이 논문은 구성 요소별 서베이를 하나 더 보태는 대신, 그 설명을 시스템 수준에서 제시하는 것을 목표로 합니다.

인지적 인공물(Cognitive Artifact): 과제의 형태를 바꾸는 외부 도구

이 논문의 이론적 기반은 인지 과학자 Donald Norman의 인지적 인공물(Cognitive Artifact) 개념입니다. 핵심은 외부 도구가 변하지 않은 내부 능력을 단순히 증폭하는 것이 아니라 과제 자체를 바꾼다는 것입니다. 장보기 목록은 생물학적 기억 용량을 늘리지 않습니다. 기억해 내야 하는 회상(recall) 문제를, 목록을 보고 알아보는 재인(recognition) 문제로 바꿉니다. 지도도 길 찾기 능력을 키우는 것이 아니라 보이지 않던 공간 관계를 눈에 보이는 구조로 바꿔 줍니다. 저자들은 이런 표상 전환(Representational Transformation) 이 인공물의 힘이라고 정리합니다.

위 그림은 논문 전체의 주장을 한 장에 담고 있습니다. 위쪽 패널은 인간의 외부화 역사입니다. 말은 생각을 공유 가능한 기호로 바꾸었고, 글은 지식을 생물학적 기억에서 기록물로 옮겼습니다. 인쇄는 지식의 복제를 사회적 규모로 늘렸고, 디지털 컴퓨팅은 계산을 기계로 옮겼습니다. 가운데 패널은 LLM 에이전트에서 같은 흐름이 가중치에서 시작해 메모리(외부화된 상태), 스킬(외부화된 전문성), 프로토콜(외부화된 상호작용)을 거쳐 이들을 묶는 하네스로 이어진다는 것을 나타냅니다. 아래쪽 패널은 CoT, RAG, MemGPT, Toolformer, MCP, A2A(Agent2Agent), SkillsBench 등 대표 연구를 가중치, 컨텍스트, 하네스 세 계층에 배치한 문헌 지형도입니다.

저자들은 이 관점에서 세 가지 외부화가 각각 다른 표상 전환을 일으킨다고 주장합니다.

외부화 모델 밖으로 옮기는 것 표상 전환
메모리(Memory) 시간에 걸친 상태 가중치에서 지식을 다시 떠올리는 회상 → 저장소에서 꺼내 온 것을 알아보는 재인
스킬(Skills) 절차적 전문성 매번 단계를 새로 지어내는 생성 → 검증된 구성 요소의 조합
프로토콜(Protocols) 상호작용 구조 프롬프트 수준의 임기응변식 조정 → 기계가 읽을 수 있는 구조화된 계약

여기서 중요한 구분이 하나 있습니다. 하네스(Harness) 는 메모리, 스킬, 프로토콜과 나란히 놓이는 네 번째 외부화가 아닙니다. 저자들은 하네스를 이 세 가지를 담고, 오케스트레이션 로직과 제약, 관찰 가능성, 피드백 루프를 제공해 외부화된 인지가 실제로 맞물려 돌아가게 만드는 엔지니어링 계층이자 실행 환경으로 정의합니다.

저자들은 확장된 마음(Extended Mind)과 분산 인지(Distributed Cognition) 전통에서도 아이디어를 가져오지만, 그 존재론적 주장까지 받아들이지는 않는다고 밝힙니다. 가져오는 것은 "에이전트와 환경의 경계는 설계상의 선택이며, 그 선택이 실제 성능에 영향을 준다"는 엔지니어링상의 통찰뿐입니다. 외부화의 가치도 결과 시스템의 신뢰성, 조합 가능성, 통제 가능성으로 평가한다는 실용적인 입장입니다.

외부화가 해결하는 세 가지 불일치

저자들은 외부 도움 없이 동작하는 LLM이 반복해서 마주치는 세 가지 불일치가 있고, 이것이 세 가지 외부화에 하나씩 대응한다고 설명합니다.

  1. 연속성 문제: 컨텍스트 창(Context Window)은 유한하고 세션 사이의 기억은 약하거나 없습니다. 메모리 외부화가 이 문제를 다룹니다.

  2. 편차(Variance) 문제: 긴 다단계 절차가 일관되게 실행되기보다 매번 새로 유도되는 경우가 많습니다. 같은 프롬프트라도 실행할 때마다 단계 분해, 분기, 종료 조건이 달라질 수 있습니다. 스킬 외부화가 이 문제를 다룹니다.

  3. 조정 문제: 외부 도구, 서비스, 다른 에이전트와의 상호작용을 자유 형식 프롬프트에만 맡기면 쉽게 깨집니다. 프로토콜 외부화가 이 문제를 다룹니다.

다만 이 세 모듈은 서로 독립적으로 발전하지 않습니다. 메모리 확장은 스킬 로딩과 한정된 컨텍스트 예산을 놓고 경쟁할 수 있습니다. 스킬 실행이 남긴 흔적은 나중에 메모리가 되고, 메모리에서 꺼낸 내용은 다음에 어떤 스킬과 프로토콜 경로를 고를지에 영향을 줍니다. 하네스가 이 모든 상호작용을 중재해야 한다는 것이 저자들의 설명이고, 이 결합 관계는 2부에서 자세히 다룹니다.

가중치에서 컨텍스트, 하네스로: 에이전트 능력이 옮겨 간 과정

저자들은 최근 LLM 에이전트의 역사를 모델 자체에서 바깥으로 조금씩 이동해 온 과정으로 읽습니다. 처음에는 능력이 가중치의 속성으로, 다음에는 프롬프트와 컨텍스트 창의 속성으로, 지금은 모델이 동작하는 인프라 전체의 속성으로 다뤄지고 있다는 것입니다.

위 그림은 커뮤니티의 관심이 가중치에서 컨텍스트, 하네스 쪽으로 넓어져 온 과정을 세 개의 겹친 계층으로 보여 줍니다. 저자들은 이 단계들이 서로를 대체하는 것이 아니라 겹쳐 쌓인다고 강조합니다. 인프라 비중이 큰 시스템에서도 가중치는 여전히 중요하지만, 각 단계는 개발자가 시스템의 바뀔 수 있는 지능을 어디에 두는지, 그리고 엔지니어링 노력을 어디에 쏟는지를 바꿨다는 것입니다.

가중치 계층: 능력이 곧 모델 파라미터였던 시기

초기 LLM 활용에서 능력은 거의 전적으로 모델 파라미터와 같은 것으로 여겨졌습니다. 대규모 코퍼스 사전 학습이 세계 지식과 추론(reasoning) 습관을 가중치에 압축했고, 스케일링 법칙은 모델 크기와 데이터 양이 성능을 예측 가능하게 끌어올린다는 직관을 강화했습니다. GPT-4, Gemini, DeepSeek-V3, Qwen2.5와 같은 모델이 폭넓은 범용 능력을 보이자, 더 좋은 에이전트란 더 크고 잘 학습된 모델이라는 서사가 자리 잡았습니다. 이후 지도 미세조정(Supervised Fine-tuning)과 선호도 최적화(RLHF, DPO)가 지시 따르기와 대화 스타일, 거절 행동을 가르쳤지만, 개선이란 여전히 모델을 고치거나 바꾸는 일이었습니다.

저자들은 이 방식의 장점도 분명히 적습니다. 외부 조회 없이 추론이 빠르고, 배포가 간결하며, 작업별 연결 코드 없이도 여러 과제에 일반화됩니다. 한 번에 끝나고 컨텍스트 안에서 완결되는 과제라면 가중치 중심의 관점으로 충분한 경우가 많습니다.

한계는 지식, 절차, 정책이 정적인 산출물에 너무 단단히 묶인다는 점입니다. 한 나라의 현직 국가 원수처럼 사실 하나를 고치려 해도 재학습, 지식 편집(Knowledge Editing), 추가 정렬 계층이 필요하고, 모두 다른 능력에 의도하지 않은 부작용을 낼 위험이 있습니다. 관련 지식이 수십억 개의 파라미터에 흩어져 있어 모델이 왜 그렇게 행동했는지 감사하기 어렵고, 하나의 가중치로 수백만 명의 서로 다른 사용자를 구분할 방법도 없습니다. 에이전트가 단일 턴 질의응답에 머물던 동안에는 이 약점을 감당할 만했습니다. 그러나 상태가 쌓이고, 절차를 안정적으로 따라야 하고, 여러 도구를 조정해야 하는 장기 과제로 넘어가면서 이 문제가 운영상 크게 드러났다는 것이 저자들의 설명입니다.

위 그림은 이 논문이 그리는 외부화된 에이전트의 전체 구조입니다. 하네스가 중심에 있고, 세 가지 외부화 차원이 각자의 하위 요소와 함께 하네스 주위를 돌며, 샌드박스, 관찰 가능성, 압축, 평가기, 승인 루프, 서브 에이전트 오케스트레이션 같은 운영 요소가 하네스와 외부화 모듈 사이를 중재합니다.

컨텍스트 계층: 모델 수정에서 입력 설계로

컨텍스트 계층에서는 관심이 모델 수정에서 입력 설계로 옮겨 갔습니다. 퓨샷 예시, 역할 설명, 생각의 사슬(CoT, Chain-of-Thought), 자기 일관성(Self-Consistency)만으로 같은 모델이 같은 과제에서 다르게 동작했습니다. ReAct는 추론과 도구 행동을 하나의 생성 루프에 섞어 아키텍처 변경 없이 에이전트와 비슷한 행동을 만들었습니다. Tree of Thoughts는 CoT를 중간 추론 상태에 대한 탐색으로 일반화했고, Self-Refine은 다중 턴 자기 비평으로 출력을 개선했습니다. 검색 증강 생성(RAG)은 질의 시점에 외부 문서를 컨텍스트에 넣는, 더 체계적인 외부화였습니다.

저자들은 이 단계도 Norman의 표상 전환으로 해석합니다. 모델이 어떤 사실을 알고 있는지 묻던 회상 문제가, 그 사실이 컨텍스트에 주어졌을 때 모델이 그것을 쓸 수 있는지 묻는 재인 문제로 바뀌었다는 것입니다. 인간의 외부화에서 글쓰기가 일으킨 변화와 닮았습니다.

한계도 있습니다. 컨텍스트 창은 유한하고, 규모가 커지면 비용이 들며, 관련성이 낮은 자료로 채우면 오히려 성능이 떨어질 수 있습니다. Lost in the Middle 연구는 긴 입력의 가운데에 놓인 정보의 검색 정확도가 크게 떨어진다는 것을 보였습니다. 컨텍스트 길이가 2K 토큰에서 100K 토큰 이상으로 늘어났어도 선별이 필요하다는 근본 문제는 남았습니다. 또한 컨텍스트는 휘발성이라 상태를 다른 곳에 외부화하지 않으면 새 세션은 매번 일부를 잊은 채 시작합니다. 지시를 더 많이 넣는다고 시스템이 세션 간 상태 유지, 다단계 작업 스케줄링, 서브 에이전트 조정, 부분 실패 복구, 장기적인 행동 제약을 할 수 있게 되지도 않습니다.

하네스 계층: 인프라를 통한 능력

하네스 계층에 오면 엔지니어링의 질문이 모델에게 무엇을 말할지에서 모델이 어떤 환경에서 동작해야 하는지로 바뀝니다. 성숙한 에이전트 시스템의 신뢰성은 외부 메모리 저장소, 도구 레지스트리, 프로토콜 정의, 샌드박스, 서브 에이전트 오케스트레이션, 압축 파이프라인, 평가기, 테스트 하네스, 승인 루프에 점점 더 의존합니다.

그 시작은 단순했습니다. Auto-GPT와 BabyAGI는 LLM을 작업 큐, 지속 메모리, 웹 접근이 있는 루프로 감싸, 최소한의 하네스만으로도 단일 프롬프트로는 불가능한 행동을 유지할 수 있음을 보였습니다. 이어서 AutoGen은 멀티 에이전트 메시지 교환을, MetaGPT는 역할 기반 협업과 명시적 절차를, CAMEL은 과제 분해를 위한 구조화된 대화를, Reflexion은 에피소드를 넘어 피드백을 유지하는 방법을 제시했습니다. 저자들은 이 시스템들에 공통된 움직임을 부담을 모델 밖, 주변 구조로 옮긴 것으로 봅니다.

같은 움직임은 지금 여러 배포 영역에서 보입니다. 코딩 에이전트는 파일, 셸, 버전 관리, 테스트, 재사용 가능한 스킬이 있는 개발 하네스 안에 모델을 넣으며, 대표 사례로 SWE-agent(:pytorch::kr: mini SWE-Agent: 100줄로 구현한 GitHub 이슈 해결을 위한 AI 코딩 에이전트 (feat. SWE-Agent))와 OpenHands(:pytorch::kr: OpenHands: AI 코딩 에이전트의 SDK부터 CLI, GUI, 클라우드까지 통합한 오픈소스 플랫폼)가 있습니다. Deep Research 계열 시스템은 검색, 승인, 브라우징, 장기 오케스트레이션을 더하고, Voyager, LangGraph, CrewAI, OS-Copilot 같은 시스템은 제어 흐름과 환경 접근, 재사용을 명시적으로 만듭니다.

저자들은 이 관점에서 에이전트 엔지니어링이 점점 하네스 엔지니어링의 형태를 띠게 된다고 정리합니다. 모델은 여전히 핵심 추론 엔진이지만 더 이상 지능이 놓인 유일한 장소가 아닙니다. 능력은 모델이 무엇을 보고, 기억하고, 호출하고, 허락받는지를 정하는 구조물에 분산된다는 것입니다.

하네스 엔지니어링을 실무 관점에서 다룬 자료는 PyTorchKR에서도 Awesome Harness Engineering, Harness Engineering 12개 논제와 플레이북, Claude Code와 Codex의 하네스 설계를 다룬 Harness Books 등으로 소개한 바 있습니다.

외부화라는 전환 논리

정리하면, 가중치에서 컨텍스트를 거쳐 하네스로 이어진 길은 Norman이 말한 의미의 외부화 과정이라는 것이 저자들의 주장입니다. 모델 안에서 다루기 어려운 부담이 모델 밖의 명시적인 인공물로 조금씩 옮겨 가고, 그에 따라 모델이 마주하는 과제의 형태가 바뀝니다. 바뀌기 쉬운 지식은 검색 시스템과 런타임(Runtime) 컨텍스트로 옮겨 가 회상을 재인으로 바꿉니다. 재사용되는 절차는 암묵적인 습관에서 명시적인 스킬로, 상호작용 규칙은 임기응변식 프롬프팅에서 프로토콜로, 실행 시점의 신뢰성은 하네스 로직으로 옮겨 갑니다.

저자들은 이 재분배를 불일치에 대한 대응으로 봅니다. LLM은 주어진 정보를 유연하게 종합하고 추론하는 데 강하지만, 안정적인 장기 기억, 절차의 반복 가능성, 외부 시스템과의 통제된 상호작용에는 상대적으로 약합니다. 그래서 외부화는 모델을 대체하는 것이 아니라 모델 주위에 더 큰 인지 시스템을 짓는 일이고, 이 시각은 CoALA와 같은 인지 아키텍처 관점과도 맞닿아 있습니다.

메모리: 시간에 걸친 상태의 외부화

메모리 외부화는 에이전트가 시간 축에서 지는 부담을 다룹니다. 기본 상태의 언어 모델은 이어지는 맥락, 이전 경험, 사용자에 대한 사실, 하다 만 작업을 모두 휘발성 프롬프트 안에 담아 두어야 합니다. 작업이 세션, 분기, 중단을 넘어 이어지면 이 부담은 불안정해지고 비용도 커집니다. 메모리는 이 부담을 모델 밖에서 쓰고, 고치고, 꺼낼 수 있는 지속 상태로 옮깁니다.

저자들은 하네스 안의 메모리가 단순한 보관소 이상이라고 강조합니다. 메모리는 중단된 실행을 이어 가기 위한 체크포인트와 스킬을 추출할 실행 흔적을 제공합니다. 또한 프로토콜 경로 선택에 쓰이는 통계를 쌓고, 통제 장치가 검사하고 제한할 수 있는 지속 상태가 됩니다.

메모리가 외부화하는 네 가지 상태

메모리의 본질은 시간에 걸친 에이전트의 상태를 일시적인 컨텍스트와 분리하는 것입니다. 저자들은 인간 기억의 고전적 분류에서 착안해, 외부화되는 상태를 시간 특성과 검색 요구에 따라 네 가지로 나눕니다.

상태 담는 내용 대표 사례
작업 컨텍스트(Working Context) 열린 파일, 임시 변수, 진행 중인 가설, 부분 계획, 실행 체크포인트처럼 현재 작업의 살아 있는 중간 상태 초안, 터미널 상태, 작업 공간 산출물을 프롬프트 밖에 남겨 현재 상태에서 재개하는 OpenHands, SWE 계열 에이전트
에피소드 경험(Episodic Experience) 이전 실행의 결정 지점, 도구 호출, 실패, 결과, 회고 실패한 시도의 회고 요약을 재사용 경험으로 저장하는 Reflexion, 낯선 환경의 상호작용 궤적으로 세계 모델을 쌓는 AriGraph
의미 지식(Semantic Knowledge) 도메인 사실, 일반 휴리스틱, 프로젝트 관례처럼 개별 에피소드를 넘어서는 추상화 지식 베이스와 RAG 코퍼스
개인화 메모리(Personalized Memory) 특정 사용자, 팀, 환경의 선호, 습관, 반복되는 제약, 과거 상호작용 시연에서 사용자 습관 저장소를 만드는 IFRAgent, 사용자별로 분리된 공간에 세션 간 선호 카드를 저장하는 VARS

에피소드 경험과 의미 지식의 차이는 세밀함만이 아니라 기능에 있습니다. 에피소드 메모리는 한 사례에서 무슨 일이 있었는지를 말하고, 의미 메모리는 여러 사례에 걸쳐 대체로 무엇이 성립하는지를 말합니다. 저자들은 사람이 작성한 정적 문서에만 의존하지 않고 쌓인 궤적에서 의미 지식을 증류하려는 시도가 늘고 있다고 봅니다. 개인화 메모리를 에이전트의 일반적인 자기 개선 저장소와 섞지 말아야 하는 이유는 보존, 검색, 개인정보 보호 규칙이 서로 다르기 때문입니다.

저자들은 경계 사례도 설명합니다. 반복되는 절차적 규칙성은 처음에는 에피소드 기록 속 패턴으로 나타납니다. 그러나 하네스가 그것을 명시적으로 재사용할 수 있는 지침으로 승격하는 순간 메모리가 아니라 스킬 계층에 속하게 됩니다. 이 구분은 뒤의 스킬 절에서 다시 등장합니다.

메모리 아키텍처의 네 단계: 저장에서 제어로

메모리를 외부화할 때의 핵심 설계 질문은 진행 중인 추론과 저장된 상태를 얼마나 적극적으로 분리하는가입니다. 저자들은 Du(2026)의 에이전트 메모리 서베이를 따른다고 밝히며 현재 시스템을 네 가지 아키텍처로 나눕니다. 다만 Du의 서베이가 제시하는 것은 단일 컨텍스트, 컨텍스트와 검색 저장소, 학습된 제어를 둔 계층형 메모리의 세 가지 패턴이고, 이 리뷰는 세 번째 패턴에 해당하는 영역을 사람이 설계한 계층형과 경험으로 정책을 학습하는 적응형으로 나눠 다룹니다.

아키텍처 방식 해결하는 것 남는 문제
단일 컨텍스트(Monolithic Context) 모든 이력 또는 그 요약을 프롬프트에 직접 유지 존재 (별도 메모리 서비스 없이 투명하고 빠르게 시작) 용량 확장이 어렵고 요약이 표류하며, 세션이 끝나면 상태가 사라짐
검색 저장소를 둔 컨텍스트(Context with Retrieval Storage) 가까운 작업 상태만 컨텍스트에 두고 장기 흔적은 외부에 저장해 필요할 때 검색 용량 메모리 품질이 검색 품질 문제가 됨
계층형 메모리와 오케스트레이션(Hierarchical Memory and Orchestration) 추출, 통합, 망각 연산으로 메모리를 관리되는 생명주기로 운영 조직화 여전히 사람이 설계한 휴리스틱에 의존
적응형 메모리 시스템(Adaptive Memory Systems) 모듈, 라우팅, 검색 전략이 경험에 따라 바뀜 정책 (연구가 막 시작된 단계)

검색 저장소 방식은 실제 서비스의 코파일럿, 어시스턴트, 코딩 에이전트 대부분이 쓰는 패턴입니다. 저자들은 이 방식이 용량 문제를 풀지만 메모리의 품질을 검색 문제로 바꾼다고 지적합니다. 잘못된 기록이 올라오면 모델이 산만해지고, 맞는 기록을 가져오지 못하면 시스템은 그것을 전혀 기억하지 못한 것처럼 행동합니다. 이 병목을 풀기 위해 GraphRAG는 그래프 구조와 커뮤니티 수준 검색을 더하고, ENGRAM은 메모리를 잠재 상태 표현으로 압축합니다. SYNAPSE는 에피소드와 의미를 합친 그래프 위에서 확산 활성화를 사용합니다.

계층형 메모리에서는 Mem0, Memory-R1, Mem-\alpha 가 추출, 통합, 망각 연산을 도입해 메모리를 수동적인 저장소가 아닌 관리되는 생명주기로 만듭니다. 이 영역에는 두 가지 경향이 있습니다:

  • 시공간 차원의 자원 분리: 운영체제의 논리를 빌려 메모리를 능동적으로 관리해야 하는 제한된 자원으로 다룹니다. MemGPT와 MemoryOS는 자주 쓰는 작업 상태와 덜 쓰는 장기 저장소를 나누고 과제 요구에 따라 계층 사이로 정보를 옮겨, 고정된 컨텍스트 예산 안에서 유효 용량을 늘립니다.

  • 인지 기능 차원의 의미 분리: 기능이나 내용 유형별로 메모리를 나눠 서로 다른 기록이 같은 경로로 처리되지 않게 합니다. MemoryBank와 MIRIX는 사건, 사용자 프로필, 세계 지식을 분리하고, MemOS는 명시적 메모리와 암묵적 메모리를 구분하며, xMemory는 주제와 사건의 계층을 만듭니다.

적응형 메모리 시스템은 한 걸음 더 나아갑니다. MemEvolve는 메모리 생명주기를 인코딩, 저장, 검색, 관리 모듈로 나눠 실행 중 각각 독립적으로 진화하게 합니다. MemVerse는 단기 캐시와 멀티모달 지식 그래프(Knowledge Graph)를 함께 유지하며 조각난 경험을 주기적으로 추상 지식으로 증류합니다. 아키텍처는 비교적 고정하고 제어 정책을 학습하는 방향도 있습니다. MemRL은 비모수적 강화학습으로 검색 동작을 갱신하고, 전문가 혼합(MoE) 게이팅으로 질의를 라우팅하는 프레임워크와 여러 차례의 상호작용에 걸쳐 검색 조건을 다듬는 GAM이 이 계열에 속합니다.

저자들은 이 네 단계 전체의 흐름을 저장에서 제어로의 이동으로 요약합니다. 단일 컨텍스트는 존재를, 검색 저장소는 용량을, 계층형 시스템은 조직화를, 적응형 시스템은 정책을 해결하기 시작했다는 것입니다. 성숙한 에이전트에서 메모리는 프롬프팅에 붙은 부록이 아니라, 모델이 실제로 근거로 삼을 수 있는 과거를 결정하는 하네스 제어면의 일부가 됩니다.

하네스 시대에 메모리에 요구되는 것

하네스 환경에서는 메모리가 상태와 컨텍스트를 명시적으로 분리해야 합니다. 매우 긴 과제에서 세션 이력을 제한 없이 쌓으면 모델이 주의를 제대로 배분하지 못하게 될 수 있기 때문입니다. 저자들은 InfiAgent의 파일 중심 상태 추상화를 예로 듭니다. InfiAgent는 파일 시스템을 작업 상태의 유일한 권위 있는 기록으로 삼아, 상위 계획부터 중간 변수, 도구 출력까지 모든 것을 실시간으로 파일에 쓰게 합니다. 에이전트는 매 결정 단계에서 긴 이력을 읽는 대신 정리된 작업 공간의 스냅숏과 최근 행동 몇 개만 읽습니다. 저자들은 이것이 모든 이력을 프롬프트에 보존하는 것이 아니라 현재 상태를 모델이 행동할 수 있는 형태로 실체화하는 것이라는 메모리의 핵심 역할이 하네스 수준에서 표현된 것이라고 설명합니다.

메모리와 다른 두 모듈의 관계도 구분합니다:

  • 메모리와 스킬: 메모리는 실행 흔적, 결과, 실패, 사용자나 과제별 맥락처럼 이전 실행의 증거를 저장합니다. 스킬은 그 증거의 일부가 명시적인 재사용 절차로 승격되는 순간부터 시작됩니다. 반대로 스킬을 실행할 때마다 새 흔적이 생기고 이것은 다시 메모리에 기록되어야 합니다. 메모리 자체는 절차적 지침이 아니라 그런 지침을 나중에 끌어낼 수 있는 증거 기반입니다.

  • 메모리와 프로토콜: 도구 결과, 승인, 위임 이벤트는 프로토콜 인터페이스로 도착할 수 있지만, 정규화되어 지속 상태에 기록되어야 비로소 메모리가 됩니다. 반대로 메모리에서 꺼낸 내용이 다음에 어떤 프로토콜 경로를 고를지에 영향을 줄 수 있습니다. 저자들은 둘이 통제된 읽기와 쓰기 루프로 연결되더라도 개념적으로는 구분된다고 강조합니다. 프로토콜은 교환을, 메모리는 시간에 걸친 지속을 다룹니다.

여러 에이전트가 공통 상태에 의존하게 되면 공유와 통제 장치가 필수가 됩니다. 메모리의 읽기와 쓰기 권한을 정하고, 저장된 사실끼리의 충돌을 해결하고, 공유 지식에 대한 에이전트별 접근 할당량을 관리하려면 운영체제에 버금가는 저수준 제어 기능이 필요하다는 것이 저자들의 설명입니다.

인지적 인공물로서의 메모리: 저장량보다 검색 품질

메모리 절의 마지막에서 저자들은 Norman의 인지적 인공물 이론과 David Kirsh의 상보적 전략(Complementary Strategies) 개념으로 메모리 외부화를 해석합니다. 현대 LLM은 호출할 때마다 새 컨텍스트에서 시작하는 무상태(Stateless) 생성기라, 연속성을 이어 가는 것이 아니라 매번 다시 구성해야 합니다. 그래서 유한한 모델이 마주한 원래 과제, 곧 사실상 무한한 이력을 쓸 수 있게 유지하면서 현재를 명료하게 추론하기는 원리적으로 풀 수 없는 문제라는 것입니다. 메모리 외부화는 이 내부 회상 문제를, 메모리 시스템이 이미 골라 올린 이력의 일부를 알아보고 쓰는 외부 재인 및 검색 문제로 바꿉니다. 상보적 전략의 관점에서 보면, 하네스는 지속, 최신성 관리, 관련성 선별을 맡고 해석과 맥락 판단은 모델에 남기는 분업입니다.

이 해석에서 저자들이 끌어내는 실무적 결론은 저장 용량보다 검색 품질이 중요하다는 것입니다. 저장소가 거대해도 검색이 약하면 모델은 여전히 잘못된 표상의 과제를 받습니다. 이력은 존재하지만 과제는 바뀌지 않은 셈입니다. 반대로 저장소가 크지 않아도 색인, 요약, 맥락 선택이 좋으면 이후의 추론이 훨씬 쉬워질 수 있습니다. 그래서 메모리의 성공 기준은 "얼마나 많이 저장했는가"가 아니라 "지금의 결정을 읽어 낼 수 있게 만들었는가"라고 저자들은 정리합니다.

같은 관점에서 흔한 실패도 구현 버그가 아니라 표상 설계의 실패로 설명합니다.

  • 낡은 메모리(Stale): 오래된 문제 표상을 주어 현재를 잘못 보여 줍니다.
  • 과하게 추상화된 메모리: 현재 결정에 필요한 운영상의 세부를 잃습니다.
  • 덜 추상화된 메모리: 프롬프트를 잡음으로 채워, 외부화가 쉽게 만들려던 재인 과제 자체를 어렵게 만듭니다.
  • 오염되거나 충돌하는 메모리: 꺼내 온 조각에 잘못된 전제를 심어 이후 추론을 오염시킵니다.

저자들은 어느 경우든 저장한 양이 너무 적거나 많아서가 아니라, 이력을 쓸 수 있는 현재로 바꾸지 못했기 때문에 실패한 것이라고 설명합니다.

스킬: 절차적 전문성의 외부화

메모리가 시간 축의 부담을 다룬다면, 스킬 외부화는 절차의 부담을 다룹니다. 언어 모델은 원리적으로는 어떤 과제를 푸는 방법을 알 수 있지만, 안정적으로 실행하려면 매번 작업 흐름, 기본값, 제약을 다시 구성해야 합니다. 이 부담은 과제가 길어질수록, 환경이 특수할수록, 분기가 많을수록 커집니다. 그리고 단계 누락, 불안정한 도구 사용, 일관되지 않은 종료 조건 같은 편차로 나타납니다.

스킬이 일으키는 표상 전환은 반복되는 합성에서 재사용되는 절차로의 이동입니다. 스킬 시스템은 실행할 때마다 과제별 노하우를 다시 만들어 내라고 요구하는 대신, 그 노하우를 명시적인 산출물로 포장합니다. 이 산출물은 탐색하고, 불러오고, 고치고, 조합할 수 있습니다. 저자들은 이것이 에이전트가 할 수 있는 행동의 수를 늘리는 것이 아니라, 런타임에 모델이 마주하는 과제를 작업 흐름을 지어내는 일에서 작업 흐름을 고르고 따르는 일로 바꾸는 것이라고 설명합니다.

위 그림은 스킬의 전체 생명주기를 왼쪽부터 순서대로 보여 줍니다. 스킬이 시스템에 들어오는 네 가지 경로, 세 요소와 매니페스트로 구성된 스킬 산출물, 레지스트리 탐색과 점진적 공개와 조합으로 이루어진 활성화 파이프라인, 그리고 도구와 API, 파일, 에이전트, 프로토콜로 구성된 런타임입니다. 빨간 경고 표시는 아래에서 다룰 경계 조건입니다.

스킬이 담는 세 가지 요소

저자들은 스킬을 개별 행동 인터페이스가 아니라 절차적 전문성(Procedural Expertise) 으로 정의합니다. 여기서 전문성이란 모델이 무언가를 할 수 있다는 막연한 주장이 아니라, 반복되는 가정과 제약 아래에서 과제를 수행하는 반복 가능한 방식입니다. 이 정의에서 세 모듈의 경계가 나옵니다. 도구는 연산을 노출합니다. 프로토콜은 그 연산을 어떻게 기술하고 호출하는지를 정합니다. 스킬은 그 연산들로 한 부류의 과제를 어떻게 수행할지를 담습니다.

스킬이 담는 전문성은 서로 맞물린 세 요소로 구성됩니다.

  • 작업 절차(Operational Procedure): 복잡한 일을 단계, 국면, 의존 관계, 종료 조건으로 나눈 과제의 뼈대입니다. 저자들은 LLM 에이전트의 많은 오류가 행동 수준의 무능력이 아니라 단계 누락, 순서 오류, 이른 종료처럼 프로세스 수준의 불안정에서 나온다고 지적합니다. CoT는 중간 추론을, ReAct는 추론과 행동의 결합을 명시적으로 만들었고 이후 프롬프트 체이닝과 오케스트레이션 시스템이 반복 패턴을 작업 흐름으로 포장했지만, 그 절차는 대체로 현재 실행 안에만 존재하고 재사용 가능한 산출물로 남지 않았습니다. 스킬 시스템이 이 지속성의 빈틈을 메웁니다.

  • 판단 휴리스틱(Decision Heuristics): 절차가 뼈대라면 휴리스틱은 분기점에서 무슨 일이 일어날지를 정합니다. 도구가 실패하고 관측이 잡음 섞인 상황에서 무엇을 먼저 시도할지, 언제 물러설지, 어느 정도의 증거면 충분한지, 여러 경로가 남았을 때 어떤 트레이드 오프(Trade-off)를 선호할지 같은 경험 기반의 규칙입니다. 저자들은 이것이 스킬이 전문가의 방식을 담는 주요 수단 중 하나라고 봅니다.

  • 규범적 제약(Normative Constraints): 절차가 허용되는 조건입니다. 기술적으로 효과적인 작업 흐름도 규정 위반이거나 안전하지 않거나 운영상 틀릴 수 있습니다. 테스트 요구 사항, 범위 제한, 접근 제한, 추적 가능성 요구, 도메인별 운영 규칙이 외부화되면 사후 평가 기준이 아니라 스킬 자체의 일부가 됩니다. 이 제약은 선행 조건을 정하고, 안전하지 않은 분기를 막고, 완료 전에 만들어야 할 증거를 정의합니다. 그래서 저자들은 성숙한 시스템에서 스킬이 능력만큼이나 거버넌스를 실어 나른다고 설명합니다.

스킬이 재사용 가능하려면 이 셋이 과제, 맥락, 실행을 넘어 살아남을 만큼 충분히 명시되어야 합니다.

실행 프리미티브에서 능력 패키지로

저자들은 스킬을 도구 사용과 섞어 보지 말아야 한다고 강조하면서, 스킬이 두 단계의 선행 발전 위에서 나타났다고 정리합니다.

  1. 원자적 실행 프리미티브: 구조화된 도구 호출과 함수 호출 인터페이스로 행동을 안정적으로 실행하게 된 단계입니다. Toolformer는 모델이 언제 도구를 부르고 인자를 어떻게 구성하며 결과를 어떻게 반영할지 학습할 수 있음을 보였습니다. 이 단계의 단위는 스킬이 아니라 행동 프리미티브입니다.

  2. 대규모 프리미티브 선택: 호출할 수 있는 도구가 많아지면서 문제가 호출에서 선택으로 바뀐 단계입니다. Gorilla, ToolLLM, ToolNet, ToolScope, AutoTool이 큰 도구 모음에서 도구를 검색해 순위를 매기고 고르는 방법을 보였습니다. 그러나 단위는 여전히 절차가 아니라 도구였습니다.

  3. 패키지된 전문성으로서의 스킬: 질문이 모델이 함수를 부를 수 있는지에서, 한 부류의 과제를 완수하는 노하우를 재사용 가능한 능력 단위로 포장할 수 있는지로 바뀐 단계입니다. 이 단계에 속하는 연구는 다음과 같습니다. 원시 행동을 상위 수준 스킬로 컴파일하는 프로그램 기반 스킬 유도, 웹 상호작용 궤적을 스킬 라이브러리나 스킬 API로 증류하는 연구, 컴퓨터 사용 환경에서 스킬을 매개변수화된 실행 및 조합 그래프로 구성하는 연구, 도메인 표준 운영 절차(SOP, Standard Operating Procedure)로 실행을 이끄는 에이전트입니다.

저자들은 3단계가 도구 사용을 더 복잡하게 만든 것이 아니라, 에이전트의 능력을 외부화된 재사용 가능한 절차적 노하우로 표현하는 쪽으로 옮겨 간 표상상의 변화라고 정리합니다.

스킬을 외부화하는 다섯 단계

저자들은 스킬 외부화가 지시문을 적어 두는 것으로 끝나지 않는다고 강조합니다. 절차적 전문성은 런타임에 탐색, 로딩, 해석, 바인딩, 실행이 가능한 형태여야 합니다. 그래서 스킬이 어떻게 기술되는가를 정하는 표상 계층과, 실제로 재사용 능력으로 작동하는가를 정하는 런타임 계층이 함께 필요하다는 것입니다.

명세(Specification)

스킬 외부화는 SKILL.md, 지시 파일, 매니페스트 같은 선언적 명세에서 시작합니다. 이 산출물은 스킬이 무엇을 하는지, 어떤 상황에 적용되는지, 어떤 의존성을 가정하는지, 어떤 제약을 지켜야 하는지, 어떤 입출력 조건에서 동작하는지를 기술합니다. 저자들은 스킬 명세가 API 구현보다 API 문서에 가깝다고 비유합니다. 잘 만든 명세는 적어도 다섯 가지를 담아야 한다고 제안합니다:

  1. 능력의 경계
  2. 적용 범위
  3. 선행 조건
  4. 실행 제약
  5. 예시와 반례

앞의 둘은 스킬이 풀려는 문제의 종류를 밝힙니다. 다음 둘은 언제 어떤 운영 가정 아래에서 안전하게 쓸 수 있는지를 정하고, 마지막은 구체 사례로 의도한 사용 패턴을 고정해 모델이 명세를 불충분하게 해석하는 일을 줄입니다.

탐색(Discovery)

스킬이 명시적 산출물이 되면 등록과 탐색 문제가 생깁니다. 현실적인 환경에서 에이전트는 모든 스킬을 모든 과제에 불러올 수 없습니다. 그래서 스킬은 로컬 저장소, 조직 레지스트리(Registry), 플랫폼 마켓플레이스에 게시되고, 에이전트는 과제 목표와 맥락 상태, 환경 조건에 따라 후보를 찾습니다. 저자들은 이것이 어떤 도구를 부를 수 있는가가 아니라 어떤 절차적 전문성 단위가 지금 문제에 맞는가를 묻는 상위 수준의 매칭 문제라고 설명합니다. 주제의 유사성뿐 아니라 과제 복잡도, 환경 가정, 운영 제약, 위험 조건까지 고려해야 하고, 키워드가 겹친다는 이유만으로 스킬을 골라서는 안 된다는 것입니다.

점진적 공개(Progressive Disclosure)

스킬을 찾았다고 그 내용을 전부 바로 컨텍스트에 넣을 필요는 없습니다. 긴 컨텍스트가 늘 성능 향상으로 이어지지는 않기 때문에, 상세한 지시는 길잡이가 아니라 추론의 잡음이 될 수 있습니다. 그래서 현재 스킬 시스템은 스킬의 존재만 먼저 드러내고 필요할 때 세부를 불러오는 점진적 공개 전략의 덕을 보는 경우가 많습니다. 저자들은 이것이 문서 압축이 아니라, 스킬의 세부가 더 필요한지라는 질문 자체를 런타임의 결정으로 만든다는 점에서 의미가 있다고 봅니다. 대표적인 산업 구현으로는 Claude Code의 스킬 시스템을 꼽습니다.

논문은 이 계층을 이름과 짧은 설명, 적용 조건과 선행 조건 같은 매니페스트 수준 정보, 그리고 상세 절차와 예외 처리, 예시, 보조 파일까지 담은 전체 가이드의 세 수준으로 일반화해 설명합니다. 참고로 Anthropic의 Agent Skills 공식 문서가 밝히는 실제 단계와 비용은 아래와 같습니다(논문이 아니라 문서 기준입니다).

단계 불러오는 시점 컨텍스트 비용 내용
Level 1: 메타데이터 시작할 때 항상 스킬당 약 100토큰 YAML 프런트매터의 name, description
Level 2: 지시문 스킬이 호출될 때 5k 토큰 미만 SKILL.md 본문의 지시와 안내
Level 3 이상: 리소스 필요할 때 접근하기 전까지 없음 번들 파일. 참조 파일은 읽을 때 컨텍스트에 들어가고, 스크립트는 bash로 실행되어 출력만 컨텍스트에 들어감

공식 문서 기준으로는 두 번째 단계가 매니페스트 요약이 아니라 SKILL.md 본문이라는 점에서, 공식 문서가 논문의 일반화된 3단계 설명보다 구체적입니다. 스크립트 코드 자체는 컨텍스트에 들어가지 않고 실행 결과만 들어간다는 점도 컨텍스트 예산을 설계할 때 고려할 부분입니다.

실행 바인딩(Execution Binding)

스킬은 실행 가능한 행동과 연결되기 전까지는 인지 수준의 설명에 머뭅니다. 스킬은 보통 그 자체로 행동을 실행하지 않고, 도구, 파일, API, 서브 에이전트, 프로토콜 엔드포인트 같은 하위 실행 기반에 바인딩되어야 합니다. 예를 들어 스킬이 관련 코드 검색, 테스트 실행, 결과 diff 요약을 지시하더라도 실제 행동은 검색 도구, 파일 연산, 셸 명령, 테스트 러너가 수행합니다. 그래서 이 바인딩에는 해석 계층이 필요합니다. 해석 계층은 현재 맥락에서 활성화할 단계, 연결할 프리미티브, 분기 조건, 우선할 제약을 정합니다. MCP와 같은 스키마 기반 인터페이스는 스킬을 도구나 프로토콜로 뭉개지 않으면서 이 바인딩을 돕는다고 저자들은 봅니다.

조합(Composition)

스킬 시스템의 가치는 스킬을 조합할 수 있을 때 가장 크게 나타납니다. 흔한 조합 패턴은 직렬 실행, 병렬 분업, 조건부 라우팅, 상위 스킬 안에서 하위 스킬을 재귀적으로 호출하는 것입니다. 저자들은 데이터 분석 보고서를 만드는 스킬을 예로 듭니다. 이 스킬을 하나의 거대한 처음부터 끝까지의 절차로 만들 필요 없이 데이터 정제, 통계 분석, 시각화, 서술 종합 스킬의 조합으로 구성하면 성능뿐 아니라 유지보수성, 교체 가능성, 감사 가능성이 함께 좋아진다는 것입니다.

스킬 획득과 진화: 작성, 증류, 발견, 조합

저자들은 스킬 획득을 한 번의 설계로 보지 않습니다. 절차적 지식을 작성, 추출, 발견, 재조합하며 계속 진화하는 과정으로 봅니다.

  • 작성(Authored): 현재 가장 흔하고 안정적인 경로입니다. SKILL.md, AGENTS.md, 프로젝트 수준 지시 파일, 조직의 SOP 템플릿이 모두 사람이 설계한 절차적 능력 패키지입니다. 배포 중 에이전트가 같은 실패 패턴을 반복하면 엔지니어가 해당 스킬을 고쳐, 관찰된 실패 하나를 명확해진 절차나 추가된 제약으로 바꿀 수 있습니다.

  • 증류(Distilled): 과거 궤적과 저장된 경험에서 스킬을 유도하는 경로입니다. 저자들은 메모리가 자동으로 스킬이 된다는 넓은 주장보다 상호작용 흔적에서의 유도로 볼 때 근거가 가장 직접적이라고 단서를 답니다. 보상을 받은 하위 궤적에서 전이 가능한 스킬을 추출하는 Skill Set Optimization, 메모리 연산 자체를 학습 가능한 스킬로 재정식화하는 MemSkill이 예입니다.

  • 발견(Discovered): 에이전트가 환경과 상호작용하며 스스로 새 스킬을 찾는 경로입니다. Voyager는 마인크래프트에서 탐색, 실행 피드백, 자기 검증, 커리큘럼 기반 과제 선택으로 실행 가능한 코드 스킬 라이브러리를 계속 늘렸고, PolySkill은 추상 목표와 구체 구현을 분리해 스킬 재사용성을 높였습니다.

  • 조합(Composed): 기존 하위 및 중간 수준 스킬을 조합해 상위 능력을 만드는 경로입니다. 특정 조합이 반복적으로 효과를 보이면 그 조합 자체를 새 상위 스킬로 포장할 수 있고, 이렇게 평평한 목록이 아닌 계층적 스킬 레퍼토리가 생깁니다.

저자들은 하네스 안에서는 이 진화 루프 자체가 체계화된다고 덧붙입니다. 메모리가 증거를 제공하고, 평가기가 무엇을 승격할지 정하며, 프로토콜로 정의된 실행 표면이 후보 스킬을 실제로 배포할 수 있는지를 결정한다는 것입니다.

스킬의 경계 조건

스킬 외부화는 재사용과 통제를 개선하지만 신뢰성을 보장하지는 않습니다. 절차적 전문성이 명시적 산출물이 되면, 그 효과는 산출물이 과제, 환경, 런타임과 얼마나 잘 맞는지에 달리게 됩니다. 저자들은 네 가지 경계 조건을 꼽는데, 각각의 근거 수준이 다르다는 점을 함께 밝히고 있어 구분해 정리합니다.

경계 조건 내용 저자들이 든 근거
의미 정렬(Semantic Alignment) 모델이 스킬의 문구를 그대로 따르면서도 과제의 실제 목적을 놓칠 수 있음 SkillProbe가 기존 스킬 마켓플레이스의 근본 결함으로 의미와 행동의 불일치를 지목. 도구 사용 의사결정 연구도 핵심 난점이 부를 수 있는가만이 아니라 지금 불러야 하는가에 있는 경우가 많다고 보고. 저자들은 이를 기존 증거가 시사하는 바로 정리
이식성과 노후화(Portability and Staleness) 웹사이트, API, 의존성, 런타임 관례가 바뀌면 효과적이던 스킬이 부분적으로 틀리거나 쓸모없어짐 프로그램 기반 스킬 연구에서 일부 스킬만 다른 웹사이트로 전이. SkillsBench는 스킬의 효용이 도메인과 모델, 에이전트 구성에 따라 크게 달라진다고 보고(최신판 초록 기준, 모델과 하네스 조합 18개에서 큐레이션 스킬이 평균 통과율을 33.9\% 에서 50.5\% 로 올렸고, 구성별 상승 폭은 +4.1 에서 +25.7 퍼센트포인트로 갈림). 저자들은 이식성을 외부화에 내재된 성질이 아니라 조건부로 확인해야 하는 경험적 속성으로 봐야 한다고 정리
안전하지 않은 조합(Unsafe Composition) 단독으로는 무해한 스킬이 결합되면 위험하게 상호작용할 수 있음 공개 스킬 생태계를 대규모로 분석한 Agent Skills in the Wild가 31,132개 스킬 중 26.1\% 에서 프롬프트 인젝션(Prompt Injection), 데이터 유출, 권한 상승, 공급망 위험 등의 취약점을 하나 이상 발견. 실행 스크립트를 묶은 스킬은 지시문만 있는 스킬보다 취약점이 있을 가능성이 2.12 배 높았음. When Skills Lie는 Markdown 스킬을 HTML로 렌더링하면 사람에게는 보이지 않는 HTML 주석 속 지시가 모델에는 그대로 전달되는 공격 경로를 보임
맥락 의존적 성능 저하(Context-Dependent Degradation) 스킬 파일을 고쳐도 남은 세션 맥락이나 캐시된 요약 때문에 옛 로직을 따르거나, 지나치게 상세한 지침이 전체 과제 추적을 방해함 저자들도 스킬에 특화된 직접 증거는 아직 부족하다고 밝히고, 다중 턴 표류와 장기 신뢰성, 긴 컨텍스트 추론에 관한 인접 연구에서 추론

저자들은 안전하지 않은 조합을 직접 증거가 이미 있는 경계 조건 중 하나로 들고, 스킬 조합을 무해한 모듈 재사용이 아니라 보안에 민감한 과정으로 다뤄야 한다고 정리합니다. Anthropic의 공식 문서도 직접 만들었거나 Anthropic에서 받은 스킬처럼 신뢰할 수 있는 출처의 스킬만 쓰라고 안내하고, 외부 URL에서 데이터를 가져오는 스킬은 특히 위험하다고 경고합니다. 참고로 SkillProbe는 이 리뷰의 저자 일부(Zihan Guo, Jianghao Lin, Weinan Zhang)가 참여한 연구입니다.

하네스 안의 스킬과 인지적 인공물로서의 스킬

경계 조건들은 스킬을 독립된 산출물로 평가할 수 없다는 것을 보여 줍니다. 저자들은 스킬이 하네스에 들어갔을 때 생기는 네 가지 결합을 정리합니다.

  1. 메모리에 기반한 선택: 하네스가 메모리에서 과제 이력, 이전 결과, 사용자 맥락, 환경 제약을 꺼내 어떤 스킬을 불러오고 어떤 매개변수로 어떤 분기를 선호할지 정합니다. 이 루프가 없으면 스킬 선택은 과제 설명과의 키워드 매칭으로 전락합니다.

  2. 프로토콜을 통한 바인딩: 선택된 스킬은 도구 스키마, 서브 에이전트 위임 계약, 파일 연산, 승인 워크플로 같은 프로토콜 인터페이스를 거쳐 실행 행동에 연결됩니다. 스킬은 무엇을 해야 하는지를, 프로토콜은 그 결과 행동을 어떻게 기술하고 호출하고 통제하는지를 정합니다.

  3. 런타임 통제: 민감한 작업 전의 권한 확인, 고위험 단계의 승인 게이트, 어떤 스킬이 어떤 행동을 만들었는지에 대한 감사 로그, 다단계 절차가 중간에 실패했을 때의 롤백(Rollback)은 스킬 산출물이 아니라 하네스의 속성입니다. 개발 샌드박스에서 안전했던 스킬도 실제 서비스 배포에서는 추가 제약이 필요할 수 있고, 그 제약을 강제하는 것이 하네스입니다.

  4. 생명주기 피드백: 실행 흔적, 성공률, 실패 패턴, 사용자 수정이 메모리에 기록되고, 쌓인 증거가 스킬의 수정, 폐기, 새 후보 승격을 촉발할 수 있습니다.

마지막으로 저자들은 스킬을 인지적 인공물로 해석합니다. 다만 이 절을 시작하며 직접적인 실증이라기보다 주로 이론적인 해석이고, 인용한 고전 이론들이 원래 LLM 에이전트를 위해 만들어진 것도 아니라고 먼저 밝힙니다.

그 해석에 따르면 스킬이 없을 때 모델은 현재 맥락의 압박 속에서 파라미터로부터 적절한 진행 방식을 확률적으로 복원해야 합니다. 스킬이 외부화되면 절차의 구조가 이미 환경 속의 대상으로 존재합니다. 모델의 부담은 상황 해석, 스킬 적용 여부 판단, 지침 준수, 국소적인 예외 처리 쪽으로 옮겨 갑니다. Kirsh의 상보적 전략 관점에서 보면 LLM은 긴 다단계 절차를 안정적으로 반복 재현하는 데는 약합니다. 반면 명시적인 지침을 읽고 현재 맥락에 맞춰 주어진 제약 아래에서 실행을 조정하는 데는 상대적으로 낫다는 것입니다. 그래서 저자들은 스킬을 절차의 정의, 제약, 모범 사례 일부는 산출물에 맡기고 해석, 맥락 매칭, 예외 처리는 모델에 남기는 공학적인 상보 전략으로 정리합니다.

1부에서 정리한 메모리와 스킬의 경계

1부에서 살펴본 두 모듈은 비슷해 보이지만 저자들은 둘을 분명히 구분합니다. 메모리는 이전 실행의 증거를 담습니다. 무슨 일이 있었는지, 무엇이 실패했는지, 이 사용자와 이 과제에 대해 무엇을 알고 있는지입니다. 증거에서 나오는 스킬은 그 가운데 반복해서 성공한 구조가 명시적인 절차로 승격된 것입니다(사람이 직접 작성하는 경로도 있으며, 현재는 이쪽이 가장 흔합니다). 메모리는 스킬이 될 재료를 공급하고, 스킬은 실행할 때마다 다시 메모리에 기록될 흔적을 남깁니다.

SKILL.md나 AGENTS.md를 직접 관리하는 개발자라면 저자들의 분류를 두 가지 점검 기준으로 쓸 수 있습니다(필자의 정리입니다). 하나는 스킬 명세에 능력의 경계, 적용 범위, 선행 조건, 실행 제약, 예시와 반례라는 다섯 가지 정보가 들어 있는지입니다. 다른 하나는 메모리 시스템을 평가할 때 저장량이 아니라 지금의 결정에 맞는 기록이 올라오는지입니다. 다만 이 논문은 실험으로 이 기준들의 효과를 검증하지 않았으므로, 검증된 지침이 아니라 개념 틀로 받아들여야 합니다.

메모리와 스킬은 모두 실제 행동으로 이어지려면 시스템 경계를 넘어야 하고, 그 경계를 통제하는 것이 프로토콜입니다. 2부에서는 프로토콜과 이 셋을 묶는 하네스 엔지니어링, 그리고 세 모듈이 서로 주고받는 여섯 가지 흐름을 이어서 살펴봅니다.

:warning: (2/2편에서 프로토콜, 하네스 엔지니어링, 모듈 간 상호작용과 남은 과제에 대해서 계속됩니다)

:scroll: Externalization in LLM Agents: A Unified Review of Memory, Skills, Protocols and Harness Engineering 논문

:hugs: Externalization in LLM Agents 논문 페이지 (Hugging Face Papers)

:scroll: Memory for Autonomous LLM Agents: Mechanisms, Evaluation, and Emerging Frontiers 논문 (메모리 아키텍처 분류의 근거로 든 서베이)

:scroll: Agent Skills for Large Language Models: Architecture, Acquisition, Security, and the Path Forward 논문

:books: Agent Skills 개요 (Claude API 문서)

더 읽어보기




이 글은 GPT 모델로 정리한 초안을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 댓글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:에서 이런 글들을 계속 정리하고 있습니다. 회원 가입으로 주요 글들을 이메일:love_letter:로, 텔레그램(Telegram)이나 Slack/Discord/Teams/Dooray/GoogleChat 등으로 새 글 알림을 받아보세요! :smiley:

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: