Skip to content

31 Aracın Tümü — Sağlayıcı Referansı

LenserFight MCP sunucusu, üç grup altında 31 araç sunar. Her araç, standart bir MCP tools/call isteği aracılığıyla kimliği doğrulanmış herhangi bir üçüncü taraf ürününe sunulmaktadır. Bu sayfa, entegrasyon oluşturan sağlayıcılar için yetkili referans belgesidir.

Tüm araçlar için kimlik doğrulaması gereklidir. Her çağrı Authorization: Bearer lf_mcp_<token> üst bilgisini içermelidir. Bkz. OAuth ve Kimlik Doğrulama.

Adlandırma ve güvenlik sınıfları

Her araç kimliği sektör standardı fiil_isim formundadır (list_lenses, get_battle, run_workflow) — Anthropic referans bağlayıcılarının (Gmail: list_labels, get_thread, create_draft) kullandığı kalıbın aynısı.

Araçlar, host'un onayları gruplayabilmesi için bir güvenlik sınıfı ile etiketlenir:

SınıfAnlamıOtomatik onay güvenli mi?
ReadDurumu değiştirmez — listeleme, getirme, doğrulama, özetlemeEvet
WriteYeni durum oluşturur veya değiştirirİlk seferinde sor
ExecuteYan etkileri vardır (şablon çözümü, çalıştırma başlatma)Her oturumda sor
DestructiveMevcut veriyi siler veya gizlerHer zaman onayla

Dağılım: 16 Read · 9 Write · 4 Execute · 2 Destructive = 31.


Hızlı referans

#AraçGrupSınıfNe işe yarar?
1list_lensesLensReadFiltreler ve sayfalama ile lensleri listeler
2search_lensesLensReadLensler arasında tam metin arama yapar
3get_lensLensReadŞablonu ve parametreleriyle birlikte tek bir lensi getirir
4list_lens_versionsLensReadBir lensin tüm sürümlerini listeler
5get_lens_versionLensReadBelirli bir lens sürümünün ayrıntılarını getirir
6extract_lens_paramsLensReadBir lensten parametre şemasını çıkarır
7validate_lens_paramsLensReadParametre değerlerini bir lens şablonuna göre doğrular
8create_lensLensWriteŞablon gövdesine sahip yeni bir lens oluşturur
9update_lensLensWriteMevcut bir lensin yeni bir değişmez (immutable) sürümünü oluşturur
10fork_lensLensWriteHalka açık veya topluluk lensini kendi hesabınıza çatallar (fork)
11set_lens_visibilityLensWriteBir lensin görünürlük düzeyini değiştirir
12run_lensLensExecuteBir lens şablonunu yürütülmeye hazır bir istem (prompt) haline getirir
13find_and_run_lensLensExecuteTek bir çağrıda Arama + Çalıştırma işlemlerini gerçekleştirir
14archive_lensLensDestructiveBir lensi arşivler (gizlenir ancak silinmez)
15delete_lensLensDestructiveBir lensi geçici olarak siler (soft-delete, onay gerektirir)
16list_battlesSavaşReadFiltreler ve sayfalama ile savaşları listeler
17get_battleSavaşReadYarışmacılar ve skorlar dahil olmak üzere tüm savaş ayrıntılarını getirir
18get_battle_scoreSavaşReadToplam oyları ve yapay zeka hakem kararlarını okur
19get_battle_historySavaşReadBir lenser'ın oluşturduğu veya katıldığı savaşları listeler
20create_battleSavaşWriteYeni bir savaş oluşturur
21add_battle_contenderSavaşWriteBir AI modelini, lenser'ı veya iş akışını yarışmacı olarak ekler
22submit_battle_runSavaşWriteBir yarışmacının görev istemine (task prompt) verdiği yanıtı gönderir
23set_battle_statusSavaşWriteBir savaşı yeni bir yaşam döngüsü durumuna geçirir
24list_workflowsİş AkışıReadFiltreler ve sayfalama ile iş akışlarını listeler
25get_workflowİş AkışıReadTüm iş akışı ayrıntılarını getirir
26get_workflow_run_statusİş AkışıReadBir çalıştırmanın durumunu ve kredi maliyetini sorgular (poll)
27get_workflow_run_logsİş AkışıReadDüğüm (node) başına yürütme günlüklerini (logs) okur
28summarize_workflowİş AkışıReadToplu çalıştırma metriklerini getirir
29create_workflowİş AkışıWriteYeni bir iş akışı oluşturur
30run_workflowİş AkışıExecuteBir iş akışı yürütme çalıştırmasını başlatır
31retry_workflowİş AkışıExecuteBaşarısız veya iptal edilmiş bir çalıştırmayı yeniden dener

