AI 기반 코드 편집기 구축: 구조화된 LLM 통합 여정

발행: (2025년 12월 12일 오전 07:41 GMT+9)
5 min read
원문: Dev.to

Source: Dev.to

아이디어를 구현하고 있습니다: 단순한 채팅 창이 아니라 개발 환경에 통합된 페어 프로그래머 역할을 하는 온라인 에디터를 만드는 것이 목표입니다. 프로젝트 컨텍스트를 이해하고 복잡한 작업을 실행하며, 무엇보다도 신뢰할 수 있는 도구를 제공하고자 합니다.

Context is King: the Virtual File System (VFS)

AI가 프로젝트를 “볼” 수 있게 하기 위해, 애플리케이션은 메모리 상에 전체 가상 파일 시스템(VFS)을 관리하고 이를 IndexedDB에 영구 저장합니다. 이를 통해 어시스턴트는 폴더 구조와 파일에 대한 완전하고 최신의 뷰를 갖게 되며, 이는 의미 있는 작업을 수행하기 위한 기본 전제조건입니다.

Virtual File System

A “Contract” with the AI: JSON Schema Validation

LLM과의 상호작용은 예측하기 어려울 수 있습니다. 이를 완화하기 위해, 저는 AI가 각 응답에서 반드시 따라야 하는 엄격한 JSON 스키마를 정의했습니다. 모든 출력은 AJV를 통해 검증됩니다. 검증에 실패하면 시스템이 자동으로 AI에게 피드백을 보내어 응답을 수정하도록 요청합니다. 이렇게 하면 희망적인 상호작용이 계약으로 전환되어 신뢰성이 높아집니다.

또한, 응답은 멀티파트 패턴으로 구분되어 메시지의 다양한 부분을 격리함으로써 복잡한 JSON 파싱 문제를 피합니다.

A Framework for Structured Prompts (2WHAV “Light”)

복잡한 프롬프트 작성을 보다 효율적으로 만들기 위해, 저는 2WHAV 프레임워크의 “라이트” 버전을 구축했습니다. 이 내부 도구는 단순한 사용자 요청을 AI가 따를 수 있는 상세한 기술 사양으로 확장합니다. 아이디어는 어시스턴트에게 모호한 아이디어 대신 명확한 실행 계획을 처음부터 제공하는 것입니다.

Structured Prompt Framework

An Action Loop for Complex Tasks

어시스턴트는 단순히 응답만 하는 것이 아니라 (예: list_files, read_file)과 액션(예: create_file, update_file)을 연속적으로 실행할 수 있습니다. 이는 AI가 복잡한 문제를 작은 단계로 나누어 순차적으로 여러 파일을 수정해 새로운 기능을 구현하는 등, 반복적인 루프 안에서 이루어집니다.

User Experience at the Center

기술은 흥미롭지만, 실제로 유용해야 합니다. 라이브 프리뷰 콘솔에 나타나는 모든 오류는 클릭이 가능하도록 구현했으며, 한 번 클릭하면 오류가 바로 AI 입력창에 복사되어 분석 준비가 됩니다. 이 작은 디테일이 마찰을 줄이고 디버깅을 부드럽게 만들며, 자동 교정 기능은 현재 진행 중인 작업입니다.

Error‑to‑AI workflow

Conclusion

이 애플리케이션을 구축하는 과정은 AI에 적용된 소프트웨어 엔지니어링의 흥미로운 여정이었습니다. 목표는 “마법 상자”를 만드는 것이 아니라, 유용한 도움과 실용적인 코드를 제공할 만큼 견고하고 예측 가능한 도구를 만드는 것입니다.

아직 갈 길이 멀고 도전 과제도 많지만, 개념 증명으로서는 좋은 결과라고 생각합니다.

여러분은 어떻게 생각하시나요? AI를 개발 워크플로에 통합할 때 가장 큰 도전 과제는 무엇이라고 보시나요?

Back to Blog

관련 글

더 보기 »