bugAgent

официальный

Подключите bugAgent к любому MCP-совместимому AI-клиенту. Создавайте, классифицируйте и управляйте багами, запросами функций и другими задачами прямо из вашего AI-ассистента для кода. Никакого переключения контекста, никакого копирования — просто опишите проблему, и bugAgent сделает всё остальное.

Что можно делать с Bug Agent MCP?

  • File a bug or feature request — опишите проблему на простом английском, и create_bug_report автоматически классифицирует её по одному из 19 типов с указанием серьёзности и приоритета.
  • Query and filter bug reports — используйте list_bug_reports, чтобы найти открытые критические ошибки, отфильтровать по проекту, статусу, серьёзности или автору, а также пролистывать результаты постранично.
  • Update report status and details — измените статус, назначьте участника команды, укажите способ решения и первопричину или добавьте комментарий с помощью update_bug_report и add_comment.
  • Run a security scan — настройте и запустите сканирование уязвимостей веб-приложения с помощью create_security_scan и run_security_scan, затем получите результаты по серьёзности через get_security_results.
  • Check team usage and stats — вызовите get_usage и get_stats, чтобы просмотреть потребление плана, ежедневное количество отчётов и разбивку по типу и серьёзности.
  • Export project QA knowledge — используйте export_okf_bundle, чтобы загрузить отчёты об ошибках проекта, тестовые сценарии и скрипты автоматизации в виде OKF-пакета в формате Markdown.

Документация

MCP v1

Навигация

Model Context Protocol

MCP

Подключите bug_Agent_ к любому AI-клиенту, совместимому с MCP.

Создавайте, классифицируйте и управляйте багами, запросами функций и многим другим прямо из вашего AI-ассистента для разработки. Никакого переключения контекста, никакого копирования и вставки — просто опишите проблему, а bug_Agent_ сделает всё остальное.

Discord Community support@bugagent.com

Начало работы

MCP-сервер bug_Agent_ позволяет AI-клиентам создавать, запрашивать и управлять отчётами об ошибках, запросами функций, улучшениями и многим другим через Model Context Protocol. Он работает локально и взаимодействует с облачным API bug_Agent_.

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

Получите свой API-ключ в консоли bug_Agent_.

Конфигурация 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-ключ из консоли.

Подключение к серверу

MCP-сервер bug_Agent_ доступен по адресу https://mcp.bugagent.com/mcp через транспорт Streamable HTTP. Подключайтесь из любого из восьми клиентов ниже — выберите тот, который подходит для вашего рабочего процесса.

Для небольшой готовой к копированию конфигурации, руководства по ключам с ограниченной областью действия и безопасных стартовых промптов используйте публичный MCP quickstart.

🔑

Сначала получите свой API-ключ. Войдите в Settings → Developers, нажмите Create API Key и скопируйте значение (начинается с ba_live_). Вы увидите его только один раз, поэтому вставьте его в надёжное место. Каждый пример ниже использует этот ключ.

Вариант 1 — MCP Inspector (веб-интерфейс, рекомендуется для первого тестирования)

Официальный инструмент Anthropic. Запускает локальный веб-интерфейс, где вы можете пройтись по всем инструментам, заполнить параметры и увидеть ответы. Нулевая конфигурация, IDE не требуется.

macOS (Terminal)

Terminal

npx @modelcontextprotocol/inspector

Windows (PowerShell или CMD)

PowerShell

В открывшемся интерфейсе браузера:

  1. Transport Type: выберите Streamable HTTP
  2. URL: https://mcp.bugagent.com/mcp
  3. Connection Type: выберите Proxy (по умолчанию — Inspector проксирует через локальный процесс Node, чтобы обойти CORS браузера)
  4. Нажмите вкладку Authentication → добавьте пользовательский заголовок:
    • Header Name: Authorization
    • Value: Bearer ba_live_YOUR_KEY_HERE
  5. Нажмите Connect. Вы увидите все 110+ инструментов bug_Agent_ на левой панели.
  6. Нажмите на любой инструмент (например, list_bug_reports), заполните параметры, нажмите Run Tool. Ответ отобразится справа.

Предварительные требования: Node.js 18 или новее. Установите с nodejs.org, если у вас его нет.

Вариант 2 — Claude Desktop (Mac + Windows)

Если вы используете приложение Claude Desktop, вы можете добавить bug_Agent_ как постоянный MCP-сервер. Тогда у Claude будут доступны все инструменты bug_Agent_ в каждом разговоре.

macOS

  1. Откройте Claude Desktop → в строке меню Claude → Settings → Developer → Edit Config. Откроется ~/Library/Application Support/Claude/claude_desktop_config.json.
  2. Добавьте запись bug_Agent_ в раздел mcpServers: claude_desktop_config.json
{  
  "mcpServers": {  
    "bugagent": {  
      "type": "http",  
      "url": "https://mcp.bugagent.com/mcp",  
      "headers": {  
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"  
      }  
    }  
  }  
}  
  1. Сохраните файл и полностью закройте Claude Desktop (Cmd+Q, а не просто закройте окно).
  2. Перезапустите Claude Desktop. Значок молотка инструментов внизу поля ввода чата теперь должен показывать инструменты bug_Agent_.
  3. Попробуйте: введите “List my 5 most recent bug reports” — Claude автоматически вызовет list_bug_reports.

