ποΈ Events
Open WebUI's plugin architecture is not just about processing input and producing outputβit's about real-time, interactive communication with the UI and users. To make your Tools, Functions, and Pipes more dynamic, Open WebUI provides a built-in event system via the event_emitter and event_call helpers.
ποΈ Valves
Valves
ποΈ Rich UI Embedding
Tools and Actions both support rich UI element embedding, allowing them to return HTML content and interactive iframes that display directly within chat conversations. This feature enables sophisticated visual interfaces, interactive widgets, charts, dashboards, and other rich web content β regardless of whether the function was triggered by the model (Tool) or by the user (Action).
ποΈ Under the Hood
Tools, Functions, Pipes, Filters, and Actions execute arbitrary Python code on your server. Function creation is restricted to administrators only, and Workspace Tool creation is gated by the workspace.tools permission β granting that permission is equivalent to giving the user shell access to the server. Only install from trusted sources, review code before importing, and restrict creation to trusted administrators. A malicious plugin could access your file system, exfiltrate data, or compromise your entire system. For full details, see the Plugin Security Warning.
ποΈ Reserved Arguments
This tutorial is a community contribution and is not supported by the Open WebUI team. It serves only as a demonstration on how to customize Open WebUI for your specific use case. Want to contribute? Check out the contributing tutorial.