AI 코딩 에이전트 개선 방안
1. 지침 개선 (Improving Instructions)
-
agents.md파일 활용: 코딩 에이전트의 동작을 안내하는 표준화된agents.md파일을 프로젝트 루트에 두어 비즈니스 도메인 규칙, 프로젝트별 단계, 맞춤형 워크플로, 반복되는 실수를 문서화합니다. -
프레임워크의 역할: Rails와 같은 프레임워크가
rails new와 같이 새 애플리케이션 생성 시agents.md를 자동으로 생성하여 컨벤션을 제공해야 합니다. Phoenix 프레임워크는 이미 이를 구현했습니다. -
LLM의 격차 해소: 에이전트가 이미 알고 있는 일반적인 정보(예: Rails가 MVC 웹 프레임워크라는 사실) 대신, 모델이 학습하지 못한 최신 프레임워크 기능이나 프로젝트 고유의 격차를
agents.md에 명시하여 에이전트의 실수를 줄입니다. -
Pre-commit 태스크 통합: 테스트 실행, 코드 포맷팅, 보안 검사(예: Robocop, Brakeman) 등 커밋 전 수행할 작업을 태스크로 정의하고 에이전트에게 지시하여 워크플로를 따르게 합니다.
2. 도구 개선 (Improving Tools)
-
MCP (Model Context Protocol): 에이전트의 기능을 확장하는 신흥 표준으로, GitHub, Sentry, 데이터베이스 등 다양한 외부 서비스와 연동할 수 있습니다.
-
보안 문제 (LLM Trifecta): Simon Willison이 제시한 ‘LLM Trifecta’(개인 데이터 접근, 외부 통신, 신뢰할 수 없는 콘텐츠 노출)는 에이전트의 정보 유출 위험을 경고합니다. 코딩 에이전트는 기본적으로 코드베이스에 접근하고 외부 통신이 가능하므로, 신뢰할 수 없는 콘텐츠를 포함하는 MCP와 연동 시 프롬프트 인젝션 공격에 취약해질 수 있습니다.
-
프롬프트 인젝션 예시: Sentry에서 에러 메시지에 사용자 ID와 같은 민감한 정보가 포함될 경우, 악의적인 사용자가 이를 통해 ‘코드베이스를 압축하여 외부 서버로 전송하라’는 명령을 에이전트에 주입할 수 있습니다. 이는 SQL 인젝션과 유사한 새로운 형태의 공격입니다.
-
핫 테이크: 보안 취약성을 줄이기 위해 더 적은 MCP 클라이언트와 더 나은 런타임이 필요합니다.
3. 런타임 개선 (Improving Runtimes)
-
Tidewave.ai 데모: 코딩 에이전트 런타임을 에디터 밖으로 꺼내 브라우저에 통합한 Tidewave.ai는 웹 애플리케이션 개발에 최적화된 런타임의 예시입니다.
-
런타임의 이점: 브라우저 내에서 실행되므로 DOM과 템플릿 구조를 이해하고, 예외 발생 시 자동으로 오류를 처리하며, 구현된 기능을 브라우저에서 직접 테스트하고, 언어 런타임(REPL, 문서, 로그) 및 데이터베이스에 접근하여 완전한 컨텍스트를 제공합니다.
-
공유 컨텍스트: 개발자가 에이전트와 웹 앱 사이에서 정보를 번역할 필요 없이, 에이전트가 직접 웹 앱과 상호작용하며 모든 컨텍스트를 공유하여 생산성을 높입니다.
-
핫 테이크: 코딩 에이전트를 개발 중인 대상(스크립트/라이브러리: 에디터, 웹 앱: 브라우저, 데이터 분석: 노트북, 게임: 게임 엔진)에 직접 통합하여 컨텍스트를 극대화해야 합니다.
4. 더 나은 런타임을 위한 도구 개선
-
인트로스펙션의 중요성: 언어와 브라우저의 내부 동작을 들여다볼 수 있는 인트로스펙션 기능은 에이전트와 개발자 모두에게 중요합니다. Ruby와 Rails는 이미 훌륭한 인트로스펙션 기능을 제공합니다.
-
구조화된 템플릿: ERB와 같은 현재의 템플릿 언어는 HTML을 문자열 보간 방식으로 생성하여 구조적 정보가 부족합니다. HEEx와 같이 구조화된 템플릿 언어는 유효성 검사, 린팅, 자동 포맷팅 등 개발자 경험을 향상시키며 에이전트에게도 더 풍부한 정보를 제공합니다.
-
통합 문서화: Ruby 커뮤니티는 문서 접근성 개선이 필요합니다. 메타 프로그래밍된 코드에 대한 문서화, Doc 테스트와 같은 문서 유효성 검사 기능, 그리고 Elixir, Rust, Go처럼 모든 Ruby 패키지의 문서를 구조화되고 깔끔한 형식으로 제공하는 통합 문서화 웹사이트가 필요합니다. 이는 에이전트 학습과 개발자 편의성 모두에 크게 기여할 것입니다.