https://chatgpt.com/c/6a9c8b1f-4130-83e8-b1f4-b6f78c47b461

eric provencher on Twitter / X

Eric Provencher (@pvncher)

코딩 에이전트는 크게 발전했고, 모범 사례도 빠르게 변하고 있습니다. 예전에는 많은 개입과 세세한 가이드가 필요했던 일들이 이제는 더 이상 그렇지 않습니다.

지난 1년 동안 프로젝트에서 에이전트를 사용해 왔다면, 모델이 좋은 결과를 내도록 유도하는 과정에서 상당히 많은 양의 불필요하게 복잡한 지침이 쌓였을 가능성이 높습니다. 새로운 모델이 출시될 때마다 이런 전제들을 다시 검토할 가치가 있었지만, GPT-6 Astra에서는 그 중요성이 그 어느 때보다 커졌습니다.

이러한 지침은 여러 형태로 존재할 수 있습니다. Skills, AGENTS.md, 그리고 작업 프롬프트 모두 모델이 일을 수행하는 방식에 영향을 줍니다.

스킬 파일

이러한 지침의 한 형태가 **스킬 파일(skill files)**입니다. 스킬 파일은 기본적으로 마크다운 파일에 저장된 프롬프트이며, 때로는 관련 스크립트가 함께 포함되기도 합니다.

일반적으로 스킬은 모델이 특정 작업에서만 필요로 하는 워크플로에 대한 지침이나, 플러그인 사용 방법을 알려줄 때 가장 유용합니다.

많은 사람들이 프로젝트에 수많은 스킬을 다운로드해 넣는 방식을 기본적으로 택하지만, 이는 실수입니다.

각 스킬에는 이름과 설명이 있고, 모델이 언제 해당 스킬을 사용해야 하는지 판단할 수 있도록 이 정보가 모델의 컨텍스트에 로드됩니다. 그런데 많은 스킬의 설명이 지나치게 깁니다. 스킬을 너무 많이 추가하면 Codex는 컨텍스트에 맞추기 위해 스킬 설명을 축약하기 시작합니다.

결국 모델이 각 스킬에 대해 볼 수 있는 설명의 양이 줄어들면서 어떤 스킬을 선택해야 하는지 판단하기가 더 어려워집니다.

더 나쁜 경우도 있습니다. 스킬 설명끼리 서로 모순되거나, 지나치게 “나를 선택해!”라고 주장하는 식으로 작성되어 실제 작업에는 도움이 되지 않는 지침을 모델이 불러오게 만들 수도 있습니다.

Codex에게 스킬을 만들어 달라고 요청한 적이 있다면 아마 $skill-creator 스킬을 사용했을 것입니다. 최근 우리는 실제 사용 과정에서 발견한 여러 실패 패턴을 줄이기 위해 이 스킬의 가이드라인을 몇 가지 수정했습니다.

첫째, 스킬 설명은 모델이 언제 사용해야 하는지 명확히 알 수 있는 범위 내에서 최대한 짧게 작성해야 합니다.

잘못 작성된 스킬 설명은 실제로 데이터베이스 마이그레이션을 처리해야 할 때만 사용되어야 하는 스킬을, 모델이 데이터베이스와 관련된 어떤 작업에서든 사용하도록 유도할 수 있습니다.

둘째, 유용한 스킬을 판단하는 중요한 기준 가운데 하나는 **점진적 공개(progressive disclosure)**입니다.

스킬을 읽는 것 자체가 컨텍스트를 소비합니다. 이는 컨텍스트 압축(compaction)에 더 가까워지게 만들고, 현재 작업과 관련 없는 지침까지 모델에게 제공할 수 있습니다.

따라서 여러 워크플로를 포함하는 스킬이라면 루트 문서는 최소한의 라우터 역할만 하도록 만들고, 필요한 보조 문서와 스크립트를 가리키도록 하는 것이 좋습니다.