Skip to main content
Glama
kanyun-inc

ai-explore-review-loop

by kanyun-inc

AI Explore Review Loop Plugin

코딩 에이전트 세션이 지속적(durable)이고 정확한 헤드(exact-head) 기준의 풀 리퀘스트 리뷰를 기다렸다가, GitHub를 폴링하지 않고 동일한 리뷰/수정/푸시 루프를 계속할 수 있게 해주는 오픈소스 Claude Code 플러그인입니다.

이 플러그인은 다음 요소를 결합합니다:

  • PostToolUse, Stop, SessionStart 훅(Hooks);

  • 일반적인 stdio MCP 서버;

  • Supabase 영속 읽기 및 Realtime 웨이크업;

  • 정확한 PR 헤드 SHA 검증;

  • 멱등성이 보장된 로컬·서버 측 리뷰 접수(receipt);

  • status, pause, resume, stop 및 리뷰 처리를 위한 스킬.

Anthropic MCP Channels는 필요하지 않으며, 호환되는 타사 모델 제공자를 사용하는 Claude Code 환경에서도 실행할 수 있습니다.

포함 내용

이 공개 저장소에는 설치 가능한 플러그인, 빌드 가능한 소스, 테스트, 공개 문서만 포함되어 있습니다. 비공개 서버 측 컨트롤 플레인, Pod 주소, GitHub App 구성, Supabase 마이그레이션, Hermes 배포 스크립트, 운영 기준(operational baseline)은 의도적으로 제외되었습니다.

전체 시스템은 다음 인증된 Supabase RPC를 노출하는 호환 백엔드가 필요합니다:

  • get_ai_explore_review_state(repo, pr_number, head_sha);

  • ack_ai_explore_review_result(result_id, client_id, session_hash, status, new_head).

인증된 사용자는 Realtime 웨이크업을 위해 해당 github_pr_state 행에 대한 RLS SELECT 접근 권한도 가져야 합니다. Realtime은 최종 전달 방식으로 취급되지 않습니다. MCP 도구는 항상 영속(durable) 상태를 다시 읽습니다.

Related MCP server: ai-review

Rush 마켓플레이스 상태

Rush 마켓플레이스 배포는 아직 활성화되지 않았습니다. 현재 Rush Git 임포터와 설치 프로그램은 인식되는 Skills와 .mcp.json은 보존하지만, 이 플러그인에 필요한 Hook과 bin/, dist/ 파일을 생략합니다. 실제 설치로 확인한 뒤 평가용 항목(trial entry)은 제거되었습니다.

같은 이름으로 Skills+MCP 축소 패키지를 게시하지 마십시오. 자동 리뷰 루프와 MCP 실행 파일이 없는데도 설치된 것처럼 보일 수 있기 때문에 릴리즈하지 마세요. Rush 배포는 플랫폼이 임의의 Claude 플러그인 자산과 훅(Hooks)을 end-to-end로 보존한 이후에 활성화할 수 있습니다.

체크아웃 없이 GitHub에서 설치

claude plugin marketplace add kanyun-inc/ai-explore-review-loop-plugin
claude plugin install ai-explore-review-loop@ai-explore --scope user

구성

플러그인에는 Supabase 프로젝트 URL, 공개 anon/publishable 키, 개발자 인증(Auth) 세션이 필요합니다. 실제 터미널에서 공개 GitHub 패키지를 통해 로그인 명령을 실행하세요. 그러면 저장소 체크아웃이 필요 없고, 비밀번호가 모델 트랜스크립트(transcript)에 남지 않게 됩니다:

npm exec --yes \
  --package=github:kanyun-inc/ai-explore-review-loop-plugin \
  -- ai-explore-review-loop login \
  --url 'https://your-project.example.com' \
  --anon-key 'YOUR_PUBLIC_ANON_OR_PUBLISHABLE_KEY' \
  --email 'developer@example.com'

비밀번호는 드럼 반향(echo) 없이 입력되며 저장되지 않습니다. 런타임 상태와 새로고침 토큰(refresh token)은 저장소 외부의 모드 0600 사용자 구성 파일에 저장됩니다.

개발

Node.js 22 이상이 필요합니다:

npm ci
npm run build
npm run check
npm run validate:plugin
npm run security:scan

생성된 플러그인 번들은 커밋되어 있으므로, 마켓플레이스 설치 시 개발자 컴퓨터에서 npm install을 실행하지 않습니다.

보안 속성

  • 데이터베이스 URL 또는 Supabase 서비스 관리자(service-role) 자격 증명을 사용하지 않음;

  • GitHub App 개인 키나 worker 비밀번호 사용하지 않음;

  • 공유 관리자 자격 증명 대신 개발자 수준 RLS 사용;

  • 리뷰를 반환하거나 처리하기 전에 정확한 헤드(Exact HEAD) 기준으로 바인딩;

  • 중복된 Realtime 이벤트는 무해;

  • Stop 훅은 인프라/인증 오류 시 개발자를 잠그는(hard) 대신 열린 쪽으로 실패(fail-open);

  • GitHub 리뷰 텍스트는 신뢰할 수 없는 입력으로 간주하고 현재 diff와 대조하여 검증합니다.

SECURITY.md를 참고하여 취약점을 신고하세요.

라이선스

Apache License 2.0.. LICENSE, NOTICE, THIRD_PARTY_NOTICES.md를 참고하십시오.

Related MCP Connectors

Related MCP Servers