Bir araç nasıl çağrılır?

Tüm araçlar standart MCP tools/call yöntemini kullanır:

http
POST https://mcp.lenserfight.com/mcp
Authorization: Bearer lf_mcp_<token>
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "list_lenses",
    "arguments": { "limit": 5, "visibility": "public" }
  }
}

Sonuç her zaman result.content[0].text içinde bir JSON dizisi (string) olarak döndürülür.


Lens araçları

list_lenses

İsteğe bağlı filtreler ve sayfalama ile lensleri listeler.

ParametreTürGerekli mi?VarsayılanAçıklama
limitsayı (1–100)Hayır20Sayfa başına sonuç sayısı
offsetsayı (≥ 0)Hayır0Sayfalama kaydırma değeri
visibility'public' | 'community' | 'private'HayırGörünürlük düzeyine göre filtreleme
status'draft' | 'published' | 'archived'HayırYayın durumuna göre filtreleme
lenser_idUUIDHayırBelirli bir lenser'ın lenslerine göre filtreleme
include_archivedbooleanHayırfalseArşivlenmiş lensleri sonuçlara dahil eder

Döndürür: { items, total, limit, offset, has_more }

Örnek — en son eklenen 10 genel (public) lensi listeleme:

json
{ "limit": 10, "visibility": "public" }

search_lenses

Lens başlıkları, açıklamaları ve şablon gövdeleri arasında tam metin araması gerçekleştirir.

ParametreTürGerekli mi?VarsayılanAçıklama
querydize (≥ 1 karakter)EvetArama terimleri
visibility'public' | 'community' | 'private'HayırGörünürlüğe göre filtreleme
limitsayı (1–100)Hayır20Sayfa başına sonuç sayısı
offsetsayıHayır0Sayfalama kaydırma değeri

Döndürür: Arama sorgusuyla eşleşen sayfalanmış lens sonuçları.

Örnek — kod inceleme (code review) lenslerini bulma:

json
{ "query": "code review", "visibility": "public", "limit": 5 }

get_lens

Ana sürüm şablon gövdesi ve tam parametre listesi dahil olmak üzere tek bir lensi getirir.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetGetirilecek lensin benzersiz kimliği

Döndürür: versions.template_body ve version_parameters[{ id, label, optional }] alanlarını içeren eksiksiz lens nesnesi.


create_lens

Bir şablon gövdesi ve isteğe bağlı parametre bildirimleri ile yeni bir lens oluşturur.

ParametreTürGerekli mi?VarsayılanAçıklama
titledize (1–200 karakter)EvetGörünen ad
template_bodydize (≥ 50 karakter)Evetİstem şablonu. Gerekli parametreler için [[Name]], isteğe bağlı parametreler için [[Name!]] kullanın.
visibility'public' | 'community' | 'private'Hayır'public'Başlangıç görünürlüğü
paramsArray<{ label: string, optional: boolean }>HayırAçık parametre bildirimleri (atlanırsa şablondan otomatik olarak çıkarılır)

Döndürür: Kendi id değerini içeren yeni lens nesnesi.

Örnek şablon:

You are a senior [[Language]] engineer. Review the following code for bugs, security issues, and performance problems.

Code:
[[Code]]

Focus area: [[FocusArea!]]

Bu, üç parametre oluşturur: Language (gerekli), Code (gerekli), FocusArea (isteğe bağlı).


update_lens

