정지용
프로젝트 목록
자동화JavaScript

Jira → Claude 자동화 루프 + 대시보드

Jira 카드를 Claude가 자동으로 검토·개발·PR 생성·완료처리하는 멀티프로젝트 자동화 루프와 웹 대시보드

jira_auto_pilot최근 업데이트 2026년 9월 10일

개요

Jira 카드에 트리거 라벨을 붙이면 plan(질문) → build(개발·PR·완료처리) 루프가 자동으로 돌아가는 도구입니다. 여러 프로젝트(repo·Jira·자격증명)를 동시에 등록·운용하며, 로컬 웹 대시보드(React + Express)에서 설정·루프 제어·카드 상태·실시간 로그·처리 이력을 모니터링합니다. 에픽·워크스트림의 하위 태스크를 생성순으로 자동 처리하는 연속 개발 모드를 지원하며, plan 질문을 Claude가 제안한 답변으로 자동 채택하고 PR이 리뷰 승인될 때까지 재리뷰를 반복합니다. 실패 시 Slack 알림을 보내고, 알림 버튼으로 원격 병합·재실행·이어서 진행을 수행할 수 있습니다.

담당 역할

전체 루프 자동화 엔진·대시보드·상태 머신·에픽 연속 개발·멀티프로젝트 오케스트레이션·Slack 알림·리뷰 루프를 설계·구현했습니다. Claude Code 헤드리스 실행과 Atlassian MCP를 활용해 Jira 카드 탐지·코멘트·상태 전환을 자동화하고, 병렬 처리·멱등성 가드·실패 재시도·락 기반 중복 방지를 설계했습니다.

아키텍처 다이어그램

레포지토리 분석 결과를 바탕으로 자동 생성된 구조도입니다.

아키텍처

전체 아키텍처

대시보드·루프·카드 처리 엔진·외부 서비스 간 상호작용과 데이터 흐름을 보여주는 아키텍처 다이어그램

다이어그램을 그리는 중…
상태 전이

카드 상태 머신

Jira 카드가 plan → build → 완료 단계를 거치며 라벨·상태가 전환되는 흐름을 나타낸 상태 다이어그램

다이어그램을 그리는 중…
시퀀스

에픽 연속 개발 흐름

에픽의 하위 태스크를 생성순으로 prepare → plan → adopt → build → approve → await-merge 단계로 자동 처리하는 시퀀스

다이어그램을 그리는 중…

기술스택

각 기술을 이 프로젝트에서 어떤 용도로 썼는지 정리했습니다.

언어

  • JavaScript대시보드 백엔드(Express)·프론트엔드(React)·에픽 연속 개발 러너 구현
  • Shell Script루프 오케스트레이션·카드 탐지·git 준비·LLM 엔진 추상화 스크립트

백엔드

  • Node.js대시보드 서버(Express)·Claude 실행 전사 렌더러·에픽 루프 러너
  • Express대시보드 백엔드 REST API·루프 제어·Jira REST 프록시·로그 tail

프론트엔드

  • React대시보드 프론트엔드(Babel Standalone 변환·핫리로드)

도구

  • Claude Code헤드리스 모드로 카드 검토·코드 작성·git 작업·Jira 상호작용 수행
  • Atlassian MCPClaude가 Jira 카드 조회·코멘트·라벨·상태 전환을 수행하는 MCP 서버
  • GitHub CLIPR 생성·조회·병합·상태 확인·브랜치 원격 조회
  • Slack APIIncoming Webhook 알림·Socket Mode 원격 제어 버튼(병합·재실행·이어서 진행)
  • Git카드별 독립 clone·브랜치 생성·커밋·푸시·멱등성 가드

핵심 포인트

  • 카드별 독립 clone·락 기반 중복 방지·병렬 처리 상한으로 안전한 동시 실행 보장
  • plan 질문을 Claude가 제안한 답변으로 자동 채택하고 PR이 리뷰 승인될 때까지 재리뷰 반복하는 에픽 연속 개발 모드
  • Jira REST 우선·Claude+MCP 폴백으로 결정적이고 저비용인 카드 탐지 구현
  • 멱등성 가드(중복 PR·브랜치 방지)·실패 재시도 백오프·테스트 통과까지 자동 수정으로 무인 운영 가능
  • Slack Socket Mode 알림 버튼으로 포트 노출 없이 원격 병합·재실행·이어서 진행 수행

문제와 해결

문제build 중간 실패 후 재시도 시 동일 카드에 중복 PR·브랜치가 생성되는 문제

해결build 시작 전 git ls-remote·gh pr list로 기존 PR·브랜치를 점검하고 존재 시 SKIP 처리하는 멱등성 가드 구현

문제work.env 시크릿 파일이 대상 repo로 커밋되는 유출 사고 위험

해결env 복사 직후 clone의 .git/info/exclude에 env 파일명을 자동 등록해 프롬프트 의존 없이 구조적으로 차단

문제매 주기 claude로 카드를 탐지하면 비용이 높고 토큰화 오탐 가능성 존재

해결Jira REST를 우선 사용하고 실패 시에만 claude+MCP로 폴백하는 2단계 탐지, 트리거를 텍스트 검색에서 라벨 모드로 전환

레포지토리 정보

생성
2026년 6월 29일
최근 커밋
2026년 9월 10일
크기
2,092 KB
라이선스
없음

언어 구성

  • JavaScript54.6%
  • HTML29.1%
  • Shell16.4%

이 문서는 2026년 9월 10일 에 자동 분석으로 생성되었습니다.