bugAgent

resmi

bugAgent'ı MCP uyumlu herhangi bir AI istemcisine bağlayın. Doğrudan AI kodlama asistanınızdan hataları dosyalayın, sınıflandırın ve yönetin, özellik talepleri ve daha fazlasını yapın. Bağlam değiştirme yok, kopyala-yapıştır yok — sadece sorunu tanımlayın ve bugAgent gerisini halleder.

bugAgent MCP ile neler yapabilirsiniz?

  • Hata raporları oluştur — Asistanınızdan, 19 tür arasında otomatik sınıflandırma yaparak, önem derecesi ve öncelik ayarlarını içeren bir hata raporu oluşturmasını isteyin.
  • Raporları listele ve filtrele — list_bug_reports kullanarak hataları proje, önem derecesi, durum, tür veya arama metnine göre sorgulayın; sayfalama ile en fazla 100 sonuç alın.
  • Üzerinde çalışılacak bir sonraki hatayı seç — Asistanınızın pick_next_bug çağrısını yaparak ekibiniz için en yüksek öncelikli, atanmamış hatayı (S1→S3, en eski ilk) almasına izin verin.
  • Hataları atomik olarak sahiplen — claim_bug kullanarak bir hatayı yarış koşulu olmadan "devam ediyor" durumuna geçirin ve size atayın; böylece çift iş yapılmasını önleyin.
  • Test paketlerini ve durumlarını yönet — Test paketleri oluşturun, regresyon paketlerini çalıştırın ve son 7 gündeki başarısız test durumlarını listeleyin.

Dokümantasyon

Connect bug Agent'i MCP uyumlu herhangi bir AI istemcisine bağlayın.

Hataları, özellik isteklerini ve daha fazlasını doğrudan AI kodlama asistanınızdan dosyalayın, sınıflandırın ve yönetin. Bağlam değiştirme yok, kopyala-yapıştır yok — sadece sorunu tanımlayın ve bug Agent gerisini halleder.

Harici MCP istemcileri, bug Agent'in panel AI Asistanı'ndan ayrıdır. Panel asistanı her planda varsayılan olarak kapalıdır ve açık çalışma alanı etkinleştirmesi gerektirir; ai_assistant kapısı MCP veya entegrasyonları devre dışı bırakmaz. MCP kimlik doğrulaması, kapsamlar, çalışma alanı/proje izinleri ve araçlara özel yetkiler yine de geçerlidir.

Başlarken

bug Agent, barındırılan MCP sunucusunu çalıştırır; böylece AI istemcileri Model Context Protocol aracılığıyla hata raporları, özellik istekleri, iyileştirmeler ve daha fazlasını oluşturabilir, sorgulayabilir ve yönetebilir. İstemciler doğrudan barındırılan Streamable HTTP uç noktasına bağlanır.

API anahtarınızı alın

Ücretsiz hesap oluşturun; yeni çalışma alanı sahipleri doğrudan API anahtarı kurulumuna yönlendirilir. Mevcut kullanıcılar Ayarlar → Geliştiriciler → API Anahtarları bölümünden bir anahtar oluşturabilir.

AI istemcinizi yapılandırın

bug Agent'i istemcinizin yapılandırmasına bir MCP sunucusu olarak ekleyin (aşağıdaki kuruluma bakın).

Hata dosyalamaya başlayın

Bir hatayı doğal dilde tanımlayın; bug Agent otomatik olarak sınıflandırır, zenginleştirir ve saklar.

# 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

Kurulum

Önerilen: barındırılan Streamable HTTP

Doğrudan https://mcp.bugagent.com/mcp adresine bağlanın. Yerel olarak kurulacak veya çalıştırılacak bir şey yoktur. Çalışma alanı API anahtarınızı bir taşıyıcı belirteci olarak ekleyin:

{
  "mcpServers": {
    "bugagent": {
      "type": "http",
      "url": "https://mcp.bugagent.com/mcp",
      "headers": {
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"
      }
    }
  }
}

💡

ba_live_YOUR_KEY_HERE değerini Ayarlar → Geliştiriciler bölümünden aldığınız gerçek API anahtarınızla değiştirin.

İsteğe bağlı stdio köprüsü

Yayınlanan köprüyü yalnızca bir istemci stdio gerektirdiğinde ve uzak bir HTTP sunucusuna bağlanamadığında kullanın. npx -y bugagent-mcp ile isteğe bağlı olarak çalıştırın:

{
  "mcpServers": {
    "bugagent": {
      "command": "npx",
      "args": ["-y", "bugagent-mcp"],
      "env": {
        "BUGAGENT_API_KEY": "ba_live_YOUR_KEY_HERE"
      }
    }
  }
}

Sunucuya Bağlanma

bug Agent MCP sunucusu, Streamable HTTP taşıması üzerinden https://mcp.bugagent.com/mcp adresinde aktiftir. Aşağıdaki sekiz istemciden herhangi birinden bağlanın — iş akışınıza uyanı seçin.

Küçük, kopyalamaya hazır bir yapılandırma, kapsamlı anahtar rehberliği ve güvenli başlangıç istemleri için genel MCP hızlı başlangıç bölümünü kullanın.

🔑

Önce API anahtarınızı alın. Ayarlar → Geliştiriciler bölümüne giriş yapın, API Anahtarı Oluştur'a tıklayın, istemcinizin ihtiyaç duyduğu kapsamları seçin ve değeri kopyalayın (ba_live_ ile başlar). Yalnızca bir kez görürsünüz, bu yüzden güvenli bir yere yapıştırın. MCP istemcileri yalnızca bu kapsamlar tarafından verilen araçları listeler. Aşağıdaki bağlantı örnekleri bu anahtarı kullanır; etkileşimli OAuth/oturum veya ücretli plan yetkisi gerektiren istemler ayrıca belirtilmiştir.

Seçenek 1 — MCP Inspector (Web UI, ilk kez test için önerilir)

Resmi Anthropic aracı. Her aracı tıklayabileceğiniz, parametreleri doldurabileceğiniz ve yanıtları görebileceğiniz yerel bir web arayüzü başlatır. Sıfır yapılandırma, IDE gerektirmez.

macOS (Terminal)

npx @modelcontextprotocol/inspector

Windows (PowerShell veya CMD)

npx @modelcontextprotocol/inspector

