스킬 라이브러리를 밤새 자동으로 키우는 에이전트 하네스를 운영하고 있다면, 혹은 전담 자동화팀 없이 여러 스킬을 하나씩 쌓아가는 입장이라면 이 글이 도움이 됩니다. 오늘 소개할 논문은 “검색 게이트를 통과하는 기존 스킬이 없을 때 새 스킬을 자동으로 만들어도 되는가”라는 질문에, 실제 프로덕션 커밋 이력을 근거로 답합니다. ThakiCloud가 매일 라우팅에 쓰는 자기진화 에이전트 스킬 생태계의 git 히스토리를 전량 감사해, 스킬이 태어난 방식과 그 후 재사용된 속도·강도를 정량적으로 추적한 결과입니다.

스킬은 왜, 언제 태어나야 하는가

스킬 기반 에이전트 하네스를 운영하다 보면 라우터가 어떤 요청에도 기존 스킬 중 어느 것 하나 검색 게이트를 통과시키지 못하는 순간을 반드시 만납니다. 이 순간 하네스가 택할 수 있는 길은 세 가지입니다. 스킬 없이 네이티브로 응답하거나, 기존 스킬 여러 개를 조합해 임시로 커버하거나, 아예 새 스킬을 저작하는 비용을 치르는 것입니다.

이 연구팀이 지금까지 발표한 스킬 생태계 연구 네 편은 전부 이미 존재하는 스킬을 어떻게 더 잘 찾고 언제 폐기하고 어떻게 가중치를 조정할지만 다뤘습니다. 라우팅 정확도를 32.8%에서 52.9%로 끌어올린 야간 보수 루프도, 코퍼스가 100개에서 2,164개로 커지는 동안 top-1 정확도가 42.2%포인트 떨어진다는 폐기 연구도, 전부 스킬이 이미 존재한다고 전제한 뒤 그것을 다루는 문제였습니다. “언제 완전히 새로운 스킬을 낳을 것인가”라는, 라우팅보다 한 단계 상류에 있는 질문은 지금까지 비어 있었습니다. 이번 논문은 그 빈자리를 실측으로 채웁니다.

811개 커밋에서 1,972번의 탄생을 추적하다

연구팀은 실제로 매일 에이전트가 라우팅에 사용하는 프로덕션 스킬 디렉터리의 전체 git 히스토리를 감사했습니다. 811개 커밋을 역순으로 훑어 SKILL.md 매니페스트가 어떤 경로에 처음 추가된 시점을 탄생(birth)으로 정의하고 총 1,972건의 탄생 이벤트를 확보했습니다.

각 탄생은 같은 커밋에 함께 추가된 매니페스트 개수와 커밋 메시지 패턴을 근거로 다섯 개 출처 코호트 중 하나에 배정됩니다. 스무 개 이상이 한 번에 들어온 대량 임포트, 야간·스케줄 자동화가 만든 자율 파이프라인 합성, 다른 저장소에서 동기화된 싱크 임포트, 사람이 “feat: X 추가” 식으로 명시적으로 커밋한 의도적 기능 저작, 그리고 별다른 의도 표현 없이 딸려 들어온 미분류 단건 추가입니다. 이후 각 스킬을 시간순으로 따라가며 다시 수정된 적이 있는지, 있다면 얼마 만에 몇 번이나 수정됐는지를 측정했습니다. 표본을 뽑은 게 아니라 전체 모집단 1,972건을 다 셌기 때문에 신뢰구간이나 p값 같은 추론 통계는 쓰지 않고 관측된 값 그대로를 기술 통계로만 보고합니다.

핵심 발견, 재사용 여부가 아니라 속도와 강도

가장 먼저 눈에 띄는 숫자는 재사용 여부 자체입니다. 개별 저작된 스킬, 즉 대량 임포트가 아닌 나머지 전부를 합친 그룹의 39.0%가 언젠가 다시 수정됐고 대량 임포트된 스킬은 35.1%가 다시 수정됐습니다. 4%포인트 차이는 크지 않습니다. 이 숫자만 봤다면 “어떻게 만들어졌든 재사용률은 비슷하니 패키지를 대량으로 들여오는 편이 저렴하고 합리적이다”라는 결론에 이르기 쉽습니다.

그런데 재사용이 일어난 스킬만 놓고 첫 재사용까지 걸린 시간을 보면 이야기가 완전히 달라집니다. 개별 저작 스킬은 중앙값 1.2일 만에 다시 손이 갔지만 대량 임포트 스킬은 29.0일이 걸렸습니다. 약 24배 차이입니다. 수정 강도로 봐도 개별 저작 스킬은 탄생 이후 평균 1.11회 수정된 반면 대량 임포트 스킬은 0.54회에 그쳤습니다. 이 평균은 한 번도 재사용되지 않은 스킬의 0회까지 포함한 값이라 표본 편향으로 설명되지 않습니다.

