Tasks as Code: Move Your Tickets into the Repository
AI 코딩 에이전트가 코드와 문서를 기반으로 작업할 때, 작업 목록을 Jira나 Redmine 같은 외부 도구에 두는 대신 Git 저장소 내에 마크다운 파일로 저장하는 방식인 태스크 애즈 코드(Tasks as Code)가 주목받고 있습니다. 이 접근 방식은 작업과 요구사항을 코드 및 문서와 같은 소스 코드와 같은 저장소에 통합하여, 모든 변경 사항이 커밋처럼 버전 관리되고 검토될 수 있게 합니다.
이러한 방식은 AI 에이전트가 시스템을 이해하고 코드를 변경하며 관련 문서를 업데이트하는 데 매우 유용합니다. 작업 파일이 저장소에 위치하면 에이전트는 요구사항과 코드를 한 곳에서 읽을 수 있으며, 작업 변경 사항도 다른 커밋과 동일하게 관리되어 투명성을 높입니다. 이는 문서 애즈 코드(Docs as Code)의 원칙을 확장하여, 작업 관리 역시 소프트웨어 개발의 일부로 통합하는 것을 의미합니다.
실제 작업 흐름은 태스크 설명 작성, 요구사항 분석, 구현 계획 수립, 검토 승인, 그리고 구현 및 보고의 다섯 단계로 진행됩니다. 이 과정에서 에이전트는 계획을 먼저 검토하고 수정할 수 있도록 하여 개발자가 최종 구현을 통제할 수 있게 합니다. 또한, 코드 저장소 내에 문서와 태스크 저장소를 분리하여 관리함으로써 민감한 정보나 미완료 보안 수정 사항을 보호하고 접근 권한을 독립적으로 설정할 수 있습니다.
궁극적으로 이 모델은 Git 기반의 파일에 마크다운을 사용하여 정보를 저장하고 AI 서비스와 통합하는 방향으로 발전할 것입니다. 개발자, 제품 책임자, 기술 작가들이 공유할 수 있는 작업 공간이 필요하며, 향후에는 할당, 댓글, 칸반 보드 등의 기존 티켓 시스템 기능이 AI 에이전트의 역할에 따라 어떻게 변화할지에 대한 논의가 필요합니다.
이러한 방식은 AI 에이전트가 시스템을 이해하고 코드를 변경하며 관련 문서를 업데이트하는 데 매우 유용합니다. 작업 파일이 저장소에 위치하면 에이전트는 요구사항과 코드를 한 곳에서 읽을 수 있으며, 작업 변경 사항도 다른 커밋과 동일하게 관리되어 투명성을 높입니다. 이는 문서 애즈 코드(Docs as Code)의 원칙을 확장하여, 작업 관리 역시 소프트웨어 개발의 일부로 통합하는 것을 의미합니다.
실제 작업 흐름은 태스크 설명 작성, 요구사항 분석, 구현 계획 수립, 검토 승인, 그리고 구현 및 보고의 다섯 단계로 진행됩니다. 이 과정에서 에이전트는 계획을 먼저 검토하고 수정할 수 있도록 하여 개발자가 최종 구현을 통제할 수 있게 합니다. 또한, 코드 저장소 내에 문서와 태스크 저장소를 분리하여 관리함으로써 민감한 정보나 미완료 보안 수정 사항을 보호하고 접근 권한을 독립적으로 설정할 수 있습니다.
궁극적으로 이 모델은 Git 기반의 파일에 마크다운을 사용하여 정보를 저장하고 AI 서비스와 통합하는 방향으로 발전할 것입니다. 개발자, 제품 책임자, 기술 작가들이 공유할 수 있는 작업 공간이 필요하며, 향후에는 할당, 댓글, 칸반 보드 등의 기존 티켓 시스템 기능이 AI 에이전트의 역할에 따라 어떻게 변화할지에 대한 논의가 필요합니다.