> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server. # Module registry > Global and scope-local middleware registration helpers. Middleware registry helpers for global and scope-local guardrails, intercepts, and subscribers. Generated from `cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker`. Global and scope-local middleware registration helpers. Middleware registry helpers for global and scope-local guardrails, intercepts, and subscribers. ## Structs * [RuntimeRegistrationIdentity](/reference/api/rust-library-reference/nemo-relay/api/registry/struct-runtimeregistrationidentity): Structured identity for a global gateable runtime registration. * [RuntimeRegistrationOwner](/reference/api/rust-library-reference/nemo-relay/api/registry/struct-runtimeregistrationowner): Discovery metadata describing the owner of a runtime registration. ## Enums * [RuntimeRegistrationKind](/reference/api/rust-library-reference/nemo-relay/api/registry/enum-runtimeregistrationkind): A global runtime registration surface that can be selected by a conditional middleware guardrail. * [RuntimeRegistrationOwnerKind](/reference/api/rust-library-reference/nemo-relay/api/registry/enum-runtimeregistrationownerkind): The owner category reported for a global runtime registration. ## Functions * [deregister_conditional_middleware_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-conditional-middleware-guardrail): Deregister a global conditional middleware guardrail. * [deregister_event_metadata_injector](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-event-metadata-injector): Deregister a global Event metadata injector. * [deregister_llm_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-conditional-execution-guardrail): Deregister a global LLM conditional-execution guardrail. * [deregister_llm_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-execution-intercept): Deregister a global LLM execution intercept. * [deregister_llm_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-request-intercept): Deregister a global LLM request intercept. * [deregister_llm_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-sanitize-request-guardrail): Deregister a global LLM sanitize-request guardrail. * [deregister_llm_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-sanitize-response-guardrail): Deregister a global LLM sanitize-response guardrail. * [deregister_llm_stream_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-stream-execution-intercept): Deregister a global streaming LLM execution intercept. * [deregister_mark_sanitize_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-mark-sanitize-guardrail): Deregister a global mark event sanitizer. * [deregister_scope_sanitize_end_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-scope-sanitize-end-guardrail): Deregister a global scope-end event sanitizer. * [deregister_scope_sanitize_start_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-scope-sanitize-start-guardrail): Deregister a global scope-start event sanitizer. * [deregister_tool_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-conditional-execution-guardrail): Deregister a global tool conditional-execution guardrail. * [deregister_tool_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-execution-intercept): Deregister a global tool execution intercept. * [deregister_tool_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-request-intercept): Deregister a global tool request intercept. * [deregister_tool_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-sanitize-request-guardrail): Deregister a global tool sanitize-request guardrail. * [deregister_tool_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-sanitize-response-guardrail): Deregister a global tool sanitize-response guardrail. * [list_runtime_registrations](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-list-runtime-registrations): List a deterministic snapshot of global gateable runtime registrations. * [register_conditional_middleware_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-conditional-middleware-guardrail): Register a global conditional middleware guardrail. * [register_event_metadata_injector](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-event-metadata-injector): Register a global Event metadata injector. * [register_llm_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-conditional-execution-guardrail): Register a global LLM conditional-execution guardrail. The guardrail can block LLM execution before intercepts or the provider callback run. * [register_llm_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-execution-intercept): Register a global LLM execution intercept. Execution intercepts can wrap or replace the non-streaming provider callback. * [register_llm_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-request-intercept): Register a global LLM request intercept. Request intercepts can rewrite or annotate the outgoing LLM request and schedule lifecycle marks for the resulting LLM scope. * [register_llm_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-sanitize-request-guardrail): Register a global LLM sanitize-request guardrail. The guardrail rewrites only the request payload recorded on emitted start events. * [register_llm_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-sanitize-response-guardrail): Register a global LLM sanitize-response guardrail. The guardrail rewrites only the response payload recorded on emitted end events. * [register_llm_stream_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-stream-execution-intercept): Register a global streaming LLM execution intercept. Execution intercepts can wrap or replace the streaming provider callback. * [register_mark_sanitize_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-mark-sanitize-guardrail): Register a global mark event sanitizer. * [register_scope_sanitize_end_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-scope-sanitize-end-guardrail): Register a global scope-end event sanitizer. * [register_scope_sanitize_start_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-scope-sanitize-start-guardrail): Register a global scope-start event sanitizer. * [register_tool_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-conditional-execution-guardrail): Register a global tool conditional-execution guardrail. The guardrail can block tool execution before intercepts or the tool callback run. * [register_tool_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-execution-intercept): Register a global tool execution intercept that receives the full \[`ToolExecutionContext`], including the managed `tool_call_id`. Execution intercepts can wrap or replace the tool callback. Each callback returns a canonical tool execution outcome, while its continuation resolves to the downstream [`ToolExecutionResult`](/reference/api/rust-library-reference/nemo-relay/api/tool/struct-toolexecutionresult). * [register_tool_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-request-intercept): Register a global tool request intercept. Request intercepts can rewrite tool arguments before execution. * [register_tool_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-sanitize-request-guardrail): Register a global tool sanitize-request guardrail. The guardrail rewrites only the tool input recorded on emitted start events. * [register_tool_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-sanitize-response-guardrail): Register a global tool sanitize-response guardrail. The guardrail rewrites only the tool output recorded on emitted end events. * [scope_deregister_event_metadata_injector](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-event-metadata-injector): Deregister an Event metadata injector owned by an active scope. * [scope_deregister_llm_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-conditional-execution-guardrail): Deregister a scope-local LLM conditional-execution guardrail. * [scope_deregister_llm_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-execution-intercept): Deregister a scope-local LLM execution intercept. * [scope_deregister_llm_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-request-intercept): Deregister a scope-local LLM request intercept. * [scope_deregister_llm_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-sanitize-request-guardrail): Deregister a scope-local LLM sanitize-request guardrail. * [scope_deregister_llm_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-sanitize-response-guardrail): Deregister a scope-local LLM sanitize-response guardrail. * [scope_deregister_llm_stream_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-stream-execution-intercept): Deregister a scope-local streaming LLM execution intercept. * [scope_deregister_mark_sanitize_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-mark-sanitize-guardrail): Deregister a scope-local mark event sanitizer. * [scope_deregister_scope_sanitize_end_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-scope-sanitize-end-guardrail): Deregister a scope-local scope-end event sanitizer. * [scope_deregister_scope_sanitize_start_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-scope-sanitize-start-guardrail): Deregister a scope-local scope-start event sanitizer. * [scope_deregister_tool_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-conditional-execution-guardrail): Deregister a scope-local tool conditional-execution guardrail. * [scope_deregister_tool_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-execution-intercept): Deregister a scope-local tool execution intercept. * [scope_deregister_tool_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-request-intercept): Deregister a scope-local tool request intercept. * [scope_deregister_tool_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-sanitize-request-guardrail): Deregister a scope-local tool sanitize-request guardrail. * [scope_deregister_tool_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-sanitize-response-guardrail): Deregister a scope-local tool sanitize-response guardrail. * [scope_register_event_metadata_injector](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-event-metadata-injector): Register an Event metadata injector owned by an active scope. * [scope_register_llm_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-conditional-execution-guardrail): Register a scope-local LLM conditional-execution guardrail. The guardrail can block LLM execution inside the owning scope. * [scope_register_llm_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-execution-intercept): Register a scope-local LLM execution intercept. Execution intercepts can wrap or replace the non-streaming provider callback inside the owning scope. * [scope_register_llm_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-request-intercept): Register a scope-local LLM request intercept. Request intercepts can rewrite or annotate LLM requests inside the owning scope and schedule lifecycle marks for the resulting LLM scope. * [scope_register_llm_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-sanitize-request-guardrail): Register a scope-local LLM sanitize-request guardrail. The guardrail rewrites only request payloads emitted under the owning scope. * [scope_register_llm_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-sanitize-response-guardrail): Register a scope-local LLM sanitize-response guardrail. The guardrail rewrites only response payloads emitted under the owning scope. * [scope_register_llm_stream_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-stream-execution-intercept): Register a scope-local streaming LLM execution intercept. Execution intercepts can wrap or replace the streaming provider callback inside the owning scope. * [scope_register_mark_sanitize_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-mark-sanitize-guardrail): Register a scope-local mark event sanitizer. * [scope_register_scope_sanitize_end_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-scope-sanitize-end-guardrail): Register a scope-local scope-end event sanitizer. * [scope_register_scope_sanitize_start_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-scope-sanitize-start-guardrail): Register a scope-local scope-start event sanitizer. * [scope_register_tool_conditional_execution_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-conditional-execution-guardrail): Register a scope-local tool conditional-execution guardrail. The guardrail can block tool execution inside the owning scope. * [scope_register_tool_execution_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-execution-intercept): Register a scope-local tool execution intercept that receives the full \[`ToolExecutionContext`], including the managed `tool_call_id`. Execution intercepts can wrap or replace the tool callback inside the owning scope. Each callback returns a canonical tool execution outcome, while its continuation resolves to the downstream [`ToolExecutionResult`](/reference/api/rust-library-reference/nemo-relay/api/tool/struct-toolexecutionresult). * [scope_register_tool_request_intercept](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-request-intercept): Register a scope-local tool request intercept. Request intercepts can rewrite tool arguments inside the owning scope. * [scope_register_tool_sanitize_request_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-sanitize-request-guardrail): Register a scope-local tool sanitize-request guardrail. The guardrail rewrites only tool input emitted under the owning scope. * [scope_register_tool_sanitize_response_guardrail](/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-sanitize-response-guardrail): Register a scope-local tool sanitize-response guardrail. The guardrail rewrites only tool output emitted under the owning scope. > Global and scope-local middleware registration helpers. Middleware registry helpers for global and scope-local guardrails, intercepts, and subscribers. ## Docs - [Struct Runtime Registration Identity](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/struct-runtimeregistrationidentity.md): Structured identity for a global gateable runtime registration. - [Struct Runtime Registration Owner](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/struct-runtimeregistrationowner.md): Discovery metadata describing the owner of a runtime registration. - [Enum Runtime Registration Kind](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/enum-runtimeregistrationkind.md): A global runtime registration surface that can be selected by a conditional middleware guardrail. - [Enum Runtime Registration Owner Kind](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/enum-runtimeregistrationownerkind.md): The owner category reported for a global runtime registration. - [Function deregister_conditional_middleware_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-conditional-middleware-guardrail.md): Deregister a global conditional middleware guardrail. - [Function deregister_event_metadata_injector](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-event-metadata-injector.md): Deregister a global Event metadata injector. - [Function deregister_llm_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-conditional-execution-guardrail.md): Deregister a global LLM conditional-execution guardrail. - [Function deregister_llm_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-execution-intercept.md): Deregister a global LLM execution intercept. - [Function deregister_llm_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-request-intercept.md): Deregister a global LLM request intercept. - [Function deregister_llm_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-sanitize-request-guardrail.md): Deregister a global LLM sanitize-request guardrail. - [Function deregister_llm_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-sanitize-response-guardrail.md): Deregister a global LLM sanitize-response guardrail. - [Function deregister_llm_stream_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-llm-stream-execution-intercept.md): Deregister a global streaming LLM execution intercept. - [Function deregister_mark_sanitize_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-mark-sanitize-guardrail.md): Deregister a global mark event sanitizer. - [Function deregister_scope_sanitize_end_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-scope-sanitize-end-guardrail.md): Deregister a global scope-end event sanitizer. - [Function deregister_scope_sanitize_start_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-scope-sanitize-start-guardrail.md): Deregister a global scope-start event sanitizer. - [Function deregister_tool_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-conditional-execution-guardrail.md): Deregister a global tool conditional-execution guardrail. - [Function deregister_tool_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-execution-intercept.md): Deregister a global tool execution intercept. - [Function deregister_tool_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-request-intercept.md): Deregister a global tool request intercept. - [Function deregister_tool_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-sanitize-request-guardrail.md): Deregister a global tool sanitize-request guardrail. - [Function deregister_tool_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-deregister-tool-sanitize-response-guardrail.md): Deregister a global tool sanitize-response guardrail. - [Function list_runtime_registrations](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-list-runtime-registrations.md): List a deterministic snapshot of global gateable runtime registrations. - [Function register_conditional_middleware_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-conditional-middleware-guardrail.md): Register a global conditional middleware guardrail. - [Function register_event_metadata_injector](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-event-metadata-injector.md): Register a global Event metadata injector. - [Function register_llm_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-conditional-execution-guardrail.md): Register a global LLM conditional-execution guardrail. The guardrail can block LLM execution before intercepts or the provider callback run. - [Function register_llm_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-execution-intercept.md): Register a global LLM execution intercept. Execution intercepts can wrap or replace the non-streaming provider callback. - [Function register_llm_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-request-intercept.md): Register a global LLM request intercept. Request intercepts can rewrite or annotate the outgoing LLM request and schedule lifecycle marks for the resulting LLM scope. - [Function register_llm_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-sanitize-request-guardrail.md): Register a global LLM sanitize-request guardrail. The guardrail rewrites only the request payload recorded on emitted start events. - [Function register_llm_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-sanitize-response-guardrail.md): Register a global LLM sanitize-response guardrail. The guardrail rewrites only the response payload recorded on emitted end events. - [Function register_llm_stream_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-llm-stream-execution-intercept.md): Register a global streaming LLM execution intercept. Execution intercepts can wrap or replace the streaming provider callback. - [Function register_mark_sanitize_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-mark-sanitize-guardrail.md): Register a global mark event sanitizer. - [Function register_scope_sanitize_end_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-scope-sanitize-end-guardrail.md): Register a global scope-end event sanitizer. - [Function register_scope_sanitize_start_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-scope-sanitize-start-guardrail.md): Register a global scope-start event sanitizer. - [Function register_tool_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-conditional-execution-guardrail.md): Register a global tool conditional-execution guardrail. The guardrail can block tool execution before intercepts or the tool callback run. - [Function register_tool_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-execution-intercept.md): Register a global tool execution intercept that receives the full [`ToolExecutionContext`], including the managed `tool_call_id`. Execution intercepts can wrap or replace the tool callback. Each callback returns a canonical tool execution outcome, while its continuation resolves to the downstream `ToolExecutionResult`. - [Function register_tool_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-request-intercept.md): Register a global tool request intercept. Request intercepts can rewrite tool arguments before execution. - [Function register_tool_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-sanitize-request-guardrail.md): Register a global tool sanitize-request guardrail. The guardrail rewrites only the tool input recorded on emitted start events. - [Function register_tool_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-register-tool-sanitize-response-guardrail.md): Register a global tool sanitize-response guardrail. The guardrail rewrites only the tool output recorded on emitted end events. - [Function scope_deregister_event_metadata_injector](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-event-metadata-injector.md): Deregister an Event metadata injector owned by an active scope. - [Function scope_deregister_llm_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-conditional-execution-guardrail.md): Deregister a scope-local LLM conditional-execution guardrail. - [Function scope_deregister_llm_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-execution-intercept.md): Deregister a scope-local LLM execution intercept. - [Function scope_deregister_llm_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-request-intercept.md): Deregister a scope-local LLM request intercept. - [Function scope_deregister_llm_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-sanitize-request-guardrail.md): Deregister a scope-local LLM sanitize-request guardrail. - [Function scope_deregister_llm_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-sanitize-response-guardrail.md): Deregister a scope-local LLM sanitize-response guardrail. - [Function scope_deregister_llm_stream_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-llm-stream-execution-intercept.md): Deregister a scope-local streaming LLM execution intercept. - [Function scope_deregister_mark_sanitize_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-mark-sanitize-guardrail.md): Deregister a scope-local mark event sanitizer. - [Function scope_deregister_scope_sanitize_end_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-scope-sanitize-end-guardrail.md): Deregister a scope-local scope-end event sanitizer. - [Function scope_deregister_scope_sanitize_start_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-scope-sanitize-start-guardrail.md): Deregister a scope-local scope-start event sanitizer. - [Function scope_deregister_tool_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-conditional-execution-guardrail.md): Deregister a scope-local tool conditional-execution guardrail. - [Function scope_deregister_tool_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-execution-intercept.md): Deregister a scope-local tool execution intercept. - [Function scope_deregister_tool_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-request-intercept.md): Deregister a scope-local tool request intercept. - [Function scope_deregister_tool_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-sanitize-request-guardrail.md): Deregister a scope-local tool sanitize-request guardrail. - [Function scope_deregister_tool_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-deregister-tool-sanitize-response-guardrail.md): Deregister a scope-local tool sanitize-response guardrail. - [Function scope_register_event_metadata_injector](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-event-metadata-injector.md): Register an Event metadata injector owned by an active scope. - [Function scope_register_llm_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-conditional-execution-guardrail.md): Register a scope-local LLM conditional-execution guardrail. The guardrail can block LLM execution inside the owning scope. - [Function scope_register_llm_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-execution-intercept.md): Register a scope-local LLM execution intercept. Execution intercepts can wrap or replace the non-streaming provider callback inside the owning scope. - [Function scope_register_llm_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-request-intercept.md): Register a scope-local LLM request intercept. Request intercepts can rewrite or annotate LLM requests inside the owning scope and schedule lifecycle marks for the resulting LLM scope. - [Function scope_register_llm_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-sanitize-request-guardrail.md): Register a scope-local LLM sanitize-request guardrail. The guardrail rewrites only request payloads emitted under the owning scope. - [Function scope_register_llm_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-sanitize-response-guardrail.md): Register a scope-local LLM sanitize-response guardrail. The guardrail rewrites only response payloads emitted under the owning scope. - [Function scope_register_llm_stream_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-llm-stream-execution-intercept.md): Register a scope-local streaming LLM execution intercept. Execution intercepts can wrap or replace the streaming provider callback inside the owning scope. - [Function scope_register_mark_sanitize_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-mark-sanitize-guardrail.md): Register a scope-local mark event sanitizer. - [Function scope_register_scope_sanitize_end_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-scope-sanitize-end-guardrail.md): Register a scope-local scope-end event sanitizer. - [Function scope_register_scope_sanitize_start_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-scope-sanitize-start-guardrail.md): Register a scope-local scope-start event sanitizer. - [Function scope_register_tool_conditional_execution_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-conditional-execution-guardrail.md): Register a scope-local tool conditional-execution guardrail. The guardrail can block tool execution inside the owning scope. - [Function scope_register_tool_execution_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-execution-intercept.md): Register a scope-local tool execution intercept that receives the full [`ToolExecutionContext`], including the managed `tool_call_id`. Execution intercepts can wrap or replace the tool callback inside the owning scope. Each callback returns a canonical tool execution outcome, while its continuation resolves to the downstream `ToolExecutionResult`. - [Function scope_register_tool_request_intercept](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-request-intercept.md): Register a scope-local tool request intercept. Request intercepts can rewrite tool arguments inside the owning scope. - [Function scope_register_tool_sanitize_request_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-sanitize-request-guardrail.md): Register a scope-local tool sanitize-request guardrail. The guardrail rewrites only tool input emitted under the owning scope. - [Function scope_register_tool_sanitize_response_guardrail](https://docs.nvidia.com/nemo/relay/v0.10.4/reference/api/rust-library-reference/nemo-relay/api/registry/fn-scope-register-tool-sanitize-response-guardrail.md): Register a scope-local tool sanitize-response guardrail. The guardrail rewrites only tool output emitted under the owning scope.