Pular para o conteúdo principal

Kit debug

7 ferramentas. Gerado a partir do código-fonte do plugin; não edite manualmente.

As descrições das ferramentas e dos argumentos são exibidas em inglês porque espelham o schema das ferramentas (o mesmo texto que o agente recebe em tools/list).

Guia​

The debug kit is a read-only evidence surface. It reports current runtime state, a bounded stack for the MCP request thread, and entries from an already registered Unreal Message Log listing. It does not open debugger windows, run console commands, load modules, change filters, pause threads, or change project state. Enable it with edit.enable_kits when adaptive exposure is active.

Start here​

  1. Call debug.get_runtime_diagnostics {} to establish whether the editor, PIE, and live worlds are present before interpreting runtime behavior.
  2. Use debug.get_memory_stats {} and debug.get_gc_state {} for cheap process observations.
  3. In an editor world, debug.get_world_timers_summary {} returns public timer-manager tick state; Unreal does not export a portable timer count. debug.count_objects_by_class is bounded and should use a narrow class and limit.
  4. For an existing Unreal Message Log listing, call debug.read_message_log {"listing":"MapCheck","limit":100}. A listing must already be registered and the MessageLog module must already be loaded.
  5. When diagnosing the MCP request path itself, call debug.capture_callstack {"maxCharacters":8192}. Treat empty output as an availability observation, usually related to installed symbols or the active platform.
  6. Follow the ownership map below for the diagnostic surface that owns the next action.

Tools​

ToolUse
debug.get_runtime_diagnosticsSnapshots timing, frame count, editor/PIE state, and live worlds grouped by type.
debug.get_memory_stats / debug.get_gc_stateProcess memory totals and instantaneous GC state.
debug.get_world_timers_summaryRead-only editor-world timer tick state; it does not reveal or alter delegates.
debug.count_objects_by_classBounded loaded-UObject count for a requested class.
debug.read_message_logReads bounded severity/text entries from a registered listing's current filtered view.
debug.capture_callstackCaptures a bounded stack for the current MCP request thread only.

Ownership map​

NeedOwner
Blueprint breakpoints, watched pins, debug object, execution tracebp.add_breakpoint, bp.list_breakpoints, bp.watch_pin, bp.list_watches, bp.get_execution_trace, bp.set_debug_object
Console commands and CVarsconsole.exec, console.get_cvar, console.search, console.list_categories
Log category levels, capture, and log file markerslog.list_categories, log.get_verbosity, log.set_verbosity, log.read_capture, log.read_file_since
PIE lifecycle and editor diagnosticsedit.* play/diagnostic tools
Net drivers and live net modesnetwork.list_net_drivers, network.get_runtime_diagnostics
Render-target and project-renderer inspectionrendering.audit_render_target, rendering.audit_project_renderer

Interpreting results​

get_runtime_diagnostics is a point-in-time snapshot. PIE can transition after the reply, and an idle editor can validly expose no live world context. Use its world inventory as evidence of the process state at the call, not as a request to create or activate a world.

read_message_log does not enumerate listings because Unreal's public Message Log contract does not expose a registered-listing enumeration. The supplied listing is checked before it is read, so the tool cannot create one. Entries follow the listing's current editor filters; they do not execute hyperlinks/tokens or change selection, pages, filters, or UI.

capture_callstack returns only the worker thread serving this request. It cannot capture the game thread, debugger-paused threads, or another process. Its text can omit symbols when the installed engine has no matching debug symbols. Use the editor log and the owning kit's diagnostics when the issue is gameplay, Blueprint, rendering, networking, or console-related.

Validation is pending the deferred UE 4.27 and UE 5.8 build/smoke cycle.

Ferramentas​

Legenda. risco 0 = somente leitura, 1 = operação inofensiva do editor, 2 = altera asset, 3 = apaga/substitui asset, 4 = projeto/config/build, 5 = potencialmente destrutivo (chamadas acima de MaxAutoRisk exigem "_confirm": true). altera = roda numa transação (edit.undo reverte). requer PIE / requer mundo = recusado sem sessão PIE / sem nível aberto. requer plugin = indisponível quando o plugin está desativado. dryRun = aceita o argumento dryRun. smoke = coberto por edit.self_test.

debug.capture_callstack (risco 0, UE 5.3+, smoke)​

Captures a bounded stack for the current MCP request thread; it cannot inspect or pause another thread.

ArgumentoTipoDescrição
maxCharactersintegerMaximum UTF-8 characters to retain, from 1024 through 65536. Padrão 8192.

Retorna: callstack, available, maxCharacters, notes.

debug.count_objects_by_class (risco 0, smoke)​

Counts loaded objects assignable to a class, with a required response limit to bound the scan.

ArgumentoTipoDescrição
classstringobrigatório. Native or Blueprint class path to count among loaded objects.
limitintegerobrigatório. Maximum matching objects counted before the scan stops, from 1 through 100000.
includeDerivedbooleanInclude subclasses of the requested class. Padrão true.

Retorna: class, count, truncated, note.

debug.get_gc_state (risco 0, smoke)​

Reports whether Unreal garbage collection is currently in progress.

Sem argumentos.

Retorna: garbageCollecting, objectCount.

debug.get_memory_stats (risco 0, smoke)​

Returns platform process-memory totals from the exported Core memory stats API.

Sem argumentos.

Retorna: totalPhysical, availablePhysical, usedPhysical, peakUsedPhysical.

debug.get_runtime_diagnostics (risco 0, smoke)​

Reports the current frame, timing, PIE/editor flags, and live world-context inventory.

Sem argumentos.

Retorna: frameCounter, currentTimeSeconds, deltaTimeSeconds, game, playInEditor, editorAvailable, worldCount, worlds, notes.

debug.get_world_timers_summary (risco 0, requer mundo, smoke)​

Summarizes the current editor world's public timer-manager tick state without listing or modifying timers.

Sem argumentos.

Retorna: world, tickedThisFrame, note.

debug.read_message_log (risco 0, smoke)​

Reads bounded entries from an already registered Message Log listing without opening it or executing tokens.

ArgumentoTipoDescrição
listingstringobrigatório. Registered Unreal Message Log listing name, for example MapCheck or CompilerResultsLog.
limitintegerMaximum filtered messages to return, from 1 through 1000. Padrão 100.

Retorna: listing, label, entries, totalFiltered, truncated, notes.