Introducing tasq: An AI-Native Task Orchestrator for Coding Agents

개요

tasq는 AI 코딩 에이전트의 병렬 작업을 효율적으로 관리하고 조율하기 위해 개발된 AI 네이티브 태스크 오케스트레이터입니다.

주요 내용

* 문제점: AI 코딩 에이전트를 사용하여 다수의 구현 작업을 병렬로 처리할 때, 현재 실행 중인 작업, 의존성으로 인해 차단된 작업, 완료된 작업 등을 추적하기 어렵다는 점이 발생합니다. 이는 인간의 작업 관리 방식이 AI의 병렬 처리 능력에 비해 뒤처져 있기 때문입니다. 또한, 여러 에이전트가 동일한 저장소에서 동시에 작업할 경우 브랜치 전환 문제, 미완성 변경 사항 충돌, 파일 편집 중복 등의 워크스페이스 충돌이 발생할 수 있습니다.
* tasq의 기능: tasq는 이러한 문제를 해결하기 위해 다음과 같은 세 가지 아이디어를 결합합니다.
* 로컬 이슈 트래커: GitHub Issues나 Linear와 같은 외부 시스템 대신 로컬 데이터베이스에 이슈를 저장합니다. 이를 통해 개인적인 구현 세부 사항이나 중간 단계 작업을 팀 전체 작업 관리 시스템에 노출하지 않고 관리할 수 있습니다.
* 의존성 인식 태스크 큐: 생성된 태스크는 의존성 그래프를 이해하고 자동으로 작업을 예약합니다. 예를 들어, 데이터베이스 스키마 생성, 리포지토리 레이어 구현, API 엔드포인트 추가 등의 작업이 순차적으로 진행되어야 할 때 수동으로 복사하여 붙여넣을 필요 없이 시스템이 이를 자동으로 처리합니다.
* 코딩 에이전트 오케스트레이터: 오케스트레이터는 큐를 지속적으로 감시하고 실행 가능한 태스크를 코딩 에이전트에 배포합니다. 각 태스크는 고유한 Git worktree와 브랜치에서 실행되어 충돌 없이 여러 구현이 동시에 진행될 수 있습니다.
* 워크플로우 커스터마이징: tasq는 WORKFLOW.md 파일을 사용하여 사용자가 리뷰 전략, 브랜칭 모델, 필수 검사, 스킬 선택, 풀 리퀘스트 동작 등 다양한 워크플로우 단계를 사용자 정의할 수 있도록 지원합니다. tasq 자체는 이슈 의존성 및 상태, 오케스트레이션에만 집중하며, 나머지 세부 사항은 사용자의 재량에 맡깁니다.
* 인간의 역할: tasq는 에이전트가 지속적으로 작업을 가져와 중단 없이 완료하는 이상적인 시나리오를 넘어, 권한 문제, CI 파이프라인 실패, 예상치 못한 구현 편차 등 현실적인 상황에 대응하기 위해 가벼운 상태를 유지합니다. 이를 통해 사용자는 에이전트가 중단된 지점에서 대화를 재개하고 작업을 이어서 수행할 수 있습니다.
* 인터페이스: tasq는 코딩 에이전트가 주로 사용하는 CLI 인터페이스와 이슈 관리 및 오케스트레이션 가시성에 중점을 둔 웹 인터페이스를 모두 제공합니다. 또한, 에이전트가 이슈 트래커와 상호 작용할 수 있도록 전용 tasq 스킬 패키지도 제공합니다.
* 향후 개선 계획: TUI 지원, 차단된 태스크의 자동 복구, 온보딩 및 시작 설정 개선, Claude Code 통합 등이 향후 개선될 예정입니다.

시사점

tasq는 AI 코딩 에이전트가 생성하는 대규모 병렬 작업을 효과적으로 관리하고, 개발자 생산성을 크게 향상시킬 수 있는 개인 맞춤형 로컬 워크플로우를 제공합니다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions