bugAgent MCP Server

공식

bugAgent를 MCP 호환 AI 클라이언트에 연결하세요. AI 코딩 어시스턴트에서 직접 버그, 기능 요청 등을 제출하고 분류하며 관리할 수 있습니다. 컨텍스트 전환이나 복사-붙여넣기 없이 문제를 설명하기만 하면 bugAgent가 나머지를 처리합니다.

문서

MCP v1

내비게이션

모델 컨텍스트 프로토콜

MCP

bug_Agent_를 모든 MCP 호환 AI 클라이언트에 연결하세요.

AI 코딩 어시스턴트에서 직접 버그, 기능 요청 등을 파일링, 분류, 관리할 수 있습니다. 컨텍스트 전환도, 복사-붙여넣기도 필요 없습니다. 이슈를 설명하기만 하면 bug_Agent_가 나머지를 처리합니다.

Discord 커뮤니티 [email protected]

시작하기

bug_Agent_ MCP 서버를 사용하면 AI 클라이언트가 모델 컨텍스트 프로토콜을 통해 버그 보고서, 기능 요청, 개선 사항 등을 생성, 조회, 관리할 수 있습니다. 로컬에서 실행되며 bug_Agent_의 클라우드 API와 통신합니다.

1

API 키 받기

app.bugagent.com에 가입하고 콘솔에서 API 키를 생성하세요.

2

AI 클라이언트 구성하기

클라이언트 설정에 bug_Agent_를 MCP 서버로 추가하세요(아래 설정 참조).

3

버그 파일링 시작하기

자연어로 버그를 설명하면 bug_Agent_가 자동으로 분류, 보강, 저장합니다.

빠른 예시

# Create a bug report
"File a bug: Login button is unresponsive on iOS Safari.
Steps: tap login, nothing happens. Expected: navigate to
dashboard. Severity: high."

# bugAgent auto-classifies as UI bug, severity high

# File a feature request
"Feature request: Add dark mode toggle to the
settings page. Users have asked for this in surveys."

# Auto-classified as feature-request, severity medium

설정

설치

전역 설치가 필요하지 않습니다. npx을 사용하여 필요 시 MCP 서버를 실행하세요:

npx @bugagent/mcp-server

API 키 구성하기

처음 연결하면 bug_Agent_가 API 키를 입력하라는 메시지를 표시합니다. 환경 변수를 통해 설정할 수도 있습니다:

export BUGAGENT_API_KEY=ba_live_your_key_here

bug_Agent_ 콘솔에서 API 키를 받으세요.

MCP 클라이언트 구성

MCP 클라이언트의 구성 파일에 다음을 추가하세요:

mcp.json

{
  "mcpServers": {
    "bugagent": {
      "command": "npx",
      "args": ["-y", "@bugagent/mcp-server"],
      "env": {
        "BUGAGENT_API_KEY": "ba_live_your_key_here"
      }
    }
  }
}

💡

ba_live_your_key_here를 콘솔에서 받은 실제 API 키로 교체하세요.

서버에 연결하기

bug_Agent_ MCP 서버는 스트리밍 가능 HTTP 전송을 통해 https://mcp.bugagent.com/mcp에서 운영됩니다. 아래 8가지 클라이언트 중 하나에서 연결하세요 — 작업 흐름에 맞는 것을 선택하세요.

🔑

먼저 API 키를 받으세요. app.bugagent.com/dashboard/settings/api-keys에 로그인하여 API 키 생성을 클릭하고 값을 복사하세요(ba_live_로 시작). 한 번만 표시되므로 안전한 곳에 붙여넣으세요. 아래 모든 예시에서 이 키를 사용합니다.

옵션 1 — MCP 인스펙터 (웹 UI, 최초 테스트에 권장)

공식 Anthropic 도구입니다. 로컬 웹 UI를 실행하여 모든 도구를 클릭하고 매개변수를 채우고 응답을 확인할 수 있습니다. 설정이 필요 없고 IDE도 필요하지 않습니다.

macOS (터미널)

터미널

npx @modelcontextprotocol/inspector

Windows (PowerShell 또는 CMD)

PowerShell

열리는 브라우저 UI에서:

  1. 전송 유형: Streamable HTTP 선택
  2. URL: https://mcp.bugagent.com/mcp
  3. 연결 유형: 프록시 선택 (기본값 — 인스펙터가 브라우저 CORS를 우회하기 위해 로컬 Node 프로세스를 통해 프록시함)
  4. 인증 탭 클릭 → 사용자 정의 헤더 추가:
    • 헤더 이름: Authorization
    • : Bearer ba_live_YOUR_KEY_HERE
  5. 연결을 클릭합니다. 왼쪽 패널에 60개 이상의 bug_Agent_ 도구가 표시됩니다.
  6. 도구(예: list_bug_reports)를 클릭하고 매개변수를 채운 후 도구 실행을 클릭합니다. 오른쪽에 응답이 표시됩니다.

전제 조건: Node.js 18 이상. 없으면 nodejs.org에서 설치하세요.

옵션 2 — Claude 데스크톱 (Mac + Windows)

Claude 데스크톱 앱을 사용하는 경우 bug_Agent_를 영구 MCP 서버로 추가할 수 있습니다. 그러면 Claude는 모든 대화에서 모든 bug_Agent_ 도구를 사용할 수 있습니다.

macOS

  1. Claude 데스크톱 열기 → 메뉴 막대 Claude → 설정 → 개발자 → 구성 편집. ~/Library/Application Support/Claude/claude_desktop_config.json이 열립니다.
  2. mcpServers 아래에 bug_Agent_ 항목 추가:
    claude_desktop_config.json
{  
  "mcpServers": {  
    "bugagent": {  
      "type": "http",  
      "url": "https://mcp.bugagent.com/mcp",  
      "headers": {  
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"  
      }  
    }  
  }  
}  
  1. 파일을 저장하고 Claude 데스크톱을 완전히 종료합니다(Cmd+Q, 창을 닫는 것만으로는 안 됨).
  2. Claude 데스크톱을 다시 실행합니다. 채팅 입력창 하단의 도구 망치 아이콘에 bug_Agent_ 도구가 표시됩니다.
  3. 시도해 보세요: “가장 최근 버그 보고서 5개를 나열해 줘” — Claude가 자동으로 list_bug_reports를 호출합니다.

Windows

  1. Claude 데스크톱 열기 → 파일 → 설정 → 개발자 → 구성 편집. %APPDATA%\Claude\claude_desktop_config.json이 열립니다(일반적으로 C:\Users\YourName\AppData\Roaming\Claude\claude_desktop_config.json).
  2. macOS 섹션에 표시된 동일한 JSON 블록을 추가합니다.
  3. 파일을 저장하고 시스템 트레이에서 Claude 데스크톱을 완전히 종료한 후(Claude 아이콘 우클릭 → 종료) 다시 실행합니다.
  4. 도구 망치 아이콘에 bug_Agent_ 도구가 표시됩니다.

옵션 3 — Claude Code (CLI)

터미널에서 Claude Code(Claude의 CLI 버전)를 사용하는 경우 하나의 명령으로 bug_Agent_ 서버를 등록하세요. macOS, Linux, Windows에서 동일하게 작동합니다.

터미널 / PowerShell

claude mcp add --transport http bugagent https://mcp.bugagent.com/mcp \
  --header "Authorization: Bearer ba_live_YOUR_KEY_HERE"

그런 다음 Claude Code 세션을 다시 시작하세요. 연결되었는지 확인하세요:

claude mcp list

목록에 bugagent이 녹색 점과 함께 표시되어야 합니다. 모든 채팅에서 도구 사용 시작: “이번 달 탐색 사용량을 보여줘.”

나중에 제거하려면:

claude mcp remove bugagent

옵션 4 — OpenAI Codex CLI

OpenAI Codex CLI를 사용하는 경우 영구 등록을 위해 ~/.codex/config.toml에 bug_Agent_를 추가하거나 일회성 세션을 위해 인라인으로 구성을 전달하세요.

영구 등록 (구성에 추가)

~/.codex/config.toml

[[mcp_servers]]
name = "bugagent"
type = "http"
url  = "https://mcp.bugagent.com/mcp"

[mcp_servers.headers]
Authorization = "Bearer ba_live_YOUR_KEY_HERE"

인라인 — 단일 세션

터미널

codex \
  --mcp-server '{"name":"bugagent","type":"http","url":"https://mcp.bugagent.com/mcp","headers":{"Authorization":"Bearer ba_live_YOUR_KEY_HERE"}}' \
  "list the last 5 bug reports"

Codex는 자연어 프롬프트에서 도구 호출을 자동으로 해결합니다. 시도해 보세요: “심각도별로 정렬된 열린 버그를 나열해 줘.”

옵션 5 — Cursor (Mac + Windows)

Cursor에는 MCP 지원 기능이 내장되어 있습니다. bug_Agent_를 한 번 추가하면 Cursor 내부의 AI 어시스턴트가 편집기를 떠나지 않고도 버그를 파일링하고, 보고서를 나열하고, 스캔을 실행하는 등의 작업을 수행할 수 있습니다.

  1. Cursor 열기 → 설정 (Mac에서는 Cmd+, / Windows에서는 Ctrl+,) → 왼쪽 사이드바에서 MCP 선택.
  2. + 새 MCP 서버 추가 클릭.
  3. HTTP 전송 유형 선택.
  4. 입력:
    • 이름: bugagent
    • URL: https://mcp.bugagent.com/mcp
    • 헤더 이름: Authorization
    • 헤더 값: Bearer ba_live_YOUR_KEY_HERE
  5. 저장 클릭. 연결되면 Cursor에 녹색 표시기가 나타납니다.
  6. Cursor 채팅 열기(Cmd+L / Ctrl+L) 후 “'로그인 고장'이라는 제목의 버그 보고서를 심각도 높음으로 생성해 줘” 입력. Cursor가 create_bug_report을 호출합니다.

대안: Cursor는 ~/.cursor/mcp.json(Mac) 또는 %USERPROFILE%\.cursor\mcp.json(Windows)도 읽습니다. Claude 데스크톱 섹션에 표시된 동일한 JSON 형식을 추가하세요.

옵션 6 — Continue 확장 프로그램이 있는 VS Code (Mac + Windows)

VS Code를 선호하는 경우 Continue 확장 프로그램이 MCP 서버를 기본적으로 지원합니다.

  1. VS Code 마켓플레이스에서 Continue 확장 프로그램을 설치하세요.
  2. Continue 구성 열기: 명령 팔레트(Cmd+Shift+P / Ctrl+Shift+P) → Continue: config.json 열기. 파일 위치:
    • macOS: ~/.continue/config.json
    • Windows: %USERPROFILE%\.continue\config.json
  3. mcpServers 항목 추가:
    ~/.continue/config.json
{  
  "mcpServers": [  
    {  
      "name": "bugagent",  
      "type": "streamable-http",  
      "url": "https://mcp.bugagent.com/mcp",  
      "requestOptions": {  
        "headers": {  
          "Authorization": "Bearer ba_live_YOUR_KEY_HERE"  
        }  
      }  
    }  
  ]  
}  
  1. 저장. Continue가 자동으로 다시 로드되고 사이드바에 bug_Agent_ 도구가 표시됩니다.
  2. Continue 채팅 패널을 열고 시도해 보세요: “내 보안 스캔을 나열해 줘.”

기타 VS Code MCP 지원 확장 프로그램: Cline, Roo Code, Windsurf(포크) 모두 mcpServers 키와 HTTP 전송을 사용하는 유사한 JSON 구성 패턴을 따릅니다.

옵션 7 — OAuth 인식 호스트 (예시로 표시된 Claude.ai 웹)

일부 MCP 호스트는 OAuth 2.0을 통해 인증하며 베어러 API 키 대신 정적 client_idclient_secret을 미리 요구합니다. 이러한 호스트의 경우 bug_Agent_ 대시보드에서 작업 공간 범위의 OAuth 자격 증명 쌍을 생성하여 호스트의 커넥터 양식에 붙여넣습니다. 자격 증명은 MCP 호스트에 구애받지 않습니다 — Authorization Code + PKCE를 지원하는 모든 OAuth 클라이언트에서 사용할 수 있습니다. 아래 연습에서는 가장 일반적인 예로 Claude.ai 웹 앱을 사용합니다.

  1. bug_Agent_에서: 설정 → 개발자 → MCP 커넥터 열기. 커넥터 생성을 클릭하고 호스트를 설명하는 이름(예: “Claude.ai (work)”)을 지정하고 MCP 호스트가 요구하는 리디렉션 URI를 붙여넣고(Claude.ai 웹 앱의 경우 https://claude.ai/api/mcp/auth_callback — 다른 호스트는 해당 커넥터 문서 확인) 인증 방법으로 Confidential을 선택합니다. 성공 화면에 한 번 표시되는 client_idclient_secret을 복사합니다.
  2. MCP 호스트의 커넥터 / OAuth 설정에서 붙여넣기:
    • 서버 URL: https://mcp.bugagent.com/mcp
    • 클라이언트 ID + 클라이언트 비밀번호: 1단계에서 가져옴
    • 인증 URL: https://mcp.bugagent.com/authorize
    • 토큰 URL: https://mcp.bugagent.com/token
      Claude.ai의 경우: claude.ai/customize/connectors로 이동하여 MCP 커넥터 추가를 클릭합니다.
  3. 저장. 호스트가 bug_Agent_로 리디렉션하여 로그인(Google 또는 이메일/비밀번호 — 대시보드에 사용하는 방법)하고 동의를 승인한 다음 OAuth 핸드셰이크를 완료합니다.
  4. 동일한 설정 페이지에서 생성된 커넥터를 관리하고 취소합니다. 취소는 즉시 적용됩니다 — 해당 커넥터의 다음 요청은 invalid_client을 반환합니다.

참고: Claude Code, Cursor, VS Code 및 MCP 인스펙터는 이 흐름이 필요하지 않습니다 — 동적 클라이언트 등록(RFC 7591)을 자동으로 처리하고 위에 표시된 대로 API 키를 통해 인증합니다. MCP 커넥터 양식은 정적 OAuth 자격 증명이 필요한 호스트에만 해당됩니다.

옵션 8 — curl을 사용한 직접 HTTP (터미널)

클라이언트 없이 서버를 직접 테스트하거나 스크립트에 통합하려는 경우 curl을 사용하여 HTTP 엔드포인트에 접근할 수 있습니다. MCP 프로토콜은 스트리밍 가능 HTTP를 통한 JSON-RPC 2.0입니다.

macOS / Linux

터미널

# Set your API key as a variable
export BUGAGENT_API_KEY="ba_live_YOUR_KEY_HERE"

# 1. List all available tools
curl -N -s https://mcp.bugagent.com/mcp \
  -H "Authorization: Bearer $BUGAGENT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

# 2. Call a tool — list 5 reports from a specific project
curl -N -s https://mcp.bugagent.com/mcp \
  -H "Authorization: Bearer $BUGAGENT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc":"2.0",
    "id":2,
    "method":"tools/call",
    "params":{
      "name":"list_bug_reports",
      "arguments":{"project":"bugagent","limit":5}
    }
  }'

Windows (PowerShell)

PowerShell

# Set your API key
$env:BUGAGENT_API_KEY = "ba_live_YOUR_KEY_HERE"

# Use Invoke-RestMethod (PowerShell's curl equivalent)
$headers = @{
  "Authorization" = "Bearer $env:BUGAGENT_API_KEY"
  "Content-Type" = "application/json"
  "Accept" = "application/json, text/event-stream"
}

# 1. List all tools
$body = '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Invoke-RestMethod -Uri "https://mcp.bugagent.com/mcp" `
  -Method Post -Headers $headers -Body $body

# 2. Call list_bug_reports for a specific project
$body = @{
  jsonrpc = "2.0"
  id = 2
  method = "tools/call"
  params = @{
    name = "list_bug_reports"
    arguments = @{ project = "bugagent"; limit = 5 }
  }
} | ConvertTo-Json -Depth 5

Invoke-RestMethod -Uri "https://mcp.bugagent.com/mcp" `
  -Method Post -Headers $headers -Body $body

응답은 서버 전송 이벤트(MCP 스트리밍 가능 HTTP 표준)로 도착합니다. 각 청크는 data: 접두사가 붙은 줄이며 그 뒤에 JSON 객체가 옵니다. Accept: application/json, text/event-stream 헤더는 필수입니다 — 서버는 이 헤더 없이 요청을 거부합니다.

ℹ️

401 Unauthorized 문제 해결: 설정 → API 키에서 API 키가 취소되지 않았는지 확인하세요. 키는 ba_live_로 시작합니다. 여전히 문제가 있으면 키를 재생성하고 다시 시도하세요.

사용해 보기 — 평이한 영어 프롬프트

연결되면 도구 이름이나 매개변수를 알 필요가 없습니다. 원하는 것을 평이한 영어로 설명하면 AI 어시스턴트가 올바른 bug_Agent_ 도구를 자동으로 호출합니다.

버그 보고서

AI 어시스턴트에게 요청하기

List my 5 most recent bug reports
Show all open critical bugs in the Auth project
Create a bug titled "Login broken on Safari" with severity s2
Update TEST-451 status to in-progress and assign it to me
Add a comment to TEST-451: "root cause confirmed — null check missing in auth middleware"
Show me everything filed this week, grouped by severity

테스트 관리

Create a test suite called "Smoke Tests" with cases for login, checkout, and account settings
Run the Regression suite and list all failures
Show failing test cases from the last 7 days
Which test cases have never been run in the past 90 days?
Get a pass-rate trend for this month vs last month

보안 및 성능

Run a security scan on https://app.example.com
Get this month's security scan results — show only high and critical findings
Create a performance test for the landing page and check Lighthouse scores
What are the Core Web Vitals for our checkout flow?

Playwright 자동화

Create a Playwright script that logs in and verifies the dashboard loads
Run the checkout automation on iPhone 15 Pro on a real device
Optimize the login automation script
Show runs for the checkout automation — any failures?
Schedule the smoke test suite to run every weekday at 6 AM UTC

탐색적 AI

Run an exploratory AI session on https://app.example.com with 5 parallel agents
Get the latest exploration run results — list any bugs that were filed
What testing strategies did the agents use and which found the most issues?

사용량 및 통계

Check my plan usage for this month
Show team bug stats for this week broken down by severity and type
List all team members and their roles
How many security scans do I have left this month?

빠른 참조

8개 클라이언트 모두에 대한 구성 파일 위치. 모든 클라이언트는 스트리밍 가능 HTTP를 통해 https://mcp.bugagent.com/mcpAuthorization: Bearer ba_live_YOUR_KEY_HERE 헤더와 함께 연결됩니다.

클라이언트 구성 위치 / 명령

MCP 인스펙터 파일 없음 — npx @modelcontextprotocol/inspector 후 브라우저 UI에서 URL 및 인증 헤더 입력

Claude 데스크톱 — macOS ~/Library/Application Support/Claude/claude_desktop_config.json

Claude 데스크톱 — Windows %APPDATA%\Claude\claude_desktop_config.json

Claude Code (CLI) claude mcp add --transport http bugagent https://mcp.bugagent.com/mcp --header "Authorization: Bearer ba_live_..."

Codex CLI ~/.codex/config.toml

Cursor — macOS 설정 → MCP UI 또는 ~/.cursor/mcp.json

Cursor — Windows %USERPROFILE%\.cursor\mcp.json

VS Code + Continue ~/.continue/config.json (macOS) / %USERPROFILE%\.continue\config.json (Windows)

직접 HTTP (curl) curl / Invoke-RestMethodAccept: application/json, text/event-stream 포함

문제 해결

증상 해결 방법

401 Unauthorized 키가 잘못되었거나 만료되었거나 취소되었습니다. 설정 → API 키 확인 — 키는 ba_live_로 시작합니다. 필요한 경우 재생성하세요.

클라이언트에 도구가 표시되지 않음 구성을 편집한 후 클라이언트를 완전히 종료하고 다시 실행하세요. Claude 데스크톱에서는 Cmd+Q(창을 닫는 것만으로는 안 됨). Cursor에서는 설정 → MCP에서 녹색 점 확인.

Accept header required 직접 HTTP 호출에는 Accept: application/json, text/event-stream이 포함되어야 합니다 — 스트리밍 가능 HTTP 사양에서 요구합니다. 이 헤더가 없으면 서버는 406을 반환합니다.

잘못된 작업 공간의 데이터 각 API 키는 하나의 작업 공간으로 범위가 지정됩니다. 설정 → API 키에서 쿼리하려는 작업 공간에서 새 키를 생성하세요.

도구가 나타나지만 호출이 자동으로 실패함 서버에 연결할 수 있는지 확인: curl -I https://mcp.bugagent.com/health200을 반환해야 합니다. 시간 초과되면 네트워크/방화벽 규칙을 확인하세요.

MCP 인스펙터 CORS 오류 인스펙터 UI에서 연결 유형으로 프록시(직접 아님)를 선택하세요. 인스펙터가 브라우저 CORS 제한을 우회하기 위해 로컬 Node 프로세스를 통해 프록시합니다.

Codex CLI — 도구가 인식되지 않음 ~/.codex/config.toml[[mcp_servers]](이중 대괄호, 배열 구문)을 사용하는지 확인하세요. Codex CLI 버전이 MCP를 지원할 만큼 최신인지 확인하세요(codex --version).

MCP 기능

bug_Agent_ MCP 서버는 다음을 위한 도구를 제공합니다:

🐛

버그 보고서 관리

  • create_bug_report — 19가지 유형(버그, 기능 요청, 개선 사항, 기술 부채 등)에 대한 자동 분류와 함께 새 보고서를 제출합니다(제목: 3-500자). 선택적 attachments 배열은 각각 최대 400MB의 base64 인코딩 파일(이미지, 비디오, 오디오, PDF 또는 텍스트/JSON)을 허용합니다. format_description: true을 설정하면 AI를 사용해 설명을 구조화된 템플릿으로 자동 재구성합니다. QA 노력을 추적하려면 time_spent_seconds을 전달하세요. 심각도와 별개로 수정 긴급도를 설정하려면 priority(urgent / high / normal / low)를 전달하세요. 응답에는 project_id, project, short_id, legacy_short_id, project_short_id이 포함됩니다.
  • list_bug_reports — 보고서를 나열하고 필터링합니다(페이지당 최대 100개). 프로젝트 필터는 페이지 매김 전에 서버 측에서 적용됩니다. project(UUID, 슬러그, 정확한 이름 또는 티켓 접두사), project_id, project_slug, project_prefix, workspace(UUID, 정확한 이름 또는 워크스페이스 티켓 접두사), workspace_id/team_id, type(19개 대시보드 카테고리 중 하나), severity(s1-s4 또는 레거시 critical/high/medium/low), status(대시보드의 정확한 값 사용: new, awaiting-triage, confirmed, in-progress, blocked, resolved, retesting, closed, reopened — 하이픈은 의도된 것임), resolution(fixed / duplicate / works-as-designed / cannot-reproduce / will-not-fix / need-more-info / unresolved), root_cause(개방형 케밥 케이스 태그 — 일반적인 값: regression, missing-requirement, documentation, incomplete-refactor, not-a-bug, requirements-mismatch) 또는 reporter_user_id(보고서를 제출한 팀 구성원의 UUID — 이름을 UUID로 확인하려면 먼저 list_team_members 호출)로 필터링합니다. 각 결과에는 reporter_user_id, project_id, project, short_id, legacy_short_id, project_short_id이 포함되어 에이전트가 올바른 프로젝트 범위 보고서를 연결하고 업데이트할 수 있습니다.
  • pick_next_bug — 에이전트 루프가 작업해야 할 다음 버그를 우선순위 순서(S1 → S2 → S3, 각 버킷 내에서 가장 오래된 것부터)로 반환합니다. 워크스페이스로 자동 범위가 지정되며, status new, awaiting-triage 또는 confirmed 및 심각도 S1-S3인 팀 내 모든 프로젝트의 티켓을 반환합니다. 읽기 전용 — 티켓을 원자적으로 클레임하지 않습니다. 선택적 severity(단일 계층), limit(1-50, 기본값 1). 도구 구성 가능성을 위해 list_bug_reports와 동일한 형태의 행을 반환합니다. 읽기 후 클레임 패턴을 위해 claim_bug과 함께 사용하세요.
  • claim_bug — 버그를 status new, awaiting-triage 또는 confirmed에서 status='in-progress'으로 원자적으로 전환하고, assigned_to을 호출 사용자로 설정하고, claimed_at=NOW()을 찍습니다. Postgres의 UPDATE-WHERE-RETURNING 패턴을 통해 동시 호출자 간에 경쟁 상태가 없습니다. 두 에이전트가 거의 동시에 동일한 ID로 claim_bug을 호출하면 정확히 하나는 버그 본문과 함께 claimed:true을 받고 다른 하나는 이유 문자열과 함께 claimed:false을 받습니다. pg_cron 리퍼가 오래된 클레임(status=in-progress + claimed_at > 30분 경과)을 자동으로 new로 해제하므로, 충돌한 에이전트의 티켓이 수동 개입 없이 대기열에 다시 들어갑니다. 입력: id(UUID 또는 짧은 ID).
  • get_bug_report — ID로 보고서의 전체 세부 정보를 가져옵니다. ID 형식: UUID(예: 1fb72a2c-87c7-...), 워크스페이스 범위 짧은 ID(예: WRKID-545) 또는 프로젝트 범위 짧은 ID(예: WRKID-APP-042)를 허용합니다. 짧은 ID 조회는 팀 범위로 지정되며, 다른 워크스페이스의 짧은 ID를 추측하면 404가 반환됩니다. project_id, project, short_id, legacy_short_id, project_short_id, ticket_number, project_ticket_number, qualityScore(정수 1–10) 및 qualityBreakdown(10개 차원 점수가 있는 객체: reproductionSteps, expectedVsActual, environmentDetails, evidence, rootCauseAnalysis, impactAssessment, contextAndHistory, heuristicsAndOracles, clarityAndStructure, actionability — 각 0.0–1.0)을 반환합니다.
  • update_bug_report — 기존 보고서의 필드를 업데이트합니다. UUID 또는 짧은 ID(WRKID-545)를 허용합니다. 업데이트 가능한 필드에는 title, description, type(19개 대시보드 카테고리 중 하나), severity, priority(urgent / high / normal / low — 심각도와 별개인 수정 긴급도), status(대시보드와 정확히 일치: new, awaiting-triage, confirmed, in-progress, blocked, resolved, retesting, closed, reopened — 하이픈은 의도된 것임), resolution(fixed / duplicate / works-as-designed / cannot-reproduce / will-not-fix / need-more-info / unresolved) 및 root_cause(개방형 케밥 케이스 태그 — 일반적인 값: regression, missing-requirement, documentation, incomplete-refactor, not-a-bug, requirements-mismatch)이 포함됩니다. 에이전트 루프 규칙에 따라 statusnew에서 전환될 때마다 resolutionroot_cause을 모두 설정해야 합니다. 대시보드, 분석 및 향후 claude-bot 학습 코퍼스는 모두 이러한 필드에 의존합니다. 타이머 추적을 위한 assigned_to(list_team_members의 사용자 ID) 및 time_spent_seconds도 포함됩니다. assigned_to을 변경하면 앱 내 벨 알림과 새 담당자에게 안내 이메일이 자동으로 트리거됩니다(계정 설정의 사용자별 수신 거부를 준수하며, 대시보드 엔드포인트와 동일한 파이프라인 사용).
  • add_comment — 버그 보고서에 댓글을 추가합니다(UUID 또는 짧은 ID, 본문 1-10000자). 보고서가 Jira에 동기화된 경우 댓글은 연결된 Jira 이슈에 자동으로 푸시됩니다.
  • list_comments — 보고서의 전체 댓글 스레드를 오래된 순서대로 나열합니다. 각 댓글에는 작성자 이름, parentId(스레드 답글) 및 타임스탬프가 포함됩니다. 댓글은 get_bug_report의 일부가 아니므로, 티켓의 토론을 읽는 방법입니다. UUID 또는 짧은 ID를 허용합니다.
  • link_bug_reports — 동일한 워크스페이스의 두 버그 보고서 간에 방향성 의미 링크를 생성합니다. link_typeduplicate-of, parent-of, related-to 또는 depends-on 중 하나입니다. 역방향 관점(duplicated-by / subtask-of / blocks)은 읽기 시점에 파생되므로 하나의 행만 저장하면 됩니다. from_report_idto_report_id 모두 UUID 또는 짧은 ID(WRKID-545)를 허용합니다.
  • unlink_bug_reports — UUID(link_id, link_bug_reports 또는 list_bug_report_links에서 반환됨)로 이전에 생성된 버그 보고서 링크를 제거합니다.
  • list_bug_report_links — 버그 보고서와 관련된 모든 사용자 선별 링크를 나열합니다. 제공된 보고서의 관점에서 읽히는 대로 각 링크를 반환합니다. 예를 들어 이 보고서가 대상인 저장된 duplicate-of 행은 duplicated-by으로 렌더링되고, 이 보고서가 대상인 parent-ofsubtask-of로 렌더링되며, 이 보고서가 대상인 depends-onblocks로 렌더링됩니다. related-to은 대칭적입니다. get_bug_report에서 반환된 자동 감지 similar_reports 필드를 보완합니다.
  • classify_bug — 설명을 19가지 보고서 유형(버그, 기능, 개선 사항 등) 중 하나로 신뢰도 점수와 함께 분류합니다.
  • flush_reports — 오래된 보고서 일괄 삭제(관리자 전용)

📊

사용량 및 분석

  • get_usage — 플랜 한도 대비 사용량 확인
  • get_stats — 일일 집계, 유형/심각도/상태 분석

📁

프로젝트 관리

  • list_projectsid, name, slug, ticket_prefix, 설명 및 기본 상태와 함께 사용 가능한 프로젝트를 나열합니다. 올바른 프로젝트를 대상으로 지정하려면 create_bug_reportlist_bug_reports와 함께 해당 값을 사용하세요.
  • create_project — 새 프로젝트 생성(첫 번째 프로젝트인 경우 자동으로 기본값이 됨)
  • delete_project — 프로젝트 및 모든 관련 데이터(버그 보고서, 자동화, 테스트 케이스, 모바일 앱, 일정, 지리적 스냅샷, 메모, 시간 항목)를 영구적으로 삭제합니다. 소유자/관리자만 가능. 마지막 프로젝트는 삭제할 수 없습니다. 스토리지는 자동으로 해제됩니다.
  • export_okf_bundle — 프로젝트의 QA 지식(버그 보고서, 테스트 케이스, 자동화, 성능, 보안 및 탐색적 테스트)을 OKF/OQA 마크다운 번들(oqa.ai에서 사용하는 Open Query Agent 형식)로 내보냅니다. 기본값은 활성 프로젝트이며, 선택적 project(슬러그 또는 이름)을 전달하여 다른 프로젝트를 내보낼 수 있습니다. 번들의 파일 목록과 base64 인코딩된 zip으로 번들 자체를 반환합니다.

🔐

인증 및 계정

  • register_account — 새 계정 생성(비밀번호: 8-128자, 속도 제한: 5회/15분)
  • login — 로그인하여 액세스 토큰 수신(속도 제한: 5회/15분)
  • update_profile — 표시 이름 업데이트
  • change_password — 계정 비밀번호 변경
  • get_settings / update_settings — 환경 설정 관리

🔑

API 키 관리

  • generate_api_key — 이름이 지정된 API 키 생성
  • list_api_keys — 활성 키 나열(접두사만)
  • regenerate_api_key — 키 취소 및 교체
  • delete_api_key — 키 영구 취소

👥

팀 관리

  • list_team_members — 역할, 상태 및 부스터 플래그와 함께 워크스페이스의 모든 구성원 나열
  • invite_team_member — 이메일로 사용자 초대(관리자는 기여자 및 관리자를 초대할 수 있으며, 소유자만 관리자를 초대할 수 있음). 5일 만료 링크

🎯

통합

  • sync_to_jira — 팀의 공유 연결을 사용하여 보고서를 Jira에 동기화
  • push_to_claude — 버그 보고서에 대한 개발자 노트(근본 원인, 제안된 수정 사항, 검증 단계 및 위험 평가)를 생성(또는 재생성)합니다. UUID 또는 짧은 ID(WRKID-545)를 허용합니다. 플랫폼 키를 사용하므로 팀별 Claude 연결이 필요하지 않습니다. 적응형 체인 실행: s3/medium 또는 s4/low 버그의 경우 3단계(Sonnet 초안 → OpenAI gpt-5 비평 → Sonnet 합성), 상위 두 심각도 버킷인 s1/critical 또는 s2/high의 경우 5단계(초안 → 비평 → Sonnet 반박 → 전체 대화록을 읽고 독립적인 판단으로 최종 노트를 작성하는 Claude Opus 심판). 응답은 모든 라운드를 노출합니다: analysis, draft, critique, rebuttal, challenger_model, adjudicator_modeldebated 플래그. 어떤 단계든 실패하면 차선책으로 넘어갑니다. 버그 생성 시 자동 실행되며, 일반적으로 수동 재생성 시에만 호출됩니다.
  • analyze_fix_area — 개발자 노트의 "예상 수정 영역" 하위 블록을 생성(또는 재생성)합니다. 코드베이스에서 수정이 가장 적합한 위치를 지정하는 좁은 Sonnet 출력입니다. UUID 또는 짧은 ID를 허용합니다. 플랫폼 Anthropic 키를 사용합니다. 팀에 github_connections 행이 있고 프로젝트에 github_repo이 매핑된 경우, 출력은 연결된 리포지토리의 실제 파일 스니펫을 기반으로 합니다. 그렇지 않으면 리포지토리 연결을 권장하는 일반 지침으로 대체됩니다. likely_fix_area 텍스트, generated_at, repo_usedgrounded 플래그를 반환합니다. 버그 생성 시 자동 실행되며, 에이전트는 일반적으로 수동 재생성 시에만 이를 호출하면 됩니다.
  • upgrade_plan — Stripe를 통한 구독 업그레이드

성능 테스트

  • create_performance_test — URL, 기기, 가상 사용자 수, 지속 시간, 점수 임계값, 자동 버그 생성 토글을 포함한 성능 테스트 설정을 생성합니다. Enterprise 전용
  • run_performance_test — 웹 성능 테스트를 위한 페이지 감사 및 부하 테스트를 트리거합니다. 결과를 폴링할 수 있는 실행 ID를 반환합니다. 모바일 앱 프로파일링 실행은 대시보드에서 트리거됩니다
  • get_performance_results — Lighthouse 점수(성능, 접근성, 권장사항, SEO), Core Web Vitals(LCP, FID, CLS, FCP, TTFB, INP, TBT, SI), 부하 테스트 지표(VU, 요청 수, RPS, p50/p90/p95/p99 지연 시간)를 포함한 전체 결과를 가져옵니다
  • list_performance_tests — 현재 팀의 모든 성능 테스트 설정을 나열합니다
  • get_performance_usage — 월간 성능 테스트 사용량을 확인합니다. 성능 테스트는 Enterprise 전용입니다. Free=0, Enterprise=무제한

예시 워크플로

  1. get_performance_usage → 남은 할당량 확인
  2. create_performance_test → URL에 대한 테스트 설정
  3. run_performance_test → 감사 + 부하 테스트 트리거
  4. get_performance_results → 점수 및 바이탈 검토

🛡

보안 스캐닝

  • create_security_scan — 보안 스캔 설정을 생성합니다. 웹 스캔은 Quick Scanner + Nuclei(4,000개 이상의 템플릿)를 사용하며 세 가지 깊이 수준과 선택적 인증 스캔을 지원합니다. 모바일 스캔은 APK/IPA 바이너리 분석에 MobSF를 사용합니다. 심각도 임계값에 따른 자동 버그 생성 설정 가능. Enterprise 전용
  • run_security_scan — 취약점 스캔을 트리거합니다. 웹 스캔은 DNS 도메인 확인이 필요합니다. 모바일 스캔은 업로드된 앱이 필요합니다. 결과를 폴링할 수 있는 실행 ID를 반환합니다
  • get_security_results — 보안 점수(0-100), CWE 참조, OWASP 매핑, 증거 및 해결 지침과 함께 심각도(치명적, 높음, 중간, 낮음, 정보)별로 분류된 발견 사항을 포함한 전체 결과를 가져옵니다
  • list_security_scans — 현재 팀의 모든 보안 스캔 설정을 마지막 점수 및 인증/깊이 배지와 함께 나열합니다
  • get_security_usage — 월간 보안 스캔 사용량을 확인합니다. 보안 스캐닝은 Enterprise 전용입니다. Enterprise=무제한
  • list_security_schedules — 팀의 모든 예약된 보안 스캔을 cron, 시간대, 활성화 상태, 다음 실행, 알림 설정과 함께 나열합니다. 상위 스캔 설정(이름, scan_type, target_url)과 결합됩니다
  • create_security_schedule — 보안 스캔에 대한 반복 일정을 생성합니다. scan_idcron_expression가 필요합니다. 스캔 설정당 하나의 일정. 선택 사항: timezone, notify_on_fail (none/email/slack/both), notify_email, slack_channel_id. 모든 실행은 월간 한도에 포함되며, 관리자 사용자는 한도를 우회합니다. 스캔 깊이는 항상 실행 시 스캔 설정에서 읽어옵니다
  • delete_security_schedule — 예약된 보안 스캔을 삭제합니다. 상위 스캔 설정이나 완료된 실행에는 영향을 미치지 않습니다
  1. get_security_usage → 남은 할당량 확인
  2. create_security_scan → URL 또는 저장소에 대한 스캔 설정
  3. run_security_scan → 일회성 취약점 스캔 트리거
  4. create_security_schedule → 반복 실행 자동화 (예: 메인 브랜치에 대한 주간 SAST)
  5. get_security_results → 발견 사항 및 해결 방법 검토

📖

코드 리뷰

  • list_code_reviews — 팀의 최근 AI 코드 리뷰를 나열합니다. 품질 점수, 심각도 개수, PR 정보, 타임스탬프를 반환합니다. Enterprise 전용
  • get_code_review — 모든 발견 사항이 포함된 코드 리뷰를 가져옵니다. 각 발견 사항에는 심각도, 카테고리(버그/보안/성능/스타일/로직/유지보수성), 제목, 설명, 코드 제안, 파일 경로, 줄 번호가 포함됩니다
  • get_code_review_usage — 코드 리뷰 사용량을 확인합니다. AI 코드 리뷰는 Enterprise 전용이며, Enterprise에서는 무제한입니다
  • get_code_review_analytics — 리뷰 분석 가져오기: 추세, 발견 카테고리/출처, 심각도 분석, 속도 지표, 상위 저장소/작성자. 7/30/90일 조회 기간 지원
  1. get_code_review_usage → 남은 리뷰 확인
  2. /dashboard/code-review 대시보드에서 PR 리뷰
  3. list_code_reviews → 최근 리뷰 보기
  4. get_code_review → 발견 사항 및 제안 가져오기

🔍

탐색적 AI

각기 다른 테스트 전략을 사용하는 최대 10개의 병렬 에이전트를 갖춘 다중 에이전트 자율 웹사이트 버그 파인더입니다.

  • list_explorations — 팀의 탐색적 AI 설정 나열
  • create_exploration — 새 탐색을 생성합니다. agent_count (1–10, 최대 10)을 허용하여 고유한 전략(happy_path, edge_case, security, accessibility, error_path, performance, mobile, data_integrity, navigation, custom)으로 여러 병렬 에이전트를 실행합니다
  • get_exploration — 에이전트 설정 및 최근 실행이 포함된 탐색 설정 가져오기
  • get_exploration_run — 에이전트별 진행 상황, 단계 데이터, 에이전트 귀속(agent_index, agent_strategy)이 있는 발견 사항, 연결된 버그가 포함된 실행 결과 가져오기
  • get_exploration_usage — 월간 사용량 확인. 탐색적 AI는 Enterprise 전용입니다. Enterprise: 무제한 (10 에이전트)
  1. create_explorationagent_count: 5 사용 → 5개의 병렬 에이전트 설정
  2. 대시보드 또는 POST /api/explorations/run를 통해 실행 트리거
  3. get_exploration_run → 에이전트별 진행 상황 및 발견 사항 폴링
  4. 대시보드에서 에이전트 귀속이 있는 중복 제거된 발견 사항 보기

📝

노트

  • list_notes — 선택적 키워드 검색, 프로젝트 필터, 작성자 필터, 날짜 범위로 노트를 나열합니다. 사용자가 소유한 노트 또는 팀 내 공유된 노트를 반환합니다.
  • create_note — 5가지 형식 중 하나로 노트를 생성합니다: markdown, plain_text, rich_text, checklist, outline. visibilityprivate 또는 shared로 설정합니다. 제목이 제공되지 않으면 처음 30자에서 자동 제목을 생성합니다. 선택적 attachments 배열은 각각 최대 400MB의 base64 인코딩 파일(이미지, 비디오, 오디오, PDF 또는 텍스트/JSON)을 허용합니다. QA 노력을 추적하려면 time_spent_seconds을 전달합니다.
  • get_note — 콘텐츠 및 첨부 파일을 포함한 전체 노트 세부 정보를 가져옵니다. id가 필요합니다.
  • update_note — 제목, 콘텐츠, 형식, 공개 상태, 프로젝트 또는 time_spent_seconds을 업데이트합니다. attachments 배열을 전달하여 기존 첨부 파일을 교체하지 않고 노트에 새 파일(각각 최대 400MB)을 추가합니다. 작성자만 업데이트할 수 있습니다. id이 필요합니다.
  • delete_note — 노트와 첨부 파일을 영구적으로 삭제합니다. 작성자만 삭제할 수 있습니다. id가 필요합니다.
  1. create_note → 테스트 세션 노트 시작
  2. update_note → 테스트하면서 관찰 내용 추가
  3. list_notes → 키워드 또는 프로젝트별로 과거 노트 검색
  4. get_note → 첨부 파일이 포함된 전체 노트 검색

🤖

자동화

  • create_automation — 사용자 정의 Playwright 스크립트로 새 자동화를 생성합니다(FAB 녹화 불필요). name이 필요합니다. 선택 사항: target_url (생략 시 스크립트의 첫 번째 page.goto(...) URL에서 자동 파생), script (Node.js/JavaScript/TypeScript 또는 Python — 언어는 자동 감지되며, 기본값은 자리 표시자), status (draft 또는 active, 기본값: draft), project_id. 자동화 id을 반환합니다. 팀 플랜 필요. 팁 — 자동화 복제: get_automation을 사용하여 원본 스크립트를 가져온 다음 create_automation를 호출하고 name"[Copy] Original Name"로 설정한 후 원본 script, target_url, project_id을 전달합니다. 복제본은 버전 기록 없이 draft 상태로 시작됩니다.
  • list_automations — Playwright 자동화 스크립트를 나열합니다. project_id 또는 status (draft, active, paused)로 필터링합니다. 이름, target_url, last_run_status, run_count가 포함된 자동화 배열을 반환합니다.
  • get_automation — Playwright 스크립트 및 최근 실행을 포함한 전체 자동화 세부 정보를 가져옵니다. id이 필요합니다. 실시간 script, script_versions 스택(오래된 순, 최대 100개의 이전 항목, 각 { script, source, timestamp }), 각 실행이 실행된 script_version_label/script_version_source를 전달하는 recent_runs 배열과 함께 자동화를 반환합니다. 특정 기록 버전을 선택해야 하는 경우 run_automation 전에 이 함수를 호출하십시오.
  • run_automation — Playwright 테스트의 즉시 실행을 트리거합니다. automation_id가 필요합니다. 가상 모드 (기본값): 뷰포트 에뮬레이션을 위한 선택적 device (예: desktop, iphone-15). 라이브 모드: browserstack: truebs_browser (chrome, firefox, safari, edge), bs_os (Windows, OS X), bs_os_version과 함께 설정하여 실제 데스크톱 브라우저에서 실행합니다. 라이브 실제 모바일: bs_os: "android" (기기: "Samsung Galaxy S25 Ultra", "Google Pixel 10", "OnePlus 13R") 또는 bs_os: "ios" (기기: "iPhone 17 Pro Max", "iPhone 16 Pro Max", "iPhone 15 Pro Max")을 설정하고 bs_os_version에 기기 이름을 전달합니다. Node.js 스크립트는 browserstack-node-sdk을 통해 라우팅됩니다(데스크톱 + Android + iPhone 지원). Python 스크립트는 browserstack-sdk (pytest-playwright)를 통해 라우팅되며 데스크톱만 지원합니다. pytest-playwright의 browser_type.connect()이 BrowserStack의 실제 모바일 엔드포인트를 구동할 수 없기 때문에 Python을 통한 실제 모바일은 지원되지 않습니다. 비디오 및 네트워크 로그는 자동으로 캡처되며, 콘솔 로그는 데스크톱 전용입니다. 버전 재생: 선택적 version_index (정수, 0-인덱스)을 전달하여 자동화의 script_versions 기록에서 이전 항목을 실행합니다. 기본값: version_index이 생략되거나 null인 경우 현재 라이브 스크립트가 실행됩니다 — "현재 선택"을 위해 자리 표시자 값을 전달하지 마십시오. 범위를 벗어나거나 음수이거나 정수가 아닌 값은 거부됩니다. 실행 기록은 실행된 정확한 스냅샷을 저장하며, 실패한 실행에서 자동 생성된 버그 보고서는 편집기에서 해당 버전으로 딥링크됩니다.
  • list_automation_runs — 자동화의 최근 실행을 나열합니다. automation_id가 필요합니다. 상태, duration_ms, error_message와 함께 실행을 반환합니다.
  • list_schedules — cron, 시간대, 기기, 알림 설정과 함께 예약된 모든 웹 자동화 실행을 나열합니다
  • create_schedule — 예약된 웹 자동화 실행을 생성합니다. automation_idcron_expression가 필요합니다. 기기, 시간대, notify_on_fail (email/slack/both), Slack 채널 옵션을 지원합니다. 예약된 실행에서의 BrowserStack Live: browserstack: truebs_browser, bs_os, bs_os_version과 함께 전달합니다 — run_automation와 동일한 기기 매트릭스(Node = 데스크톱 + 실제 Android + 실제 iPhone; Python = 데스크톱 전용).
  • delete_schedule — 예약된 웹 자동화 실행을 삭제합니다
  • list_mobile_schedules — 기기, cron, 시간대, 알림과 함께 예약된 모든 모바일 자동화 실행을 나열합니다
  • create_mobile_schedule — 실제 기기에서 예약된 모바일 자동화 실행을 생성합니다. automation_id, cron_expression, devices 배열이 필요합니다
  • delete_mobile_schedule — 예약된 모바일 자동화 실행을 삭제합니다
  • optimize_automation_script — AI 기반 최적화를 위해 Playwright 스크립트를 Sonnet 4로 보냅니다. 선택자, 대기 전략, 어설션, 오류 처리, 인증 패턴, 모바일 호환성, strict 모드를 수정하는 12가지 체크리스트를 적용합니다. automation_id이 필요합니다. 최적화 전에 현재 스크립트 버전이 저장됩니다. 최적화된 스크립트와 변경 사항 요약을 반환합니다.
  • undo_automation_script — 자동화 스크립트를 이전 버전으로 되돌립니다. 최대 10개의 이전 버전이 유지됩니다. automation_id가 필요합니다. 복원된 스크립트와 남은 버전 수를 반환합니다.
  1. create_automation → 사용자 정의 스크립트로 테스트 생성
  2. list_automations → 사용 가능한 테스트 찾아보기
  3. get_automation → Playwright 스크립트 검사
  4. run_automation → 테스트 트리거
  5. list_automation_runs → 결과 및 소요 시간 확인

⏱️

시간 추적

  • list_time_entries — 팀의 시간 항목을 나열합니다. period (today, week, month, all), project_id, category, sort (newest, oldest, most_time, least_time)로 필터링합니다. 팀 플랜 전용입니다.
  • create_time_entry — QA 작업에 소요된 시간을 기록합니다. description, category, duration_minutes이 필요합니다. 선택적으로 project_identry_date을 설정할 수 있습니다 (기본값은 오늘). 팀 플랜 전용입니다.
  • update_time_entry — 기존 시간 항목을 업데이트합니다. id이 필요합니다. description, category, duration_minutes, project_id, entry_date을 업데이트할 수 있습니다. 팀 플랜 전용입니다.
  • delete_time_entry — 시간 항목을 영구적으로 삭제합니다. id이 필요합니다. 팀 플랜 전용입니다.
  1. create_time_entry → 회귀 테스트 45분 기록
  2. list_time_entries → 이번 주 시간 항목 보기
  3. update_time_entry → 소요 시간 또는 카테고리 조정
  4. delete_time_entry → 잘못된 항목 제거

☑️

테스트 케이스

계층적 폴더, 중첩된 스위트(최대 3단계 깊이, 실행 시 하위 스위트 자동 확장), 드래그 앤 드롭 재정렬, AI 지원 케이스 생성, KPI 추세, 실패 분석, 스위트 상태, 커버리지, 테스터 생산성을 제공하는 분석 보고서 탭을 갖춘 완전한 테스트 관리 기능을 제공합니다. 모든 도구는 Supabase를 직접 호출하므로 HTTP 왕복이 없으며 대시보드와 동일한 지연 시간을 제공합니다.

핸즈프리 실행: 실행 검토 페이지는 한 번에 하나의 케이스만 표시되는 캐러셀이며, 키보드 단축키(P 통과 · F 실패 · B 차단 · S 건너뛰기)와 음성 제어를 지원합니다. 마이크를 클릭한 후 "통과", "실패", "차단", "건너뛰기", "다음", "이전", "메모 추가"(메모 필드에 텍스트로 변환됨), "메모 저장", "음성 끄기"라고 말하면 됩니다. 성공 결과 시 다음 테스트되지 않은 케이스로 자동 진행되며, 실패 시에는 테스터가 세부 사항을 받아쓰고 버그를 생성할 수 있도록 해당 케이스에 머무릅니다. Chrome, Edge, Safari에서 작동합니다.

케이스 및 폴더
  • list_test_cases — 선택적 search, priority (critical, high, medium, low), type (functional, regression, smoke, integration, performance, security, usability, exploratory), status (active, draft, deprecated), sort (newest, oldest, name, priority)로 테스트 케이스를 나열합니다.
  • create_test_case — 테스트 케이스를 생성합니다. 두 가지 템플릿 변형: steps (기본값) — steps 배열을 통한 단계별 { action, expected } 그리드; texttext_content을 통한 단일 자유 형식 설명. 두 필드를 동일한 호출로 보낼 수 있습니다(플랫폼이 독립적으로 저장하므로 테스터가 나중에 template_type을 전환해도 어느 쪽 데이터도 손실되지 않음). 선택적 urls 배열(최대 10개의 http/https URL)로 참조 링크를 첨부합니다. name이 필요합니다. 선택 사항: description, preconditions, template_type, steps, text_content, urls, priority, type, tags, estimated_time (초). 파일 첨부는 대시보드의 POST /api/test-cases/:id/attachments 엔드포인트(멀티파트)를 통해 업로드되며, 아직 MCP 도구로 노출되지 않았습니다.
  • get_test_case — 단계 및 실행 기록을 포함한 전체 테스트 케이스 세부 정보를 가져옵니다.
  • list_test_case_folders — 팀의 폴더를 나열합니다(folder_id를 통해 케이스당 하나의 폴더; 다대다 테스트 계획 그룹인 스위트와는 구별됨). 최대 500개로 제한되며 project_idparent_folder_id 필터를 지원합니다(최상위 레벨만 보려면 "root" 사용).
  • create_test_case_folder — 폴더를 생성합니다(parent_folder_id를 통해 최대 3단계까지 중첩). bulk_update_test_cases을 사용하여 케이스를 해당 폴더로 이동합니다.
  • bulk_update_test_cases — 한 번에 최대 500개의 케이스에 하나의 작업을 적용합니다: set_priority, set_status, set_type, add_tags, remove_tags, add_to_suite, pin, unpin.
  • link_test_case_to_bug — 테스트 케이스와 버그 보고서 간의 추적성을 설정합니다(verified_by, covers, 또는 relates).
  • list_test_case_links — 테스트 케이스에 대한 모든 추적성 링크를 나열합니다.
  • list_test_case_review_candidates — 데드 테스트 플래그: never_run (생성 후 90일 이상 경과), always_passes (90일 이내 5회 이상 연속 통과), always_skipped (3회 이상 연속 건너뛰기).
  • mark_test_case_review_flags — 현재 아카이브 후보 플래그를 test_cases.review_flag에 유지합니다. pg_cron을 통해 매주 월요일 09:00 UTC에 자동 실행됩니다.
가져오기
  • Figma 가져오기 (대시보드 UI + REST): Figma 프레임의 zip 내보내기(최대 100MB)를 업로드하면 Claude가 각 화면을 분석하고 선택하거나 생성한 폴더에 테스트 케이스 초안을 작성합니다. 프롬프트 캐싱, 429 재시도, 프레임별 오류 격리를 통해 하나의 잘못된 프레임이 배치 전체를 실패시키지 않도록 하는 다중 패스 파이프라인(분류 → 화면별 케이스 → 공유 접두사 화면 간 흐름 수준 케이스 → 자체 비평)을 사용합니다. 케이스는 status=active로 생성되며, ai_generated=true 태그가 지정되고, source='figma'source_frame_name가 원본 프레임에 대한 링크를 보존합니다. 플랫폼 Anthropic 키를 사용하므로 팀별 Claude 연결이 필요하지 않습니다. 엔드포인트: POST /api/test-cases/import/figma/request, POST /api/test-cases/import/figma/start, GET /api/test-cases/import/figma/:id.
스위트 및 실행
  • list_test_suites — 케이스 수 및 마지막 실행 상태와 함께 테스트 스위트를 나열합니다.
  • create_test_suite — 스위트를 생성합니다. parent_suite_id을 통해 최대 3단계까지 중첩됩니다.
  • list_test_runs — 스위트 이름, 담당자, 통과/실패 요약과 함께 테스트 실행을 나열합니다.
  • create_test_run — 스위트를 새 실행으로 스냅샷합니다. 상위 스위트를 실행하면 모든 하위 스위트의 모든 케이스가 자동으로 포함됩니다(둘 다에 연결된 케이스는 정확히 한 번만 추가됨). 각 test_run_results 행은 케이스가 어느 원본 하위 스위트에서 왔는지 기록하므로 결과 페이지에서 원본별로 그룹화할 수 있습니다.
보고서 (Tier 1 + Tier 4 분석)
  • get_test_reports_overview — 기간 동안의 주요 KPI(통과율, 완료된 실행, 실행된 케이스)와 이전 동등 기간 대비 변화량을 보여줍니다. 보고서 탭 KPI 스트립에 표시되는 것과 동일한 숫자입니다.
  • get_test_reports_failures — 네 가지 "무엇을 수정해야 할까요?" 목록: failing_cases (실패율 50% 이상, 최소 3회 실행), flaky_cases (가장 많은 통과/실패 변동), failing_suites (실패율 30% 이상, 최소 5회 실행), regressed_cases (해당 기간 내 이전 통과 후 가장 최근 실패).
  1. create_test_case_folder → 폴더 트리 만들기 (예: Smoke → Auth)
  2. create_test_case → 케이스 정의; bulk_update_test_cases로 폴더로 이동
  3. create_test_suite → 테스트 계획 구축 (하위 스위트 선택 사항, 최대 3단계 깊이)
  4. create_test_run → 상위 스위트에서 실행 스냅샷 — 하위 스위트 자동 포함
  5. get_test_reports_failures → 실행 완료 후 "이번 주에 무엇을 수정해야 할까요?" 질문
  6. get_test_reports_overview → 주간 통과율 추세 추적

팀 부스터

  • scale_team — 부스터 테스터로 QA 팀을 즉시 확장합니다. 계정은 테스터 액세스 권한으로 자동 프로비저닝됩니다. team_size (1–10), location, duration, budget을 지정하고 선택적으로 product_url, product_types, tech_levels을 지정합니다. 팀 플랜에서 사용할 수 있습니다. 승인이 있을 때까지 요금이 청구되지 않습니다.
  1. scale_team → 미국에서 1개월 동안 시니어 테스터 5명 프로비저닝
  2. list_team_members → 새 테스터가 팀에 나타나는지 확인
  3. list_reports → 부스터 테스터가 제출한 보고서 검토

📱

모바일 테스트

  • upload_mobile_app — 실제 기기에서 테스트할 APK(Android) 또는 IPA(iOS) 앱을 업로드합니다. name, platform (android/ios), file_url이 필요합니다. iOS의 경우: 실제 기기 실행을 위해 IPA를 업로드한 다음, 앱 세부 정보 페이지에서 시뮬레이터 .app 빌드를 업로드하여 녹화를 활성화합니다.
  • update_mobile_app — 앱 바이너리를 새 버전으로 교체합니다. 캐시된 URL과 시뮬레이터 빌드를 지워 다음 실행 시 모든 자동화가 새 버전을 사용하도록 합니다. app_idfile_url이 필요합니다. 선택 사항: version.
  • create_mobile_automation — 테스트 스크립트를 생성합니다. name, app_id, script_type (YAML의 경우 maestro, Appium Python의 경우 appium, Appium JavaScript의 경우 appium_js), script (테스트 스크립트 내용)이 필요합니다.
  • list_mobile_runs — 모바일 테스트 실행 결과(상태, 기기, 비디오, BrowserStack 세션, 자동 생성된 버그)를 가져옵니다. 모바일 실행은 대시보드에서 또는 일정에 따라 트리거됩니다. 선택적 필터: automation_id, status (queued, running, passed, failed, error, archived), limit. 보관된 실행은 기본 목록에서 제외됩니다.

예시 워크플로우 — Android

  1. upload_mobile_app → APK 업로드
  2. 브라우저에서 테스트 녹화 → 작업이 자동으로 캡처됨
  3. 대시보드 또는 일정에서 실제 기기(예: Google Pixel 8)에서 실행 트리거
  4. list_mobile_runs → 비디오 및 로그와 함께 결과 확인
  5. 실패 시 실패 스냅샷 및 단계 분석과 함께 버그 보고서 자동 생성

예시 워크플로우 — iOS

  1. upload_mobile_app → IPA 업로드 (실제 기기 실행용)
  2. 앱 세부 정보 페이지에서 시뮬레이터 .app 빌드 업로드 (녹화용)
  3. 브라우저에서 테스트 녹화 → 시뮬레이터에서 작업 캡처됨
  4. 대시보드 또는 일정에서 실제 기기(예: iPhone 15 Pro, IPA 사용)에서 실행 트리거
  5. update_mobile_app → 준비되면 IPA를 새 버전으로 교체

규정 준수 및 증거 (Enterprise)

  • collect_compliance_evidence — 연결된 서비스(Cloudflare, GitHub, Sentry, Supabase, Railway)에서 자동화된 증거 수집을 트리거합니다. 실행 ID를 반환합니다. SSL/TLS 설정, WAF 상태, Dependabot 경고, 오류 추세, 배포 기록 등을 수집합니다.
  • check_config_drift — 모든 연결된 서비스에서 기준선(SSL 모드, TLS 버전, HSTS, WAF 규칙, 보안 헤더) 대비 보안 구성 드리프트를 확인합니다.
  • generate_access_review — 분기별 액세스 검토 보고서를 생성합니다. 팀 구성원, 역할, MFA 상태, API 키 사용량을 감사하고 권장 사항(예: 비활성 키 해지)을 생성합니다.
  • get_security_events — 서비스 간 보안 이벤트 타임라인을 쿼리합니다. 소스(cloudflare, sentry, github) 및 심각도(critical, high, medium, low, info)별로 필터링합니다. 이벤트는 서비스 간에 자동으로 상호 연관됩니다.

규정 준수 범위

이러한 도구는 SOC2 (CC4.1, CC6.1, CC7.2, CC8.1), ISO 27001 (A.5.18, A.8.8, A.8.9, A.8.15-16, A.8.29), GDPR (Art. 5, 25, 32, 33) 규정 준수 요구 사항을 지원합니다.

호환 클라이언트

bug_Agent_는 모델 컨텍스트 프로토콜을 지원하는 모든 클라이언트와 작동합니다. 인기 클라이언트에 대한 설정 가이드는 다음과 같습니다:

🤖

Claude Desktop

설정 → 개발자 → 구성 편집을 열고 다음을 추가합니다:

claude_desktop_config.json

저장 후 Claude Desktop을 다시 시작합니다.

✳️

Cursor

설정 → MCP 서버 → 서버 추가를 열거나 프로젝트 루트의 .cursor/mcp.json을 편집합니다:

.cursor/mcp.json

🌊

Windsurf

설정 → MCP → 서버 추가를 열거나 MCP 구성 파일을 편집합니다:

mcp_config.json

💻

Claude Code (CLI)

터미널에서 직접 bug_Agent_를 추가합니다:

claude mcp add bugagent -- npx -y @bugagent/mcp-server

시작하기 전에 export BUGAGENT_API_KEY=ba_live_...로 API 키를 설정합니다.

🔧

기타 MCP 클라이언트

MCP stdio 전송을 지원하는 모든 클라이언트는 bug_Agent_와 작동합니다. 표준 구성을 사용하세요:

  • 명령: npx
  • 인수: ["-y", "@bugagent/mcp-server"]
  • 환경 변수: BUGAGENT_API_KEY

CLI

CLI 시작하기

bug_Agent_ CLI를 사용하면 터미널에서 버그 보고서, 기능 요청, 프로젝트 및 통합을 완벽하게 제어할 수 있습니다. 다음 용도로 사용하세요:

  • 워크플로우 자동화 — 버그 보고를 CI/CD 파이프라인, 스크립트, 크론 작업에 통합
  • 대량 작업 — 터미널을 떠나지 않고 보고서 나열, 필터링 및 관리
  • 파이프 친화적인 출력jq, yq 및 기타 도구와 결합할 수 있는 JSON, YAML, 원시 형식
  • 빠른 반복 — 브라우저 없이 몇 초 만에 보고서 생성 및 업데이트

설치

npm install -g @bugagent/cli

설치 확인:

bugagent --version

인증

API 키를 환경 변수로 설정하세요:

또는 --api-key 플래그로 직접 전달하세요:

bugagent reports list --api-key ba_live_your_key_here

🔑

bug_Agent_ 콘솔에서 API 키를 받으세요. 키는 ba_live_로 시작합니다.

영구 인증을 위해 셸 프로필(~/.bashrc, ~/.zshrc 등)에 export를 추가하세요.

사용법

명령어는 다음 패턴을 따릅니다:

bugagent <resource> <action> [flags]

리소스는 하위 리소스에 콜론 구문을 사용할 수도 있습니다:

bugagent reports comments add --report-id WRKID-545 --body "Reproduced on v2.1"

자세한 내용을 보려면 모든 명령어에 --help를 사용하세요:

bugagent reports --help
bugagent reports create --help

예제 세션

터미널

# List your projects
bugagent projects list

# Create a bug report in your default project
bugagent reports create \
  --title "Checkout 500 on discount code" \
  --description "Applying SAVE20 returns HTTP 500" \
  --severity critical \
  --type logic

# View recent reports
bugagent reports list --limit 5 --format pretty

# Get full details on a report (use the short ID or UUID)
bugagent reports get WRKID-545

# Sync a report to Jira
bugagent jira sync --report-id WRKID-545

# Check your usage
bugagent usage get --format json

CLI 기능

CLI는 다음을 위한 명령어를 제공합니다:

reports 버그 보고서 생성, 목록 보기, 가져오기, 업데이트 및 비우기

projects 프로젝트 생성, 목록 보기, 업데이트 및 삭제

keys API 키 생성, 목록 보기, 재생성 및 취소

jira Jira 설정 연결, 보고서 동기화 및 구성

usage 플랜 한도 대비 현재 사용량 확인

stats 분석 및 세부 내역 보기

profile 프로필 및 설정 보기 및 업데이트

auth 로그인, 등록 및 자격 증명 관리

전역 플래그

플래그 설명

--api-key <key> 이 명령어에 대한 API 키 재정의

--format <fmt> 출력 형식: json, yaml, pretty, raw

--debug 문제 해결을 위한 요청/응답 세부 정보 표시

--help 모든 명령어에 대한 도움말 표시

--version CLI 버전 출력

출력 형식

CLI는 다양한 사용 사례에 맞춰 여러 출력 형식을 지원합니다:

json

기계 판독 가능한 JSON. jq 또는 다른 도구로 파이핑하기에 이상적입니다.

yaml

구성 파일 및 가독성을 위한 사람 친화적인 YAML 출력.

pretty

기본값. 터미널용으로 설계된 색상이 지정되고 형식이 지정된 출력.

raw

형식이 지정되지 않은 출력. 스크립팅 및 자동화에 유용합니다.

--transform으로 필터링

GJSON 구문과 함께 --transform를 사용하여 출력 데이터를 쿼리하고 필터링하세요:

# Default pretty output
bugagent reports list

# JSON for piping to other tools
bugagent reports list --format json

# YAML
bugagent reports list --format yaml

# Raw (no formatting)
bugagent reports get rpt_abc123 --format raw

# Filter with GJSON syntax
bugagent reports list --format json \
  --transform "items.#(severity==critical).title"

AI 스킬

CLI는 AgentSkill로도 제공되므로, AI 코딩 어시스턴트가 사용자를 대신하여 bug_Agent_를 사용할 수 있습니다.

AgentSkill이란 무엇인가요?

AgentSkill을 사용하면 AI 코딩 어시스턴트(Claude Code, Cursor 등)가 상황에 맞게 CLI 도구를 호출할 수 있습니다. bug_Agent_ 스킬은 AI 어시스턴트가 버그를 제출하고, 프로젝트 상태를 확인하고, Jira에 동기화하는 기능을 제공합니다 — 모두 명령어를 입력하지 않고도 가능합니다.

스킬 설치

claude skills install bugagent --from @bugagent/mcp-server

설치가 완료되면, 상황 인식 AI 어시스턴트는 제품, 테스트 가이드라인 및 업로드된 문서에 대한 완전한 지식을 바탕으로 bug_Agent_ 명령어를 자연스럽게 사용할 수 있습니다:

AI 어시스턴트 프롬프트

"File a critical bug: the payment webhook is returning
a 403 after the latest deploy. It affects all Stripe
events. Assign it to the payments project."

이 스킬은 자연어를 적절한 CLI 명령어로 변환하여 실행합니다.

🎬

세션 리플레이 + AI 어시스턴트: 세션 리플레이가 활성화된 경우(Team 플랜), AI 어시스턴트는 캡처된 사용자 세션(지난 60초 동안의 클릭, 탐색, 오류 및 네트워크 실패)을 참조하여 전체 재현 컨텍스트와 함께 더 풍부하고 정확한 버그 보고서를 자동으로 초안 작성할 수 있습니다.

도움 받기

도움이 필요하신가요? 도와드리겠습니다.

Discord 커뮤니티

실시간 지원 및 커뮤니티 토론을 위해 Discord에 참여하세요.

이메일 지원

[email protected] — 보통 24시간 이내에 응답해 드립니다.