AI 코딩 에이전트는 엄청나게 생산적일 수 있습니다.
코드베이스를 검사하고, 솔루션을 제안하며, 파일을 수정하고, 테스트를 실행하고, 아주 적은 감독만으로 계속 진행할 수 있습니다.
하지만 저는 한 가지 질문에 대해 계속 생각했습니다:
제가 검토할 기회도 없이 에이전트가 잘못된 계획을 구현하기 시작하면 어떻게 될까?
문제는 반드시 AI가 코드를 작성할 수 없다는 것이 아닙니다. 때로는 문제가 계획(planning)에서 실행(execution)으로 너무 빨리 넘어간다는 것입니다.
저는 에이전트가 여전히 자율적으로 작업할 수 있지만, 인간의 결정이 필요한 순간을 건너뛰지 않는 워크플로우를 원했습니다.
그 아이디어가 저로 하여금 Friday Protocol을 구축하게 만들었습니다.
Friday Protocol이란 무엇인가요?
Friday Protocol은 AI 코딩 에이전트를 위해 승인 우선(approval-first) 워크플로우를 도입하도록 설계된 오픈 소스 스킬입니다.
아이디어는 간단합니다:
- 에이전트가 작업을 조사하고 구현 계획을 준비합니다.
- 워크플로우가 일시 중지되고 명시적인 인간의 승인을 요청합니다.
- 승인이 주어진 후에만 에이전트가 진행합니다.
- 구현은 필요한 보안 검사 및 테스트를 거칩니다.
- 에이전트는 남아 있는 이슈를 포함하여 완료된 내용의 증거를 제공합니다.
제 워크플로우에서, OKE는 명시적인 승인 신호입니다.
목표는 AI 에이전트를 덜 유능하게 만드는 것이 아닙니다. 계획에서 실행으로 넘어가는 과정을 더 의도적이고 검토 가능하도록 만드는 것입니다.
단순히 AI에게 조심하라고 말하면 안 되나요?
저는 프롬프트에 간단히 문장을 추가할 수 있습니다:
"변경하기 전에 저에게 물어보세요."
하지만 저는 일반적인 지침에 의존하는 것보다 더 구조화된 것을 원했습니다.
Friday Protocol은 승인을 단순한 정중한 제안으로 취급하기보다는, 명시적인 워크플로우 게이트를 중심으로 구축되었습니다.
이 워크플로우는 에이전트가 모든 요청을 과제에 대한 자신의 해석을 즉시 실행할 수 있는 허가로 간주하는 것을 방지하도록 의도되었습니다.
또한 검증(verification)을 강조합니다. 에이전트는 단순히 파일을 편집하는 것을 마쳤다는 이유만으로 작업을 완료했다고 선언해서는 안 됩니다.
테스트가 실패하면, 모든 것이 성공한 것처럼 가장하는 대신 구현 및 검증 단계로 돌아가야 합니다.
물론, 실제 보장은 에이전트 환경(agent environment), 스킬(skill) 호출 방식, 그리고 지침 준수 방식에 따라 달라집니다. 이것은 워크플로우 레벨의 안전장치일 뿐이며, 모든 가능한 위험한 행동이 기술적으로 불가능하다는 주장은 아닙니다.
워크플로우는 어떻게 생겼나요?
간소화된 라이프사이클은 다음과 같습니다:
중요한 부분은 구현 전의 승인 게이트(approval gate)와 완료 전의 검증 루프(verification loop)입니다.
무엇이 다른가요?
Friday Protocol은 기존 코딩 에이전트를 대체해야 하는 독립형 애플리케이션이라기보다는 재사용 가능한 스킬로 설계되었습니다.
이는 워크플로우 레이어(workflow layer)로 사용될 수 있으며, 문맥적 메모리 및 의사결정 지원을 탐구하는 저의 다른 프로젝트인 MemoriaGraph와 선택적으로 통합될 수 있습니다.
저는 또한 더 광범위한 보안 운영(security operations) 프로젝트에서도 이러한 아이디어를 실험하고 있습니다. 하지만 Friday Protocol 자체는 전체 보안 운영 플랫폼을 대체하는 것이 아니라 워크플로우 및 승인 프로세스에 중점을 둡니다.
저의 목표는 이 접근 방식을 지원되는 모든 AI 코딩 환경에서 재사용 가능하게 만드는 것입니다. 호환성과 동작은 각 환경별로 여전히 평가되어야 합니다.
구축하면서 배운 점
제가 배운 한 가지는, 지침을 더 많이 추가하는 것이 반드시 신뢰할 수 있는 워크플로우를 만드는 것과 같지 않다는 것입니다.
유용한 워크플로우에는 관찰 가능한 체크포인트(observable checkpoint)가 필요합니다.
예를 들어:
- 에이전트가 계획을 제시한 후 실제로 멈췄나요?
- 진행하기 전에 승인을 기다렸나요?
- 테스트가 실패했을 때 어떤 일이 발생했나요?
- 수정을 한 후에 검증을 재시도했나요?
- 최종 보고서에서 검증된 결과와 가정(assumption)을 구별할 수 있나요?
이러한 질문들은 에이전트가 규칙을 따른다고 주장하는지 여부를 묻는 것보다 더 유용합니다.
저는 실질적인 테스트, 피드백, 그리고 그 동작에 대한 명확한 증거를 통해 Friday Protocol을 계속 개선하고 싶습니다.
아직 진화 중인 오픈 소스 프로젝트이며, 저는 이것이 AI 에이전트 안전에 대한 완전한 해결책이라고 생각하지 않습니다.
직접 사용해보고 의견을 알려주세요
AI 코딩 에이전트를 다루시는 분이라면 여러분의 피드백에 진심으로 감사드립니다.
저장소: Friday Protocol on GitHub
특히, 에이전트가 너무 빠르게 움직이거나, 계획 검토 전에 변경 사항을 만들거나, 충분한 검증 없이 완료를 보고하는 문제점을 겪어보신 개발자분들의 의견에 관심이 많습니다.
논의하고 싶은 몇 가지 질문들이 있습니다:
- 워크플로우에 명시적인 승인 게이트(explicit approval gate)가 유용할까요?
- 개발 수명 주기(development lifecycle) 중 어떤 부분이 인간의 승인을 필요로 해야 할까요?
- 에이전트가 실제로 이 게이트를 준수하는지 어떻게 테스트할 수 있을까요?
- 이러한 워크플로우를 다양한 코딩 에이전트에 걸쳐 채택하기 쉽게 만들려면 무엇이 필요할까요?
저는 AI 지원 개발을 하며 얻은 경험을 바탕으로 이것을 구축하고 있으며, 다른 개발자분들이 같은 문제에 어떻게 접근하는지 배우고 싶습니다.
읽어주셔서 감사합니다. 피드백, 비판, 그리고 기여 모두 환영합니다.