Mevcut bir lensin yeni bir değişmez (immutable) sürümünü oluşturur. Orijinal sürüm asla değiştirilmez.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetGüncellenecek lensin kimliği
template_bodydize (≥ 50 karakter)HayırYeni şablon gövdesi (mevcut olanı korumak için boş bırakın)
visibility'public' | 'community' | 'private'HayırYeni görünürlük düzeyi
paramsArray<{ label: string, optional: boolean }>HayırGüncellenmiş parametre listesi

Döndürür: Yeni sürüm nesnesi. Ana lensteki head_version_id değeri güncellenir.


fork_lens

Halka açık veya topluluk lensini, kimliği doğrulanmış kullanıcının sahip olduğu yeni bir lense çatallar (fork). Çatal, kaynağını parent_lens_id aracılığıyla kaydeder.

ParametreTürGerekli mi?VarsayılanAçıklama
source_lens_idUUIDEvetÇatallanacak lensin kimliği
titledize (1–200 karakter)Hayır"Fork of {id}"Yeni lens için başlık
template_bodydize (≥ 50 karakter)HayırKaynaktan kopyalanırÖzel şablon gövdesi (kaynağı geçersiz kılar)
visibility'public' | 'community' | 'private'Hayır'public'Çatalın başlangıç görünürlüğü

Döndürür: forked_from: source_lens_id alanını içeren yeni lens nesnesi.


run_lens

[[Parameter]] belirteçlerini sağlanan değerlerle değiştirerek bir lens şablonunu çözer. Yürütülmeye hazır bir istem (prompt) dizesi döndürür. Bu araç herhangi bir LLM çağırmaz — döndürülen istemi çağıran AI modeli yürütür.

ParametreTürGerekli mi?VarsayılanAçıklama
lens_idUUIDEvetÇalıştırılacak lensin kimliği
version_idUUIDHayırAna sürüm (head)Sabitlenecek belirli bir sürüm
param_valuesRecord<string, string>Hayır{}Parametre etiketlerinin değerlerle eşleşmesi (büyük/küçük harfe duyarsız anahtarlar)
workflow_idUUIDHayırSağlanırsa, izleme için bir workflow_runs kaydı oluşturur

Döndürür:

json
{
  "resolved_prompt": "You are a senior TypeScript engineer. Review the following code...",
  "lens_title": "Code Reviewer",
  "run_id": "uuid-or-null",
  "lens_id": "...",
  "version_id": "...",
  "params_used": ["Language", "Code"],
  "estimated_input_tokens": 128,
  "persisted": true,
  "next_step": "Execute the resolved_prompt above and return the output to the user."
}

Belirteç (Token) çözümleme kuralları:

  • [[Name]]param_values[name] ile değiştirilir (büyük/küçük harfe duyarsız)
  • [[Name!]]param_values[name] ile değiştirilir veya sağlanmamışsa boş bir dize eklenir
  • Değeri olmayan gerekli bir belirteç → Eksik etiketleri listeleyen MISSING_PARAMS hatasına neden olur

Hata kodları: NOT_FOUND · MISSING_PARAMS


find_and_run_lens

Anahtar kelimeye göre bir lens arar, şablonunu çözer ve yürütülmeye hazır bir istem döndürür — hepsi tek bir çağrıda. Konuşmalı yapay zeka asistanları için en kullanışlı kısayoldur.

ParametreTürGerekli mi?VarsayılanAçıklama
querydize (≥ 1 karakter)EvetLensi bulmak için arama terimleri
param_valuesRecord<string, string>Hayır{}Lens bulunursa enjekte edilecek parametre değerleri
visibility'public' | 'community' | 'private'HayırArama sonuçlarını görünürlüğe göre filtreleme

Döndürür: Üç yanıt yapısından biri:

json
{ "status": "ready", "resolved_prompt": "...", "lens_title": "...", "lens_id": "..." }
json
{ "status": "needs_params", "missing": ["Topic", "Language"], "all_parameters": [...], "lens_title": "...", "lens_id": "..." }
json
{ "status": "no_match", "query": "code review" }

find_and_run_lens ile run_lens araçlarının karşılaştırılması:

find_and_run_lensrun_lens
Lens kimliği biliniyor mu?Hayır — konuya göre aranıyorEvet — kesin UUID mevcut
Minimum araç çağrısı?1Önce search_lenses yapılmasını gerektirir

Örnek — logo taslak (logo brief) lensini tek çağrıyla çalıştırma:

json
{ "query": "logo brief", "param_values": { "Brand": "Acme Corp", "Industry": "Technology" } }

validate_lens_params

Bir grup parametre değerinin, çalıştırmayı denemeden önce bir lensin şemasını karşılayıp karşılamadığını kontrol eder.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetDoğrulanacak lensin kimliği
version_idUUIDHayırBelirli bir sürüm (varsayılan olarak ana sürüm)
valuesRecord<string, string>EvetKontrol edilecek parametre değerleri

Döndürür:

json
{
  "valid": false,
  "missing": ["Language"],
  "unknown": ["Lang"],
  "total_params": 3,
  "provided": 2
}

extract_lens_params

Bir lens şablonundan tüm parametre şemasını çıkarır.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetİncelenecek lensin kimliği
version_idUUIDHayırBelirli bir sürüm (varsayılan olarak ana sürüm)

Döndürür:

json
{
  "lens_id": "...",
  "version_id": "...",
  "params": [
    { "id": "uuid", "label": "Language", "optional": false },
    { "id": "uuid", "label": "FocusArea", "optional": true }
  ],
  "raw_tokens_in_template": ["[[Language]]", "[[Code]]", "[[FocusArea!]]"]
}

archive_lens

Bir lensi arşivler. Arşivlenmiş lensler listelerden çıkarılır ancak silinmez — geri yüklenebilirler.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetArşivlenecek lensin kimliği

Döndürür: { lens_id, status: 'archived' }

Hata kodları: NOT_FOUND · FORBIDDEN


delete_lens

Bir lensi geçici olarak siler (soft-delete). Yanlışlıkla silinmesini önlemek için açık onay gerektirir.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetSilinecek lensin kimliği
confirmtrue (literal boolean)EvetTam olarak true olmalıdır

Döndürür: { deleted: true, ... }

Lens kaydı silindi olarak işaretlenir ve tüm sorgulardan hariç tutulur. Veritabanından fiziksel olarak silinmez.

Hata kodları: NOT_FOUND · FORBIDDEN


set_lens_visibility

Bir lensin görünürlük düzeyini değiştirir.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetGüncellenecek lensin kimliği
visibility'public' | 'community' | 'private'EvetYeni görünürlük düzeyi

Döndürür: { lens_id, visibility }

Görünürlük düzeyleri:

GörünürlükKimler erişebilir?
publicKimliği doğrulanmamış kullanıcılar dahil herkes
communityYalnızca kimliği doğrulanmış LenserFight üyeleri
privateYalnızca sahibi olan lenser

list_lens_versions

En yeniden eskiye doğru bir lensin tüm sürümlerini listeler.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetSürümleri listelenecek lensin kimliği

Döndürür: [{ id, semver, created_at, changelog }]


get_lens_version

Şablon gövdesi ve parametre listesi dahil olmak üzere belirli bir lens sürümünün tam ayrıntılarını getirir.

ParametreTürGerekli mi?Açıklama
lens_idUUIDEvetÜst (parent) lensin kimliği
version_idUUIDHayırSürüm UUID'si (version_id veya semver parametrelerinden biri gereklidir)
semverdizeHayırSemantik sürüm dizesi, örn. "1.2.0"

Döndürür:

json
{
  "id": "...",
  "semver": "1.2.0",
  "template_body": "...",
  "changelog": "Added FocusArea parameter.",
  "created_at": "2026-05-01T00:00:00Z",
  "version_parameters": [
    { "id": "...", "label": "Language", "optional": false }
  ]
}

Hata kodları: BAD_INPUT (version_id ve semver değerlerinin ikisi de sağlanmadıysa) · NOT_FOUND


Savaş (Battle) araçları

list_battles

İsteğe bağlı filtreler ve sayfalama ile savaşları listeler.