코호트별 재사용률 비교 막대그래프 출처 코호트별 재사용률입니다. 의도적으로 저작된 deliberate_feat 코호트가 45.1%로 가장 높고 대량 임포트는 이보다 낮습니다.

코호트별로 쪼개면 격차는 더 뚜렷합니다. 의도적으로 저작된 deliberate_feat 코호트가 45.1%로 재사용률이 가장 높았고 아무 의도 표현 없이 딸려 들어온 other_singleton은 28.2%로 가장 낮았습니다. 배치 크기가 비슷한 단건 추가인데도 커밋 메시지에 “이건 새 기능이다”라는 의도가 담겼는지 여부만으로 재사용률이 17%포인트 벌어졌습니다.

코호트별 첫 재사용까지 걸린 중앙값 일수, 로그 스케일 재사용이 일어난 경우로 한정하면, 개별 저작 스킬은 대량 임포트보다 24배 빠르게 첫 재사용에 도달합니다(중앙값 1.2일 대 29.0일).

연구팀은 이 결과를 경제적으로 해석합니다. 재사용까지 29일이 걸리는 스킬은 그 한 달 동안 순수한 부채로 라이브러리에 얹혀 있습니다. 검색 노이즈를 더하고 인덱스 공간을 차지하며, 실제로 쓰이는 다른 스킬과 라우터의 관심을 두고 경쟁합니다. 그런데 이번 데이터에서 대량 임포트는 전체 탄생의 75.2%(1,482건)를 차지하는, 코퍼스를 가장 빠르게 불리는 채널이면서 동시에 재사용 신호는 가장 약하고 느린 채널이기도 합니다. 대량 임포트가 항상 틀렸다는 뜻은 아니지만, “들여오는 게 싸다”는 직관은 저작 비용만 계산하고 검색 성능 저하라는 상시 비용은 빼먹고 있다는 뜻입니다.

뜻밖의 발견, 자율 합성은 남용이 아니라 과소활용

이 논문에서 가장 반직관적인 대목은 자율 파이프라인이 스스로 새 스킬을 합성하는 pipeline_autonomous 코호트입니다. 사람 개입 없이 스케줄러가 자동으로 만든 스킬이 노이즈만 늘리는 스킬 난립의 주범이라는 우려는 관련 문헌에서 자주 제기됩니다. 그런데 실제 데이터는 정반대 그림을 보여줍니다.

코호트별 탄생 이후 평균 수정 횟수 막대그래프 pipeline_autonomous 코호트가 평균 2.83회로 재사용 강도가 가장 높습니다. 다른 어떤 코호트보다 두 배 이상 높은 값이며 표본은 30건으로 가장 작습니다.

자율 합성 코호트는 전체 1,972건 중 단 30건, 1.5%에 불과할 만큼 가장 드뭅니다. 그런데 수정 강도는 평균 2.83회로 다른 어떤 코호트보다 두 배 이상 높습니다. 다음으로 높은 sync_import(1.36회)나 deliberate_feat(1.26회)를 크게 앞섭니다. 한 번도 재사용되지 않은 비율도 56.7%로 deliberate_feat(54.9%)에 이어 두 번째로 낮습니다. 자율 합성으로 태어난 스킬은 버려지는 비율도 낮고 일단 쓰이면 활발하게 계속 쓰인다는 뜻입니다. 문제는 품질이 아니라 양이었습니다. deliberate_feat가 255건 태어나는 동안 자율 합성은 30건만 태어났고, 격차는 8.5배입니다.

연구팀은 이 결과에 두 가지 단서를 붙입니다. 하나는 표본이 30건뿐이라 몇 개의 많이 수정된 스킬에 평균이 흔들릴 수 있다는 점이고, 다른 하나는 인과관계가 거꾸로일 수 있다는 점입니다. 지금까지 자율 합성 채널이 이미 명백히 필요하다고 판단된 빈틈에만 선별적으로 투입돼 온 결과일 수도 있습니다. 그럼에도 이 신호는 “자율 합성을 기본적으로 억제해야 한다”는 통념과는 반대 방향을 가리키며 모니터링을 동반한 점진적 확대를 뒷받침하는 근거로 제시됩니다.

스킬 탄생 결정 정책 SBP, 네 가지 축

이 실증 결과를 바탕으로 논문은 스킬 탄생 결정 정책(Skill-Birth Decision Policy, SBP)을 제안합니다. 라우터가 검색 게이트를 통과하지 못해 응답을 포기할 때 네이티브 폴백, 기존 스킬 조합, 신규 합성 중 무엇을 선택할지 정하는 네 가지 축입니다.

