Commit Graph
194 Commits
Author SHA1 Message Date
Timothy Jaeryang Baek 6852d4d663 refac 2026-10-19 04:00:34 +09:00
Timothy Jaeryang Baek f3d321fa4d refac 2026-10-19 03:49:20 +09:00
Timothy Jaeryang Baek 757b451cf3 refac 2026-10-19 03:42:59 +09:00
Timothy Jaeryang Baek d09d027e06 refac 2026-10-19 03:40:42 +09:00
Timothy Jaeryang Baek 01c1c4e283 refac 2026-10-19 03:40:01 +09:00
Timothy Jaeryang Baek a0ef1c0af8 refac 2026-10-19 03:38:17 +09:00
Timothy Jaeryang Baek f92cc22c04 refac 2026-10-19 03:33:37 +09:00
Timothy Jaeryang Baek 4240b4e934 refac 2026-10-19 03:32:20 +09:00
Timothy Jaeryang Baek 64a03197b7 refac v0.14.1 2026-10-16 14:25:49 +04:00
Alan Chow 613c0431d0 Fix _is_writable_sync Windows compatibility (NotImplementedError) (#179)
- Catch NotImplementedError as the primary fallback since os.access(..., effective_ids=True) is not implemented on Windows
- Also catch AttributeError, OSError, and TypeError as supplementary guards
- Prevents crashes when checking file writability on Windows platforms, primarily fixing directory listing operations (/files/list, stat, listdir)

Fixes #174
2026-10-10 19:18:15 +04:00
Classic298 2f595c1122 feat: command results include the folder the command ran in (#184)
The result of a command now includes the folder it ran in. Open WebUI used to put the terminal's current folder into the instructions the model gets for running commands, which threw away the provider's prompt cache for the whole chat whenever the folder changed. With the folder in each result, Open WebUI can drop it from those instructions and the model still knows where it is.
2026-10-10 19:15:27 +04:00
Classic298 3907442c1a docs: link the Open WebUI security policy on the docs site (#188)
The Open WebUI security policy now lives on the documentation site, and the old file in the Open WebUI repository only points there. The link here goes straight to the docs page so reporters land on the full policy in one click. The last-updated date is refreshed.
2026-10-10 19:15:19 +04:00
Timothy Jaeryang Baek b58442aa85 refac v0.14.0 2026-09-23 12:58:09 -04:00
Classic298 83bafddf87 auth: verify MCP HTTP clients against the API key (#181)
The MCP server now gates its HTTP transports with a token verifier that
requires the connecting client to present the API key, compared with
hmac.compare_digest to match the FastAPI layer. The stdio transport is
local and does not pass through the HTTP auth layer, so it keeps working
unchanged. Raises the fastmcp floor to >=4.0.0, where the auth API used
here is available.
2026-09-23 12:38:11 -04:00
Classic298 542094a0ad docs: add security policy and correct multi-user mode wording (#176)
* docs: add security policy and correct multi-user mode wording

The README promised that files, commands and terminals are isolated between users in multi-user mode. A single shared container cannot hold that promise: everyone shares one kernel, one process list, one network stack and one temp directory, and provisioning per-user accounts requires elevated privileges inside that container. The wording now says what the mode actually gives you, which is a separate workspace per user so people and their agents do not walk over each other's files, and it points at Terminals for deployments where users have to be protected from each other.

The new SECURITY.md adopts the Open WebUI security policy wherever it is semantically applicable, names this repository as the reporting channel, and writes down what is designed behaviour here: the API key is a full-access credential, X-User-Id is asserted by the caller, the latest image gives its user passwordless sudo, and bare metal runs as your own user. It also states what remains in scope, so that reports crossing out of the instance still get the attention they deserve.

* docs: point per-user isolation at Terminals and its enterprise license

The pointer to Terminals now says what it actually gives you, a separate container per user with its own files, processes, limits and network boundary, and states that production use needs an Open WebUI Enterprise License, with the deployment and licensing docs linked. The same note is added where the security policy sends people to Terminals.

* docs: link the enterprise license to the docs page
2026-09-17 17:25:06 -04:00
Timothy Jaeryang Baek 2085cd819e refac v0.13.0 2026-09-13 23:02:37 -04:00
Timothy Jaeryang Baek e436b6a2b6 refac 2026-09-13 22:36:09 -04:00
Timothy Jaeryang Baek 72fb783bb9 refac v0.12.5 2026-09-08 20:37:16 -04:00
Timothy Jaeryang Baek 011022abb1 refac 2026-09-08 20:32:02 -04:00
Timothy Jaeryang Baek 6696428e36 refac 2026-09-06 17:36:00 -04:00
Timothy Jaeryang Baek 38d6a2b8b6 refac v0.12.4 2026-09-06 15:28:18 -04:00
Timothy Jaeryang Baek f0edc9ecc5 refac 2026-09-06 15:19:53 -04:00
Timothy Jaeryang Baek c0273cc39e refac v0.12.3 2026-08-27 19:28:22 -04:00
Timothy Jaeryang Baek c7530495a5 refac 2026-08-27 15:29:58 -04:00
Timothy Jaeryang Baek 3ea2648506 refac 2026-08-27 14:08:59 -04:00
Timothy Jaeryang Baek e0f2b69f1e refac v0.12.2 2026-08-25 16:42:10 -04:00
Timothy Jaeryang Baek d1f8c0e98d refac 2026-08-25 16:40:33 -04:00
Timothy Jaeryang Baek 1a71bfdd24 refac v0.12.1 2026-08-22 09:27:00 -04:00
Timothy Jaeryang Baek 0a82381f23 refac v0.12.0 2026-08-22 09:14:41 -04:00
Timothy Jaeryang Baek 11c1af09a2 refac 2026-08-22 09:11:14 -04:00
Timothy Jaeryang Baek 9c9706d475 refac v0.11.36 2026-08-22 08:45:43 -04:00
Timothy Jaeryang Baek 6728495e15 refac 2026-08-22 08:44:02 -04:00
Timothy Jaeryang Baek 1aaa9fa98c refac 2026-08-22 08:33:44 -04:00
Timothy Jaeryang Baek c6c2b82741 refac v0.11.35 2026-08-10 01:03:19 -06:00
Timothy Jaeryang Baek 690c5681c9 refac 2026-08-08 19:35:47 -06:00
Timothy Jaeryang Baek 98bd1a5fd1 refac 2026-06-23 00:08:59 +02:00
Timothy Jaeryang Baek 68f0fa1cf5 refac 2026-06-22 17:02:02 +02:00
Timothy Jaeryang Baek 811d4abc18 refac 2026-06-22 16:56:50 +02:00
Timothy Jaeryang Baek c4f47b2776 refac 2026-06-22 16:18:04 +02:00
Timothy Jaeryang Baek 0085ec7d1f refac 2026-06-22 15:57:42 +02:00
Tim Baek 2982fe94ae Merge pull request #106 from huss-mo/fix/mcp-server-auth
fix: pass API key as Bearer token in MCP server httpx client
2026-04-16 18:23:10 -07:00
Timothy Jaeryang Baek 9162e808c3 feat: add /files/serve/{path} endpoint for iframe relative URL resolution v0.11.34 2026-04-08 14:49:49 -07:00
Timothy Jaeryang Baek f74428ffb8 refac 2026-04-08 13:07:45 -07:00
Timothy Jaeryang Baek 8c154351df fix: default grep_search to regex mode
Closes #101
v0.11.33
2026-04-08 13:03:47 -07:00
hussein 2e1005b60a fix: pass API key as Bearer token in MCP server httpx client
FastMCP.from_fastapi() uses an internal httpx client to call the
FastAPI routes. Without auth headers, every tool call (run_command,
read_file, etc.) hits the verify_api_key guard and returns 401.

Fixes tool calls returning: 'HTTP error 401: Unauthorized - Invalid API key'
2026-04-04 02:02:10 +02:00
Timothy Jaeryang Baek 8a491e8b90 refac 2026-04-02 01:53:33 -05:00
Timothy Jaeryang BaekandDenny Pradipta 48d0ab4fe6 enh: OPEN_TERMINAL_NPM_PACKAGES
Co-Authored-By: Denny Pradipta <dennypradiptaprojects@gmail.com>
2026-03-30 19:56:58 -05:00
Tim Baek 1bc3aab492 Merge pull request #98 from EntropyYue/fix/terminals
fix: GET terminals return null
2026-03-31 04:53:15 +04:00
EntropyYue fe2e5e1521 fix: GET terminals return null 2026-03-31 00:03:26 +08:00
Timothy Jaeryang Baek 96d8134e1e feat: resolve relative paths against session cwd in all file endpoints
All LLM-exposed file endpoints (list_files, read_file, write_file,
display_file, replace_file_content, grep_search, glob_search) now
read the X-Session-Id header and resolve relative paths against the
session's working directory instead of always using fs.home.

- Added optional cwd parameter to UserFS.resolve_path()
- Relative paths join against cwd if provided, else fs.home
- Absolute paths are unaffected
- execute endpoint also resolves relative cwd param against session cwd
v0.11.32
2026-03-29 21:34:44 -05:00