ParametreTürGerekli mi?VarsayılanAçıklama
limitsayı (1–100)Hayır20Sayfa başına sonuç sayısı
offsetsayıHayır0Sayfalama kaydırma değeri
status'draft' | 'open' | 'executing' | 'voting' | 'scoring' | 'closed' | 'published' | 'archived'HayırYaşam döngüsü durumuna göre filtreleme
battle_type'ai_vs_ai' | 'human_vs_human_ai_votes' | 'human_vs_human_open_votes' | 'human_vs_ai' | 'workflow_battle' | 'lenser_battle'HayırSavaş biçimine göre filtreleme
creator_lenser_idUUIDHayırBelirli bir oluşturucuya göre filtreleme

Döndürür: Savaş özetlerinin sayfalanmış listesi.


get_battle

Yarışmacılar, oy toplamları ve tüm gönderiler dahil olmak üzere tam savaş ayrıntılarını getirir.

ParametreTürGerekli mi?Açıklama
battle_idUUIDEvetGetirilecek savaşın kimliği

Döndürür: contenders, vote_aggregates, submissions ve ilgili lenser/model haritalarını içeren savaş nesnesi.


create_battle

Yeni bir savaş oluşturur. task_prompt parametresi, tüm yarışmacıların yanıtlaması gereken görevdir.

ParametreTürGerekli mi?VarsayılanAçıklama
titledize (1–200 karakter)EvetGörünen ad
task_promptdize (1–32.000 karakter)EvetTüm yarışmacıların yanıtlayacağı görev / soru
battle_typebkz. list_battlesHayır'ai_vs_ai'Savaşın formatı
judging_mode'community_vote' | 'ai_judge' | 'rubric_score' | 'auto_score'Hayır'ai_judge'Yanıtların nasıl değerlendirileceği
max_contenderssayı (2–26)Hayır2Maksimum yarışmacı yuvası
ai_judge_model_keydizeHayırYapay zeka hakemi için belirli bir model anahtarı

Döndürür: { id: battle_id, title }

Savaş türleri:

TürAçıklama
ai_vs_aiİki veya daha fazla yapay zeka modeli yarışır
human_vs_human_ai_votesİnsanlar yarışır, yapay zeka yanıtları değerlendirir
human_vs_human_open_votesİnsanlar yarışır, topluluk oy verir
human_vs_aiBir insan bir yapay zekaya karşı yarışır
workflow_battleİş akışları birbiriyle yarışır
lenser_battleLenser'lar doğrudan yarışır

add_battle_contender

Bir yapay zeka modelini, lenser'ı veya iş akışını yarışmacı olarak ekler. Yuvalar otomatik olarak A, B, C … Z olarak atanır.

ParametreTürGerekli mi?Açıklama
battle_idUUIDEvetYarışmacı eklenecek savaşın kimliği
display_namedize (1–100 karakter)Evetİnsan tarafından okunabilir etiket
contender_type'human' | 'ai_model' | 'ai_agent'EvetYarışmacı türü
contender_ref_idUUIDEvethuman için profil UUID'si; ai_model / ai_agent için yapay zeka lenser UUID'si
slotdize (tek A–Z karakteri)HayırAtlanırlarsa otomatik atanır

Döndürür: { contender_id, slot_label, battle_id }

Hata kodları: SLOTS_FULL · FORBIDDEN


submit_battle_run

Bir yarışmacının savaşın task_prompt alanına yanıtını gönderir.

ParametreTürGerekli mi?Açıklama
battle_idUUIDEvetSavaşın kimliği
contender_idUUIDEvetGönderim yapan yarışmacının kimliği
content_textdize (1–100.000 karakter)EvetYarışmacının yanıt içeriği

Döndürür: { submitted: true, ... }

Savaş executing durumundayken tüm yarışmacıların gönderim yapması, değerlendirme (scoring) sürecini otomatik olarak tetikler.


get_battle_score

Bir savaş için oy toplamlarını ve yapay zeka hakem kararlarını okur.

ParametreTürGerekli mi?Açıklama
battle_idUUIDEvetPuanlanacak savaşın kimliği

Döndürür:

