mirror of
https://github.com/open-webui/open-webui.git
synced 2026-07-16 06:03:26 -05:00
[PR #16913] feat: human in the loop #24279
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/16913
Author: @Barbaronno
Created: 8/26/2025
Status: 🔄 Open
Base:
dev← Head:feat--human-in-the-loop📝 Commits (10+)
259c6cdAdd ENABLE_TOOL_APPROVAL configuration settingc2f27adAdd ENABLE_TOOL_APPROVAL to main.py imports and app state config29ff402Add ENABLE_TOOL_APPROVAL to admin config endpoints815c342Add tool approval socket handlers for real-time approval managementfe452ffImplement comprehensive tool approval system for native and default tool calls79585c6Add ToolApprovalManager for human-in-the-loop tool execution controle17058cAdd Global Tool Approval toggle to admin settings UIa86faaeIntegrate tool approval system into chat component743759bAdd auto-approval status display and controls to message input9244502Add ToolApprovalModal component for human-in-the-loop tool execution📊 Changes
14 files changed (+1842 additions, -682 deletions)
View changed files
📝
backend/open_webui/config.py(+6 -0)📝
backend/open_webui/main.py(+2 -0)📝
backend/open_webui/routers/auths.py(+4 -0)📝
backend/open_webui/socket/main.py(+107 -0)📝
backend/open_webui/utils/middleware.py(+256 -0)➕
backend/open_webui/utils/tool_approval.py(+122 -0)📝
src/lib/components/admin/Settings/General.svelte(+8 -0)📝
src/lib/components/chat/Chat.svelte(+9 -0)📝
src/lib/components/chat/MessageInput.svelte(+717 -682)➕
src/lib/components/chat/ToolApprovalModal.svelte(+238 -0)➕
src/lib/stores/toolApproval.ts(+224 -0)📝
src/lib/types/index.ts(+30 -0)➕
src/lib/utils/toolApprovalChannel.ts(+80 -0)📝
src/routes/+layout.svelte(+39 -0)📄 Description
Pull Request Checklist
Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.
Before submitting, make sure you've checked the following:
devbranch.Changelog Entry
Description
This pull request implements a comprehensive tool approval system that allows users to control when and how AI tools are executed during conversations. The system provides both per-chat and global configuration options, with a user-friendly interface that includes real-time notifications, approval modals, and visual indicators for auto-approval status.
Added
Changed
Deprecated
Removed
Fixed
Security
Breaking Changes
Additional Information
Screenshots or Videos
youtube - demo video
Contributor License Agreement
By submitting this pull request, I confirm that I have read and fully agree to the Contributor License Agreement (CLA), and I am providing my contributions under its terms.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.