Windows

  1. Откройте Claude Desktop → File → Settings → Developer → Edit Config. Откроется %APPDATA%\Claude\claude_desktop_config.json (обычно C:\Users\YourName\AppData\Roaming\Claude\claude_desktop_config.json).
  2. Добавьте тот же блок JSON, что показан в разделе macOS.
  3. Сохраните файл и полностью закройте Claude Desktop из системного трея (щелкните правой кнопкой мыши значок Claude → Quit), затем перезапустите.
  4. Значок молотка инструментов покажет инструменты bug_Agent_.

Вариант 3 — Claude Code (CLI)

Если вы используете Claude Code из терминала (CLI-версия Claude), зарегистрируйте сервер bug_Agent_ одной командой. Работает одинаково на macOS, Linux и Windows.

Terminal / 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 в списке с зелёной точкой. Начинайте использовать инструменты в любом чате: “Show me my exploration usage for this month.”

Чтобы удалить его позже:

claude mcp remove bugagent

Вариант 4 — OpenAI Codex CLI

Если вы используете OpenAI Codex CLI, добавьте bug_Agent_ в ~/.codex/config.toml для постоянной регистрации или передайте конфигурацию в строке для одноразовой сессии.

Постоянная регистрация (добавление в конфиг)

~/.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"

В строке — одна сессия

Terminal

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 автоматически разрешает вызовы инструментов из вашего промпта на естественном языке. Попробуйте: “List my open bugs sorted by severity.”

Вариант 5 — Cursor (Mac + Windows)

Cursor имеет встроенную поддержку MCP. Добавьте bug_Agent_ один раз, и AI-ассистент внутри Cursor сможет создавать баги, выводить списки отчётов, запускать сканирования и т.д., не покидая редактор.

  1. Откройте Cursor → Settings (Cmd+, на Mac / Ctrl+, на Windows) → MCP на левой боковой панели.
  2. Нажмите + Add new MCP server.
  3. Выберите тип транспорта HTTP.
  4. Заполните:
    • Name: bugagent
    • URL: https://mcp.bugagent.com/mcp
    • Header name: Authorization
    • Header value: Bearer ba_live_YOUR_KEY_HERE
  5. Нажмите Save. Cursor покажет зелёный индикатор при подключении.
  6. Откройте чат Cursor (Cmd+L / Ctrl+L) и введите “Create a bug report titled ‘Login broken’ with severity high.” Cursor вызовет create_bug_report.

Альтернатива: Cursor также читает ~/.cursor/mcp.json (Mac) или %USERPROFILE%\.cursor\mcp.json (Windows). Добавьте тот же формат JSON, что показан в разделе Claude Desktop.

Вариант 6 — VS Code с расширением Continue (Mac + Windows)

Если вы предпочитаете VS Code, расширение Continue изначально поддерживает MCP-серверы.

  1. Установите расширение Continue из магазина VS Code.
  2. Откройте конфигурацию Continue: Command Palette (Cmd+Shift+P / Ctrl+Shift+P) → Continue: Open 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 и попробуйте: “List my security scans.”

Другие расширения VS Code с поддержкой MCP: Cline, Roo Code и Windsurf (форк) — все следуют аналогичным шаблонам конфигурации JSON с ключом mcpServers и HTTP-транспортом.

Вариант 7 — Хосты с поддержкой OAuth (показан пример с веб-приложением Claude.ai)