json
{
  "battle_id": "...",
  "vote_aggregates": [
    { "contender_id": "...", "vote_count": 47, "vote_score": 4.2 }
  ],
  "ai_judge_verdicts": [
    {
      "contender_id": "...",
      "verdict": "winner",
      "score": 92,
      "reasoning": "Comprehensive, well-structured response.",
      "created_at": "2026-05-28T12:00:00Z"
    }
  ]
}

set_battle_status

Bir savaşı yeni bir yaşam döngüsü durumuna geçirir. closed veya archived durumuna geçişler confirm: true gerektirir.

ParametreTürGerekli mi?Açıklama
battle_idUUIDEvetGüncellenecek savaşın kimliği
status'open' | 'executing' | 'voting' | 'scoring' | 'closed' | 'published' | 'archived'EvetHedef durum
confirmtrue (literal)KoşulluYalnızca 'closed' veya 'archived' durumuna geçerken gereklidir

Döndürür: { battle_id, status }

Geçerli geçişler:

draft → open → executing → voting → scoring → closed → published

                                                (herhangi biri) → archived

Hata kodları: CONFIRMATION_REQUIRED · NOT_FOUND · FORBIDDEN · INVALID_TRANSITION


get_battle_history

Bir lenser'ın oluşturduğu veya yarışmacı olarak katıldığı savaşları listeler.

ParametreTürGerekli mi?VarsayılanAçıklama
lenser_idUUIDHayırLENSERFIGHT_LENSER_ID env varGeçmişi alınacak lenser'ın kimliği
limitsayı (1–100)Hayır20Sayfa başına sonuç sayısı
offsetsayıHayır0Sayfalama kaydırma değeri
status'closed' | 'published' | 'archived'HayırNihai duruma göre filtreleme

Döndürür: Geçmiş savaşların sayfalanmış listesi.


İş Akışı (Workflow) araçları

list_workflows

İsteğe bağlı filtreler ve sayfalama ile iş akışlarını listeler.

ParametreTürGerekli mi?VarsayılanAçıklama
limitsayı (1–100)Hayır20Sayfa başına sonuç sayısı
offsetsayıHayır0Sayfalama kaydırma değeri
visibility'public' | 'private' | 'unlisted'HayırGörünürlüğe göre filtreleme
lenser_idUUIDHayırBelirli bir sahibe göre filtreleme

Döndürür: İş akışı özetlerinin sayfalanmış listesi.


get_workflow

Ana sürüm ve zamanlama meta verileri dahil olmak üzere bir iş akışının tüm ayrıntılarını getirir.

ParametreTürGerekli mi?Açıklama
workflow_idUUIDEvetGetirilecek iş akışının kimliği

Döndürür: Ana sürüm ayrıntılarını ve zamanlama yapılandırmasını içeren iş akışı nesnesi.


create_workflow

Yeniden kullanılabilir çok adımlı bir yürütme kapsayıcısı olarak yeni bir iş akışı oluşturur.

ParametreTürGerekli mi?VarsayılanAçıklama
titledize (1–200 karakter)EvetGörünen ad
descriptiondize (maks 2.000 karakter)Hayırİnsan tarafından okunabilir açıklama
visibility'public' | 'private' | 'unlisted'Hayır'private'Başlangıç görünürlüğü
lenser_idUUIDHayırLENSERFIGHT_LENSER_ID env varİş akışının sahibi

Döndürür: Yeni iş akışı nesnesi.

Hata kodları: MISSING_LENSER


run_workflow

Bir iş akışı yürütmesini başlatır. Hemen bir run_id döndürür; tamamlanma durumunu izlemek için get_workflow_run_status kullanılmalıdır.

ParametreTürGerekli mi?VarsayılanAçıklama
workflow_idUUIDEvetYürütülecek iş akışının kimliği
inputsRecord<string, unknown>Hayır{}İlk düğüm (node) için girdi değerleri
global_model_iddizeHayırTüm yapay zeka düğümleri için modeli geçersiz kılar (override)
idempotency_keydize (maks 128 karakter)HayırBu anahtara sahip bir çalıştırma zaten varsa mevcut çalıştırmayı döndürür

