Communitygithub.com

prevu

Prevu CLI 실행, 구성, 디버깅 시 사용 - 스테이징 환경 관리, 포트 노출, SSH 접속, API 토큰, 로그인, 환경 목록 조회, 서비스 명령어 등을 다룹니다.

prevu란 무엇인가요?

Prevu는 코딩 에이전트를 위한 지속적인 Linux VM을 프로비저닝하는 서비스로, SSH 접속, 포트 노출, 공개 URL 제공을 지원합니다. 이 스킬은 `prevu` CLI의 설치, 명령어 맵, 출력 계약(JSON 형식), 종료 코드, 그리고 하드 규칙을 정의한 참조 문서입니다. CLI는 Node.js 20 이상에서 npm으로 설치하며, `prevu auth login` 또는 `PREVU_TOKEN` 환경 변수로 인증합니다. 명령어는 `auth`, `env`, `keys` 네임스페이스로 구성되며, 모든 스크립트 호출은 `--format json` 플래그를 사용하여 일관된 출력 구조를 받아야 합니다. 종료 코드는 0(성공)부터 8(타임아웃)까지 의미가 정해져 있어 에러 복구 로직을 안정적으로 작성할 수 있습니다. 이 스킬은 Cursor, Claude Code 등 다양한 코딩 에이전트 플랫폼에서 Prevu CLI를 사용할 때 유용합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/prevu-cloud/prevu/tree/main/skills/prevu

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Prevu CLI

Prevu는 SSH로 접속하고, 포트를 노출하며, 공개 URL을 통해 접근할 수 있는 지속적인 Linux VM을 프로비저닝합니다. prevu CLI가 지원되는 인터페이스입니다(인프라 도구는 사용하지 않음).

이 스킬은 참조입니다: 설치, 명령어 맵, 출력 계약, 종료 코드 등을 다루며, 더 자세한 내용은 references/*.md에 있습니다. 다단계 사용자 워크플로(로컬 개발을 휴대폰에서 볼 수 있는 프리뷰로 미러링, WIP 브랜드 공유 등)의 경우 prevu-flows 스킬을 참고하세요. 사용자가 단일 명령어보다 시나리오를 설명할 때 이 스킬을 로드하세요.

설치 및 로그인

npm install -g @prevu/cli
prevu --version              # 0.2.0+ (slug-only URL 및 env exec 필요)
prevu auth login             # https://app.prevu.cloud/keys 에서 토큰을 붙여넣습니다.

Node >= 20이 필요합니다. 토큰은 ~/.prevu/config.json (모드 0600)에 저장됩니다.

CI / 비-TTY 환경:

export PREVU_TOKEN=prv_...

해결 순서: --token 플래그 -> PREVU_TOKEN 환경 변수 -> ~/.prevu/config.json.

PREVU_API_URL의 기본값은 https://app.prevu.cloud입니다. 자체 호스팅 Prevu API의 경우에만 --api-url로 재정의하세요.

명령어 맵

네임스페이스명령어자세한 내용 위치
authlogin / logout / whoamireferences/auth.md
envlist, get, create, destroyreferences/env.md
envwaitreferences/env.md + references/lifecycle.md
envssh, ssh-command, execreferences/env.md
envurlsreferences/env.md
envservice start/list/logs/restart/stopreferences/env.md
envexpose, unexposereferences/env.md
keyslistreferences/keys.md

prevu <namespace> --help를 실행하면 인라인 도움말을 볼 수 있습니다.

출력 계약 - 파싱할 때 항상 --format json 사용

기본 출력은 사람이 읽을 수 있는 테이블입니다. 스크립트 호출 시에는 항상 --format json 플래그를 사용하세요. 봉투(envelope)는 고정되어 있습니다:

// 성공
{ "data": { ... } }
// 실패
{ "error": { "type": "auth", "message": "...", "hint": "..." } }

NO_COLOR=1 또는 --no-color는 테이블 모드에서 ANSI를 제거합니다. JSON은 항상 색상이 없습니다.

종료 코드 (stderr 텍스트가 아닌 이 코드를 파싱하세요)

코드유형의미
0성공계속 진행
1일반출력 후 중단
2사용법잘못된 플래그 - 수정 후 재시도
3인증사용자에게 prevu auth login 실행 안내
4찾을 수 없음환경/키가 존재하지 않음 - 생성하거나 다른 것을 선택
5충돌이미 존재함 / 잘못된 상태 - 일반적으로 무해함
6속도 제한최소 30초 대기 후 재시도
7서버일시적 오류 - 한 번 재시도
8시간 초과env wait 실행 시간 초과 - 대시보드 열기

일반적인 복구 예시:

prevu env get my-project --format json >/dev/null 2>&1
case $? in
  0) ;;                                    # 존재함
  4) prevu env create my-project --format json ;;
  3) echo "Run \`prevu auth login\`" >&2; exit 1 ;;
  *) exit 1 ;;
esac

하드 규칙 - 절대 위반하지 마세요

  1. 환경은 지속형 유료 제품입니다. 의도적으로 재사용하며; TTL이나 세션 종료 시 자동으로 삭제하지 마세요.
  2. 프로젝트당 하나의 환경, 작업당이 아닙니다. 세션 간에 동일한 슬러그를 재사용하세요. 사용자가 동일한 작업 공간으로 돌아옵니다.
  3. 브라우저 프리뷰에는 HTTPS 노출을 사용하세요 (기본값). TCP 모드는 Postgres와 같은 비-HTTP 서비스용입니다.
  4. 공개 URL을 눈에 띄게 출력하세요. 사용자는 종종 휴대폰을 사용 중입니다. URL을 셸 출력에 묻지 마세요.
  5. 장기 실행 앱 프로세스에는 env service를 사용하세요. nohup, PID 파일, 광범위한 pkill -f 명령어를 직접 작성하지 마세요.
  6. CLI/API만 지원되는 인터페이스입니다. '인프라 도구'를 시도하지 마세요.

언제 더 자세한 내용을 로드할지

  • references/auth.md - 로그인 흐름, 토큰 위치, 종료 코드 3 복구.
  • references/env.md - 모든 env 하위 명령어, 입력, 예제, SSH 키 해결 규칙.
  • references/keys.md - 저장된 SSH 키 모델, 중복 제거, --ssh-key-id가 입력을 줄이는 경우.
  • references/lifecycle.md - 상태 머신, wait가 반환되는 시점, 파괴적 작업 안내.
  • references/troubleshooting.md - 구체적인 실패 모드와 해결 방법.

이 스킬을 로드하지 말아야 할 때

  • 순수 로컬 파일 편집 또는 읽기 전용 저장소 작업 - Prevu는 코드를 원격으로 실행하기 위한 것입니다.
  • 프로덕션 배포 / CI - Prevu는 스테이징용입니다.
  • 사용자가 명시적으로 "내 노트북에 남아 있어"라고 말한 경우.

워크플로 시나리오는 prevu-flows에 있습니다.

사용자가 내 개발 환경을 휴대폰에 미러링, 모바일에서 프리뷰 보기, 이 브랜치를 URL로 공유, 자리 비움, 코딩 계속을 요청하면 - 이 스킬 대신(또는 추가로) prevu-flows 스킬을 로드하세요. 해당 흐름은 여기의 명령어를 올바른 기본값과 함께 다단계 루프로 연결합니다.

관련 스킬