Python scripts to simulate enough of the openwebui environment to run openwebui pipe functions directly.
Find a file
hermes e50298be1e
All checks were successful
CI / ci (push) Successful in 29s
ci: re-run via runner pickup verification
2026-09-26 20:07:06 -07:00
.forgejo/workflows fix(ci): self-contained workflow — drop unreachable JS actions 2026-09-16 08:55:30 -07:00
tests scrub: never track .gsd/ — tool state per-machine 2026-05-19 15:19:17 -07:00
.gitignore scrub: never track .gsd/ — tool state per-machine 2026-05-19 15:19:17 -07:00
.pre-commit-config.yaml chore: add basic pre-commit hooks (trailing-whitespace, eof-fixer, ruff) 2026-06-03 17:29:40 -07:00
AGENTS.md Initial commit 2026-01-14 19:50:12 -08:00
openwebui_memory_access.py Initial commit 2026-01-14 19:50:12 -08:00
openwebui_pipe_interface.py Initial commit 2026-01-14 19:50:12 -08:00
openwebui_standard_functionality.py Initial commit 2026-01-14 19:50:12 -08:00
pipe.py Initial commit 2026-01-14 19:50:12 -08:00
README.md Initial commit 2026-01-14 19:50:12 -08:00
runner.py Initial commit 2026-01-14 19:50:12 -08:00
webui_runner.md Initial commit 2026-01-14 19:50:12 -08:00

OpenWebUI Runner

Overview

The OpenWebUI runner provides a command-line interface to execute OpenWebUI-compatible pipe functions outside of the full OpenWebUI environment.

Purpose

This runner allows testing and execution of OpenWebUI pipes with a simplified interface that mimics the actual OpenWebUI environment.

Components

  • Runner Script: Executes pipe functions with mocked OpenWebUI environment
  • Environment Mocks: Simulates OpenWebUI imports and services
  • CLI Interface: Accepts pipe files and parameters via command line

Usage

python runner.py <pipe_file.py> [arguments]

Environment Simulation

The runner provides mocked versions of:

  • open_webui.models.users
  • open_webui.utils.chat
  • FastAPI Request objects
  • User context data

Limitations

  • Does not connect to actual LLM services
  • No real file/knowledge base access
  • Limited to basic pipe functionality
  • Mocked responses only

Requirements for Pipes

Pipes must implement the standard OpenWebUI pipe interface:

  • pipe() method with body, __user__, __request__ parameters
  • Optional Valves configuration class
  • Async support for streaming responses