# Plugins English | [δΈ­ζ–‡](./README_CN.md) This directory contains three types of plugins for OpenWebUI: - **Filters**: Process user input before sending to LLM - **Actions**: Trigger custom functionalities from chat - **Pipes**: Enhance LLM responses before displaying to user ## πŸ“¦ Plugin Types Overview ### πŸ”§ Filters (`/filters`) Filters modify user input before it reaches the LLM. They are useful for: - Input validation and normalization - Adding system prompts or context - Compressing long conversations - Preprocessing and formatting [View Filters β†’](./filters/README.md) ### 🎬 Actions (`/actions`) Actions are custom functionalities triggered from chat. They are useful for: - Generating outputs (mind maps, charts, etc.) - Interacting with external APIs - Data transformations - File operations and exports - Complex workflows [View Actions β†’](./actions/README.md) ### πŸ“€ Pipes (`/pipes`) Pipes process LLM responses after generation. They are useful for: - Response formatting - Content enhancement - Translation and transformation - Response filtering - Integration with external services [View Pipes β†’](./pipes/README.md) ## πŸš€ Quick Start ### Installing Plugins 1. **Download** the desired plugin file (`.py`) 2. **Open** OpenWebUI Admin Settings β†’ Plugins 3. **Select** the plugin type (Filters, Actions, or Pipes) 4. **Upload** the file 5. **Refresh** the page 6. **Configure** in chat settings ### Using Plugins - **Filters**: Automatically applied to all inputs when enabled - **Actions**: Selected manually from the actions menu during chat - **Pipes**: Automatically applied to all responses when enabled ## πŸ“š Plugin Documentation Each plugin directory contains: - Plugin code (`.py` files) - English documentation (`README.md`) - Chinese documentation (`README_CN.md`) - Configuration and usage guides ## πŸ› οΈ Plugin Development To create a new plugin: 1. Choose the plugin type (Filter, Action, or Pipe) 2. Navigate to the corresponding directory 3. Create a new folder for your plugin 4. Write the plugin code with clear documentation 5. Create `README.md` and `README_CN.md` 6. Update the main README in that directory ### Plugin Structure Template ```python plugins/ β”œβ”€β”€ filters/ β”‚ β”œβ”€β”€ my_filter/ β”‚ β”‚ β”œβ”€β”€ my_filter.py # Plugin code β”‚ β”‚ β”œβ”€β”€ my_filter_cn.py # Optional: Chinese version β”‚ β”‚ β”œβ”€β”€ README.md # Documentation β”‚ β”‚ └── README_CN.md # Chinese documentation β”‚ └── README.md β”œβ”€β”€ actions/ β”‚ β”œβ”€β”€ my_action/ β”‚ β”‚ β”œβ”€β”€ my_action.py β”‚ β”‚ β”œβ”€β”€ README.md β”‚ β”‚ └── README_CN.md β”‚ └── README.md └── pipes/ β”œβ”€β”€ my_pipe/ β”‚ β”œβ”€β”€ my_pipe.py β”‚ β”œβ”€β”€ README.md β”‚ └── README_CN.md └── README.md ``` ## πŸ“‹ Documentation Checklist Each plugin should include: - [ ] Clear feature description - [ ] Configuration parameters with defaults - [ ] Installation and setup instructions - [ ] Usage examples - [ ] Troubleshooting guide - [ ] Performance considerations - [ ] Version and author information --- > **Note**: For detailed information about each plugin type, see the respective README files in each plugin type directory.