Açılan tarayıcı arayüzünde:

  1. Taşıma Türü: Streamable HTTP seçin
  2. URL: https://mcp.bugagent.com/mcp
  3. Bağlantı Türü: Proxy seçin (varsayılan — Inspector, tarayıcı CORS'unu atlamak için yerel bir Node süreci üzerinden proxy yapar)
  4. Sunucu Ayarları → Özel Başlıklar'ı açın ve ekleyin:
    • Başlık Adı: X-Api-Key
      • Değer: ba_live_YOUR_KEY_HERE (Bearer öneki olmadan)
  5. Bağlan'a tıklayın. Sol panel, seçtiğiniz API anahtarı kapsamlarının izin verdiği bug Agent araçlarını listeler.
  6. Herhangi bir araca tıklayın (örn. list_bug_reports), parametreleri doldurun, Aracı Çalıştır'a tıklayın. Yanıt sağda gösterilir.

Ön koşullar: MCP Inspector v2, Node.js 22.19 veya sonrasını gerektirir. nodejs.org adresinden güncel bir Node.js sürümü yükleyin.

Inspector invalid_client döndürürse, API anahtarı kimlik doğrulaması yerine kayıtlı bir OAuth bağlantısı deniyordur. Kayıtlı sunucuyu kaldırın (veya saklanan OAuth durumunu temizleyin), tekrar ekleyin ve yukarıdaki X-Api-Key özel başlığını kullanın. Bir OAuth client_id alanına ba_live_ anahtarı koymayın.

Seçenek 2 — Claude Desktop (Mac + Windows)

Claude Desktop uygulamasını kullanıyorsanız, bug Agent'i kalıcı bir MCP sunucusu olarak ekleyebilirsiniz. Bir çalışma alanı API anahtarıyla Claude, yalnızca bu anahtarın kapsamlarının izin verdiği araçları alır. Devredilen OAuth, tam etkileşimli kataloğu ortaya çıkarır.

macOS

  1. Claude Desktop'ı açın → menü çubuğu Claude → Ayarlar → Geliştirici → Yapılandırmayı Düzenle. Bu, ~/Library/Application Support/Claude/claude_desktop_config.json dosyasını açar.
  2. bug Agent girişini mcpServers altına ekleyin:
    {
      "mcpServers": {
        "bugagent": {
          "type": "http",
          "url": "https://mcp.bugagent.com/mcp",
          "headers": {
            "Authorization": "Bearer ba_live_YOUR_KEY_HERE"
          }
        }
      }
    }
    
  3. Dosyayı kaydedin ve Claude Desktop'ı tamamen kapatın (Cmd+Q, pencereyi kapatmak yeterli değildir).
  4. Claude Desktop'ı yeniden başlatın. Sohbet girişinin altındaki araçlar çekiç simgesi artık bug Agent araçlarını göstermelidir.
  5. Deneyin: "Son 5 hata raporumu listele" yazın — Claude list_bug_reports aracını otomatik olarak çağırır.

Windows

  1. Claude Desktop'ı açın → Dosya → Ayarlar → Geliştirici → Yapılandırmayı Düzenle. Bu, %APPDATA%\Claude\claude_desktop_config.json dosyasını açar (genellikle C:\Users\YourName\AppData\Roaming\Claude\claude_desktop_config.json).
  2. macOS bölümünde gösterilen aynı JSON bloğunu ekleyin.
  3. Dosyayı kaydedin ve Claude Desktop'ı sistem tepsisinden tamamen kapatın (Claude simgesine sağ tıklayın → Çıkış), ardından yeniden başlatın.
  4. Araçlar çekiç simgesi bug Agent araçlarını gösterecektir.

Seçenek 3 — Claude Code (CLI)

Terminalinizden Claude Code kullanıyorsanız (Claude'un CLI sürümü), bug Agent sunucusunu tek bir komutla kaydedin. macOS, Linux ve Windows'ta aynı şekilde çalışır.

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

Ardından Claude Code oturumunuzu yeniden başlatın. Bağlı olduğunu doğrulayın:

claude mcp list

Listede yeşil noktalı bugagent görmelisiniz. API anahtarıyla uyumlu bir istemle başlayın: "Son 5 açık hata raporumu listele."

Bağlı, ancak bazı araçlar eksik mi?

Sunucunun araç sayısını /mcp içinde kontrol edin, yalnızca konuşmaya yüklenmiş araçlara bakmayın. Claude Code, araç aramayı kullanarak araçları isteğe bağlı olarak keşfedebilir. bugAgent için list_test_cases, list_test_suites veya get_test_run_plan aramasını isteyin. Claude Code'un araç arama belgelerine bakın.

Katalog, API anahtarı kapsamlarına göre filtrelenir. Test senaryosu okumaları test_cases:read gerektirir; paket/çalıştırma okumaları test_runs:read gerektirir. Yalnızca gerçekten ihtiyacınız olan yazma kapsamlarını isteyin. Kimliği doğrulanmış tools/list değerini istemcinizle aynı uç nokta ve anahtarla karşılaştırın; anonim keşif veya farklı bir anahtar geçerli bir karşılaştırma değildir. Kullanıcı düzeyindeki bağlantınızı geçersiz kılan bir proje düzeyi yapılandırması olup olmadığını kontrol edin, ardından kimlik bilgisi değişikliklerinden sonra yeniden bağlanın veya yeniden başlatın.

Kimliği doğrulanmış sunucu kataloğu bir araç içeriyor ancak istemci hâlâ onu keşfedemiyorsa, kimlik bilgileri ve müşteri verileri kaldırılmış olarak istemci sürümünü, sunucu sürümünü, araç adlarını/sayılarını ve şema hatalarını kaydedin. ENABLE_TOOL_SEARCH=false claude ile başlatılan bir oturum, ertelenmiş keşfi yükleme sorunlarından ayırt edebilir, ancak tüm araç tanımlarını yükler ve daha fazla bağlam kullanır; yalnızca geçici bir tanılama olarak kullanın. Yalnızca araç sayısını artırmak için izinleri genişletmeyin veya uç noktaları bölmeyin.

Daha sonra kaldırmak için:

claude mcp remove bugagent

Seçenek 4 — OpenAI Codex CLI

OpenAI Codex CLI kullanıyorsanız, API anahtarınızı dışa aktarın ve bug Agent'i ~/.codex/config.toml dosyasına ekleyin.

Kalıcı kayıt (yapılandırmaya ekleme)

[mcp_servers.bugagent]
url = "https://mcp.bugagent.com/mcp"
bearer_token_env_var = "BUGAGENT_API_KEY"

API anahtarını ayarlayın

export BUGAGENT_API_KEY="ba_live_YOUR_KEY_HERE"

Codex'i bu ortamdan başlatın veya yeniden başlatın. Codex, doğal dil isteminizden araç çağrılarını otomatik olarak çözer. Deneyin: "Açık hatalarımı önem derecesine göre sıralayarak listele."

Seçenek 5 — Cursor (Mac + Windows)

Cursor'un yerleşik MCP desteği vardır. Uygun kapsamlı bir çalışma alanı API anahtarıyla, Cursor içindeki AI asistanı, düzenleyicinizden ayrılmadan hataları dosyalayabilir, raporları listeleyebilir ve desteklenen otomasyon iş akışlarını çalıştırabilir. Güvenlik, performans ve keşif taramaları, devredilen OAuth ve geçerli plan erişimi gerektirir.

  1. Cursor'ı açın → Ayarlar (Mac'te Cmd+, / Windows'ta Ctrl+,) → sol kenar çubuğunda MCP.
  2. + Yeni MCP sunucusu ekle'ye tıklayın.
  3. HTTP taşıma türünü seçin.
  4. Doldurun:
    • Ad: bugagent
      • URL: https://mcp.bugagent.com/mcp
      • Başlık adı: Authorization
      • Başlık değeri: Bearer ba_live_YOUR_KEY_HERE
  5. Kaydet'e tıklayın. Cursor bağlandığında yeşil bir gösterge gösterir.
  6. Cursor'un sohbetini açın (Cmd+L / Ctrl+L) ve "'Giriş bozuk' başlıklı, önem derecesi yüksek bir hata raporu oluştur" yazın. Cursor create_bug_report aracını çağırır.

Alternatif: Cursor ayrıca ~/.cursor/mcp.json (Mac) veya %USERPROFILE%\.cursor\mcp.json (Windows) dosyalarını okur. Claude Desktop bölümünde gösterilen aynı JSON formatını ekleyin.

Seçenek 6 — Continue uzantılı VS Code (Mac + Windows)

VS Code'u tercih ediyorsanız, Continue uzantısı MCP sunucularını yerel olarak destekler.

  1. VS Code pazarından Continue uzantısını yükleyin.
  2. Continue'un yapılandırmasını açın: Komut Paleti (Cmd+Shift+P / Ctrl+Shift+P) → Continue: config.json'u aç. Dosya şu konumdadır:
    • macOS: ~/.continue/config.json
      • Windows: %USERPROFILE%\.continue\config.json
  3. Bir mcpServers girişi ekleyin:
    {
      "mcpServers": [
        {
          "name": "bugagent",
          "type": "streamable-http",
          "url": "https://mcp.bugagent.com/mcp",
          "requestOptions": {
            "headers": {
              "Authorization": "Bearer ba_live_YOUR_KEY_HERE"
            }
          }
        }
      ]
    }
    
  4. Kaydedin. Continue otomatik olarak yeniden yüklenir ve bug Agent araçlarını kenar çubuğunda gösterir.
  5. Continue sohbet panelini açın ve deneyin: "Son 5 açık hata raporumu listele."

Diğer MCP destekli VS Code uzantıları: Cline, Roo Code ve Windsurf (çatal) tümü, mcpServers anahtarı ve HTTP taşımasıyla benzer JSON yapılandırma desenlerini izler.

Seçenek 7 — OAuth farkında ana bilgisayarlar (örnek olarak Claude.ai web gösterilmiştir)

Bazı MCP ana bilgisayarları OAuth 2.0 ile kimlik doğrular ve bir taşıyıcı API anahtarı kabul etmek yerine önceden statik bir client_id ve client_secret ister. bug Agent panelinden bir bağlayıcı kimlik bilgisi çifti oluşturun ve ana bilgisayarın bağlayıcı formuna yapıştırın. Çift, MCP istemcisini tanımlar; onaydan sonra araç yürütme, oturum açmış kullanıcıyı ve o kullanıcının etkin bug Agent çalışma alanını kullanır. Aşağıdaki yol gösterimi, en yaygın örnek olarak Claude.ai web uygulamasını kullanır.

i

Kaynağa bağlı OAuth. Korumalı kaynak tanımlayıcısı https://mcp.bugagent.com/mcp değeridir. Standartların farkında olan ana bilgisayarlar bunu /.well-known/oauth-protected-resource/mcp adresinden keşfeder ve RFC 8707 resource parametresi olarak gönderir. bug Agent, bu kaynağa, OAuth istemcisine, oturum açmış kullanıcıya ve verilen kapsamlara bağlı opak belirteçler yayınlar; bir belirteç başka bir hizmete karşı yeniden oynatılamaz veya başka bir istemci tarafından kullanılamaz.

  1. bug Agent içinde: Ayarlar → Geliştiriciler → MCP Bağlayıcıları'nı açın. Bağlayıcı oluştur'a tıklayın, ana bilgisayarı tanımlayan bir ad verin (örn. "Claude.ai (iş)"), MCP ana bilgisayarınızın gerektirdiği yönlendirme URI'sini yapıştırın (Claude.ai web uygulaması için bu https://claude.ai/api/mcp/auth_callback değeridir — diğerleri için ana bilgisayarınızın bağlayıcı belgelerine bakın) ve kimlik doğrulama yöntemi için Gizli seçeneğini seçin. Başarı ekranında bir kez gösterilen client_id ve client_secret değerlerini kopyalayın.
  2. MCP ana bilgisayarınızın bağlayıcı / OAuth ayarlarında şunları yapıştırın:
    • Sunucu URL'si: https://mcp.bugagent.com/mcp
      • İstemci Kimliği + İstemci Sırrı: 1. adımdan
      • Yetkilendirme URL'si: https://mcp.bugagent.com/authorize
      • Belirteç URL'si: https://mcp.bugagent.com/token
      • İstendiğinde korumalı kaynak / hedef kitle: https://mcp.bugagent.com/mcp Claude.ai için özel olarak: claude.ai/customize/connectors adresine gidin ve MCP bağlayıcısı ekle'ye tıklayın.
  3. Kaydedin. Ana bilgisayar sizi bug Agent'e giriş yapmak (Google veya e-posta/şifre — panel için hangi yöntemi kullanıyorsanız) ve onayı onaylamak için yönlendirir, ardından OAuth el sıkışmasını tamamlar.
  4. Oluşturulan bağlayıcıları aynı Ayarlar sayfasından yönetin ve iptal edin. İptal anında gerçekleşir — o bağlayıcıdan gelen bir sonraki istek invalid_client döndürür.

Not: Claude Code, Cursor, VS Code ve MCP Inspector bu akışa ihtiyaç duymaz — dinamik istemci kaydını (RFC 7591) otomatik olarak yönetirler ve yukarıda gösterildiği gibi API anahtarıyla kimlik doğrularlar. MCP Bağlayıcılar formu yalnızca statik OAuth kimlik bilgileri gerektiren ana bilgisayarlar içindir.

OAuth erişim ve yenileme değerleri yalnızca ana bilgisayara gösterilir. Opaktırlar, yenilemede döndürülürler ve bug Agent tarafından yalnızca tek yönlü karmalar olarak saklanırlar; üst kimlik yenileme kimlik bilgisi, bekleyen durumda şifrelenir. Bir OAuth belirtecini asla bir REST API isteğine veya başka bir MCP sunucusuna kopyalamayın.

Seçenek 8 — curl ile doğrudan HTTP (Terminal)

Sunucuyu herhangi bir istemci olmadan doğrudan test etmek veya bir betiğe entegre etmek istiyorsanız, HTTP uç noktasına curl ile istek gönderebilirsiniz. MCP protokolü, Streamable HTTP üzerinden JSON-RPC 2.0'dır.

macOS / Linux

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

# 1. Initialize the MCP connection
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":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"curl-example","version":"1.0.0"}}}'

# 2. List tools visible to this key
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/list"}'

# 3. 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":3,
    "method":"tools/call",
    "params":{
      "name":"list_bug_reports",
      "arguments":{"project":"bugagent","limit":5}
    }
  }'

Windows (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. Initialize
$body = '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"powershell-example","version":"1.0.0"}}}'
Invoke-RestMethod -Uri "https://mcp.bugagent.com/mcp" \`
  -Method Post -Headers $headers -Body $body

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

# 3. Call list_bug_reports for a specific project
$body = @{
  jsonrpc = "2.0"
  id = 3
  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

Yanıtlar JSON veya Server-Sent Events olabilir. Her SSE parçası, data: ile başlayan ve ardından bir JSON nesnesi içeren bir satırdır. Standartlara uygun istemciler Accept: application/json, text/event-stream göndermelidir; bug Agent şu anda uyumluluk için eksik veya eksik Accept değerlerini normalleştirir.

ℹ️

401 Unauthorized Sorun Giderme: API anahtarınızın Settings → Developers bölümünde iptal edilmediğini kontrol edin. Anahtarlar ba_live_ ile başlar. Hâlâ sorun yaşıyorsanız, anahtarı yeniden oluşturun ve tekrar deneyin.

Erişim modeli ve en az ayrıcalık kapsamları

Tam OAuth kataloğu 141 araç içerir. Bir çalışma alanı API anahtarı, yalnızca seçili kapsamlarından birine eşlenen araçları görür. Kimliği doğrulanmamış keşif, araç meta verilerini gösterebilir, ancak tools/call her zaman bir API anahtarı veya OAuth belirteci gerektirir.

Hata raporlarını okuyun ve projeleri çözümleyin reports:read

Hata raporları oluşturun ve güncelleyin reports:read, reports:write

Kullanım izleyicisi usage:read

Jira senkronizasyon durumunu kontrol edin jira:read

Jira raporlarını senkronize edin veya birleştirin jira:write

Web otomasyonları yazın automations:write

Web otomasyonlarını çalıştırın ve çalıştırmaları okuyun automations:run

Mobil varlıkları ve çalıştırmaları gözlemleyin mobile:read

Mobil varlıkları yönetin mobile:read, mobile:write

Mobil otomasyonu çalıştırın mobile:read, mobile:run

Test kataloğunu yönetin reports:read, test_cases:read, test_cases:write

Harici test yürütme çalışanı test_runs:read, test_runs:write

API anahtarları, oluşturuldukları çalışma alanına bağlıdır. Araç girdileri, bir çağrıyı yetkili bir projeye daraltabilir, ancak anahtarı başka bir çalışma alanına geçiremez. Proje UUID'lerini list_projects ile çözümleyin ve belirsiz adları reddedin.

Araç başlıkları ve ek açıklamalar

tools/list tarafından döndürülen her araç, insan tarafından okunabilir bir başlık ve okuma/yazma ipuçları içerir. Eksik okuma ipuçları, araç adı öneklerinden veya API anahtarı kapsamlarından değil, açıkça incelenen bir listeden gelir. false dahil olmak üzere açık ek açıklamalar korunur.

  • readOnlyHint: true, ortamını değiştirmeyen bir aracı tanımlar.
  • readOnlyHint: false ile destructiveHint: false, salt okunur bir işlem değil, eklemeli yazmaları tanımlar.
  • readOnlyHint: false ile destructiveHint: true, potansiyel olarak yıkıcı yazmaları tanımlar. Sınıflandırılmamış araçlar bu muhafazakâr varsayılanları kullanır. Yıkıcı ipucu yalnızca yazmalar için anlamlıdır.

login salt okunur değildir: stdio modunda kimlik bilgilerini kaydeder. analyze_fix_area ve check_config_drift, kalıcı analiz sonuçlarını veya yapılandırma temellerini değiştirdikleri için potansiyel olarak yıkıcı yazmalardır.

Ek açıklamalar erişim vermez veya kimlik doğrulama, çalışma alanı/proje yetkilendirmesi, API anahtarı kapsamları veya yetki kontrollerinin yerini almaz. Onay istemleri, istemcinin izin politikasına ve kullanıcı ayarlarına bağlıdır; ipuçları, bir çağrının istem oluşturup oluşturmayacağını garanti etmez.

Programatik keşif ve denetim için, oluşturulan mcp-tool-index.json dosyasını indirin. 141 çalışma zamanı aracının tamamını, API anahtarı kapsamı veya yalnızca OAuth erişimini, yetki ailesini, girdi adlarını, çıktı şeması modunu ve açıkça bildirilen MCP ek açıklamalarını kaydeder. Bir null ek açıklaması, çağrı sitesinde bildirilmediği anlamına gelir; varsayılanlar uygulandıktan sonra etkili ek açıklamalar için bağlı sunucunun tools/list yanıtını kullanın.

!

Yalnızca OAuth araçları: hesap, API anahtarı ve ekip yönetimi, Jira bağlantı yönetimi, diğer entegrasyonlar, premium test kontrolleri, notlar, zaman takibi ve diğer etkileşimli işlemler, API anahtarı kapsamları eklenerek açılmaz. Jira rapor kontrolü, senkronizasyon ve birleştirme araçları, jira:read ve jira:write aracılığıyla dar istisnadır.

Deneyin — Düz İngilizce İstemler

Bağlandıktan sonra araç adlarını veya parametrelerini bilmenize gerek yoktur. Ne istediğinizi düz İngilizce ile tanımlayın; yapay zekâ asistanınız doğru bug Agent aracını otomatik olarak çağırır.

Hata raporu, kapsamlı test yönetimi, Playwright otomasyonu, mobil otomasyon ve kullanım istemleri, eşleşen kapsamlara sahip API anahtarları için kullanılabilir. Güvenlik, performans, keşifsel, hesap, ekip, notlar, zaman takibi ve adlandırılmış bir API anahtarı kapsamı olmayan diğer girdiler, devredilmiş OAuth ve geçerli plan yetkisi gerektirir.

Hata Raporları

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

Test Yönetimi

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

Güvenlik ve Performans

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 Otomasyonu

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

Keşifsel Yapay Zekâ

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?

Kullanım ve İstatistikler

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?

Hızlı Referans

Sekiz bağlantı seçeneğinin tümü için kurulum referansları. API anahtarı istemcileri, Streamable HTTP üzerinden https://mcp.bugagent.com/mcp adresine Authorization: Bearer ba_live_YOUR_KEY_HERE başlığıyla bağlanır; OAuth farkında ana bilgisayarlar, panoda oluşturulan bağlayıcı kimlik bilgilerini kullanır.

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 veya ~/.cursor/mcp.json

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

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

OAuth farkında ana bilgisayar Settings → Developers → MCP Connectors — ana bilgisayarın client_id ve client_secret değerlerini oluşturun

Doğrudan HTTP (curl) curl / Invoke-RestMethod — Accept: application/json, text/event-stream ekleyin

Sorun Giderme

401 Unauthorized Anahtar yanlış, süresi dolmuş veya iptal edilmiş. Settings → Developers bölümünü kontrol edin — anahtarlar ba_live_ ile başlar. Gerekirse yeniden oluşturun.

Araçlar istemcide görünmüyor API anahtarı istemcileri yalnızca anahtarın seçili kapsamlarının izin verdiği araçları listeler. Settings → Developers bölümündeki anahtarı kontrol edin, ardından yapılandırmayı değiştirdikten sonra istemciyi tamamen kapatıp yeniden başlatın. Claude Desktop'ta Cmd+Q (yalnızca pencereyi kapatmak yeterli değildir). Cursor'da Settings → MCP bölümünde yeşil nokta olup olmadığını kontrol edin.

İstemcide eksik alan İstemcinin şemasını, aynı uç noktanın ham tools/list değeriyle karşılaştırın. Farklıysa, araç kataloğunu yenileyin veya yeniden bağlayın ve yeni bir sohbet başlatın. Sorun devam ederse, uç noktayı, istemci sürümünü ve ham tools/list yanıtını toplayın; eski bir önbellek yalnızca olası nedenlerden biridir.

Accept header required Standartlara uygun Streamable HTTP için Accept: application/json, text/event-stream gönderin. bug Agent şu anda eksik veya eksik değerleri normalleştirir, ancak entegrasyonlar bu uyumluluk davranışına güvenmemelidir.

Yanlış çalışma alanının verileri Her API anahtarı bir çalışma alanıyla sınırlıdır. Sorgulamak istediğiniz çalışma alanından Settings → Developers bölümünde yeni bir anahtar oluşturun.

Araçlar görünüyor ancak çağrılar sessizce başarısız oluyor isError: true ve döndürülen içerik için yanıtı inceleyin. Görünür bir araç yine de plan, rol, özellik yetkisi, proje üyeliği, sahiplik veya geçersiz girdi tarafından reddedilebilir. Araç hatasını okuduktan sonra yalnızca sunucu sağlığını kontrol edin.

MCP Inspector CORS hatası Inspector UI'da Bağlantı Türü için Proxy (Doğrudan değil) seçin. Inspector, tarayıcı CORS kısıtlamalarını aşmak için yerel bir Node süreci üzerinden proxy yapar.

MCP Inspector v2 kod 5 ile çıkıyor Inspector v2, bir araç yanıtında isError: true olduğunda sıfır olmayan bir çıkış kodu döndürür. Plan, izin, girdi veya çalışma zamanı hatası için yanıt mesajını okuyun; Inspector v1, aynı başarısız araç yanıtı için çıkış kodu 0 döndürebilir.

Codex CLI — araçlar tanınmıyor ~/.codex/config.toml öğesinin [mcp_servers.bugagent] kullandığını doğrulayın, bearer_token_env_var = "BUGAGENT_API_KEY" ayarlayın ve Codex'i başlatmadan önce bu değişkeni dışa aktarın. Araçlar hâlâ görünmüyorsa codex --version kontrol edin.

MCP Özellikleri

Konuşma Oturumları, çalışma alanıyla sınırlı bir pilot uygulamadır. Oturum tarafından oluşturulan bir betiği kaydetmek, yalnızca oturum kaydetme betiği uç noktası aracılığıyla sahibinin açık Workbench onayını gerektirir. MCP onay aracı yoktur: bir aracıdan betik taslağı hazırlamasını istemek, bir otomasyon oluşturmaz veya zamanlamaz.

Tam etkileşimli/OAuth kataloğu 141 araç içerir. Çalışma alanı API anahtarları yalnızca seçili kapsamlarının izin verdiği en az ayrıcalık alt kümesini keşfeder; hesap, API anahtarı yönetimi, ekip yönetimi, premium test, notlar ve zaman takibi araçları, bir girdi açıkça bir API anahtarı kapsamı adlandırmadıkça yalnızca etkileşimli oturumdur.

🐛

Hata Raporu Yönetimi

Devam ettirilebilir Google Sheets ekran görüntüsü içe aktarmaları, reports:write ile ayrı REST POST /api/reports/import-attachment uç noktasını ve reports:read ile GET durumunu kullanır. Ekran görüntüsü içe aktarma MCP aracı eklenmez. Bu yalnızca JPEG/PNG API'si, tamamlanmayı bildirmeden önce özel depolamayı ve eşlenen tam Jira sorununu doğrular; eski rapor yüklemesi yalnızca oturumdur.

  • create_bug_report — 19 türde otomatik sınıflandırma ile yeni bir rapor dosyalayın — hatalar, özellik istekleri, iyileştirmeler, teknik borç ve daha fazlası (başlık: 3-500 karakter). İsteğe bağlı attachments dizisi, her biri 400 MB'a kadar base64 kodlu dosyaları kabul eder: herhangi bir görsel, video, ses, PDF veya metin/JSON. Açıklamayı AI kullanarak yapılandırılmış bir şablona otomatik olarak yeniden biçimlendirmek için format_description: true değerini ayarlayın. QA çabasını takip etmek için time_spent_seconds değerini iletin. Düzeltme aciliyetini ciddiyetten bağımsız olarak ayarlamak için priority (urgent / high / normal / low) değerini iletin. Bir Epic oluşturmak için is_epic: true değerini veya aynı yetkili projede bir alt öğe oluşturmak için parent_epic_id (UUID/kısa kimlik) değerini iletin. Yanıt, hiyerarşi alanlarının yanı sıra project_id, project, short_id, legacy_short_id ve project_short_id değerlerini içerir.
  • list_bug_reports — Raporları listele ve filtrele (sayfa başına en fazla 100). Proje filtreleri, sayfalamadan önce sunucu tarafında uygulanır. project (UUID, kısa ad, tam ad veya bilet öneki), project_id, project_slug, project_prefix, workspace (UUID, tam ad veya çalışma alanı bilet öneki), workspace_id / team_id, is_epic, type, severity, status, resolution, root_cause veya reporter_user_id ile filtreleyin. search filtresi rapor metnini arar; 366 gibi yalnızca rakam içeren girdiler, hem eski hem de proje bilet numaralarına karşı tam bir aramadır; bu nedenle bu rakamları içeren ilgisiz metinler hariç tutulur. Her sonuç, kiracı kapsamlı kişi/proje tanımlayıcılarının yanı sıra is_epic, parent_epic_id, parent_epic ve sınırlı epic_progress değerlerini içerir. Rapor okuma araçları üye e-posta adreslerini açığa çıkarmaz.
  • pick_next_bug — Aracı döngüsünün üzerinde çalışması gereken sonraki hatayı/ları öncelik sırasına göre döndürür (S1 → S2 → S3, her grup içinde en eskiden en yeniye). Çalışma alanınıza otomatik olarak kapsamlandırılır — ekibinizdeki tüm projelerde status new, awaiting-triage veya confirmed ve S1-S3 ciddiyetine sahip biletleri döndürür. Salt okunur — biletleri atomik olarak sahiplenmez. İsteğe bağlı severity (tek katman), limit (1-50, varsayılan 1). count ve bugs içeren bir nesne döndürür; her hata, tam list_bug_reports şekli yerine azaltılmış bir kuyruk satırıdır. Okuma-sonra-sahiplenme deseni için claim_bug ile birlikte kullanın.
  • claim_bug — Bir hatayı status new, awaiting-triage veya confirmed durumundan status='in-progress' durumuna atomik olarak geçirir, assigned_to değerini çağıran kullanıcıya ayarlar ve claimed_at=NOW() damgasını vurur. Postgres'in UPDATE-WHERE-RETURNING deseni aracılığıyla eşzamanlı çağıranlar arasında yarışmasızdır — iki aracı aynı kimlik üzerinde yakın aralıklarla claim_bug çağırırsa, tam olarak biri hata gövdesiyle claimed:true alır ve diğeri bir neden dizesiyle claimed:false alır. Başarılı yanıtlar reporter_user_id, reporter_name, assigned_to ve assignee_name içerir. Bir pg_cron temizleyicisi, bayat talepleri (durum= in-progress + claimed_at > 30 dakika eski) otomatik olarak new durumuna geri bırakır; böylece çöken bir aracının biletleri manuel müdahale olmadan kuyruğa yeniden girer. Girdiler: id (UUID veya kısa kimlik).
  • get_bug_report — Bir raporun tam ayrıntılarını UUID veya çalışma alanı/proje kısa kimliği ile alın. Standart kişi/proje/kalite alanlarının yanı sıra is_epic, üst kimliği, toplu ilerlemeyi ve Epic'ler için sınırlı bir ilk alt sayfasını döndürür.
  • Yerel rapor etiketleri: create_bug_report ve update_bug_report, tags değerini bir dize dizisi olarak kabul eder, örneğin {"tags":["login","regression"]}. Tekilleştirmeden önce en fazla 20 ham öğe kabul edilir. Dizeler kırpılır, boş olmamalı ve en fazla 50 Unicode kod noktası olmalıdır ve ASCII kontrol karakterleri (U+0000 ile U+001F veya U+007F) içeremez. Kırpmadan sonra tam kopyalar kaldırılır; büyük/küçük harf korunur ve Login, login değerinden farklıdır. Güncellemede, dizi tüm etiketleri değiştirir, [] onları temizler ve atlama onları korur. Oluşturmada, atlama etiket olmadığı anlamına gelir. null ve geçersiz öğeler reddedilir. Oluşturma, alma, listeleme ve güncelleme sonuçları yerel tags değerini açığa çıkarır.
  • Etiket filtreleme: Sayfalamadan önce TÜM istenen etiketlerle büyük/küçük harfe duyarlı şekilde eşleşmek için list_bug_reports öğesini {"project":"bugagent","tags":["login","regression"]} ile çağırın. Aynı etiket sınırları geçerlidir; atlama veya [] etiket filtresi uygulamaz. Mevcut reports:read / reports:write kapsamları ve çalışma alanı/proje yetkilendirmesi değişmez. Bu, görsel etiket kullanıcı arayüzü veya otomatik Jira etiketi içe aktarma, senkronizasyon veya geri doldurma eklemez.
  • get_epic — Gerekli id (UUID veya çalışma alanı/proje kısa kimliği) ile bir Epic'i doğrudan okuyun. Alt raporları örtük olarak yüklemeden yalnızca Epic kaydını döndürür. Çalışma alanına ve projesine erişim gerektirir; API anahtarı çağıranları reports:read gerektirir. Alt öğeleri okumak için list_epic_children öğesini ayrıca kullanın.
  • list_epic_children — Bir Epic'in alt raporlarını id, limit (1–100) ve offset ile sayfalandırın. Her alt raporu yüklemeden children, total, has_more ve SQL ile toplanmış epic_progress değerini döndürür.
  • update_bug_report — Standart rapor alanlarının yanı sıra is_epic ve parent_epic_id değerlerini güncelleyin. Ayırmak için parent_epic_id: null değerini iletin; yeniden ebeveynleme/ayırma atomiktir ve aynı çalışma alanı, aynı proje yetkilendirmesi gerektirir. Bir Epic'e yükseltme mevcut bir üst öğeyi ayırırken, alt öğeleri olan bir Epic düşürülemez. Mevcut durum/çözüm/kök neden ve atama bildirim kuralları hâlâ geçerlidir. Jira ile bağlantılı bir rapordaki status değişikliği, eşlenen durumla tam olarak bir yasal geçiş eşleştiğinde iş akışı geçişleri aracılığıyla Jira sorununa yansıtılır; aksi takdirde sorun dokunulmadan bırakılır.
  • add_comment — Bir hata raporuna yorum ekleyin (UUID veya kısa kimlik, gövde 1-10000 karakter). Rapor Jira ile senkronize edilirse, yorum otomatik olarak bağlantılı Jira sorununa gönderilir. ![proof](/api/attachments/ATTACHMENT_UUID) gibi özel ek işaretleme dili, Jira'da mutlak kimliği doğrulanmış bir bugAgent akıllı bağlantısı olur. Görüntüleyenler, raporun çalışma alanına ve projesine erişimle bugAgent'te oturum açmalıdır; yerel satır içi Jira önizlemeleri garanti edilmez.
  • list_comments — Bir raporun saklanan yorum dizisini en eskiden en yeniye listeleyin — her yorum yazar adı, parentId (iş parçacıklı yanıtlar), createdAt ve updatedAt ile birlikte. Yorumlar get_bug_report öğesinin parçası değildir, bu nedenle bir biletin tartışmasını okumanın yolu budur. UUID veya kısa kimlik kabul eder. Bu okuma Jira'yı yenilemez. Taze Jira yorumlarına ihtiyaç duyan zamanlanmış entegrasyonlar, yetkili bir yöneticiye ait API anahtarıyla önce POST /api/jira/comments-refresh çağrısı yapabilir. Yeni yorumları düzenlemelerden ayırt etmek için yorum kimliklerini ve içerik revizyonlarını kullanın ve yenileme başarısız olursa eksiksiz bir etkinlik raporu iddia etmeyin.
  • link_bug_reports — Aynı yetkili projedeki iki rapor arasında yönlü bir anlamsal bağlantı oluşturun. parent-of için, kaynak rapor bir Epic ve hedef rapor standart bir alt öğe olmalıdır. Epic ataması için oluşturma/güncellemede parent_epic_id öğesini tercih edin.
  • unlink_bug_reports — Daha önce oluşturulmuş bir hata raporu bağlantısını UUID'si ile kaldırın (link_id, link_bug_reports veya list_bug_report_links tarafından döndürülür).
  • list_bug_report_links — Bir hata raporuna dokunan her kullanıcı tarafından seçilmiş bağlantıyı listeleyin. Her bağlantıyı, sağlanan raporun bakış açısından okunduğu gibi döndürür — örn. bu raporun hedef olduğu saklanan bir duplicate-of satırı duplicated-by olarak işlenir; bu raporun hedef olduğu parent-of subtask-of olarak işlenir; bu raporun hedef olduğu depends-on blocks olarak işlenir; bu raporun hedef olduğu testing-blocked-by blocks-testing olarak işlenir. related-to simetriktir. get_bug_report tarafından döndürülen otomatik algılanan similar_reports alanını tamamlar.
  • classify_bug — Bir açıklamayı güven puanıyla 19 rapor türünden birine (hatalar, özellikler, iyileştirmeler vb.) sınıflandırın
  • flush_reports — Eski raporları toplu olarak silin (yalnızca yönetici)

📊

Kullanım ve Analiz

  • get_usage — Plan sınırlarına karşı kullanımı kontrol edin. API anahtarı çağıranları usage:read gerektirir.
  • get_stats — Günlük sayılar, tür/ciddiyet/durum dağılımları

📁

Proje Yönetimi

  • list_projects — id, name, slug, ticket_prefix, açıklama ve varsayılan durumla erişilebilir projeleri listeleyin. Bu değerleri, doğru projeyi hedeflemek için hata raporu ve test kataloğu araçlarıyla kullanın.
  • create_project — Yeni bir proje oluşturun (ilk ise otomatik olarak varsayılan olur)
  • delete_project — Bir projeyi ve ilişkili tüm verileri kalıcı olarak silin (hata raporları, otomasyonlar, test senaryoları, mobil uygulamalar, programlar, coğrafi anlık görüntüler, notlar, zaman girişleri). Yalnızca sahip/yönetici. Son proje silinemez. Depolama otomatik olarak boşaltılır
  • export_okf_bundle — Bir projenin QA bilgisini — hata raporları, test senaryoları, otomasyonlar ve performans, güvenlik ve keşif testleri — bir OKF/OQA markdown paketi olarak dışa aktarın (oqa.ai tarafından kullanılan Open Query Agent formatı). Varsayılan olarak etkin projeyi kullanır; farklı bir projeyi dışa aktarmak için isteğe bağlı project (kısa ad veya ad) değerini iletin. Paketteki dosyaların listesini ve paketin kendisini base64 kodlu bir zip olarak döndürür

🔐

Kimlik Doğrulama ve Hesap

  • register_account — Yeni bir hesap oluşturun (şifre: 8-128 karakter, hız sınırlı: 5/15dk)
  • login — Oturum açın ve erişim belirteçleri alın (hız sınırlı: 5/15dk)
  • update_profile — Görünen adı güncelleyin
  • change_password — Hesap şifresini değiştirin
  • get_settings — Profili ve bildirim tercihlerini okuyun.
  • update_settings — Desteklenen profil ve bildirim tercihlerini güncelleyin. Yalnızca OAuth değişikliği.

🔑

API Anahtarı Yönetimi

  • generate_api_key — Adlandırılmış bir API anahtarı oluşturun
  • list_api_keys — Etkin anahtarları listeleyin (yalnızca önek)
  • regenerate_api_key — Bir anahtarı iptal edin ve değiştirin
  • delete_api_key — Bir anahtarı kalıcı olarak iptal edin

👥

Ekip Yönetimi

  • list_workspaces — Ait olduğunuz çalışma alanlarını, her birindeki rolünüzü ve oturumun varsayılan olarak hangisini kullandığını listeleyin. Çok çalışma alanlı ana bilgisayarlar, X-BugAgent-Workspace başlığıyla bir isteği sabitleyebilir (yalnızca etkin üyeler)
  • list_team_members — Çalışma alanınızın tüm üyelerini roller, durum ve hızlandırıcı bayraklarıyla listeleyin
  • invite_team_member — Bir kullanıcıyı e-postayla davet edin (yöneticiler katkıda bulunanları ve yöneticileri davet edebilir; yalnızca sahipler yöneticileri davet edebilir). 5 günlük son kullanma bağlantısı

🎯

Entegrasyonlar

Jira Cloud rapor senkronizasyonu Ücretsiz ve Kurumsal sürümlerde bulunur. Bir çalışma alanı yöneticisi önce kontrol panelinde Jira'yı bağlamalıdır. Çalışma alanı API anahtarları daha sonra karşılaştırma için jira:read ve senkronizasyon/birleştirme için jira:write kullanabilir; Atlassian planı ve API sınırları hâlâ geçerlidir.

  • sync_to_jira — Ekibin paylaşılan bağlantısını kullanarak Jira'ya bir rapor gönderin. Raporun bugAgent projesiyle eşlenen Jira projesine yönlendirir (çalışma alanı varsayılanı yedek olarak kullanılır), alan haritasını kullanır: v2, öncelik ve özel ciddiyeti ayırırken, sürümsüz haritalar eski ciddiyetten önceliğe çeviriyi korur. İsteğe bağlı projectKey, yalnızca yapılandırılmış eşlemeyi veya çalışma alanı varsayılanını seçebilir; rastgele Jira projeleri reddedilir. Genellikle buna ihtiyacınız olmaz: projenin senkronizasyon modu auto_new veya auto_all olduğunda, oluşturduğunuz raporlar otomatik olarak gönderilir — manual modunda manuel gönderim için çağırın.
  • check_jira_sync — Yetkili bağlantılı bir rapor için başlık ve eşlenen durum, öncelik ve ciddiyetin salt okunur karşılaştırması. Raporun kayıtlı projesini ve Jira bağlantısını kullanır. Sürüm 2, Jira Önceliğini desteklenen özel bir Ciddiyet alanından ayrı olarak eşler; sürümsüz eşlemeler eski öncelikten ciddiyete davranışını korur. Bu araç yorumları, ekleri, türü veya her Jira alanını karşılaştırmaz.
  • merge_jira_sync — Jira değerlerini çekmek için prefer: jira veya yerel değerleri göndermek için prefer: bugagent kullanarak bu eşlenen alanları birleştirin. Durum gönderimleri yasal Jira iş akışı geçişlerini kullanır. Eşlenmemiş giden çakışmalar, başarısız uzak yazmalar ve eşzamanlı yerel değişiklikler, her şeyin senkronize olduğunu iddia etmek yerine hata döndürür. Yorumlar ve ekler ayrı pano senkronizasyon iş akışları olarak kalır. Sistemler arası yazmalar atomik değildir.
  • push_to_claude — Bir hata raporu için Geliştirici Notları oluşturun (veya yeniden oluşturun) — kök neden, önerilen düzeltme, doğrulama adımları ve risk değerlendirmesi. UUID veya kısa kimlik kabul eder (WRKID-545). Platform anahtarlarını kullanır — ekip başına Claude bağlantısı gerekmez. Uyarlanabilir bir zincir çalıştırır: s3 / medium veya s4 / low hatalarında üç adım (Sonnet taslağı → OpenAI gpt-5 eleştirisi → Sonnet sentezi), en üst iki ciddiyet grubunda beş adım — s1 / critical veya s2 / high — (taslak → eleştiri → Sonnet reddiye → tam metni okuyan ve bağımsız yargıyla son notları yazan Claude Opus hakemi). Yanıt her turu ortaya çıkarır: analysis, draft, critique, rebuttal, challenger_model, adjudicator_model ve bir debated bayrağı. Başarısız olan herhangi bir adım, en iyi sonraki yanıta düşer. Hata oluşturulduğunda otomatik tetiklenir; genellikle yalnızca manuel yeniden oluşturma için çağrılır.
  • analyze_fix_area — Geliştirici Notları'nın "Olası Düzeltme Alanı" alt bloğunu oluşturun (veya yeniden oluşturun) — düzeltmenin kod tabanında büyük olasılıkla nereye ait olduğunu adlandıran dar bir Sonnet çıktısı. UUID veya kısa kimlik kabul eder. Platform Anthropic anahtarını kullanır. Ekibin bir github_connections satırı olduğunda ve projenin bir github_repo eşlemesi olduğunda, çıktı bağlı depodan gerçek dosya parçalarına dayanır; aksi takdirde bir depo bağlama önerisiyle genel rehberliğe geri döner. likely_fix_area metni, generated_at, repo_used ve bir grounded bayrağı döndürür. Hata oluşturulduğunda otomatik tetiklenir — aracıların genellikle yalnızca manuel yeniden oluşturma için çağırması gerekir.
  • upgrade_plan — Satış destekli Enterprise kayıt bağlantısını alın

⚡

Performans Testi

  • create_performance_test — URL, cihaz, sanal kullanıcılar, süre, puan eşiği ve otomatik hata oluşturma anahtarıyla bir performans testi yapılandırması oluşturun. Yalnızca Enterprise
  • run_performance_test — Bir web performans testi için sayfa denetimi ve yük testi tetikleyin. Sonuçları yoklamak için bir çalıştırma kimliği döndürür. Mobil uygulama profilleme çalıştırmaları panodan tetiklenir
  • get_performance_results — Lighthouse puanları (Performans, Erişilebilirlik, En İyi Uygulamalar, SEO), Core Web Vitals (LCP, FID, CLS, FCP, TTFB, INP, TBT, SI) ve yük testi metrikleri (VU'lar, istekler, RPS, p50/p90/p95/p99 gecikmeleri) dahil tam sonuçları alın
  • list_performance_tests — Geçerli ekip için tüm performans testi yapılandırmalarını listeleyin
  • get_performance_usage — Aylık performans testi kullanımını kontrol edin. Performans testi yalnızca Enterprise'a özeldir. Ücretsiz=0, Enterprise=sınırsız

Örnek İş Akışı

  1. get_performance_usage → kalan kotayı kontrol edin
  2. create_performance_test → URL'niz için bir test yapılandırın
  3. run_performance_test → denetim + yük testini tetikleyin
  4. get_performance_results → puanları ve temel metrikleri inceleyin

🛡

Güvenlik Taraması

  • create_security_scan — Bir güvenlik taraması yapılandırması oluşturun. Web taramaları, üç derinlik seviyesi ve isteğe bağlı kimliği doğrulanmış tarama ile Quick Scanner + Nuclei (4.000+ şablon) kullanır. Mobil taramalar, APK/IPA ikili analizi için MobSF kullanır. Ciddiyet eşikleriyle yapılandırılabilir otomatik hata oluşturma. Yalnızca Enterprise
  • run_security_scan — Bir güvenlik açığı taraması tetikleyin. Web taramaları DNS alanı doğrulaması gerektirir. Mobil taramalar yüklenmiş bir uygulama gerektirir. Sonuçları yoklamak için bir çalıştırma kimliği döndürür
  • get_security_results — Güvenlik puanı (0-100), CWE referansları, OWASP eşlemeleri, kanıt ve düzeltme rehberliği ile ciddiyete göre kategorize edilmiş bulgular (Kritik, Yüksek, Orta, Düşük, Bilgi) dahil tam sonuçları alın
  • list_security_scans — Geçerli ekip için son puan ve kimlik doğrulama/derinlik rozetleriyle tüm güvenlik taraması yapılandırmalarını listeleyin
  • get_security_usage — Aylık güvenlik taraması kullanımını kontrol edin. Güvenlik taraması yalnızca Enterprise'a özeldir. Enterprise=sınırsız
  • list_security_schedules — Ekip için cron, saat dilimi, etkin durum, sonraki çalıştırma ve bildirim ayarlarıyla tüm zamanlanmış güvenlik taramalarını listeleyin. Üst tarama yapılandırmasıyla birleştirir (ad, scan_type, target_url)
  • create_security_schedule — Bir güvenlik taraması için yinelenen bir zamanlama oluşturun. scan_id ve cron_expression gerektirir. Tarama yapılandırması başına bir zamanlama. İsteğe bağlı timezone, notify_on_fail (yok/e-posta/slack/her ikisi), notify_email, slack_channel_id. Her çalıştırma aylık sınırınıza sayılır; yönetici kullanıcılar sınırı atlar. Tarama derinliği her zaman çalıştırma sırasında tarama yapılandırmasından okunur
  • delete_security_schedule — Zamanlanmış bir güvenlik taramasını silin. Üst tarama yapılandırmasını veya tamamlanmış çalıştırmaları etkilemez

Örnek İş Akışı

  1. get_security_usage → kalan kotayı kontrol edin
  2. create_security_scan → URL'niz veya deponuz için bir tarama yapılandırın
  3. run_security_scan → tek seferlik bir güvenlik açığı taraması tetikleyin
  4. create_security_schedule → yinelenen çalıştırmaları otomatikleştirin (örn. ana dalda haftalık SAST)
  5. get_security_results → bulguları ve düzeltmeleri inceleyin

📖

Kod İncelemesi

  • list_code_reviews — Ekip için son yapay zeka kod incelemelerini listeleyin. Kalite puanları, ciddiyet sayıları, PR bilgileri ve zaman damgaları döndürür. Yalnızca Enterprise
  • get_code_review — Tüm bulgularla bir kod incelemesi alın. Her bulgu ciddiyet, kategori (hata/güvenlik/performans/stil/mantık/bakım kolaylığı), başlık, açıklama, kod önerisi, dosya yolu ve satır numaraları içerir
  • get_code_review_usage — Kod inceleme kullanımını kontrol edin. Yapay zeka kod incelemesi yalnızca Enterprise'a özeldir; Enterprise'ta sınırsız
  • get_code_review_analytics — İnceleme analitiği alın: eğilimler, bulgu kategorileri/kaynakları, ciddiyet dağılımı, hız metrikleri, en iyi depolar/yazarlar. 7/30/90 günlük geriye bakışı destekler

Örnek İş Akışı

  1. get_code_review_usage → kalan incelemeleri kontrol edin
  2. /dashboard/code-review adresinde panoda bir PR inceleyin
  3. list_code_reviews → son incelemeleri görün
  4. get_code_review → bulguları ve önerileri alın

🔍

Keşifsel Yapay Zeka

Her biri farklı bir test stratejisi kullanan en fazla 10 paralel aracıyla çok aracılı otonom web sitesi hata bulucu.

  • list_explorations — Ekip için Keşifsel Yapay Zeka yapılandırmalarını listeleyin
  • create_exploration — Yeni bir keşif oluşturun. Benzersiz stratejilerle birden fazla paralel aracı çalıştırmak için agent_count (1–10, maks 10) kabul eder: happy_path, edge_case, security, accessibility, error_path, performance, mobile, data_integrity, navigation, custom. Bu araç kimlik bilgilerini veya kimlik doğrulama modunu yapılandıramaz. Test giriş akışını yalnızca pano veya REST üzerinden açıkça yapılandırın ve başlatın, ardından yapılandırmayı ve sonuçları incelemek için get_exploration ve get_exploration_run kullanın. Modu talimatlardan asla çıkarmayın veya kimlik bilgilerini MCP bağımsız değişkenlerine koymayın. Varsayılan kimlik bilgisi tabanlı keşif yine de yeniden kullanılabilir bir oturum gerektirir.
  • get_exploration — Aracı ayarları, güvenli kimlik doğrulama meta verileri ve son çalıştırmalarla keşif yapılandırmasını alın. Parolalar ve şifreli metinler asla döndürülmez.
  • get_exploration_run — Aracı başına ilerleme, aşama verileri, aracı atıflı bulgular (agent_index, agent_strategy) ve bağlantılı hatalarla çalıştırma sonuçlarını alın
  • get_exploration_usage — Aylık kullanımı kontrol edin. Keşifsel Yapay Zeka yalnızca Enterprise'a özeldir; Enterprise: sınırsız (10 aracı)

Örnek İş Akışı

  1. create_exploration ile agent_count: 5 → 5 paralel aracı yapılandırın
  2. Panodan veya POST /api/explorations/run üzerinden bir çalıştırma tetikleyin
  3. get_exploration_run → aracı başına ilerleme ve bulgular için yoklayın
  4. Panoda aracı atıflı yinelenmeyen bulguları görüntüleyin

📝

Notlar

  • list_notes — İsteğe bağlı anahtar kelime, proje, görünürlük, klasör, etiket, arşiv, wiki, tarih aralığı ve sıralama filtreleriyle notları listeleyin. Kullanıcının sahip olduğu veya kendisiyle paylaşılan notları döndürür.
  • create_note — 5 biçimden birinde bir not oluşturun: markdown, plain, bugtemplate, checklist, outline. visibility değerini private veya shared olarak ayarlayın. Başlık sağlanmazsa ilk 30 karakterden otomatik başlık. İsteğe bağlı attachments dizisi, her biri 400 MB'a kadar base64 kodlu dosyaları kabul eder: herhangi bir görüntü, video, ses, PDF veya metin/JSON. QA çabasını izlemek için time_spent_seconds değerini iletin.
  • get_note — İçerik ve ekler dahil tam not ayrıntılarını alın. id gerektirir.
  • update_note — Başlığı, içeriği, biçimi, görünürlüğü, projeyi veya time_spent_seconds değerini güncelleyin. Notun mevcut eklerini değiştirmeden yeni dosyalar eklemek için bir attachments dizisi iletin (her biri maks 400 MB). Yalnızca yazar güncelleyebilir. id gerektirir.
  • delete_note — Bir notu ve eklerini kalıcı olarak silin. Yalnızca yazar silebilir. id gerektirir.
  • list_note_folders — Not/wiki klasörlerini listeleyin, isteğe bağlı olarak bir projeye kapsamlandırılır.
  • create_note_folder — İsteğe bağlı üst öğe, görünürlük, favori ve ekip üyesi erişim ayarlarıyla proje kapsamlı bir not/wiki klasörü oluşturun.

Örnek İş Akışı

  1. create_note → bir test oturumu notu başlatın
  2. update_note → test ederken gözlemleri ekleyin
  3. list_notes → anahtar kelime veya projeye göre geçmiş notları arayın
  4. get_note → eklerle tam notu alın

🤖

Otomasyon

  • create_automation — Özel bir Playwright betiğiyle yeni bir otomasyon oluşturun (FAB kaydı gerekmez). name gerektirir. İsteğe bağlı: target_url (atlanırsa betikteki ilk page.goto(...) URL'sinden otomatik türetilir), script (Node.js/JavaScript/TypeScript veya Python — dil otomatik algılanır; varsayılan bir yer tutucudur), status (draft veya active, varsayılan: draft), project_id. Otomasyon id değerini döndürür. İpucu — Bir otomasyonu çoğaltın: orijinal betiği almak için get_automation kullanın, ardından name değerini "[Copy] Original Name" olarak ayarlayıp orijinal script, target_url ve project_id değerlerini ileterek create_automation çağırın. Çoğaltılan, sürüm geçmişi olmadan draft durumunda başlar.
  • list_automations — Playwright otomasyon betiklerini listeleyin. project_id veya status ile filtreleyin (draft, active, paused). name, target_url, last_run_status ve run_count içeren otomasyon dizisi döndürür.
  • get_automation — Playwright betiği ve son çalıştırmalar dahil tam otomasyon ayrıntılarını alın. id gerektirir. Canlı script, en eskiden en yeniye (her biri { script, source, timestamp } olan en fazla 100 önceki kayıt) bir script_versions yığını ve her çalıştırmanın yürütülen script_version_label / script_version_source değerini taşıdığı bir recent_runs dizisi içeren otomasyonu döndürür. Belirli bir geçmiş sürümü seçmeniz gerekiyorsa run_automation öncesinde bunu çağırın.
  • run_automation — Bir Playwright testinin anında çalıştırılmasını tetikleyin. automation_id gerektirir. Kendi kendini iyileştiren konumlandırıcılar (otomatik): bir konumlandırıcı eylemi zaman aşımına uğradığında, çalıştırıcı Claude'dan çalışan bir seçici ister ve adımı bir kez yeniden dener — iddialar asla iyileştirilmez, bu nedenle gerçek gerilemeler yine de başarısız olur — ve her iyileştirme çalıştırma stdout'una kaydedilir. Öykünme modu (varsayılan): öykünülmüş bir cihaz profili için isteğe bağlı device (örn. desktop, iphone-15). Gerçek mod: bs_browser (chrome, firefox, safari, edge), bs_os (Windows, OS X) ve bs_os_version ile gerçek bir masaüstü tarayıcıda çalıştırmak için browserstack: true ayarlayın. Gerçek mobil: bs_os: "android" (cihazlar: "Samsung Galaxy S25 Ultra", "Google Pixel 10", "OnePlus 13R") veya bs_os: "ios" (cihazlar: "iPhone 17 Pro Max", "iPhone 16 Pro Max", "iPhone 15 Pro Max") ayarlayın ve cihaz adını bs_os_version içinde iletin. Her iki mod da arka planda çalışır; Gerçek, görünür etkileşimli bir oturumu değil, yürütme ortamını tanımlar. Node.js betikleri browserstack-node-sdk üzerinden yönlendirilir (masaüstü + Android + iPhone kapsar). Python betikleri browserstack-sdk (pytest-playwright) üzerinden yönlendirilir ve yalnızca masaüstünü kapsar — pytest-playwright'ın browser_type.connect() değeri BrowserStack'in gerçek mobil uç noktalarını süremediğinden Python ile gerçek mobil desteklenmez. Video ve ağ günlükleri otomatik olarak yakalanır; konsol günlükleri yalnızca masaüstü içindir. Sürüm oynatma: get_automation ile script_versions değerini inceleyin, ardından tercih edilen kalıcı version_label değerini iletin (örneğin "v103"). Eski version_index desteklenmeye devam eder ancak version_label ile birleştirilmemelidir. Varsayılan: her iki seçici de atlandığında, geçerli kayıtlı betik çalışır. Budanmış etiketler ve geçersiz dizinler, geçerli olanı sessizce çalıştırmak yerine reddedilir. Çalıştırma kaydı, çalıştırılan tam anlık görüntüyü saklar ve başarısız bir çalıştırmadan otomatik oluşturulan herhangi bir hata raporu, düzenleyicideki bu sürüme derin bağlantı verir.
  • list_automation_runs — Bir otomasyon için son çalıştırmaları listeleyin. automation_id gerektirir. status, duration_ms ve error_message içeren çalıştırmaları döndürür.
  • list_schedules — Nullable cron_expression, nullable run_at, once_status, saat dilimi, cihaz ve bildirim ayarlarıyla tüm zamanlanmış web otomasyon çalıştırmalarını listeleyin. Yinelenen satırlar null run_at ve once_status değerlerini korur; tek seferlik satırlarda null cron bulunur. Tek seferlik durumlar: pending, claimed, missed, dispatched, failed, uncertain. Bunlar test sonuçları değil, dağıtım durumlarıdır; sonuçlar için list_automation_runs değerini inceleyin.
  • Yinelenen web zamanlamaları: create_schedule beş sayısal cron alanını ve saat dilimini doğrular ve gelecekteki bir UTC next_run_at değerini döndürür. Aylık ve yıllık yinelemeler desteklenir. Örneğin, America/Toronto içindeki 30 12 23 9 *, tek seferlik bir çalıştırma değil, her yıl 23 Eylül saat 12:30 anlamına gelir. Geçersiz veya imkansız zamanlama, oluşturmadan önce reddedilir. Hem ayın günü hem de haftanın günü kısıtlandığında, her ikisi de eşleşmelidir. Var olmayan yaz saati uygulaması saatleri atlanır; tekrarlanan duvar saati saatleri iki kez oluşabilir. Dağıtım, zamanlayıcının bir sonraki yoklamasında gerçekleşir, mutlaka tam dakikada değil. Mevcut yinelenen davranış değişmez.
  • Tek seferlik web zamanlamaları: gelecekteki bir tarih seçerek ve cron_expression değerini atlayarak { "automation_id": "AUTOMATION_UUID", "run_at": "2030-12-15T09:30:00-05:00", "timezone": "America/Toronto" } ile create_schedule çağırın. Tam olarak bir zamanlama alanı sağlayın. run_at, ofset nitelikli bir ISO 8601 gelecek zaman damgası gerektirir (açık ofset veya Z); IANA saat dilimi görüntüleme içindir. Etkin bir bekleyen zamanlama, vadesinden sonraki ilk cron yoklamasında yürütülür; bir saatten fazla geç kalırsa missed olarak işaretlenir. Dağıtımdan önce atomik olarak talep edilir ve devre dışı bırakılır ve tüketildikten sonra yeniden etkinleştirilemez. Kesin dağıtım hataları failed; belirsiz dağıtım uncertain ve asla otomatik olarak yeniden denenmez. Başka bir deneme zamanlamadan önce çalıştırmaları kontrol edin. dispatched, tamamlandı veya geçti anlamına gelmez. Oluşturma yalnızca API/MCP ile yapılır, yeni bir pano oluşturma modu değildir.
  • Web zamanlama saat dilimleri, America/Argentina/Buenos_Aires gibi IANA tanımlayıcılarıdır. Pano seçici, sunucu tarafından desteklenen tüm bölgeleri ve şehirleri içerir ve profil saat diliminize göre varsayılan olarak ayarlanır; MCP saat dilimi varsayılanı UTC olarak kalır.
  • create_schedule — Zamanlanmış bir web otomasyon çalıştırması oluşturun. automation_id ve cron_expression veya run_at değerlerinden tam olarak birini gerektirir. İsteğe bağlı cihaz, saat dilimi, hata bildirimi, e-posta ve Slack kanalı ayarlarını destekler. Önce pano üzerinden Slack'e bağlanın ve botun ait olduğu bir kanal seçin; yalnızca webhook kurulumu yetersizdir. Slack kurulumu ve kanal keşfi bölümüne bakın.
  • Tek seferlik dağıtım ve kurtarma: eşleşen API/MCP ve zamanlayıcı kodunu dağıtmadan önce veritabanı geçişini 374_one_time_web_schedules.sql uygulayın. claimed, bir çalışan çökmesinden sonra kalıcı olabilir: talep edilen veya belirsiz dağıtım için bir yedek oluşturmadan önce çalıştırma geçmişini inceleyin. Bir saatten fazla geç kalan bir zaman damgası asla otomatik olarak yürütülmez.
  • Taslak web otomasyonları: bir zamanlama oluşturmadan, bir zamanlamayı yeniden etkinleştirmeden veya cron ifadesini veya saat dilimini değiştirmeden önce otomasyonu etkinleştirin. create_schedule, Taslak durumunu reddetmeden önce çalışma alanı ve proje erişimini doğrular. Otomasyon Taslak durumundayken mevcut zamanlamalar döngüleri atlar; duraklatma, silme, sabitleme ve yalnızca bildirim değişiklikleri kullanılabilir kalır. Bu güncellemeler için web update_schedule MCP aracı yoktur; panoyu kullanın.
  • delete_schedule — Zamanlanmış bir web otomasyon çalıştırmasını silin
  • list_mobile_schedules — Cihazlar, cron, saat dilimi ve bildirimlerle tüm zamanlanmış mobil otomasyon çalıştırmalarını listeleyin
  • create_mobile_schedule — Gerçek cihazlarda zamanlanmış bir mobil otomasyon çalıştırması oluşturun. automation_id ve cron_expression gerektirir; devices isteğe bağlıdır.
  • delete_mobile_schedule — Zamanlanmış bir mobil otomasyon çalıştırmasını silin
  • optimize_automation_script — AI destekli optimizasyon için bir Playwright betiğini Sonnet 4'e gönderin. Seçicileri, bekleme stratejilerini, iddiaları, hata işlemeyi, kimlik doğrulama modellerini, mobil uyumluluğu ve katı modu düzelten 12 maddelik bir kontrol listesi uygular. automation_id gerektirir. Geçerli betik sürümü, optimizasyondan önce kaydedilir. Optimize edilmiş betiği ve bir değişiklik özetini döndürür.
  • undo_automation_script — Bir otomasyon betiğini önceki sürümüne geri alın. En fazla 100 önceki sürüm saklanır. automation_id gerektirir. Geri yüklenen betiği ve kalan sürüm sayısını döndürür.

Örnek İş Akışı

  1. create_automation → özel bir betikle bir test oluşturun
  2. list_automations → mevcut testlere göz atın
  3. get_automation → Playwright betiğini inceleyin
  4. run_automation → testi tetikleyin
  5. list_automation_runs → sonuçları ve süreyi kontrol edin

⏱️

Zaman Takibi

  • list_time_entries — Ekip için zaman girişlerini listeleyin. period (today, week, month, all), project_id, category ve sort (newest, oldest, most_time, least_time) ile filtreleyin. Yalnızca Kurumsal plan.
  • create_time_entry — QA görevlerine harcanan zamanı kaydedin. description, category ve duration_minutes gerektirir. İsteğe bağlı olarak project_id ve entry_date ayarlayın (varsayılan bugündür). Yalnızca Kurumsal plan.
  • update_time_entry — Mevcut bir zaman girişini güncelleyin. id gerektirir. description, category, duration_minutes, project_id veya entry_date değerlerini güncelleyebilir. Yalnızca Kurumsal plan.
  • delete_time_entry — Bir zaman girişini kalıcı olarak silin. id gerektirir. Yalnızca Kurumsal plan.

Örnek İş Akışı

  1. create_time_entry → 45 dakikalık regresyon testi kaydedin
  2. list_time_entries → bu haftanın zaman girişlerini görüntüleyin
  3. update_time_entry → süreyi veya kategoriyi ayarlayın
  4. delete_time_entry → yanlış bir girişi kaldırın

☑️

Test Durumları

Hiyerarşik klasörler, iç içe paketler (çalıştırmalarda alt paket otomatik genişletmesiyle en fazla 3 düzey derinlikte), sürükle-bırak yeniden sıralama ve KPI eğilimleri, hata analizi, paket sağlığı, kapsam ve test uzmanı üretkenliği içeren bir analitik Raporlar sekmesi ile test yönetimi. Tüm araçlar Supabase'i doğrudan çağırır — HTTP gidiş-dönüşü yok, pano ile aynı gecikme.

Ücretsiz sınırlar: 10 saklanan test durumu, 1 paket, 3 klasör, durum başına 128 KB yapılandırılmış içerik, 2 etkin çalışma alanı API anahtarı ve UTC takvim ayı başına toplam 10 test çalıştırması. Bu çalıştırmaların en fazla 3'ü Hermes veya başka bir harici aracı kullanabilir; 1 etkin harici çalıştırma ve her harici planda en fazla 10 durum. Ücretsiz API anahtarı MCP trafiği, anahtar başına 30 istek ve çalışma alanı başına dakikada 60 istek ile sınırlıdır. Kurumsal test durumu depolama ve çalıştırmaları, genel platform korumalarına tabi olarak sınırsızdır.

AI test durumu oluşturma, AI etiket önerileri, Figma içe aktarma ve test durumu dosya ekleri Kurumsal gerektirir. 128 KB Ücretsiz yapılandırılmış içerik sınırı, Kurumsal dosya eklerinden ayrıdır. Ücretsiz, URL referanslarını saklayabilir. Temel MCP test durumu araçları, yukarıdaki sınırlar dahilinde Ücretsiz'de kullanılabilir kalır.

Eller serbest yürütme: çalıştırma inceleme sayfası, her seferinde bir durumun görünür olduğu bir atlıkarıncadır; klavye kısayolları (P Geçti · F Kaldı · B Engellendi · S Atla) ve ses kontrolü. Mikrofona tıklayın, ardından "Geçti", "Kaldı", "Engellendi", "Atla", "Sonraki", "Önceki", "Not ekle" (not alanına yazar), "Notları kaydet" veya "Sesi kapat" deyin. Başarılı sonuçlarda bir sonraki test edilmemiş duruma otomatik ilerler; test uzmanlarının ayrıntıları dikte edebilmesi ve bir hata oluşturabilmesi için Kaldı'da kalır. Chrome, Edge ve Safari'de çalışır.

Durumlar ve Klasörler
  • list_test_cases — Erişilebilir test senaryolarını, isteğe bağlı bir project seçici ile birlikte search, priority, type, status ve sort filtreleriyle listeler. Doğrudan üyelik için folder_id (dosyasız için null) veya suite_id ekleyin; alt öğeler dahil edilmez. API anahtarı kullananlar test_cases:read gerektirir. limit varsayılan olarak 50'dir (1-200); offset varsayılan olarak 0'dır (0-1000000). Değişmeyen cases dizisine, tüm yetkili eşleşmeler için total / total_count, limit, offset, has_more ve null olabilen next_offset eşlik eder. Önceden total yanlışlıkla sayfa uzunluğu anlamına geliyordu. Null olana kadar next_offset'i takip edin; sayfa uzunluğundan tamamlandığını çıkarmayın. 1000000 ofsetinin ötesindeki bir devam açıkça başarısız olur; kullanılamaz bir imleç veya yanlış tamamlama almak yerine filtreleri daraltın. 1 MiB'den büyük senaryo verisi içeren sayfalar açıkça başarısız olur: atlanan kayıtları kabul etmek yerine daha küçük bir limit ile yeniden deneyin. Kararlı kimlik eşitlik bozma kullanılır, ancak eşzamanlı düzenlemeler ofset sayfalarını kaydırabilir.
  • Sayfalama örneği: list_test_cases öğesini {"project":"test-bed","limit":50,"offset":0} ile çağırın. 55 eşleşme için yanıt total:55, has_more:true, next_offset:50 içerir. Kalan beş için offset:50 ve has_more:false, next_offset:null ile tekrarlayın.
  • create_test_case — Gerekli project seçicide (UUID, slug, tam ad veya bilet öneki; önce list_projects çağırın) bir test senaryosu oluşturun. İki şablon varyantı: steps (varsayılan) — steps dizisi aracılığıyla adım başına { action, expected } ızgarası; text — text_content aracılığıyla tek serbest biçimli açıklama. Her iki alan da aynı çağrıda gönderilebilir. İsteğe bağlı urls dizisi (en fazla 10 http/https URL) referans bağlantıları ekler ve Free sürümünde kullanılabilir. Dosya ekleri Enterprise ve bir gösterge paneli oturumu gerektirir. API anahtarı kullananlar test_cases:write gerektirir.
  • Sayfalama kurtarma: mevcut sonuçların ötesinde bir senaryo ofseti istemek açık bir hata döndürür; ofset 0'dan yeniden başlayın. Bu, istekler arasında senaryolar kaldırıldığında da olabilir. Sonraki ofseti tahmin etmek yerine döndürülen devamı takip edin.
  • Senaryo tanımlayıcıları: list_test_cases, get_test_case, create_test_case ve update_test_case, UUID id, değişmez short_id (örneğin TEST-BA-CASE-123) ve sayısal case_number döndürür; kompakt güncelleme/no-op yanıtları dahil. Eski projesiz senaryolar TEST-CASE-123 kullanır. Eksik tanımlayıcılar null olarak döndürülür; yedek olarak UUID kullanın. Veritabanı tanımlayıcıları atar; çağıranlar bunları değiştiremez veya oluşturma sırasında seçemez. Bir önek yeniden adlandırması mevcut kimlikleri yeniden yazmaz.
  • Tek senaryo arama: get_test_case ve update_test_case, id içinde bir UUID veya tam kısa kimlik kabul eder; link_test_case_to_bug ve list_test_case_links, case_id içinde ikisini de kabul eder. Etkin çalışma alanında tam aramadan önce çevreleyen boşluklar, harf büyüklüğü ve sayısal dolgu normalleştirilir. Yetkilendirme, kimlik önekini değil, depolanan çalışma alanını ve projeyi kullanır. Çıplak sayılar, kısmi kimlikler ve joker karakter aramaları kabul edilmez. Toplu senaryo dizileri, yürütme sonucu case_id, hata kimlikleri, klasör kimlikleri ve paket kimlikleri yalnızca UUID olarak kalır. Bağlantı kayıtları UUID case_id öğesini korur.
  • Numaralandırma boşlukları: senaryo numaralarının bitişik olması gerekmez. Bir URL'yi düzenlemek veya bir numarayı artırmak, eksik veya erişilemeyen bir senaryoya yol açabilir; bu garanti edilen bir sonraki senaryo eylemi değildir. Senaryoları liste aracıyla keşfedin ve sayfalamasını takip edin.
  • Çalışma alanı kapsamı: aynı kısa kimlik farklı çalışma alanlarında bulunabilir. MCP bunu yalnızca etkin çalışma alanında çözer; başka bir çalışma alanının kısa kimliğini kullanmadan önce çalışma alanı bağlamını değiştirin. Bir gösterge paneli kısa kimlik URL'sini paylaşırken ?team=<case.team_id> öğesini koruyun, örneğin /dashboard/test-cases/TEST-BA-CASE-123?team=<team-uuid>. UUID kalıcı bağlantıları mevcut yetkili çalışma alanları arası davranışı korur. MCP bir kalıcı bağlantı oluşturmaz.
  • get_test_case — Adımlar ve tanımlayıcılar dahil yetkili senaryo kaydını alır. Değişiklik geçmişini veya yürütme geçmişini yüklemez. Örnek: {"id":"TEST-BA-CASE-123"}.
  • Yürütme tahminleri: get_test_case, estimated_time_seconds ve uyumluluk takma adı estimated_time döndürür; her ikisi de saniye cinsindendir. Saklanan bir 0 0 olarak kalır; bilinmeyen veya eksik bir tahmin null olur. Her iki ad da mevcut olduğunda, açık bir null dahil olmak üzere kanonik alan kazanır; yalnızca eski estimated_time değerleri dönüştürme olmadan saniye olarak kabul edilir. list_test_cases, estimated_time_seconds kullanır. create_test_case girdisi estimated_time olarak kalır, ayrıca saniye cinsinden; REST istekleri ve yanıtları estimated_time_seconds kullanır.
  • list_test_case_folders — Erişilebilir klasörleri listeler. 500 ile sınırlıdır; esnek bir project seçici ve parent_folder_id filtresi kabul eder (yalnızca üst düzey için "root" kullanın). API anahtarı kullananlar test_cases:read gerektirir.
  • get_test_case_folder — Gerekli id (UUID) ile bir test senaryosu klasörünü doğrudan okur. Yalnızca klasör kaydını döndürür; alt klasörleri veya test senaryolarını örtük olarak yüklemez. Çalışma alanına ve projesine erişim gerektirir; API anahtarı kullananlar test_cases:read gerektirir.
  • list_test_cases, create_test_case ve bulk_update_test_cases için test senaryosu type değerleri: functional (oluşturma varsayılanı), regression, smoke, integration, performance, security, usability, exploratory. Geçersiz türler yazmadan önce reddedilir. Uçtan uca akışlar için integration kullanın; e2e, accessibility ve other kabul edilen test senaryosu türleri değildir. Otomasyon komut dosyası türleri ayrı bir sözleşmedir.
  • create_test_case_folder — list_projects tarafından döndürülen gerekli project içinde bir klasör oluşturun (parent_folder_id aracılığıyla 3 seviyeye kadar yuvalar). Katkıda bulunan veya daha yüksek çalışma alanı erişimi ve projeye erişim gerektirir. API anahtarı kullananlar ayrıca test_cases:write gerektirir.
  • update_test_case_folder — Klasör UUID'sine göre güncelle: id, isteğe bağlı name (kırpılmış, 1-120 karakter), null olabilen description (maksimum 50000 karakter), null olabilen parent_folder_id ve null olabilen card_color. Bir üst UUID, klasörü ve alt ağacını aynı çalışma alanı ve proje içinde taşır; null onu köke taşır. Renk, küçük harf paletini #1e293b, #7c2d12, #713f12, #14532d, #1e3a5f, #312e81, #581c87, #831843, #4a044e, #fef08a, #fca5a5, #93c5fd kabul eder; null onu temizler. Atlanan alanlar korunur. En az bir güncelleme alanı gereklidir. Bilinmeyen, yanlış yazılmış veya geçersiz alanlar, hiçbir değişikliği kaydetmeden tüm isteği reddeder. Kendi kendine/alt öğe döngüleri, bir kardeşle, doğrudan üstle veya doğrudan altla eşleşen adlar (büyük/küçük harf ve çevreleyen boşluklar yok sayılır) ve 3'ün üzerindeki alt ağaç derinlikleri (kök derinliği 0) reddedilir. Alt öğe derinlikleri atomik olarak güncellenir; senaryo kimlikleri ve üyelikler değişmez. Çakışan eşzamanlı değişiklikler başarısız olabilir; yeniden denemeden önce klasörü yeniden okuyun. Etkin katkıda bulunan veya daha yüksek proje erişimi ve API anahtarları için test_cases:write gerektirir. Örnek: {"id":"folder-uuid","card_color":"#93c5fd"}. Güncellenen kimliği, team_id, project_id, ad, açıklama, card_color, parent_folder_id, derinlik ve updated_at değerlerini döndürür. Klasör get/list okumaları ayrıca card_color içerir.
  • update_test_case — id içinde UUID veya tam kısa kimlikle mevcut bir senaryoyu, en az bir alanla yamalar: name (veya takma ad title), description, preconditions, steps, template_type, text_content, priority, type, status veya folder_id. Atlanan alanlar korunur; steps tam diziyi değiştirir ([] temizler). Açık null açıklamayı, ön koşulları, text_content'i veya klasör yerleşimini temizler; boş text_content de temizler. Hem ad hem de başlık gönderilirse eşleşmelidir. Öncelik ve tür, oluşturma numaralandırmalarını kullanır; durum active, draft veya deprecated şeklindedir. Bir tür değişikliği, PATCH API'siyle eşleşen type_tags öğesini yeni türle hizalar. Çalışma alanı/proje taşıma veya dosya meta verisi yazma yok. Klasörler tam olarak aynı çalışma alanını ve projeyi paylaşmalıdır. test_cases:write gerektirir. Senaryo özetini, id, short_id, case_number ve changed döndürür; değişmeyen değerler changed: false üretir. Onaylanmış bir güncelleme, onaylanmamış bir geçmiş girişiyle warnings döndürür; geçmişi onarmak için güncellemeyi tekrarlamayın. Eşzamanlı değişiklik hatasında, yeniden denemeden önce senaryoyu tekrar okuyun. Paket üyeliği ayrıdır: bu araçta suite_id değil, aşağıdaki toplu aracı kullanın. Silme aracı gösterilmez.
  • bulk_update_test_cases — 1-500 senaryo UUID'sine bir eylem uygular; tek bir senaryo için bir kimlik iletin. set_folder, params.folder_id alır (taşınacak UUID, dosyadan çıkarmak için açık null). add_to_suite ve remove_from_suite, params.suite_id alır; ekleme diğer üyelikleri asla kaldırmaz veya klasörü taşımaz. Ayrıca set_priority, set_status, set_type, add_tags, remove_tags, pin ve unpin destekler. API anahtarları test_cases:write gerektirir. applied, skipped ve errors döndürür; organizasyon eylemleri onaylanan değiştirilen satırları sayar, kimlikleri yinelenir ve mevcut üyelikleri atlar.
  • Oluşturma sırasında yerleştirme: create_test_case isteğe bağlı folder_id ve suite_id kabul eder. Hedefleri list_test_case_folders ve list_test_suites ile keşfedin (paket keşfi, API anahtarları için test_runs:read gerektirir). Klasörler tek bir katalog konumudur; paketler çoktan çoğa test planı üyelikleridir. Hedefler, eski kapsamsız senaryolar dahil aynı yetkili çalışma alanına ve tam projeye ait olmalıdır. Erişilemeyen senaryo kimlikleri ayrıntı olmadan atlanır; uyumsuz hedefler reddedilir. Geçersiz oluşturma hedefleri, bir senaryo oluşturmadan önce başarısız olur.
  • Kısmi oluşturma: senaryo oluşturma ve paket ekleme ayrı yazmalardır. Ekleme başarısız olursa, yanıt oluşturulan senaryo kimliğini, suite_id: null ve bir warnings dizisi döndürür. create_test_case öğesini tekrarlamayın; döndürülen kimlik için add_to_suite ile bulk_update_test_cases öğesini yeniden deneyin.
  • link_test_case_to_bug — Bir test senaryosu ile bir hata raporu UUID'si (verified_by, covers veya relates) arasında izlenebilirlik kurar. Her iki kayıt da etkin çalışma alanına ve çağıranın erişebildiği projelere ait olmalıdır.
  • list_test_case_links — Bir test senaryosu için tüm izlenebilirlik bağlantılarını listeler.
  • list_test_case_review_candidates — Ölü test bayrakları: never_run (oluşturmadan bu yana 90+ gün), always_passes (90 günde 5+ ardışık geçiş), always_skipped (3+ ardışık atlama).
  • mark_test_case_review_flags — Geçerli arşiv adayı bayraklarını test_cases.review_flag üzerinde kalıcı hale getirir. pg_cron aracılığıyla her Pazartesi 09:00 UTC'de otomatik çalışır.
İçe Aktarmalar
  • Figma içe aktarma (Enterprise) (yalnızca gösterge paneli oturumu): Figma çerçevelerinin bir zip dışa aktarımını yükleyin (100 MiB'ye kadar), Claude her ekranı analiz eder ve seçtiğiniz veya oluşturduğunuz bir klasöre test senaryoları taslağı hazırlar. Kod çözmeden önce, arşiv 1.000 girişle, giriş başına 20 MiB açılmış (kod çözülmüş) ve toplam 100 MiB toplu açılmış veriyle sınırlıdır; yok sayılan dosyalar ve dizinler bütçelere dahildir. Kod çözülmüş çerçeve arabellekleri bildirilen boyutlarıyla eşleşmelidir. Bozuk arşivler, boyut uyumsuzlukları ve aşılan limitler, AI analizinden önce işi başarısız kılar; başarısızlık durumunda orijinal yükleme, depolama temizleme politikasına tabi olarak yeniden deneme için saklanır. Geçerli arşivler çok geçişli bir işlem hattına girer (sınıflandır → ekran başına senaryolar → paylaşılan önek ekranları arasında akış düzeyi senaryolar → öz eleştiri) ile istem önbelleğe alma, 429 yeniden deneme ve çerçeve başına AI hata yalıtımı. Senaryolar status=active olarak yerleşir, ai_generated=true ile etiketlenir, source='figma' ve source_frame_name orijinal çerçeveye bir bağlantı korur. Platform Anthropic anahtarını kullanır — ekip başına Claude bağlantısı gerekmez.
Paketler ve Çalıştırmalar
  • list_test_suites — Erişilebilir test paketlerinden en fazla 50 tanesini, isteğe bağlı esnek bir project filtresiyle listeler. Her paket, tam sayı olan bir case_count içerir: tüm durumlardaki doğrudan atanmış vakalar, alt öğeler hariç, diğer çalışma alanı veya diğer proje vakaları hariç (eski projesiz vakalar dahil kalır). Sayılar, getirilen üyelik satırlarıyla sınırlı değildir. API anahtarı çağıranları, yürütme çalışanlarıyla geriye dönük uyumluluk için test_runs:read gerektirir.
  • get_test_suite — Gerekli id (UUID) ile bir test paketini doğrudan okur. Yalnızca paket kaydını döndürür; alt paketleri veya üye test vakalarını örtük olarak yüklemez. Çalışma alanına ve projesine erişim gerektirir; API anahtarı çağıranları test_runs:read gerektirir.
  • create_test_suite — list_projects tarafından döndürülen gerekli project içinde bir paket oluşturur. parent_suite_id ile en fazla 3 seviyeye kadar iç içe yerleştirir. API anahtarı çağıranları test_cases:write gerektirir.
  • update_test_suite — Paket UUID'sine göre günceller: id, isteğe bağlı name (kırpılmış, 1-120 karakter), boş olabilir description (en fazla 50000 karakter) ve status (aktif/arşivlenmiş). Atlanan alanlar ve vaka üyelikleri korunur. Aktif katkıda bulunan veya daha yüksek proje erişimi ve test_cases:write gerektirir. Üst taşıma ve sabitleme desteklenmez; üst taşıma, atomik alt derinlik bakımı gerektirir. id, team_id, project_id, name, description, parent_suite_id, depth, status ve updated_at değerlerini döndürür. Örnek: {"id":"suite-uuid","name":"Checkout regression","description":null}.
  • list_test_runs — Paket adı, atanan kişi ve geçti/kaldı özetiyle test çalıştırmalarını listeler.
  • create_test_run — Pano tarafından yönetilen bir paket çalıştırması oluşturur. Bir üst paketi çalıştırmak, her alt paketteki her vakayı otomatik olarak dahil eder (her ikisine de bağlı bir vaka tam olarak bir kez eklenir). Her test_run_results satırı, vakaların hangi kaynak alt paketten geldiğini kaydeder, böylece sonuç sayfaları kökene göre gruplayabilir.
Harici Ajan Yürütme

Bu araçlar, Hermes veya başka bir ajan çalışma zamanının, QA kayıt sistemi olmadan onaylanmış bir paketi yürütmesine olanak tanır. Yalnızca test_runs:read ve test_runs:write içeren çalışma alanı kapsamlı bir anahtar kullanın. Paket, proje sınırını sağlar; çağıranlar bunu geçersiz kılamaz.

  • start_test_plan — Sabit bir external_run_id ile değişmez bir paket anlık görüntüsünü başlatır veya sürdürür. Yinelenen bir kimlik, yeni bir çalıştırma oluşturmak yerine mevcut eşleşen çalıştırmayı ve ilk sayfayı döndürür.
  • get_test_run_plan — Kurallı çalıştırma durumunu ve sabit bir plan sayfasını okur. Önceki next_cursor değerini iletin; sayfalar varsayılan olarak 100 vakadır ve en fazla 200 ile sınırlıdır.
  • report_test_results — passed, failed, blocked veya skipped durumuyla 1-200 sonuç gönderir. Tam yeniden denemeler güvenlidir; bir vakayı başka bir durumla üzerine yazmaya çalışmak reddedilir.
  • abort_test_run — Kabul edilen kısmi sonuçları ve kurallı özeti korurken kesintiye uğramış bir çalıştırmayı idempotent olarak durdurur.

Kota davranışı: Aynı external_run_id ile start_test_plan öğesini yeniden deneyin; başka bir çalıştırma tüketmeden eşleşen çalıştırmayı sürdürün. Veri silme, aylık çalıştırma kullanımını sıfırlamaz.

Çalışma zamanı sınırı: Vaka anlık görüntüleri kimlik bilgilerini, dosya gövdelerini ve özel ek yollarını hariç tutar. Sonuç kanıtı MVP'de metindir. Hedef kimlik bilgileri yürütme çalışma zamanında kalır. Tarayıcı, model ve ağ maliyetleri müşteri tarafında kalır ve müşteriler hedef erişimini ve ağ çıkışını kısıtlamalıdır. Kusur ve sürüm kararlarından bir insan sorumlu kalır.

Hermes Ajan kılavuzu, bu döngüyü bugAgent tarafından bakımı yapılan bir topluluk becerisi olarak paketler. Genel başlangıç kiti, kopyaya hazır bir yapılandırma ve yüklenebilir beceri içerir. Resmi Nous Research entegrasyonu değildir.

Raporlar (Tier 1 + Tier 4 analitiği)
  • get_test_reports_overview — Bir pencere için öne çıkan KPI'lar (geçme oranı, tamamlanan çalıştırmalar, yürütülen vakalar) önceki eşdeğer pencereye göre farklarla birlikte. Raporlar sekmesindeki KPI şeridinin gösterdiği sayılarla aynıdır. Bu, kayıtlı bir Proje Raporu oluşturmaz. Kurumsal XLSX Proje Raporları ve zamanlamaları panoda yönetilir; bu sürümde bu kayıtlı yapılar için MCP aracı etkinleştirilmemiştir.
  • get_test_reports_failures — Dört "neyi düzeltmeli?" listesi: failing_cases (≥%50 başarısız, en az 3 çalıştırma), flaky_cases (en çok geçti/kaldı değişimi), failing_suites (≥%30 başarısız, en az 5 çalıştırma), regressed_cases (pencerede daha önce geçmiş olan en son başarısız).

Örnek İş Akışı

  1. create_test_case_folder → bir klasör ağacı oluşturun (ör. Smoke → Auth). Aynı projede bir test vakası oluştururken döndürülen klasör kimliğini kullanın; pano'nun Yeni Test Vakası formu da satır içi klasör oluşturmayı sunar.
  2. create_test_case → vakaları tanımlayın; içeriği update_test_case ile düzenleyin, paket üyeliğini bulk_update_test_cases ile organize edin
  3. Örnek araçlar/çağrı: {"name":"update_test_case","arguments":{"id":"00000000-0000-4000-8000-000000000001","title":"Verify login rejection","steps":[{"action":"Submit an incorrect password","expected":"An error is shown; no session is created"}],"status":"active","folder_id":null}}. Atlanan öncelik, tür ve açıklama değişmeden kalır.
  4. create_test_suite → bir test planı oluşturun (alt paketler isteğe bağlı, en fazla 3 seviye derinlikte)
  5. create_test_run → bir üst paketten insan/pano tarafından yönetilen bir çalıştırma oluşturun — alt paketler otomatik dahil edilir
  6. start_test_plan → yeniden denemeye güvenli harici ajan çalıştırmasını başlatın veya sürdürün
  7. get_test_run_plan → her değişmez plan sayfasını alın, ardından seçilen çalışma zamanında yürütün
  8. report_test_results → sınırlı sonuç gruplarını döndürün; yürütme güvenli şekilde devam edemezse abort_test_run çağırın
  9. get_test_reports_failures → çalıştırma tamamlandığında "bu hafta neyi düzeltmeli?" diye sorun
  10. get_test_reports_overview → geçme oranı eğilimini haftadan haftaya izleyin

⚡

Ekip Güçlendirici

  • scale_team — Güçlendirici test uzmanlarıyla QA ekibinizi anında ölçeklendirin. Hesaplar, test uzmanı erişimiyle otomatik olarak sağlanır. team_size (1-10), location, duration, budget ve isteğe bağlı olarak product_url, product_types ve tech_levels belirtin. Kurumsal planda kullanılabilir. Onay verilene kadar ücretlendirilmezsiniz.

Örnek İş Akışı

  1. scale_team → ABD'de 1 ay için 5 kıdemli test uzmanı sağlayın
  2. list_team_members → yeni test uzmanlarının ekibinizde göründüğünü doğrulayın
  3. list_bug_reports → güçlendirici test uzmanları tarafından gönderilen raporları inceleyin

📱

Mobil Test (Kurumsal)

Mobil kaynaklar proje kapsamlıdır. Oluşturma, içe aktarma ve filtrelenmiş listelerde project_id veya esnek bir project seçici iletin. Otomasyonlar, bağlı uygulamanın projesini devralır; aksi takdirde sunucu çalışma alanı varsayılan projesini kullanır. Filtrelenmemiş listeler, taşınana kadar eski çalışma alanı düzeyindeki satırları içerebilir.

  • list_mobile_apps — Yüklenen uygulamaları isteğe bağlı project_id / project, platform ve limit filtreleriyle listeler. Her uygulamanın project_id değerini döndürür; böylece ajanlar sonraki işlemleri aynı projede sürdürebilir.
  • upload_mobile_app — Gerçek cihazlarda test etmek için bir APK (Android) veya IPA (iOS) uygulamasını kaydeder. name, platform (android / ios) ve file_url gerektirir; aktif projeye atamak için project_id değerini iletin. iOS için, gerçek cihaz çalıştırmaları için IPA'yı yükleyin, ardından kayıt için simülatör .app derlemesini yüklemek üzere panoyu kullanın.
  • update_mobile_app — Bir uygulama ikilisini yeni bir sürümle değiştirir. Önbelleğe alınmış URL'leri ve simülatör derlemelerini temizler; böylece tüm otomasyonlar bir sonraki çalıştırmada yeni sürümü kullanır. app_id ve file_url gerektirir. İsteğe bağlı: version. Özel bağlantılı giriş profilleri, aktif oluşturucularını gerektirir; paylaşılan profiller, aynı projeye aktif erişim gerektirir. Zamanlamalar, korumalı otomasyon varsayılanını devralır.
  • list_mobile_automations — Mobil otomasyonları isteğe bağlı project_id / project, app_id, status ve limit filtreleriyle listeler. Sonuçlar project_id ve bağlantılı uygulama kimliğini içerir.
  • create_mobile_automation — Bir test betiği oluşturur. name, app_id, script_type (YAML için maestro, Appium Python için appium, Appium JavaScript için appium_js) ve script gerektirir; uygulama henüz proje kapsamında değilse project_id değerini iletin. Harici olarak doğrulanmış, kendi kendine yeten tek bir Maestro YAML akışı için execution_mode değerini browserstack_maestro olarak ayarlayın; aksi takdirde varsayılan olarak appium_actions olur. YAML appId değeri, bağlantılı uygulamanın saklanan paket veya paket kimliğiyle eşleşmelidir; hiçbiri saklanmazsa, ilk doğrulanmış yerel akış bunu belirler. Yer tutucu uygulama kimlikleri ve karartılmış Android kaynak kimlikleri reddedilir. Satır içi runFlow desteklenir, ancak harici akış/betik dosya referansları v1'de reddedilir. Yerel Maestro, inputRandomText ve copyTextFrom gibi komutları ve ${maestro.copiedText} ile ${output.value} gibi çalışma zamanı ifadelerini korur. Aynı projedeki bir credential_id, ${USERNAME} / ${PASSWORD} değerlerinin tam inputText değerlerini sağlayabilir. Aynı projedeki bir variable_profile_id, başvurulan ${DATA_*} değerleri için varsayılanı kaydedebilir; başvurulan her anahtar mevcut olmalıdır. Veri profilleri yalnızca gizli olmayan sentetik verilerdir.
  • import_mobile_script — Mevcut bir mobil test betiğini içe aktarır ve onu çalıştırılabilir bir otomasyona dönüştürür; geliştiricinin kendi bulucularını korur, böylece çalıştırmalar öğeleri hassas bir şekilde çözer. Desteklenen lehçeler: Appium‑Python, WebdriverIO, Maestro (YAML akışları) ve Playwright (mobil‑web). Karartılmış Android kaynak kimliği yer tutucuları atlanır ve seçici eşleme warnings içinde raporlanır. Yalnızca Android uygulamaları. name, app_id ve script gerektirir; isteğe bağlı target_devices ve project_id. Otomasyonu ve action_count, algılanan dialect ve seçici eşleme warnings değerlerini döndürür.
  • run_mobile_automation — Gerçek bir cihazda mobil otomasyonu başlatır. automation_id gerektirir; isteğe bağlı device, os_version, credential_id ve yerel-Maestro variable_profile_id. Veriler için, otomasyon varsayılanını devralmak üzere variable_profile_id değerini atlayın, profil kullanmamak için null değerini iletin veya geçersiz kılmak için aynı projeden bir UUID iletin. Başvurulan her ${DATA_*} anahtarı mevcut olmalıdır. Özel bir giriş profili, aktif oluşturucusunu gerektirir; paylaşılan bir giriş profili, aktif aynı proje erişimi gerektirir. Kesin bilinen kimlik bilgisi değerleri filtrelenir ve kesin veri profili değerleri, kalıcı metinsel kanıtlardan en iyi çabayla filtrelenir; dönüştürülmüş, kısmi, kodlanmış veya uygulama kaynaklı veri değerleri kalabilir. Yetkili özel video/ekran görüntüleri kullanılabilir durumda kalır ve test edilen uygulama tarafından işlenen değerleri gösterebilir; bu nedenle veri profilleri yalnızca sentetik, gizli olmayan değerler içermelidir. Kimlik bilgisi redaksiyon bağlamı kullanılamıyorsa veya temizliğin güvenli olduğu kanıtlanamıyorsa, ayrıntılı kimlik bilgisi metni gizlenirken durum ve mevcut görsel kanıtlar kalır. Tanılama, çalışma alanı ve proje yetkilendirmesi gerektirir; medya bağlantıları beş dakika sonra sona erer.
  • list_mobile_runs — Yetkili mobil çalıştırma sonuçlarını alır (durum, cihaz, sonuç özeti, özel video ve ekran görüntüsü bağlantıları, BrowserStack oturumu, güvenli olduğunda filtrelenmiş kimlik bilgili yerel Maestro günlükleri ve hataları ve otomatik oluşturulan hata). Çalışma alanı üyeliği ve proje erişimi, çalıştırma tanılaması için zorunludur. İsteğe bağlı filtreler: project_id, automation_id, status (queued, running, passed, failed, error, archived) ve limit. Arşivlenmiş çalıştırmalar varsayılan olarak hariç tutulur.
  • create_login_profile — Mobil, Web Otomasyonu ve Keşifsel AI tarafından yeniden kullanılabilir, yalnızca yazılabilir şifrelenmiş bir kullanıcı adı/şifre profili oluşturur. project_id, name, username ve password gerektirir; isteğe bağlı visibility değeri private (varsayılan) veya shared olur. Özel profiller yalnızca oluşturucuya aittir. Paylaşılan profiller, aynı projeye erişimi olan aktif üyeler tarafından kullanılabilir.
  • create_mobile_credential — create_login_profile için uyumluluk adı; aynı girdileri ve güvenlik sınırını kullanır.
  • list_login_profiles — Yalnızca çağıran tarafından görülebilen profilleri, isteğe bağlı olarak tek bir project_id için listeler. visibility dahil gizli olmayan meta verileri döndürür; diğer kullanıcıların sahip olduğu özel profiller ve erişilemeyen projeler atlanır.
  • list_mobile_credentials — list_login_profiles için uyumluluk adı; kimlik bilgisi sırlarını asla döndürmez.
  • update_login_profile — visibility değerini yeniden adlandırır, döndürür veya değiştirir. Aktif oluşturucu herhangi bir alanı güncelleyebilir. Aktif bir çalışma alanı sahibi/yöneticisi, paylaşılan bir profili yeniden adlandırabilir veya döndürebilir ancak görünürlüğü değiştiremez; özel profiller yalnızca oluşturucuya ait kalır.
  • update_mobile_credential — update_login_profile için uyumluluk adı; aynı sahiplik ve proje kontrollerini kullanır.
  • delete_login_profile — Oluşturucu tarafından yumuşak silme; yalnızca paylaşılan profiller için sahip/yönetici yaşam döngüsü kurtarması. Gelecekteki kullanım varsayılanları temizlenirken denetim geçmişi kalır.
  • delete_mobile_credential — delete_login_profile için uyumluluk adı; denetim için tarihsel referanslar kalır.
  • create_mobile_variable_profile — project_id, name ve {"DATA_EMAIL":"qa@example.test","DATA_REGION":"ca"} gibi bir variables nesnesiyle yeniden kullanılabilir, proje kapsamlı sentetik test verileri oluşturur. Anahtarlar büyük harf DATA_* tanımlayıcıları olmalıdır. Profiller 1–100 dize, değer başına 4096 UTF-8 bayt ve toplam 65536 bayt sağlar. Ayrılmış kimlik bilgisi/çalışma zamanı adları reddedilir. Kimlik bilgilerini, belirteçleri, üretim kişisel verilerini veya diğer sırları asla saklamayın.
  • list_mobile_variable_profiles — Yetkili bir project_id için Mobil/Her İkisi profillerini ve okunabilir gizli olmayan değerlerini listeler. Proje atama kuralları geçerlidir. Mevcut profiller ve mobil oluşturma varsayılan olarak both olur; oluşturma/güncelleme platform (mobile veya both) kabul eder. Yalnızca web profilleri, mobil katalog erişiminden ve çalışma zamanı kullanımından hariç tutulur.
  • update_mobile_variable_profile — Bir profili yeniden adlandırır veya id ile tam variables nesnesini değiştirir. Yalnızca aktif oluşturucu veya aktif bir çalışma alanı sahibi/yöneticisi güncelleyebilir.
  • delete_mobile_variable_profile — Bir profili id ile yumuşak siler. Yalnızca aktif oluşturucu veya aktif bir çalışma alanı sahibi/yöneticisi silebilir; otomasyon varsayılanları temizlenirken tarihsel çalıştırma referansları kalır.
  • list_mobile_schedules, create_mobile_schedule, delete_mobile_schedule — Gerçek cihaz zamanlamalarını listeler, oluşturur ve kaldırır. Zamanlamalar, seçilen otomasyonlarından proje bağlamını, giriş profilini ve gizli olmayan değişken profilini devralır. Özel giriş profilleri, aktif oluşturucularını gerektirir; paylaşılan giriş profilleri, aktif aynı proje erişimi gerektirir. Gizli olmayan değişken profilleri, oluşturucu-veya-sahip/yönetici politikalarını korur. Zamanlama değişiklikleri ve silme, aktif zamanlama oluşturucusu veya aktif bir çalışma alanı sahibi/yöneticisiyle sınırlıdır.

Web Test Veri Kataloğu

Aynı gizli olmayan proje kataloğu Automate Web'den kullanılabilir. Bu araçlar, çalışma alanının automation yetkisini ve okumalar dahil automations:write API anahtarı kapsamını gerektirir. Mobil erişim gerektirmezler. Değerler, şifrelenmiş Giriş Profilleriyle kayıtları asla paylaşmaz. Katalog desteği, web çalıştırmalarına profil değerlerini henüz bağlamaz veya enjekte etmez.

  • create_web_variable_profile: gerekli project_id, name, variables; isteğe bağlı platform (web veya both), varsayılan web. Mobil ile aynı DATA_* sınırlarını kullanır. platform dahil profili döndürür.
  • list_web_variable_profiles: gerekli project_id; yalnızca Web/Her İkisi kayıtlarını içeren { profiles: [...] } döndürür.
  • get_web_variable_profile: gerekli id; erişilebilir bir Web/Her İkisi profilini ve sentetik değerlerini döndürür.
  • update_web_variable_profile: gerekli id; isteğe bağlı name, tam değiştirme variables veya platform (web veya both). Aktif oluşturucu veya aktif çalışma alanı sahibi/yöneticisi gerektirir. Her İkisi'ni Mobil'e daraltmak için Mobil erişimiyle Mobil kataloğunu kullanın.
  • delete_web_variable_profile: gerekli id; aynı yönetim izinleri. Yumuşak siler ve denetim geçmişini koruyarak { deleted: true } döndürür.

Örnek: list_projects kullanarak bir projeyi çözün, {"project_id":"PROJECT_UUID","name":"Canadian checkout","platform":"both","variables":{"DATA_REGION":"CA"}} ile create_web_variable_profile çağırın, ardından list_web_variable_profiles ile doğrulayın. Erişilemeyen projeler/profiller, değerlerini açığa çıkarmadan başarısız olur; geçersiz veriler veya yinelenen proje genelindeki adlar reddedilir.

Örnek İş Akışı — Android

  1. list_projects → hedef project_id değerini çözün
  2. upload_mobile_app → APK'yı bu projeye kaydedin
  3. Panoda güvenli bir şekilde kaydedin veya import_mobile_script / create_mobile_automation kullanın
  4. list_mobile_automations → otomasyonu aynı projede çözün
  5. run_mobile_automation → isteğe bağlı olarak bir giriş profiliyle gerçek bir cihazda tetikleyin
  6. list_mobile_runs → durumu, sonuç özetini, özel görsel bağlantıları ve BrowserStack oturum meta verilerini kontrol edin
  7. Hatalar, hata anlık görüntüsü ve adım dökümüyle otomatik olarak hata raporları oluşturur

Örnek İş Akışı — iOS

  1. upload_mobile_app → IPA'nızı gerçek cihaz çalıştırmaları için project_id ile kaydedin
  2. Uygulama ayrıntı sayfasında simülatör .app derlemesini yükleyin (kayıt için)
  3. Tarayıcıda testi kaydedin → eylemler simülatörden yakalanır
  4. run_mobile_automation → kaydedilen otomasyonu bir iPhone'da tetikleyin (IPA'yı kullanır)
  5. update_mobile_app → hazır olduğunda IPA'yı yeni sürümle değiştirin

Örnek İş Akışı — Yerel Maestro

  1. upload_mobile_app → APK veya IPA'yı hedef projeye kaydedin
  2. create_mobile_credential → isteğe bağlı olarak kimliği doğrulanmış bir akış için aynı projede bir profil oluşturun
  3. create_mobile_variable_profile → isteğe bağlı olarak akış tarafından kullanılan aynı projede sentetik DATA_* değerleri oluşturun
  4. create_mobile_automation → bağlantılı uygulamanın tam paket/paket appId, script_type: maestro ve execution_mode: browserstack_maestro değerleriyle bilinen çalışan bir YAML akışı iletin. Giriş için ${USERNAME} / ${PASSWORD} ve sentetik girdi için ${DATA_EMAIL} -stili yer tutucular kullanın; varsayılanları kaydetmek için profil kimliklerini iletin.
  5. run_mobile_automation → uyumlu bir cihaz seçin ve isteğe bağlı olarak giriş veya değişken profilini geçersiz kılın. Değişken profilini atlayarak devralın veya tek bir çalıştırma için devre dışı bırakmak üzere null iletin.
  6. list_mobile_runs → yetkili geçti/kaldı özetlerini, özel video/ekran görüntülerini, filtrelenmiş günlükleri, gerçek adım adlarını, ayrıntılı hataları ve oturum meta verilerini inceleyin. Kimlik bilgili bir çalıştırma için güvenli temizlik sağlanamazsa, durum ve mevcut görsel kanıtlar kalırken ayrıntılı metin gizlenir.

AI ile İyileştirme: izin verilen beta, pano ve REST iyileştirme uç noktaları aracılığıyla kullanılabilir. Kamu kataloğunda henüz Refine MCP araçları yoktur.

✅

Uyumluluk ve Kanıt (Kurumsal)

  • collect_compliance_evidence — Bağlı hizmetlerden (Cloudflare, GitHub, Sentry, Supabase, Railway) otomatik kanıt toplamayı tetikler. Çalıştırma kimliği döndürür. SSL/TLS ayarlarını, WAF durumunu, Dependabot uyarılarını, hata eğilimlerini, dağıtım geçmişini ve daha fazlasını toplar.
  • check_config_drift — Tüm bağlı hizmetlerde güvenlik yapılandırmasının temel çizgilerden sapmasını kontrol eder (SSL modu, TLS sürümü, HSTS, WAF kuralları, güvenlik başlıkları).
  • generate_access_review — Üç aylık erişim inceleme raporu oluşturur. Ekip üyelerini, rolleri, MFA durumunu, API anahtarı kullanımını denetler ve öneriler üretir (ör. etkin olmayan anahtarları iptal etme).
  • get_security_events — Hizmetler arası güvenlik olay zaman çizelgesini sorgular. Kaynağa (cloudflare, sentry, github) ve önem düzeyine (critical, high, medium, low, info) göre filtreleyin. Olaylar hizmetler arasında otomatik olarak ilişkilendirilir.

Uyumluluk Kapsamı

Bu araçlar 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) ve GDPR (Madde 5, 25, 32, 33) uyumluluk gereksinimlerine yardımcı olur.

Uyumlu İstemciler

bug Agent, Model Context Protocol'ü destekleyen her istemciyle çalışır. Popüler istemciler için kurulum kılavuzları:

Ayarlar → Geliştirici → Yapılandırmayı Düzenle seçeneğini açın, ardından ekleyin:

{
  "mcpServers": {
    "bugagent": {
      "type": "http",
      "url": "https://mcp.bugagent.com/mcp",
      "headers": {
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"
      }
    }
  }
}

Kaydettikten sonra Claude Desktop'ı yeniden başlatın.

✳️

Cursor

Ayarlar → MCP Sunucuları → Sunucu Ekle seçeneğini açın veya proje kökündeki .cursor/mcp.json dosyasını düzenleyin:

{
  "mcpServers": {
    "bugagent": {
      "type": "http",
      "url": "https://mcp.bugagent.com/mcp",
      "headers": {
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"
      }
    }
  }
}

🌊

Windsurf

Ayarlar → MCP → Sunucu Ekle seçeneğini açın veya MCP yapılandırma dosyanızı düzenleyin:

{
  "mcpServers": {
    "bugagent": {
      "type": "http",
      "url": "https://mcp.bugagent.com/mcp",
      "headers": {
        "Authorization": "Bearer ba_live_YOUR_KEY_HERE"
      }
    }
  }
}

bug Agent'ı doğrudan terminalden ekleyin:

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

Bu, barındırılan Streamable HTTP sunucusuna doğrudan bağlanır.

stdio gerektiren istemciler için yayınlanmış bugagent-mcp köprüsünü kullanın:

  • Komut: npx
  • Komut satırı: npx -y bugagent-mcp
  • Bağımsız değişkenler: ["-y", "bugagent-mcp"]
  • Ortam: BUGAGENT_API_KEY

Yardım Alın

Yardıma mı ihtiyacınız var? Buradayız.

Discord Topluluğu

Gerçek zamanlı destek ve topluluk tartışmaları için Discord'umuza katılın.

E-posta Desteği

support@bugagent.com — Genellikle 24 saat içinde yanıt veririz.