mirror of
https://github.com/open-webui/open-webui.git
synced 2026-07-15 21:19:39 -05:00
[GH-ISSUE #19941] feat: Support for (Anthropic/OpenAI) skills and SKILL.md #57708
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?
Originally created by @EmilStenstrom on GitHub (Dec 14, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/19941
Check Existing Issues
Verify Feature Scope
Problem Description
First of all, thank you for all the work you’re putting into Open WebUI — it’s an amazing project, and I really appreciate that you are sharing this project with the community as open source.
I mainly use Open WebUI as my interface to Anthropic and OpenAI.
/home/oai/skillsfolder, where each Skill is likewise a folder with a Markdown file and optional extra resources/scripts. These are already used for things like spreadsheets, DOCX and PDFs.[1]Right now, there’s no simple way to take advantage of these filesystem‑based Skills directly from Open WebUI. To use them, I have to work in provider‑specific environments (like Claude Code or ChatGPT’s Code Interpreter), or call the underlying APIs separately, which breaks the otherwise smooth workflow Open WebUI provides.
My main goal is to reuse the existing office/document Skills (for spreadsheets, DOCX, PDFs, etc.) that Anthropic and OpenAI already ship, from within Open WebUI — ideally via the same simple “drop a folder = new Skill” pattern.
Desired Solution you'd like
Instead of a complex UI for managing Skills, a much simpler and more natural API would be a filesystem‑based Skills interface, aligned with how both Anthropic and OpenAI are approaching Skills (folders with Markdown + optional resources).
High‑level idea:
Skills as folders on disk
skills/directory on the server.skills/office-docs/skills/pdf-tools/SKILL.mdorskill.md) describing:This mirrors the pattern where a Skill is “just a folder with a Markdown file and some optional extra resources and scripts,” which is exactly what OpenAI is using in their
/home/oai/skillsdirectory for spreadsheet/DOCX/PDF Skills.Automatic discovery and registration
skills/directory.type: office-doc).Integration with the code‑execution feature
skills/→ a file appears as an attachment or download link in Open WebUI.”Very minimal UI surface
skills/folder for this model (where supported).”skills/.The key idea is: if a platform already supports “Skills as folders with Markdown and resources” (like Anthropic and OpenAI now do), Open WebUI can expose those Skills just by mounting or mirroring a
skills/directory and letting the model read/use them.[1] Office/document Skills (spreadsheets, DOCX, PDFs) would be the first and most obviously useful case.Alternatives Considered
Custom pipelines inside Open WebUI
Re‑implementing Skills as “tools”
Implementing an MCP server that provides document Skills
skills/folder,By contrast, a filesystem‑based Skills directory in Open WebUI aims to be the lightest possible integration: reuse the same “folders with Markdown + resources” convention that Anthropic and OpenAI already use, without needing extra pipeline logic, tool definitions, or a separate MCP service.
Additional Context
I completely understand if this isn’t a priority or doesn’t fit your roadmap right now; I just wanted to share the idea in case a minimal filesystem‑based Skills integration feels like a good fit for Open WebUI’s direction.
@owui-terminator[bot] commented on GitHub (Dec 14, 2025):
🔍 Similar Issues Found
I found some existing issues that might be related to this one. Please check if any of these are duplicates or contain helpful solutions:
#19876 feat: Support "Embeddable Chat JS Widget for Custom-Models" for individual websites
by alperreha • Dec 11, 2025
#19908 feat: Supports OpenAI-Response format API and related parameters
by daxiass • Dec 12, 2025
💡 Tips:
This comment was generated automatically by a bot. Please react with a 👍 if this comment was helpful, or a 👎 if it was not.