Некоторые MCP-хосты аутентифицируются через OAuth 2.0 и запрашивают статические client_id и client_secret заранее, вместо принятия bearer API-ключа. Для таких хостов вы генерируете пару учётных данных OAuth с областью действия рабочей области из панели управления bug_Agent_ и вставляете её в форму подключения хоста. Учётные данные не зависят от MCP-хоста — любой OAuth-клиент, поддерживающий Authorization Code + PKCE, может их использовать. В пошаговом руководстве ниже используется веб-приложение Claude.ai как наиболее распространённый пример.

  1. В bug_Agent_: откройте Settings → Developers → MCP Connectors. Нажмите Generate connector, дайте ему имя, описывающее хост (например, “Claude.ai (work)”), вставьте URI перенаправления, который требует ваш MCP-хост (для веб-приложения Claude.ai это https://claude.ai/api/mcp/auth_callback — для других хостов смотрите документацию по коннекторам), и выберите Confidential для метода аутентификации. Скопируйте client_id и client_secret, показанные один раз на экране успеха.
  2. В настройках коннектора / OAuth вашего MCP-хоста вставьте:
    • Server URL: https://mcp.bugagent.com/mcp
    • Client ID + Client Secret: из шага 1
    • Authorization URL: https://mcp.bugagent.com/authorize
    • Token URL: https://mcp.bugagent.com/token Конкретно для Claude.ai: перейдите на claude.ai/customize/connectors и нажмите Add MCP connector.
  3. Сохраните. Хост перенаправит вас в bug_Agent_ для входа (Google или email/пароль — любой метод, который вы используете для панели управления) и подтверждения согласия, затем завершит рукопожатие OAuth.
  4. Управляйте и отзывайте сгенерированные коннекторы на той же странице Settings. Отзыв происходит немедленно — следующий запрос от этого коннектора вернёт invalid_client.

Примечание: Claude Code, Cursor, VS Code и MCP Inspector не нуждаются в этом потоке — они автоматически обрабатывают динамическую регистрацию клиента (RFC 7591) и аутентифицируются через API-ключ, как показано выше. Форма MCP Connectors предназначена только для хостов, которым требуются статические учётные данные OAuth.

Вариант 8 — Прямой HTTP с curl (Terminal)

Если вы хотите протестировать сервер напрямую без какого-либо клиента или интегрировать его в скрипт, вы можете обратиться к конечной точке HTTP с помощью curl. Протокол MCP — это JSON-RPC 2.0 поверх Streamable HTTP.

macOS / Linux

Terminal

# 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

Ответы приходят как Server-Sent Events (стандарт MCP Streamable HTTP). Каждый фрагмент — это строка с префиксом data:, за которой следует объект JSON. Заголовок Accept: application/json, text/event-stream обязателен — сервер отклоняет запросы без него.

ℹ️

Устранение неполадок 401 Unauthorized: Проверьте, не был ли отозван ваш API-ключ в Settings → Developers. Ключи начинаются с 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
Use Hermes to execute the curated "Checkout smoke" suite and report every result to bugAgent
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?

Краткий справочник

Расположение файлов конфигурации для всех восьми клиентов. Каждый клиент подключается к https://mcp.bugagent.com/mcp с заголовком Authorization: Bearer ba_live_YOUR_KEY_HERE через Streamable HTTP.

Клиент Расположение конфигурации / команда

MCP Inspector Нет файла — введите URL и заголовок аутентификации в интерфейсе браузера после npx @modelcontextprotocol/inspector

Claude Desktop — macOS ~/Library/Application Support/Claude/claude_desktop_config.json

Claude Desktop — 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 Settings → 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-RestMethod — включите Accept: application/json, text/event-stream

Устранение неполадок

Симптом Решение

401 Unauthorized Ключ неверен, истёк или отозван. Проверьте Settings → Developers — ключи начинаются с ba_live_. При необходимости перегенерируйте.

Инструменты не отображаются в клиенте Полностью закройте и перезапустите клиент после редактирования конфигурации. В Claude Desktop: Cmd+Q (а не просто закройте окно). В Cursor: проверьте Settings → MCP на наличие зелёной точки.

Accept header required Прямые HTTP-вызовы должны включать Accept: application/json, text/event-stream — этого требует спецификация Streamable HTTP. Без него сервер возвращает 406.

Данные не той рабочей области Каждый API-ключ привязан к одной рабочей области. Сгенерируйте новый ключ из нужной рабочей области в Settings → Developers.

Инструменты появляются, но вызовы завершаются молча Убедитесь, что сервер доступен: curl -I https://mcp.bugagent.com/health должен вернуть 200. Если время ожидания истекает, проверьте правила сети/брандмауэра.

Ошибка CORS в MCP Inspector Выберите Proxy (а не Direct) для Connection Type в интерфейсе Inspector. Inspector проксирует через локальный процесс Node, чтобы обойти ограничения CORS браузера.

Codex CLI — инструменты не распознаются Убедитесь, что ~/.codex/config.toml использует [[mcp_servers]] (двойные скобки, синтаксис массива). Проверьте, что версия Codex CLI достаточно новая для поддержки MCP (codex --version).

Возможности MCP

MCP-сервер bug_Agent_ предоставляет инструменты для:

🐛

Управление отчетами об ошибках

  • create_bug_report — Создать новый отчет с автоматической классификацией по 19 типам — ошибки, запросы функций, улучшения, технический долг и многое другое (заголовок: 3-500 символов). Опциональный массив attachments принимает файлы в кодировке base64 размером до 400 МБ каждый: любые изображения, видео, аудио, PDF или текст/JSON. Установите format_description: true для автоматического переформатирования описания в структурированный шаблон с использованием ИИ. Передайте time_spent_seconds для отслеживания трудозатрат QA. Передайте priority (urgent / high / normal / low), чтобы установить срочность исправления независимо от серьезности. Ответ включает project_id, project, short_id, legacy_short_id и project_short_id.
  • list_bug_reports — Вывести список и отфильтровать отчеты (макс. 100 на странице). Фильтры проекта применяются на стороне сервера перед разбивкой на страницы. Фильтрация по project (UUID, slug, точное имя или префикс тикета), 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 (открытый тег в kebab-case — распространенные значения: regression, missing-requirement, documentation, incomplete-refactor, not-a-bug, requirements-mismatch) или reporter_user_id (UUID члена команды, создавшего отчет — сначала вызовите list_team_members, чтобы преобразовать имя в UUID). Каждый результат включает 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 — если два агента вызовут claim_bug для одного и того же id почти одновременно, ровно один получит 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 (открытый тег в kebab-case — распространенные значения: regression, missing-requirement, documentation, incomplete-refactor, not-a-bug, requirements-mismatch). Соглашение цикла агента требует, чтобы оба поля resolution и root_cause были установлены всякий раз, когда status выходит из статуса new; панель управления, аналитика и будущий обучающий корпус claude-bot зависят от этих полей. Также включает assigned_to (ID пользователя из list_team_members) и 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_type — одно из duplicate-of, parent-of, related-to, depends-on или testing-blocked-by. Обратные перспективы (duplicated-by / subtask-of / blocks / blocks-testing) выводятся во время чтения — необходимо хранить только одну строку. И from_report_id, и to_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-of, где этот отчет является целью, отображается как subtask-of; depends-on, где этот отчет является целью, отображается как blocks; testing-blocked-by, где этот отчет является целью, отображается как blocks-testing. related-to является симметричной. Дополняет автоматически обнаруженное поле similar_reports, возвращаемое get_bug_report.
  • classify_bug — Классифицировать описание по одному из 19 типов отчетов (ошибки, функции, улучшения и т.д.) с оценкой достоверности
  • flush_reports — Массовое удаление старых отчетов (только для администратора)

📊

Использование и аналитика

  • get_usage — Проверить использование относительно лимитов плана
  • get_stats — Ежедневные подсчеты, разбивка по типу/серьезности/статусу

📁

Управление проектами

  • list_projects — Вывести список доступных проектов с id, name, slug, ticket_prefix, описанием и статусом по умолчанию. Используйте эти значения с create_bug_report и list_bug_reports для нацеливания на правильный проект.
  • create_project — Создать новый проект (автоматически становится проектом по умолчанию, если он первый)
  • delete_project — Безвозвратно удалить проект и все связанные данные (отчеты об ошибках, автоматизации, тестовые примеры, мобильные приложения, расписания, географические снимки, заметки, записи времени). Только для владельца/менеджера. Нельзя удалить последний проект. Хранилище освобождается автоматически
  • export_okf_bundle — Экспортировать знания QA проекта — отчеты об ошибках, тестовые примеры, автоматизации, а также тесты производительности, безопасности и исследовательские тесты — в виде пакета OKF/OQA markdown (формат Open Query Agent, используемый oqa.ai). По умолчанию используется активный проект; передайте опциональный project (slug или имя) для экспорта другого. Возвращает список файлов в пакете плюс сам пакет в виде zip-архива в кодировке base64

🔐

Аутентификация и аккаунт

  • 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 — Пригласить пользователя по email (менеджеры могут приглашать участников и менеджеров; только владельцы могут приглашать администраторов). Ссылка истекает через 5 дней

🎯

Интеграции

  • sync_to_jira — Синхронизировать отчет с Jira, используя общее подключение команды
  • push_to_claude — Сгенерировать (или перегенерировать) Заметки разработчика для отчета об ошибке — первопричина, предлагаемое исправление, шаги проверки и оценка рисков. Принимает UUID или короткий ID (WRKID-545). Использует ключи платформы — подключение Claude для каждой команды не требуется. Запускает адаптивную цепочку: три шага для ошибок s3/medium или s4/low (черновик Sonnet → критика OpenAI gpt-5 → синтез Sonnet), пять шагов для двух верхних групп серьезности — s1/critical или s2/high — (черновик → критика → опровержение Sonnet → арбитр Claude Opus, который читает полную стенограмму и пишет окончательные заметки с независимым суждением). Ответ раскрывает каждый раунд: analysis, draft, critique, rebuttal, challenger_model, adjudicator_model и флаг debated. Сбой любого шага приводит к переходу к следующему лучшему ответу. Автоматически запускается при создании ошибки; обычно вызывается только для ручной перегенерации.
  • analyze_fix_area — Сгенерировать (или перегенерировать) подблок «Вероятная область исправления» в Заметках разработчика — узкий вывод Sonnet, который указывает, где в кодовой базе, скорее всего, находится исправление. Принимает UUID или короткий ID. Использует ключ платформы Anthropic. Когда у команды есть строка github_connections и проекту сопоставлен github_repo, вывод основывается на реальных фрагментах файлов из подключенного репозитория; в противном случае возвращается к общим рекомендациям с предложением подключить репозиторий. Возвращает текст likely_fix_area, generated_at, repo_used и флаг grounded. Автоматически запускается при создании ошибки — агентам обычно нужно вызывать это только для ручной перегенерации.
  • upgrade_plan — Получить ссылку для регистрации с помощью менеджера по продажам для Team или Enterprise

Тестирование производительности

  • 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 (4000+ шаблонов) с тремя уровнями глубины и опциональным аутентифицированным сканированием. Сканирования мобильных приложений используют MobSF для бинарного анализа APK/IPA. Настраиваемое автоматическое создание багов с порогами серьезности. Только для 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_id и cron_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 — Список недавних ИИ-код-ревью для команды. Возвращает оценки качества, количество проблем по серьезности, информацию о PR и временные метки. Только для Enterprise
  • get_code_review — Получить код-ревью со всеми находками. Каждая находка включает серьезность, категорию (bug/security/performance/style/logic/maintainability), заголовок, описание, предложение по коду, путь к файлу и номера строк
  • get_code_review_usage — Проверить использование код-ревью. ИИ-код-ревью доступно только в Enterprise; безлимитно в Enterprise
  • get_code_review_analytics — Получить аналитику ревью: тренды, категории/источники находок, разбивка по серьезности, метрики скорости, топ репозиториев/авторов. Поддерживает ретроспективу за 7/30/90 дней
  1. get_code_review_usage → проверить оставшиеся ревью
  2. Провести ревью PR в панели управления на /dashboard/code-review
  3. list_code_reviews → посмотреть недавние ревью
  4. get_code_review → получить находки и предложения

🔍

Исследовательский ИИ

Многоагентный автономный поисковик багов на веб-сайтах с возможностью запуска до 10 параллельных агентов, каждый из которых использует свою стратегию тестирования.

  • list_explorations — Список конфигураций Исследовательского ИИ для команды
  • 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 — Проверить ежемесячное использование. Исследовательский ИИ доступен только в Enterprise; Enterprise: безлимитно (10 агентов)
  1. create_exploration с agent_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. Установить visibility в private или shared. Автоматическое создание заголовка из первых 30 символов, если заголовок не указан. Опциональный массив attachments принимает файлы в кодировке base64 размером до 400 МБ каждый: любые изображения, видео, аудио, PDF или текст/JSON. Передайте time_spent_seconds для учета усилий QA.
  • get_note — Получить полную информацию о заметке, включая содержимое и вложения. Требуется id.
  • update_note — Обновить заголовок, содержимое, формат, видимость, проект или time_spent_seconds. Передайте массив attachments для добавления новых файлов (макс. 400 МБ каждый) к существующим вложениям заметки без их замены. Только автор может обновлять. Требуется id.
  • delete_note — Безвозвратно удалить заметку и ее вложения. Только автор может удалять. Требуется id.
  1. create_note → начать заметку о сессии тестирования
  2. update_note → добавлять наблюдения по мере тестирования
  3. list_notes → искать прошлые заметки по ключевому слову или проекту
  4. get_note → получить полную заметку с вложениями

🤖

Автоматизация

  • create_automation — Создать новую автоматизацию с пользовательским скриптом Playwright (запись FAB не требуется). Требуется name. Опционально: target_url (автоматически определяется из первого URL page.goto(...) в скрипте, если не указан), script (Node.js/JavaScript/TypeScript или Python — язык определяется автоматически; по умолчанию используется заполнитель), status (draft или active, по умолчанию: draft), project_id. Возвращает id автоматизации. Требуется тарифный план Team. Совет — Дублировать автоматизацию: используйте 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 }) и массивом recent_runs, где каждый запуск содержит script_version_label/script_version_source, которые выполнялись. Вызовите это перед run_automation, если нужно выбрать конкретную историческую версию.
  • run_automation — Запустить немедленное выполнение теста Playwright. Требуется automation_id. Самовосстанавливающиеся локаторы (автоматически): когда действие с локатором завершается по таймауту, исполнитель запрашивает у Claude рабочий селектор и повторяет шаг один раз — утверждения никогда не восстанавливаются, поэтому реальные регрессии все равно приводят к ошибке — и каждое восстановление регистрируется в stdout запуска. Виртуальный режим (по умолчанию): опциональный device для эмуляции области просмотра (например, desktop, iphone-15). Живой режим: установите browserstack: true с bs_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) и охватывают только десктоп — реальные мобильные устройства через Python не поддерживаются, так как browser_type.connect() pytest-playwright не может управлять конечными точками реальных мобильных устройств BrowserStack. Видео и сетевые логи записываются автоматически; консольные логи — только для десктопа. Воспроизведение версии: передайте опциональный version_index (целое число, с индексом 0) для выполнения предыдущей записи из истории script_versions автоматизации. По умолчанию: когда version_index опущен или равен null, выполняется текущий живой скрипт — не передавайте значение-заполнитель только для того, чтобы "выбрать текущий". Значения вне диапазона, отрицательные или нецелые числа отклоняются. Запись о запуске сохраняет точный снимок, который выполнялся, а любой отчет об ошибке, автоматически созданный из неудачного запуска, содержит глубокую ссылку на эту версию в редакторе.
  • list_automation_runs — Список недавних запусков для автоматизации. Требуется automation_id. Возвращает запуски со статусом, duration_ms и error_message.
  • list_schedules — Список всех запланированных запусков веб-автоматизации с cron, часовым поясом, устройством и настройками уведомлений
  • create_schedule — Создать запланированный запуск веб-автоматизации. Требуется automation_id и cron_expression. Поддерживает параметры устройства, часового пояса, notify_on_fail (email/slack/both) и канала Slack. BrowserStack Live при запланированных запусках: передайте browserstack: true с bs_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 — Отправить скрипт Playwright в Sonnet 4 для оптимизации с помощью ИИ. Применяет контрольный список из 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). Только для тарифа Team.

  • create_time_entry — Учет времени, затраченного на задачи QA. Требует description, category и duration_minutes. Опционально можно задать project_id и entry_date (по умолчанию — сегодня). Только для тарифа Team.
  • update_time_entry — Обновление существующей записи времени. Требует id. Можно обновить description, category, duration_minutes, project_id или entry_date. Только для тарифа Team.
  • delete_time_entry — Безвозвратное удаление записи времени. Требует id. Только для тарифа Team.
  1. create_time_entry → занести 45 минут регрессионного тестирования
  2. list_time_entries → посмотреть записи времени за эту неделю
  3. update_time_entry → скорректировать длительность или категорию
  4. delete_time_entry → удалить ошибочную запись