첫째는 반복성입니다. 같은 빈틈이 두 번 이상 발견됐는지를 봅니다. 한 번뿐인 미스는 저작 비용을 상각할 미래가 없으므로 네이티브 폴백이 정답입니다. 둘째는 조합 가능성입니다. 기존 스킬 두어 개를 체이닝해서 커버할 수 있다면 조합을 우선합니다. 조합은 저작 비용이 거의 0이고 코퍼스 크기를 늘리지 않아 라우팅 정확도 저하 비용을 피합니다. 셋째는 배치 기회입니다. 이 빈틈이 관련된 여러 빈틈을 한꺼번에 메울 수 있는 외부 패키지의 일부라면 대량 임포트도 정당화됩니다. 다만 고립된 빈틈 하나를 대량 임포트 방식으로 메우는 것은 최악의 조합입니다. 넷째는 저작 채널입니다. 합성이 정당화됐다면 명시적으로 의도를 라벨링한 커밋으로 만들고, 이미 반복적으로 응답 실패가 발생해 명세가 명확한 빈틈에는 자율 합성 채널을 우선 후보로 고려하라고 제안합니다.

연구팀은 이 정책이 아직 실제 라우터에 배선돼 검증된 적은 없다는 점을 분명히 밝힙니다. 이전 논문에서 온라인 보상 신호만으로 라우팅 가중치를 학습시켰다가 보상 지표는 올랐지만 보상 함수가 보지 못한 네이티브 질의 환각률이 조용히 올라간 경험을 교훈 삼아, 이번 정책은 검증된 개입이 아니라 회고적 데이터에 근거한 가설로만 제시합니다.

회사, 사회, 과학에 주는 의미

이 결과가 주는 의미는 세 층위로 나뉩니다. 회사 차원에서는 ThakiCloud의 자기진화 에이전트 하네스가 야간 스킬 생성 파이프라인의 투자 대비 효과를 판단할 측정된 트리거와 가드레일을 얻습니다. 자율 합성 채널을 두려워할 것이 아니라 오히려 더 적극적으로 쓸 여지가 있다는 신호는 실제 운영 정책에 바로 반영할 만합니다. 사회적으로는 전담 스킬 엔지니어링 조직이 없는 회사도 “일단 스킬 하나 새로 짜자”는 즉흥적 판단을 감사 가능한 정책으로 바꿀 근거를 제공합니다. 과학적으로는 자기진화 에이전트 생태계에서 합성-대-재사용 결정경계와, 자율 합성된 스킬이 태어난 뒤 재사용되기까지의 생존 곡선을 실제 프로덕션 데이터로 처음 규명했다는 의의가 있습니다. 스킬 라우팅과 폐기, 롤아웃을 다룬 기존 연구는 전부 스킬이 이미 존재한다고 가정하지만 이 논문은 그 스킬이 애초에 어떻게 태어나야 하는지를 묻습니다.

한계, 아직 모르는 것

논문은 스스로 다섯 가지 한계를 밝힙니다. 이 결과는 단일 조직, 단일 저장소의 관측치라 다른 조직에서는 코호트 순서가 뒤바뀔 수 있습니다. 코호트 분류는 커밋 메시지 정규식과 배치 크기라는 어휘적 근사치일 뿐 실제 저작 의도를 검증한 것이 아닙니다. 최근에 태어난 스킬일수록 재사용까지 관찰할 시간이 부족한 우측 절단 문제도 있습니다. 재사용을 이후 수정 커밋의 존재로 정의했기 때문에 포맷 일괄 정리 같은 무관한 손질도 재사용으로 잡히고, 반대로 수백 번 호출됐지만 한 번도 수정되지 않은 스킬은 재사용이 아닌 것으로 잡히는 오차도 있습니다.

가장 결정적인 한계는 생존자 편향입니다. 아예 한 번도 스킬로 시도되지 않고 계속 네이티브로 폴백된 빈틈은 git 히스토리에 아무 흔적도 남기지 않기 때문에 이 방법으로는 근본적으로 관측할 수 없습니다. 연구팀은 이 빈틈을 메우려면 라우터 단에서 응답 실패 이벤트를 능력 단위로 로깅하는 계측이 다음 단계로 필요하다고 밝힙니다. 정책을 실제로 검증하려면 라우터 트래픽 일부를 SBP로 게이팅하고, 동일한 탄생-재사용 생존 지표를 정책 적용군과 기존 방식군으로 나눠 재측정하는 실험이 뒤따라야 합니다.

논문 상세 정보는 다음 페이지에서 확인할 수 있습니다.

Skill Birth: Calibrating the Synthesis-versus-Reuse Decision Boundary in Self-Evolving Agent Skill Ecosystems

태그: 에이전트 하네스, capability-gap-detection, decision-boundary, self-evolving-systems, skill-ecosystem, skill-synthesis

카테고리:

업데이트: