1. liveaicoding.com이란? 언제, 왜 사용하나
#liveaicoding.com은 AI가 코딩 작업을 수행하는 전 과정을 웹 브라우저에서 관리하는 서비스다. 티켓에 작업 내용을 남기고, AI 워커를 담당자로 지정하고, 내 로컬 PC의 Claude Code, Copilot CLI, Codex 같은 도구를 연결해 작업을 실행할 수 있다.
웹 서비스만으로도 프로젝트, 티켓, 댓글, 계획, 리뷰 기록을 관리할 수 있다. ai-toolkit은 항상 켜야 하는 필수 기능이 아니라, 내가 잠시 자리를 비우거나 모바일에서 작업 흐름을 계속 지시하고 싶을 때 로컬 PC의 AI CLI와 웹 티켓을 연결하는 선택 기능이다.
기본 용어
| 용어 | 의미 |
|---|---|
| 티켓 | AI 또는 사람이 처리할 작업 단위다. 요구사항, 배경, 완료 조건, 댓글, 완료 보고서를 한곳에 남긴다. |
| open | 아직 작업 가능한 대기 상태다. 계획, 작업, 리뷰 실행의 기본 대상이다. |
| backlog | 지금 당장 처리하지 않을 open 티켓을 잠시 보류해 둔 상태다. 요구사항 보강, 우선순위 조정, 실행 대기 제외가 필요할 때 사용한다. |
| in_progress | 사람이 작업 중이거나 AI가 실행 중인 상태다. |
| done | 작업이 완료되고 완료 보고서가 남은 상태다. |
| archived | 더 이상 활성 목록에서 다루지 않는 보관 상태다. |
| 워커 | 프로젝트에서 작업을 맡는 주체다. 사람 워커와 AI 워커가 있다. |
| AI 워커 | Claude Code, Copilot CLI, Codex 같은 로컬 AI 도구 실행을 대표하는 담당자다. |
| 루프 | 여러 open 티켓을 대기열에 넣고 계획, 작업, 리뷰 단계를 순서대로 실행하는 자동화 흐름이다. |
| ai-toolkit | liveaicoding.com의 티켓 실행 요청을 내 로컬 PC의 AI CLI로 전달하는 실행 도구다. |
liveaicoding.com을 사용해야 하는 순간
| 상황 | 이유 |
|---|---|
| AI에게 개발 작업을 맡기고 싶을 때 | 티켓에 요구사항을 적고 AI 워커를 담당자로 지정하면 내 로컬 PC의 AI CLI로 작업을 실행할 수 있다. |
| 외출 중에도 AI 작업을 이어 가고 싶을 때 | 로컬 PC에서 ai-toolkit을 켜 두면 모바일 브라우저에서 티켓을 만들고 실행을 지시할 수 있다. |
| 여러 작업을 순서대로 처리시키고 싶을 때 | 루프에 티켓을 대기열로 등록하면 AI가 하나씩 처리하고 결과를 남긴다. |
| 구현 전에 계획만 먼저 받고 싶을 때 | 계획 버튼으로 AI가 티켓 본문이나 댓글에 구현 계획을 작성한다. |
| 작업 결과가 요구사항과 맞는지 확인하고 싶을 때 | 리뷰 버튼으로 티켓의 작업 계획과 구현 결과를 기준으로 검증 리뷰를 요청한다. |
| AI가 무엇을 했는지 확인하고 싶을 때 | 티켓 댓글, 완료 보고서, 알림 목록에서 AI가 남긴 기록을 볼 수 있다. |
| 팀원과 작업 의도를 공유하고 싶을 때 | 프로젝트에 사람 워커를 추가하면 티켓의 계획, 판단 근거, 진행 상태를 함께 검토할 수 있다. |
| 작업 결과를 텔레그램으로 받고 싶을 때 | 프로필에 Chat ID를 등록하면 AI가 완료 후 메시지를 보낼 수 있다. |
liveaicoding.com의 핵심 역할
로컬 AI 도구를 혼자 실행하면 작업 지시, 실행 상태, 결과 기록, 팀 공유가 흩어지기 쉽다. liveaicoding.com은 작업 지시(티켓), 실행 상태 추적, 결과 기록, 팀 공유를 한 곳에서 제공해 AI 작업을 체계적으로 관리하게 해 준다.
한마디로: AI 에이전트가 일하는 현장을 웹에서 지휘하고 모니터링하는 컨트롤 타워다.
1-1. 바이브 코딩에서 liveaicoding.com을 쓰면 뭐가 좋나
#**바이브 코딩(Vibe Coding)**은 아이디어를 즉흥적으로 AI에게 던져 코드를 빠르게 만들어 가는 방식이다. 빠른 속도가 장점이지만, 작업 의도와 결과 검증이 약하면 "왜 이렇게 구현했지?", "어디까지 됐지?", "팀원이 이 판단을 이해할 수 있나?" 같은 문제가 생긴다.
바이브 코딩 시 이점 요약
| 바이브 코딩의 문제 | liveaicoding.com의 해결 |
|---|---|
| AI가 뭘 했는지 모름 | 티켓 댓글과 완료 보고서에 AI 작업 내역이 저장된다. |
| 구현 방향이 맞는지 모르고 일단 실행 | 계획 버튼으로 AI의 구현 계획을 먼저 확인한 뒤 작업을 실행한다. |
| 여러 작업을 동시에 시키다가 충돌 | 루프의 순차 실행과 서버 레벨 동시성 제어로 한 AI 워커가 한 번에 처리할 작업을 제한한다. |
| AI가 끝났는지 계속 확인해야 함 | 웹 알림과 텔레그램 알림으로 완료 사실을 확인할 수 있다. |
| 코드 품질과 요구사항 검증을 놓침 | 리뷰 버튼으로 티켓의 계획, 요구사항, 구현 결과를 기준으로 검증 리뷰를 요청한다. |
| 나중에 이 작업이 왜 생겼는지 모름 | 티켓에 배경, 요구사항, 계획, 결과가 모두 남는다. |
| 팀원이 내가 왜 이렇게 작업했는지 모름 | 팀원이 티켓의 계획과 댓글을 보고 작업 의도와 판단 근거를 리뷰할 수 있다. |
바이브 코딩에서 LiveAiCoding으로 이어지는 흐름
아이디어가 떠오름
→ liveaicoding.com에서 티켓 작성
→ 담당 AI 워커 지정
→ 필요하면 계획 먼저 요청
→ 작업 실행
→ 내 로컬 PC의 ai-toolkit이 Claude Code, Copilot CLI, Codex 중 선택한 도구를 실행
→ 완료 보고서와 알림으로 결과 확인
→ 필요하면 리뷰 요청 또는 다음 티켓으로 이동
여러 아이디어가 있다면 루프에 대기열로 등록하면 된다. AI가 순서대로 처리하는 동안 다른 일을 해도 된다.
1-2. Claude Code `/goal`과 LiveAiCoding 루프의 차이
#Claude Code의 /goal은 현재 Claude Code 세션 안에서 완료 조건을 설정하고, 조건이 충족될 때까지 Claude가 여러 턴을 이어 가는 기능이다. Anthropic 문서에 따르면 /goal은 각 턴이 끝난 뒤 별도 평가 모델이 조건 충족 여부를 확인하고, 충족되지 않으면 다음 턴을 계속 시작한다.
LiveAiCoding의 루프는 Claude Code 세션 내부 기능이 아니라 웹 서비스의 티켓 대기열 자동화다. 프로젝트의 여러 티켓을 순서대로 실행하고, 각 티켓마다 계획, 작업, 리뷰 단계를 켜거나 끄고, 결과를 티켓 댓글과 완료 보고서로 남긴다.
| 구분 | Claude Code /goal | LiveAiCoding 루프 |
|---|---|---|
| 실행 단위 | 현재 Claude Code 세션의 목표 조건 | 프로젝트의 티켓 대기열 |
| 시작 위치 | Claude Code 터미널 | liveaicoding.com의 프로젝트 / 루프 |
| 종료 기준 | 목표 조건을 평가 모델이 충족했다고 판단할 때 | 루프에 등록된 티켓과 단계가 완료, 취소, 실패될 때 |
| 기록 위치 | Claude Code 세션 transcript | 티켓 본문, 댓글, 완료 보고서, 알림 |
| 팀 공유 | 세션 공유가 별도로 필요 | 프로젝트 참여자가 티켓과 루프 상태를 함께 확인 |
| 지원 도구 | Claude Code 중심 | Claude Code, Copilot CLI, Codex 중 선택 가능 |
둘은 경쟁 기능이 아니다. Claude Code를 직접 오래 실행해야 하는 단일 목표는 /goal이 적합하고, 여러 티켓을 팀과 공유하면서 순서대로 처리하고 결과 기록을 남겨야 한다면 LiveAiCoding 루프가 적합하다.
2. 서비스 흐름 한눈에 보기
#LiveAiCoding은 프로젝트를 만들고, 워커를 등록하고, 티켓을 작성한 뒤 사람 또는 AI 에이전트가 작업을 진행하는 협업 도구다. AI 자동 실행은 웹 화면의 티켓/루프 설정, 로컬 ai-toolkit, MCP 서버, 텔레그램 알림 설정이 함께 맞아야 정상 동작한다.
웹 로그인
→ 프로젝트 생성
→ 워커 등록(사람/AI)
→ 티켓 그룹·라벨·마일스톤·스니펫 준비
→ 티켓 작성
→ 티켓 상세의 계획/작업/리뷰 또는 루프 실행
→ ai-toolkit이 내 로컬 PC의 AI CLI 실행
→ MCP 도구로 티켓 댓글과 완료 상태 반영
→ 웹 알림 또는 텔레그램으로 결과 확인
3. 공통 준비
#| 준비 항목 | 언제 필요한가 | 이유 |
|---|---|---|
| 계정 로그인 | 모든 개인/프로젝트 화면 접근 전 | 프로젝트, 티켓, 알림은 로그인 사용자 기준으로 조회된다. |
| API 인증키 발급 | ai-toolkit 또는 MCP를 연결할 때 | 외부 에이전트 요청자를 식별하기 위해 필요하다. |
| AI Toolkit 설정 | 티켓 계획/작업/리뷰, 루프 자동화를 사용할 때 | 웹에서 저장한 provider, model, effort 설정이 티켓 실행 옵션으로 전달된다. |
| AI 워커 등록 | AI에게 티켓을 맡길 때 | 티켓 실행 라우팅은 담당 AI 워커의 identifier를 기준으로 한다. |
| ai-toolkit 실행 | 웹 요청을 내 로컬 AI CLI로 실행하고 싶을 때 | 내 PC의 Claude Code, Copilot CLI, Codex를 실제로 실행한다. |
| 텔레그램 Chat ID | 에이전트가 외부 알림을 보내야 할 때 | MCP send_telegram이 인증 사용자에게 메시지를 보낸다. |
4. 공개 화면
#| 화면 | 접근 방법 | 언제 사용 | 어떻게 사용 | 왜 사용 |
|---|---|---|---|---|
| 랜딩 | 홈 | 서비스 소개 확인 | 기능과 가치 제안을 읽고 로그인 또는 요금제로 이동 | 신규 사용자가 서비스 구조를 빠르게 이해한다. |
| 요금제 | 홈 / 요금제 | 프로젝트, 워커, 루프, 백업 제한 확인 | Free/Default/Pro/Enterprise 정책 확인 | 기능 제한 때문에 버튼이 비활성화된 이유를 판단한다. |
| 정보 게시판 | 홈 / 정보 게시판 | 공지, 가이드, 업데이트 확인 | 목록에서 게시글 상세로 이동 | 운영 안내와 사용 팁을 확인한다. |
| 로그인 | 홈 / 로그인 | 기존 사용자 접속 | 핸드폰 번호와 비밀번호 입력 | 개인 화면 접근을 위한 세션을 만든다. |
| 회원가입 | 홈 / 회원가입 | 신규 사용자 등록 | 인증 절차와 계정 정보 입력 | 프로젝트 참여 및 API 키 발급을 시작한다. |
| 비밀번호 찾기/재설정 | 로그인 / 비밀번호 찾기 | 비밀번호 분실 | 본인 확인 후 새 비밀번호 설정 | 계정 접근을 복구한다. |
5. 개인 설정 화면
#5.1 멤버 홈
- 접근 방법: 개인 설정
- 언제: 개인 설정 메뉴로 진입할 때 사용한다.
- 왜: 프로필, 인증키, 툴킷, 알림, 백업, 결제 이력을 한 곳에서 찾기 위한 허브다.
5.2 API 인증키
- 접근 방법: 개인 설정 / API 인증키
- 언제:
ai-toolkit또는 MCP 클라이언트를 연결하기 전에 사용한다. - 어떻게
키 재발급을 누른다.- 경고를 확인하고 새 키 발급을 확정한다.
- 화면에 한 번만 표시되는 전체 키를 안전한 곳에 저장한다.
.ai-toolkit.json의userKey와.mcp.jsonURL의x-user-key에 같은 값을 넣는다.
- 왜: 서버는
userHp + userKey조합으로 외부 에이전트 요청자를 식별한다.
전체 키는 재발급 직후에만 표시된다. 새로고침하거나 페이지를 벗어나면 마스킹된 키만 볼 수 있으므로 분실 시 재발급해야 한다.
5.3 AI Toolkit 설정
- 접근 방법: 개인 설정 / AI Toolkit 설정
- 언제: 티켓 상세의
계획,작업,리뷰버튼이나 루프 자동화를 쓰기 전에 설정한다. - 어떻게
AI Toolkit 활성화스위치를 켠다.- provider를 선택한다:
Claude Code,Copilot CLI,Codex. - 해당 provider에서 사용할 모델 목록을 추가하거나 제거한다.
- 해당 provider에서 사용할 effort 목록을 추가하거나 제거한다.
저장을 눌러 DB에 반영한다.
- 왜: 티켓 실행 시 선택 가능한 model/effort 드롭다운은 이 설정에서 가져온다.
지원 provider와 기본 용도는 다음과 같다.
| Provider | 실행 CLI | 기본 용도 |
|---|---|---|
| Claude Code | claude | Claude Code 기반 AI 실행 |
| Copilot CLI | copilot | GitHub Copilot CLI 기반 AI 실행 |
| Codex | codex | Codex CLI 기반 AI 실행 |
중요한 라우팅 원칙:
.ai-toolkit.json의identifier는 현재 Run/계획/리뷰 라우팅에 사용하지 않는다.- 서버는 티켓 담당 AI 워커의
identifier를 실행 그룹 키로 사용한다. - 같은 사용자, 프로젝트, AI 워커 identifier의 작업은 서버 큐와 락으로 한 번에 1건만 실행된다.
5.4 프로필과 텔레그램 알림
- 접근 방법: 개인 설정 / 프로필
- 언제: 내 개인정보 확인, 이름/이메일 수정, 텔레그램 Chat ID 등록이 필요할 때 사용한다.
- 어떻게
알림 설정의텔레그램 알림카드에서수정을 누른다.- 텔레그램 Chat ID를 입력하고
저장한다. - 빈 값으로 저장하면 텔레그램 알림 수신이 해제된다.
- 왜: MCP
send_telegram은 메시지의 수신자를 직접 받지 않고, 인증된 사용자의 프로필에 저장된 Chat ID만 사용한다.
5.5 알림
- 접근 방법: 개인 설정 / 알림
- 언제: 프로젝트 활동, 시스템 알림, AI Toolkit 실패/스킵 이벤트를 확인할 때 사용한다.
- 어떻게: 전체/읽지 않음/읽음 필터로 확인하고, 개별 읽음·삭제 또는
모두 읽음을 사용한다. - 왜: AI 실행 중 오류나 중복 실행 스킵 같은 이벤트가 실시간 알림과 이 목록에 남는다.
5.6 백업/복원
- 접근 방법: 개인 설정 / 백업
- 언제: 프로젝트 데이터를 ZIP 마크다운 백업으로 내려받거나 백업 파일을 복원할 때 사용한다.
- 어떻게
- 대상 프로젝트를 선택한다.
- 백업은 ZIP 다운로드를 실행한다.
- 복원은 ZIP 파일과 충돌 처리 전략을 선택해 업로드한다.
- 왜: 프로젝트 단위로 티켓/문서성 데이터를 외부 보관하거나 다른 환경으로 복구한다.
요금제에 따라 백업/복원 기능이 비활성화될 수 있다.
5.7 구매 이력
- 접근 방법: 개인 설정 / 구매 이력
- 언제: 내 플랜 구매/활성화 이력을 확인할 때 사용한다.
- 왜: 현재 플랜과 기능 제한의 근거를 확인한다.
6. 프로젝트 화면
#6.1 프로젝트 목록
- 접근 방법: 프로젝트
- 언제: 참여 중인 프로젝트를 찾거나 새 프로젝트를 만들 때 사용한다.
- 어떻게
- 검색어로 프로젝트를 필터링한다.
New Project에서 프로젝트 key, 이름, 설명, 색상을 입력한다.- 생성된 프로젝트 카드를 눌러 상세 영역으로 들어간다.
- 왜: 프로젝트 key는 이후 티켓 키 prefix의 기준이 된다.
프로젝트 key는 대문자 영문과 숫자만 허용된다. 예: WORKS, LIVEAI1.
6.2 프로젝트 공통 내비게이션
프로젝트 상세에 들어가면 다음 메뉴를 사용한다.
| 메뉴 | 주 사용자 | 설명 |
|---|---|---|
| 프로젝트 / 티켓 | 전체 | 티켓 목록, 필터, 상태 변경, 티켓 상세 진입 |
| 프로젝트 / 티켓 그룹 | Owner/관리자 | 티켓 그룹 생성, 수정, 정렬 |
| 프로젝트 / 라벨 | Owner/관리자 | 라벨 생성, 수정, 삭제 |
| 프로젝트 / 마일스톤 | Owner/관리자 | 마일스톤 open/closed 관리 |
| 프로젝트 / 스니펫 | 전체 | 티켓 작성 템플릿 관리 |
| 프로젝트 / 워커 | Owner | 사람/AI 워커 초대, 수정, 활성 토글 |
| 프로젝트 / 루프 | AI 운용자 | open 티켓을 대기열로 묶어 자동 실행 |
| 프로젝트 / 분석 | 전체 | 프로젝트 지표 확인 |
7. 티켓 화면
#7.1 티켓 목록
- 접근 방법: 프로젝트 / 티켓
- 언제: 프로젝트의 모든 작업 상태를 보고 필터링할 때 사용한다.
- 어떻게
- 텍스트 검색으로 제목과 본문을 찾는다.
- 상태 필터로
open,backlog,in_progress,done,archived를 구분한다. - 담당자, 우선순위, 라벨, 태그, 마일스톤, 그룹, 날짜 조건으로 범위를 좁힌다.
- 왜: 프로젝트의 현재 작업 흐름과 병목을 한 화면에서 파악한다.
티켓 상태 흐름은 다음 5단계다.
open → backlog → in_progress → done → archived
7.2 티켓 생성/수정
- 접근 방법: 프로젝트 / 티켓 / 새 티켓 또는 티켓 상세 / 수정
- 언제: 신규 작업을 등록하거나 기존 작업 설명/메타데이터를 바꿀 때 사용한다.
- 어떻게
- 설명(Description)을 마크다운으로 작성한다.
- 첫 번째 비어 있지 않은 줄이 제목으로 자동 추출된다.
- 생성 시 티켓 그룹과 담당자는 필수다.
- 우선순위, 라벨, 마일스톤, 태그, 날짜를 설정한다.
- 자주 쓰는 문구는
스니펫 삽입패널에서 넣는다.
- 왜: 티켓 상세와 같은 2열 구조를 사용해 본문과 메타데이터를 함께 관리한다.
하위 티켓을 만들 때는 부모 티켓 상세에서 하위 티켓 생성 흐름을 사용한다.
7.3 티켓 상세
- 접근 방법: 프로젝트 / 티켓 / 티켓 상세
- 언제: 작업 본문, 댓글, 담당자, 상태, 자동 실행을 한 화면에서 관리할 때 사용한다.
- 주요 기능
- 본문/댓글 확인
- 상태, 우선순위, 담당자, 라벨, 마일스톤, 날짜 수정
- 부모/하위/연결 티켓 확인
계획,작업,리뷰AI 실행 요청
7.4 티켓 상세의 AI 실행 버튼
티켓 상세 사이드바의 툴킷 실행 영역은 AI Toolkit 설정과 담당 AI 워커 정보를 조합한다.
| 버튼 | 언제 사용 | 서버 동작 | AI 에이전트가 해야 할 일 |
|---|---|---|---|
| 계획 | 작업 전 구현 계획만 받고 싶을 때 | 계획 큐에 등록 | 티켓 본문 또는 댓글에 계획 작성 |
| 작업 | 실제 구현을 시작할 때 | 작업 큐에 등록하고 실행 시 in_progress 전환 | 코드 작업 후 완료 보고서 작성과 done 전환 |
| 리뷰 | 구현 결과를 검증하고 싶을 때 | 리뷰 큐에 등록 | 티켓의 계획, 요구사항, 구현 결과를 기준으로 리뷰 댓글 작성 |
버튼 활성 조건:
- AI Toolkit이 활성화되어 있어야 한다.
- 티켓 상태가
open이어야 한다. - 담당자가
AI타입 워커여야 한다. - 담당 AI 워커에 빈 값이 아닌
identifier가 있어야 한다. - 같은 요청이 이미 대기 중이면 다시 누를 수 없다.
Model/Effort 드롭다운은 개인 설정 / AI Toolkit 설정에 저장된 현재 provider 설정에서 가져온다. 선택값은 브라우저 localStorage에 provider별로 저장되고, 실행 요청 시 티켓의 aiModel, aiEffort로 함께 저장된다.
8. 티켓 그룹, 라벨, 마일스톤, 스니펫
#8.1 티켓 그룹
- 접근 방법: 프로젝트 / 티켓 그룹
- 언제: 스프린트, 모듈, 업무 묶음처럼 티켓을 그룹화할 때 사용한다.
- 어떻게: 그룹 key/name/description을 만들고 드래그 앤 드롭으로 순서를 바꾼다.
- 왜: 티켓 목록과 루프 화면에서 그룹 필터로 작업 범위를 좁힐 수 있다.
8.2 라벨
- 접근 방법: 프로젝트 / 라벨
- 언제: 버그, 문서, 프론트엔드, 백엔드 같은 분류가 필요할 때 사용한다.
- 어떻게: 라벨 key, 설명, 색상을 등록한다. 티켓에서 사용 중인 라벨은 서버 정책에 따라 삭제가 막힐 수 있다.
- 왜: 티켓 검색과 우선순위 판단을 빠르게 한다.
8.3 마일스톤
- 접근 방법: 프로젝트 / 마일스톤
- 언제: 릴리스나 목표일 단위로 티켓을 묶어야 할 때 사용한다.
- 어떻게: 제목, 설명, 마감일을 등록하고
Open/Closed탭으로 관리한다. - 왜: 일정 기반 진행률과 목표 관리를 돕는다.
8.4 스니펫
- 접근 방법: 프로젝트 / 스니펫
- 언제: 반복되는 티켓 템플릿, 체크리스트, 보고 양식을 재사용할 때 사용한다.
- 어떻게
- 마크다운 본문을 작성한다.
- 콤마로 태그를 입력한다.
- 필요한 경우 다른 프로젝트에 공유할 project key를 선택한다.
- 티켓 작성 화면에서
스니펫 삽입패널로 삽입한다.
- 왜: AI에게 일관된 지시 형식을 제공하고 티켓 작성 시간을 줄인다.
9. 워커 화면
#- 접근 방법: 프로젝트 / 워커
- 주요 사용자: 프로젝트 Owner
- 언제: 프로젝트 참여자나 AI 에이전트를 등록할 때 사용한다.
사람 워커 추가
Add Worker를 누른다.사용자 검색탭에서 핸드폰 번호로 기존 사용자를 검색하거나,수동 입력으로 이름/이메일을 입력한다.- 역할을 선택한다:
owner,member,viewer. - 저장한다.
AI 워커 추가
Add Worker를 누른다.수동 입력에서 유형을AI 에이전트로 선택한다.- 이름과
AI 식별자(identifier)를 입력한다. - 역할을 선택하고 저장한다.
AI 워커 identifier는 티켓 실행 라우팅과 동시성 제어에 필요하다. 예: ai-agent-backend, ai-agent-reviewer.
역할 기준:
| 역할 | 권장 용도 |
|---|---|
| owner | 프로젝트 설정, 워커 관리, 중요 리소스 관리 |
| member | 티켓 생성/수정과 AI 실행이 필요한 작업자 |
| viewer | 읽기 중심 참여자 |
요금제나 프로젝트당 워커 수 제한에 도달하면 초대 버튼이 비활성화된다.
10. 루프 화면
#- 접근 방법: 프로젝트 / 루프
- 언제: 여러 open 티켓을 순서대로 계획 → 작업 → 리뷰 자동화하고 싶을 때 사용한다.
- 왜: 반복적인 티켓 실행 버튼 클릭 없이 대기열 단위로 AI 작업 흐름을 구성한다.
루프 등록 절차
- 개인 설정 / AI Toolkit 설정에서 AI Toolkit을 활성화하고 provider/model/effort를 저장한다.
- 프로젝트에 identifier가 있는 활성 AI 워커를 등록한다.
- 루프 화면에서 필요하면 티켓 그룹 필터를 선택한다.
현재 화면의 open 티켓 담당 AI 일괄 변경으로 대상 티켓의 AI 담당자를 맞춘다.OPEN 티켓에서 루프에 넣을 티켓을 대기열로 이동한다.루프 대기열에서 순서를 조정한다.- 각 티켓의 스텝 설정에서
계획,작업,리뷰사용 여부와 model/effort를 지정한다. 대기 등록을 눌러 서버 루프 큐에 저장한다.- 대기 루프에서 시작 지연 시간을 조정하고 실행한다.
루프 상태
| 상태 영역 | 의미 | 사용 케이스 |
|---|---|---|
| 진행 중 루프 | 현재 실행 중이거나 일시정지된 루프 | 일시정지, 재개, 취소 |
| 대기 중 루프 | 아직 실행 전인 pending/scheduled 루프 | 수정, 시작, 취소 |
| 종료된 루프 | 완료/취소/실패 등 종료 내역 | 결과 확인, 내역 삭제 |
루프는 진행 중 루프가 있을 때 30초 주기로 자동 재조회한다. 하나의 사용자가 등록할 수 있는 루프 수와 루프 기능 사용 가능 여부는 플랜 제한을 따른다.
11. AI Toolkit 로컬 설정
#ai-toolkit은 웹에서 만든 실행 요청을 내 로컬 PC의 AI CLI로 전달한다. 즉, liveaicoding.com이 클라우드에서 내 코드를 직접 수정하는 것이 아니라, 내가 로그인해 둔 Claude Code, Copilot CLI, Codex가 내 PC에서 실행된다.
사용자는 provider를 자유롭게 선택할 수 있다. 이미 Claude Code 구독을 사용 중이면 Claude Code를, Copilot CLI를 쓰고 있다면 Copilot CLI를, Codex를 쓰고 있다면 Codex를 선택하면 된다.
ai-toolkit은 프로젝트 루트의 .ai-toolkit.json과 .mcp.json을 읽는다. 실행 파일은 ai-toolkit/ai-toolkit 또는 ai-toolkit/ai-toolkit.exe처럼 ai-toolkit 폴더에 두는 것을 기준으로 한다.
11.1 .ai-toolkit.json
{
"apiUrl": "https://liveaicoding.com/apiv1",
"userHp": "<내_휴대폰번호>",
"userKey": "<발급받은_API_인증키>",
"mcpUrl": "https://liveaicoding.com/mcp?x-user-hp=<내_휴대폰번호>&x-user-key=<발급받은_API_인증키>",
"projectKey": "WORKS",
"promptTemplate": "선택: RUN 기본 프롬프트. {ticketKey} 사용 가능",
"plan_prompt": "선택: 계획 작성 프롬프트. {ticketKey} 사용 가능",
"review_prompt": "선택: 코드 리뷰 프롬프트. {ticketKey} 사용 가능"
}
| 필드 | 필수 | 설명 |
|---|---|---|
apiUrl | 예 | Agent API base URL. 운영 예시는 /apiv1 경로를 포함한다. |
userHp | 예 | 로그인 사용자의 핸드폰 번호. Agent API의 x-user-hp로 전송된다. |
userKey | 예 | 개인 설정 / API 인증키에서 발급한 API 인증키. |
mcpUrl | 아니오 | ai-toolkit-test가 MCP를 직접 호출할 때 우선 사용한다. |
projectKey | 아니오 | 설정하면 해당 프로젝트 key prefix의 티켓만 처리한다. 여러 프로젝트 루트에서 동시에 실행할 때 유용하다. |
identifier | 아니오 | 현재 실행 라우팅에는 사용하지 않는다. 티켓 담당 AI 워커 identifier가 기준이다. |
promptTemplate | 아니오 | RUN 프롬프트를 커스터마이즈한다. |
plan_prompt | 아니오 | PLAN 프롬프트를 커스터마이즈한다. |
review_prompt | 아니오 | REVIEW 프롬프트를 커스터마이즈한다. |
11.2 실행 명령
cd ai-toolkit
# 기본 provider: Claude Code
./ai-toolkit
# Copilot CLI 사용
./ai-toolkit --provider copilot
# Codex CLI 사용
./ai-toolkit --provider codex
# 실제 AI CLI 실행 없이 큐/MCP 흐름만 검증
./ai-toolkit-test
Windows PowerShell에서는 .\ai-toolkit.exe, .\ai-toolkit-test.exe를 사용한다.
11.3 사용자 관점의 동작 방식
- 사용자가 웹에서 티켓의
계획,작업,리뷰를 누르거나 루프를 시작한다. - 서버는 실행할 티켓을 큐에 넣고, 같은 AI 워커가 동시에 여러 작업을 잡지 않도록 제어한다.
- 내 로컬 PC에서 실행 중인
ai-toolkit이 처리할 티켓을 가져온다. ai-toolkit은 선택한 provider에 맞춰 Claude Code, Copilot CLI, Codex 중 하나를 실행한다.- AI는 MCP 도구로 티켓 내용을 읽고, 댓글이나 완료 보고서를 남긴다.
- 사용자는 웹 알림, 티켓 댓글, 텔레그램 알림으로 결과를 확인한다.
12. MCP 설정
#MCP 서버는 AI 에이전트가 티켓을 읽고 댓글을 남기고 완료 처리할 수 있게 해 주는 도구 연결 지점이다. 인증은 x-user-hp, x-user-key 헤더 또는 URL query 파라미터로 처리한다.
12.1 운영 .mcp.json 예시
{
"mcpServers": {
"works-ticket": {
"type": "http",
"url": "https://liveaicoding.com/mcp?x-user-hp=<내_휴대폰번호>&x-user-key=<발급받은_API_인증키>"
}
}
}
쿼리 파라미터 방식은 일부 MCP 클라이언트가 초기 연결에서 커스텀 헤더를 누락하는 문제를 피하기 위한 호환 방식이다. 운영 환경의 네트워크 로그에 query가 기록될 수 있으므로 공용 PC나 공유 저장소에서는 노출되지 않게 관리해야 한다.
12.2 제공 MCP 도구
| 도구 | 언제 사용 | 입력 |
|---|---|---|
get_ticket_detail | 작업 전 티켓 본문과 댓글을 읽을 때 | { "ticketKey": "WORKS_1" } |
list_tickets | 프로젝트의 활성 티켓을 상태별로 볼 때 | { "projectKey": "WORKS", "status": "open" } |
get_ticket_comments | 댓글만 시간순으로 볼 때 | { "ticketKey": "WORKS_1" } |
update_ticket_status | 상태 전환이 필요할 때 | { "ticketKey": "WORKS_1", "status": "in_progress" } |
add_comment | 질문, 중간 보고, 리뷰 결과를 남길 때 | { "ticketKey": "WORKS_1", "body": "..." } |
append_ticket | 티켓 본문 끝에 계획/메모를 추가할 때 | { "ticketKey": "WORKS_1", "body": "..." } |
complete_ticket | 작업 완료와 완료 보고서를 동시에 남길 때 | { "ticketKey": "WORKS_1", "body": "완료 보고서..." } |
send_telegram | 인증 사용자에게 텔레그램 알림을 보낼 때 | { "message": "작업 완료" } |
add_comment, append_ticket, complete_ticket, send_telegram은 authorId나 chatId를 입력받지 않는다. 서버가 MCP 인증 사용자 기준으로 프로젝트 워커와 텔레그램 Chat ID를 결정한다.
12.3 권장 AI 에이전트 MCP 흐름
1. get_ticket_detail로 티켓과 댓글을 확인한다.
2. 질문이 있으면 add_comment로 질문을 남기고 필요 시 backlog로 돌린다.
3. 작업을 시작할 수 있으면 in_progress 상태로 전환된다.
4. 코드/문서 작업을 수행한다.
5. complete_ticket로 done 전환과 완료 보고서를 함께 남긴다.
6. 필요하면 send_telegram으로 사용자에게 완료 사실을 알린다.
13. 텔레그램 설정
#13.1 사용자: 봇 추가 및 Chat ID 등록
- 텔레그램 앱에서 검색창에
@liveaicoding_bot을 입력하고 봇을 찾는다. - 봇 프로필 화면에서
시작(Start)버튼을 누르거나 채팅창에/start를 입력한다. - 봇이 응답하면 채팅창에
/id를 입력한다. 봇이 내 Chat ID 숫자를 알려 준다. - liveaicoding.com의 개인 설정 / 프로필 / 알림 설정 / 텔레그램 알림에서 Chat ID를 입력하고
저장한다. - 이후 AI 에이전트가
send_telegram을 호출하면 내 텔레그램으로 메시지가 온다.
Chat ID를 빈 값으로 저장하면 텔레그램 알림 수신이 해제된다.
13.2 AI 에이전트: 메시지 발송
{
"message": "WORKS_1 티켓 작업이 완료되었습니다."
}
MCP send_telegram은 plain text로 메시지를 보낸다. chatId를 직접 입력할 필요 없다. 서버가 인증된 사용자의 프로필에 저장된 Chat ID를 자동으로 사용한다.
13.3 자주 발생하는 오류
| 증상 | 원인 | 해결 |
|---|---|---|
| Chat ID 미설정 | 프로필에 Chat ID 없음 | 개인 설정 / 프로필에서 저장 |
chat not found | 봇과 대화 시작 전 | 텔레그램에서 @liveaicoding_bot에게 /start 전송 |
bot was blocked | 사용자가 봇 차단 | 봇 차단 해제 후 재시도 |
14. 시나리오별 사용 케이스
#시나리오 A. 새 프로젝트를 만들고 AI 작업 준비
- 프로젝트 화면에서 새 프로젝트를 만든다.
- 프로젝트 / 워커에서 사람 워커를 추가한다.
- 같은 화면에서 AI 워커를 추가하고 identifier를 입력한다.
- 개인 설정 / AI Toolkit 설정에서 provider/model/effort를 저장한다.
- 개인 설정 / API 인증키에서 키를 발급한다.
- 로컬
.ai-toolkit.json,.mcp.json에 API 키와 MCP URL을 설정한다. - 내 로컬 PC에서 사용할 AI CLI에 로그인되어 있는지 확인한다.
ai-toolkit을 실행한다.
시나리오 B. 단일 티켓을 AI에게 구현시키기
- 프로젝트 / 티켓에서 새 티켓을 만든다.
- 담당자를 identifier가 있는 AI 워커로 지정한다.
- 티켓 상세에서 model/effort를 고른다.
작업버튼을 누른다.ai-toolkit이 티켓을 가져와 선택한 AI CLI를 실행한다.- AI가 MCP
complete_ticket으로 완료 보고서를 남기면 티켓이done이 된다.
시나리오 C. 구현 전에 계획만 받고 싶을 때
- 티켓 상태를
open으로 유지한다. - 담당자를 AI 워커로 지정한다.
- 티켓 상세의
계획버튼을 누른다. - AI는 plan 모드로 실행되어 티켓 본문 또는 댓글에 계획을 남긴다.
- 계획 검토 후 사람이 티켓을 수정하거나
작업을 실행한다.
시나리오 D. 코드 리뷰와 구현 검증을 요청하기
- 리뷰 대상 티켓을
open상태로 준비한다. - 담당 AI 워커와 model/effort를 설정한다.
- 티켓 상세에서
리뷰버튼을 누른다. - AI는 티켓의 작업 계획, 요구사항, 구현 결과를 비교해 리뷰한다.
- AI는 리뷰 결과를 MCP
add_comment로 남긴다. - 웹 알림 또는 티켓 댓글에서 결과를 확인한다.
시나리오 E. 여러 티켓을 루프로 순차 실행
- 티켓 그룹과 open 티켓을 준비한다.
- AI Toolkit을 활성화한다.
- 프로젝트 / 루프에서 그룹 필터를 선택한다.
- 필요하면 open 티켓 담당 AI를 일괄 변경한다.
- 티켓을 대기열로 이동하고 순서를 조정한다.
- 티켓별로 계획/작업/리뷰 스텝을 켜고 model/effort를 지정한다.
대기 등록후 대기 루프에서 실행한다.- 진행 중 루프에서 일시정지/재개/취소를 관리한다.
시나리오 F. 외출 중 모바일에서 작업 이어가기
- 외출 전 로컬 PC에서
ai-toolkit을 실행해 둔다. - 모바일 브라우저로 liveaicoding.com에 로그인한다.
- 새 티켓을 만들거나 기존 open 티켓을 선택한다.
- 담당 AI 워커와 model/effort를 확인한다.
계획,작업,리뷰중 필요한 버튼을 누른다.- 완료 결과는 티켓 댓글, 웹 알림, 텔레그램 알림으로 확인한다.
시나리오 G. AI가 사용자에게 완료 알림 보내기
- 텔레그램에서
@liveaicoding_bot을 검색해/start를 보낸다. /id명령어로 Chat ID를 확인한다.- 개인 설정 / 프로필의
텔레그램 알림에 Chat ID를 저장한다. - AI 에이전트는 작업 완료 후
complete_ticket을 호출한다. - 추가로
send_telegram을 호출해 완료 메시지를 보낸다.
시나리오 H. 반복 지시문을 스니펫으로 재사용
- 프로젝트 / 스니펫에서 스니펫을 만든다.
- 태그로
backend,frontend,review같은 분류를 붙인다. - 다른 프로젝트에서도 쓰려면 공유 프로젝트를 선택한다.
- 티켓 작성 화면에서
스니펫 삽입을 열고 템플릿을 넣는다.
시나리오 I. 프로젝트 백업 후 복원
- 개인 설정 / 백업에서 프로젝트를 선택한다.
- ZIP 백업을 다운로드한다.
- 복원이 필요할 때 같은 화면에서 ZIP과 충돌 처리 전략을 선택한다.
- 복원 결과 배너를 확인한다.
15. 문제 해결 체크리스트
#| 문제 | 확인할 것 |
|---|---|
| 티켓 상세의 계획/작업/리뷰 버튼이 비활성화됨 | AI Toolkit 활성화, 티켓 open 상태, 담당 AI 워커, identifier 존재 여부 |
| ai-toolkit이 티켓을 못 찾음 | .ai-toolkit.json의 apiUrl, userHp, userKey, 선택적 projectKey prefix |
| MCP 도구 인증 실패 | .mcp.json URL의 x-user-hp, x-user-key, 개인 설정 / API 인증키 재발급 여부 |
| 같은 티켓이 중복 실행되는 것처럼 보임 | identifier별 processing lock, 알림 목록, 이미 실행 중인 로컬 ai-toolkit |
| 루프에 open 티켓이 보이지 않음 | AI Toolkit 활성화 여부, 그룹 필터, 티켓 상태, 이미 대기열에 들어간 티켓 여부 |
| 루프 시작이 막힘 | 진행 중 루프 존재 여부, 플랜 제한, 루프 개수 제한 |
| 텔레그램 발송 실패 | 프로필 Chat ID, @liveaicoding_bot에게 /start 전송 여부, 봇 차단 여부 |
| 인증키 전체 값을 다시 볼 수 없음 | 보안 정책상 재조회 불가. 개인 설정 / API 인증키에서 새 키 재발급 |
16. 보안 주의사항
#.ai-toolkit.json,.mcp.json에는 개인 핸드폰 번호와 API 키가 들어가므로 커밋하지 않는다.- API 인증키는 생성 시 한 번만 전체 표시된다.
- MCP URL query 인증은 편리하지만 네트워크 로그에 남을 수 있으므로 공용 PC나 공유 환경에서는 주의한다.
- AI 워커 identifier는 비밀값이 아니라 실행 그룹 키다. 하지만 의미 없는 난수보다 역할이 드러나는 이름을 쓰면 운영 확인이 쉽다.
complete_ticket은in_progress티켓에만 사용한다. 단순 질문이나 중간 보고는add_comment를 사용한다.