☑️

Тестовые сценарии (Test Cases)

Управление тестами с иерархическими папками, вложенными сюитами (до 3 уровней вложенности с автоматическим развертыванием подсюит при запусках), перетаскиванием для изменения порядка и вкладкой аналитических отчетов с KPI-трендами, анализом отказов, здоровьем сюит, покрытием и продуктивностью тестировщиков. Все инструменты обращаются напрямую к Supabase — без HTTP-обмена, с той же задержкой, что и панель управления.

Лимиты Free: 10 сохраненных тестовых сценариев, 1 сюита, 3 папки, 128 КБ структурированного контента на сценарий, 2 активных API-ключа рабочей области и 10 суммарных тестовых запусков за календарный месяц UTC. До 3 из этих запусков могут использовать Hermes или другого внешнего агента, при этом допускается 1 активный внешний запуск и не более 10 сценариев в каждом внешнем плане. Трафик MCP по бесплатному API-ключу ограничен 30 запросами на ключ и 60 на рабочую область в минуту. Хранение тестовых сценариев и запуски на тарифах Team и Enterprise не ограничены, с учетом общих мер защиты платформы.

Генерация тестовых сценариев с помощью ИИ, предложение тегов ИИ, импорт из Figma и вложения файлов в тестовые сценарии требуют тарифа Team или Enterprise. Ограничение в 128 КБ структурированного контента на Free не зависит от платных вложений. На Free можно хранить URL-ссылки. Основные инструменты MCP для тестовых сценариев остаются доступны на Free в пределах указанных выше лимитов.