Döndürür:

json
{
  "id": "run-uuid",
  "status": "pending",
  "created_at": "2026-05-28T12:00:00Z",
  "workflow_id": "..."
}

get_workflow_run_status

Çalışan veya tamamlanmış bir iş akışı çalıştırmasının mevcut durumunu ve kredi maliyetini sorgular.

ParametreTürGerekli mi?Açıklama
run_idUUIDEvetDurumu sorgulanacak çalıştırmanın kimliği

Döndürür:

json
{
  "id": "run-uuid",
  "status": "running",
  "started_at": "2026-05-28T12:00:00Z",
  "completed_at": null,
  "spent_credits": 12,
  "budget_credits": 100,
  "cost_metadata": { "model_calls": 3, "tokens_used": 1840 }
}

Durum değerleri:

DurumAnlamı
pendingSıraya alındı, henüz başlatılmadı
runningAktif olarak yürütülüyor
completedTüm düğümler başarıyla tamamlandı
failedBir veya daha fazla düğüm başarısız oldu — get_workflow_run_logs kullanın
cancelledManuel olarak iptal edildi

get_workflow_run_logs

Başlangıç saatine göre sıralanmış olarak, bir çalıştırma için düğüm başına yürütme günlüklerini okur.

ParametreTürGerekli mi?Açıklama
run_idUUIDEvetİncelenecek çalıştırmanın kimliği

Döndürür:

json
{
  "run": { "id": "...", "status": "completed", "cost_metadata": {...} },
  "node_results": [
    {
      "node_id": "...",
      "status": "completed",
      "output": { "text": "..." },
      "tokens_used": 620,
      "cost_credits": 4,
      "started_at": "...",
      "completed_at": "..."
    }
  ]
}

retry_workflow

Başarısız veya iptal edilmiş bir çalıştırmayı aynı girdilerle yeniden dener. parent_run_id aracılığıyla orijinal çalıştırmaya bağlı yeni bir çalıştırma oluşturur.

ParametreTürGerekli mi?Açıklama
run_idUUIDEvetYeniden denenecek başarısız veya iptal edilmiş çalıştırmanın kimliği

Döndürür:

json
{
  "new_run": { "id": "new-run-uuid", "status": "pending", "created_at": "..." },
  "original_run_id": "..."
}

Hata kodları: NOT_FOUND


summarize_workflow

Çalıştırma metriklerini toplar: genel durum, gerçek çalışma süresi, kredi maliyeti ve düğüm başına sonuç sayıları.

ParametreTürGerekli mi?Açıklama
run_idUUIDEvetÖzetlenecek çalıştırmanın kimliği

Döndürür:

json
{
  "run_id": "...",
  "workflow_id": "...",
  "status": "completed",
  "duration_ms": 8420,
  "spent_credits": 12,
  "budget_credits": 100,
  "cost_metadata": { "model_calls": 3, "tokens_used": 1840 },
  "nodes": { "total": 5, "completed": 5, "failed": 0, "skipped": 0 }
}

Hata kodları: NOT_FOUND


Sık karşılaşılan hata kodları

KodAnlamı
NOT_FOUNDKaynak mevcut değil veya kimliği doğrulanmış kullanıcı tarafından erişilebilir değil
FORBIDDENKullanıcı kaynağın sahibi değil veya kaynağa yazma yetkisi yok
MISSING_PARAMSBir run_lens çağrısında gerekli parametre değerleri eksik; yanıt missing listesini içerir
MISSING_LENSERHiçbir lenser_id sağlanmadı ve LENSERFIGHT_LENSER_ID ortam değişkeni ayarlanmadı
SLOTS_FULLBir savaştaki 26 yarışmacı yuvasının tamamı atanmış durumda
CONFIRMATION_REQUIREDYıkıcı veya kalıcı bir durum geçişi confirm: true gerektirir
INVALID_TRANSITIONTalep edilen durum geçişine savaş yaşam döngüsünde izin verilmiyor
BAD_INPUTGerekli girdi kombinasyonu karşılanmadı (örneğin, ne version_id ne de semver sağlandı)