Выполнение без рук: страница обзора запуска представляет собой карусель с одним сценарием за раз, сочетаниями клавиш (P Пройден · F Провален · B Заблокирован · S Пропущен) и голосовым управлением. Нажмите на микрофон, затем произнесите «Pass», «Fail», «Block», «Skip», «Next», «Previous», «Add notes» (расшифровывается в поле заметок), «Save notes» или «Voice off». Автоматически переходит к следующему непротестированному сценарию при успешных результатах; остается на месте при провале, чтобы тестировщики могли надиктовать детали и создать баг-репорт. Работает в 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 (по умолчанию) — таблица с пошаговыми { action, expected } через массив steps; text — единое описание в свободной форме через text_content. Оба поля можно отправить в одном вызове (платформа хранит их независимо, поэтому переключение тестировщиком template_type впоследствии не приведет к потере данных ни одной из сторон). Опциональный массив urls (макс. 10 URL-адресов http/https) прикрепляет ссылки и доступен на Free. Требует name. Опционально: description, preconditions, template_type, steps, text_content, urls, priority, type, tags, estimated_time (секунды). Вложения файлов требуют тарифа Team или Enterprise и загружаются через конечную точку POST /api/test-cases/:id/attachments панели управления (multipart) — пока не реализованы как инструмент MCP.
  • get_test_case — Получение полной информации о тестовом сценарии, включая шаги и историю выполнения.
  • list_test_case_folders — Список папок команды (одна папка на сценарий через folder_id; в отличие от сюит, которые являются группировками тест-планов «многие ко многим»). Не более 500; поддерживает фильтры project_id и parent_folder_id (используйте "root" только для верхнего уровня).
  • create_test_case_folder — Создание папки (вложенность до 3 уровней через parent_folder_id). Используйте 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 (5+ последовательных прохождений за 90 дней), always_skipped (3+ последовательных пропуска).
  • mark_test_case_review_flags — Сохранение текущих флагов кандидатов на архивацию в test_cases.review_flag. Запускается автоматически каждый понедельник в 09:00 UTC через pg_cron.
Импорт
  • Импорт из Figma (Team/Enterprise) (UI панели управления + REST): загрузите zip-экспорт фреймов Figma (до 100 МБ), 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 — Список тестовых сюит с идентификатором проекта, количеством сценариев и статусом последнего запуска. Вызывающим с API-ключом требуется test_runs:read.
  • create_test_suite — Создание сюиты. Вложенность до 3 уровней через parent_suite_id.
  • list_test_runs — Список тестовых запусков с названием сюиты, исполнителем и сводкой пройдено/провалено.
  • create_test_run — Создание запуска сюиты, управляемого через панель. Запуск родительской сюиты автоматически включает каждый сценарий из каждой дочерней подсюиты (сценарий, связанный с обеими, добавляется ровно один раз). Каждая строка test_run_results записывает, из какой исходной подсюиты взят сценарий, чтобы страницы результатов могли группировать по источнику.
Выполнение внешним агентом

Эти инструменты позволяют Hermes или другой среде выполнения агента выполнять утвержденную сюиту, не становясь основной системой учета QA. Используйте ключ с областью действия рабочей области, имеющий только test_runs:read и test_runs:write. Сюита задает границы проекта; вызывающие не могут их переопределить.

  • start_test_plan — Запуск или возобновление неизменяемого снимка сюиты со стабильным external_run_id. Повторный ID возвращает существующий соответствующий запуск и первую страницу вместо создания дубликата.
  • get_test_run_plan — Чтение канонического состояния запуска и стабильной страницы плана. Передайте предыдущий next_cursor; страницы по умолчанию содержат 100 сценариев, максимум — 200.
  • report_test_results — Отправка 1–200 результатов со статусом passed, failed, blocked или skipped. Точные повторные попытки безопасны; попытка перезаписать сценарий другим статусом отклоняется.
  • abort_test_run — Идемпотентная остановка прерванного запуска с сохранением принятых частичных результатов и канонической сводки.

Поведение квот: повторный вызов start_test_plan с тем же external_run_id для возобновления соответствующего запуска без расходования еще одного запуска. Удаление данных не сбрасывает использование месячных запусков.

Границы среды выполнения: снимки сценариев исключают учетные данные, тела файлов и пути к частным вложениям. Доказательствами результатов в MVP является текст. Целевые учетные данные остаются в среде выполнения. Расходы на браузер, модель и сеть остаются на стороне клиента, и клиенты должны ограничивать целевой доступ и сетевой трафик. Ответственность за решения по дефектам и релизам остается за человеком.

Руководство по агенту Hermes оформляет этот цикл как поддерживаемый bugAgent навык сообщества. Публичный стартовый набор содержит готовый к копированию конфиг и устанавливаемый навык. Это не официальная интеграция Nous Research.

Отчеты (аналитика 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. start_test_plan → запустить или возобновить безопасный для повторов запуск внешнего агента
  6. get_test_run_plan → получить каждую неизменяемую страницу плана, затем выполнить ее в выбранной среде выполнения
  7. report_test_results → вернуть ограниченные пакеты результатов; вызвать abort_test_run, если выполнение не может быть безопасно продолжено
  8. get_test_reports_failures → спросить «что исправлять на этой неделе?» после завершения запуска
  9. get_test_reports_overview → отслеживать тренд процента прохождения неделя за неделей

Team Booster

  • scale_team — Мгновенное масштабирование вашей QA-команды с помощью бустер-тестировщиков. Учетные записи создаются автоматически с доступом тестировщика. Укажите team_size (1–10), location, duration, budget и опционально product_url, product_types и tech_levels. Доступно на тарифе Team. Плата не взимается до получения одобрения.
  1. scale_team → предоставить 5 старших тестировщиков в США на 1 месяц
  2. list_team_members → проверить, что новые тестировщики появились в вашей команде
  3. list_reports → просмотреть отчеты, поданные бустер-тестировщиками

📱

Мобильное тестирование (Enterprise)

Мобильные ресурсы привязаны к проекту. Передавайте project_id или гибкий селектор project при создании, импорте и фильтрованных списках. Автоматизации наследуют проект связанного приложения; в противном случае сервер использует проект рабочей области по умолчанию. Нефильтрованные списки могут по-прежнему включать устаревшие строки уровня рабочей области до их миграции.

  • list_mobile_apps — Список загруженных приложений с опциональными фильтрами project_id/project, platform и limit. Возвращает project_id каждого приложения, чтобы агенты могли выполнять последующие операции в рамках того же проекта.
  • upload_mobile_app — Регистрация APK (Android) или IPA (iOS) приложения для тестирования на реальных устройствах. Требует name, platform (android/ios) и file_url; передайте project_id, чтобы назначить его активному проекту. Для iOS загрузите IPA для запусков на реальных устройствах, затем используйте панель управления для загрузки сборки .app для симулятора для записи.
  • update_mobile_app — Замена бинарного файла приложения новой версией. Очищает кэшированные URL-адреса и сборки симулятора, чтобы все автоматизации использовали новую версию при следующем запуске. Требует app_id и file_url. Опционально: version.
  • list_mobile_automations — Список мобильных автоматизаций с опциональными фильтрами project_id/project, app_id, status и limit. Результаты включают project_id и связанный идентификатор приложения.
  • create_mobile_automation — Создание тестового скрипта. Требует name, app_id, script_type (maestro для YAML, appium для Appium Python, appium_js для Appium JavaScript) и script; передайте project_id, если приложение еще не привязано к проекту.
  • import_mobile_script — Импорт существующего мобильного тестового скрипта и преобразование его в исполняемую автоматизацию с сохранением локаторов разработчика для точного разрешения элементов при запусках. Поддерживаемые диалекты: Appium‑Python, WebdriverIO, Maestro (потоки YAML) и Playwright (мобильный‑веб). Только для приложений Android. Требует name, app_id и script; опционально target_devices и project_id. Возвращает автоматизацию, а также action_count, обнаруженный dialect и карту сопоставления селекторов warnings.
  • run_mobile_automation — Запуск мобильной автоматизации на реальном устройстве. Требует automation_id; опционально device, os_version и credential_id. Учетные данные для конкретного запуска переопределяют профиль входа по умолчанию для автоматизации и должны принадлежать тому же проекту.
  • list_mobile_runs — Получение результатов мобильного запуска (статус, устройство, видео, сессия BrowserStack и любые автоматически созданные баги). Опциональные фильтры: project_id, automation_id, status (queued, running, passed, failed, error, archived) и limit. Архивные запуски исключены по умолчанию.
  • create_mobile_credential — Создание именованного профиля входа (например, «Администратор», «Контрибьютор») для проекта: имя пользователя + пароль, используемые мобильными автоматизациями. Оба значения хранятся в зашифрованном виде (AES‑256‑GCM) и доступны только для записи — ни один инструмент или API никогда не возвращает их, а другие участники / интерфейс видят только имя. Выбирайте профиль для каждого запуска, чтобы входить под разными ролями без повторной записи. Требует project_id, name, username, password. Только для Enterprise.
  • list_mobile_credentials — Список профилей входа (опционально один project_id). Возвращает только несекретные поля (id, name, проект, создатель, дата создания) — никогда не возвращает имя пользователя или пароль. Используйте возвращенный id в качестве выбора учетных данных при запуске автоматизации.
  • update_mobile_credential — Переименование профиля входа или смена его имени пользователя/пароля по id. Включайте только поля для изменения. Новые секретные значения немедленно шифруются и никогда не возвращаются.
  • delete_mobile_credential — Мягкое удаление профиля входа по id. Сохраняется для аудита и истории запусков, но больше не используется и не отображается в списке; освобождает имя для повторного использования.
  • list_mobile_schedules, create_mobile_schedule, delete_mobile_schedule — Список, создание и удаление расписаний для реальных устройств. Расписания наследуют контекст проекта через выбранную автоматизацию.

Пример рабочего процесса — Android

  1. list_projects → определить целевой project_id
  2. upload_mobile_app → зарегистрировать APK в этом проекте
  3. Безопасно записать в панели управления или использовать import_mobile_script / create_mobile_automation
  4. list_mobile_automations → определить автоматизацию в том же проекте
  5. run_mobile_automation → запустить ее на реальном устройстве, опционально с профилем входа
  6. list_mobile_runs → проверить результаты с видео и логами
  7. При сбоях автоматически создаются отчеты об ошибках со снимком сбоя и пошаговой разбивкой

Пример рабочего процесса — iOS

  1. upload_mobile_app → зарегистрируйте ваш IPA с project_id для запусков на реальных устройствах
  2. Загрузите сборку .app для симулятора на странице сведений о приложении (для записи)
  3. Запишите тест в браузере → действия захватываются с симулятора
  4. run_mobile_automation → запустите сохраненную автоматизацию на iPhone (использует IPA)
  5. update_mobile_app → замените IPA новой версией, когда будете готовы

Улучшение с помощью ИИ: бета-версия из белого списка доступна через панель управления и конечные точки REST для улучшения. Инструменты Refine MCP пока не являются частью публичного каталога.

Соответствие требованиям и доказательства (Enterprise)

  • collect_compliance_evidence — Запуск автоматизированного сбора доказательств из подключенных сервисов (Cloudflare, GitHub, Sentry, Supabase, Railway). Возвращает идентификатор запуска. Собирает настройки 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 (ст. 5, 25, 32, 33).

Совместимые клиенты

bug_Agent_ работает с любым клиентом, поддерживающим Model Context Protocol. Вот руководства по настройке для популярных клиентов:

🤖

Claude Desktop

Откройте Настройки → Разработчик → Редактировать конфигурацию, затем добавьте:

claude_desktop_config.json

Перезапустите Claude Desktop после сохранения.

✳️

Cursor

Откройте Настройки → MCP Servers → Добавить сервер или отредактируйте .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

Установите ваш ключ API с помощью export BUGAGENT_API_KEY=ba_live_... перед запуском.

🔧

Другие MCP-клиенты

Любой клиент, поддерживающий транспорт MCP stdio, работает с bug_Agent_. Используйте стандартную конфигурацию:

  • Команда: npx
  • Аргументы: ["-y", "@bugagent/mcp-server"]
  • Переменные окружения: BUGAGENT_API_KEY

CLI

Начало работы с CLI

CLI bug_Agent_ дает вам полный контроль над отчетами об ошибках, запросами функций, проектами и интеграциями из вашего терминала. Используйте его для:

  • Автоматизации рабочих процессов — Интеграция отчетов об ошибках в конвейеры CI/CD, скрипты и задачи cron
  • Массовых операций — Список, фильтрация и управление отчетами, не покидая терминал
  • Вывода, удобного для конвейеров — Форматы JSON, YAML и raw для компоновки с jq, yq и другими инструментами
  • Быстрой итерации — Браузер не нужен — создавайте и обновляйте отчеты за секунды

Установка

npm install -g @bugagent/cli

Проверьте установку:

bugagent --version

Аутентификация

Установите ваш ключ API как переменную окружения:

Или передайте его напрямую с флагом --api-key:

bugagent reports list --api-key ba_live_your_key_here

🔑

Получите ваш ключ API из консоли bug_Agent_. Ключи начинаются с ba_live_.

Для постоянной аутентификации добавьте экспорт в профиль вашей оболочки (~/.bashrc, ~/.zshrc и т.д.).

Использование

Команды следуют шаблону:

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

Используйте --transform с синтаксисом GJSON для запроса и фильтрации выходных данных:

# 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 Skill

CLI также доступен как AgentSkill, позволяя AI-ассистентам по кодированию использовать bug_Agent_ от вашего имени.

Что такое AgentSkill?

AgentSkills позволяют 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 для поддержки в реальном времени и обсуждений с сообществом.

Поддержка по электронной почте

support@bugagent.com — Обычно мы отвечаем в течение 24 часов.