Sitelet https://openwebui.com/posts/github_copilot_official_sdk_pipe_ce96f7b4
openwebui o/openwebui @Fu-Jie
·
3 months ago
·
7 months ago
GitHub Copilot Official SDK Pipe
Last Updated
3 months ago
Created
7 months ago
Function
v0.13.2
Name
GitHub Copilot Official SDK Pipe
Downloads
1.2K+
Saves
41+
Description
A powerful Agent SDK integration for OpenWebUI. It deeply bridges GitHub Copilot SDK with OpenWebUI's ecosystem, enabling the Agent to autonomously perform intent recognition, web search, and context compaction. It seamlessly reuses your existing Tools, MCP servers, OpenAPI servers, and Skills for a professional, full-featured experience.
media

GitHub Copilot Agent Pipe for OpenWebUI

By Fu-Jie · v0.13.2⭐ Star this repo
followerspointstopcontributionsdownloadssavesviews

This is a GitHub Copilot SDK Pipe for OpenWebUI with Agent Team coordination, Session Modes (autopilot/interactive/plan), autonomous Web Search, Context Compaction, and reuse of your OpenWebUI Tools, MCP servers, and Skills.

[!IMPORTANT] Essential Companion To let Copilot directly process uploaded files instead of OpenWebUI's default RAG parsing, you must install the GitHub Copilot SDK Files Filter.

[!TIP] No Subscription Required for BYOK If you are using your own API keys (BYOK mode with OpenAI/Anthropic), you do NOT need a GitHub Copilot subscription. A subscription is only required to access GitHub's official models.



Install with Batch Install Plugins

If you already use Batch Install Plugins from GitHub , you can install or update this plugin with:

text
Install plugin from Fu-Jie/openwebui-extensions

When the selection dialog opens, search for this plugin, check it, and continue.

[!IMPORTANT] If the official OpenWebUI Community version is already installed, remove it first. After that, Batch Install Plugins can keep this plugin updated in future runs.

✨ v0.13.1: OpenWebUI 0.9.x Compatibility

  • 🔌 OpenWebUI 0.9.x Dual Compatibility (Critical): All OpenWebUI model/config/tool APIs (Files.get_file_by_id, Files.insert_new_file, Users.get_user_by_id, Tools.get_tools_by_user_id, Tools.get_tool_by_id, Models.get_model_by_id, get_config, get_all_models, get_openwebui_tools, get_builtin_tools, search_models) now transparently support both the sync interface (pre-0.9) and the new async interface (0.9.x). No version branching required; the plugin auto-detects and adapts.
  • 🚀 Internal Methods Promoted to Async: _read_tool_server_connections, _build_openwebui_request, and _parse_mcp_servers are now async def, eliminating the thread-offload pattern that would have broken under 0.9.x async model methods.
  • 🛡️ Sync-Safe Valve Options: Valves and UserValves option providers (sync classmethods) now use a compatibility wrapper so search_models calls remain safe in both sync and async contexts.
  • 🐛 File Publish Path Fixed: publish_file_from_workspace now uses a typed compatibility layer instead of raw asyncio.to_thread, resolving a silent crash when Files methods became coroutines in 0.9.x.

[!IMPORTANT] If the plugin shows errors after an update, restart your OpenWebUI server. The plugin is cached in memory and old bytecode may cause import errors. Restarting clears the cache and loads the fresh version.


🚀 Quick Start

  1. Install via Batch Install Plugins → select this plugin
  2. Configure a credential: GH_TOKEN (GitHub Copilot) or BYOK_API_KEY (OpenAI/Anthropic)
  3. Start chatting — select this Pipe's model and ask naturally

Companion Files Filter lets Copilot directly process uploaded files instead of OpenWebUI's default RAG parsing. Install from here.

🧭 How to Use

Just describe what you want. No need to mention tools or internal parameters.

What you askWhat happens
Fix the failing testsNormal reply
Summarize this Excel file and chart the trendAgent processes the file and generates charts
Create an interactive dashboardRichUI page rendered in chat
Refactor this pluginAgent plans, executes, and tracks TODO automatically

✨ Key Capabilities

CapabilityWhat it means for you
🤖 Agentic AIThe Agent autonomously plans the path to your goal
👥 Agent TeamCoordinate multiple sub-agents within one session — assign a leader, share tools
🔄 Session ModeChoose autopilot (autonomous), interactive (step-by-step confirm), or plan (plan-first)
🛠️ Built-in ToolsFile system, Git, bash, publish-to-workspace, directory-based skills — all installed in Docker data dir and persist across sessions
🌐 Web SearchTriggers searches when your question needs up-to-date info
♾️ Infinite SessionsWeeks-long projects with automatic context compaction
🧩 Tools & MCP BridgeYour OpenWebUI instance's own Tools and MCP servers are automatically available and persist across sessions
🎨 RichUI / ArtifactsInteractive dashboards and pages rendered directly in chat
🛡️ Workspace IsolationEach session runs with privacy isolation where possible

🧩 Companion Files Filter

Lets Copilot directly process uploaded files (Excel, CSV, images) instead of OpenWebUI's default RAG parsing.

Install: GitHub Copilot SDK Files Filter


⚙️ Core Configuration (Valves)

Configure credentials (choose one or both):

ValveWhat to set
GH_TOKENGitHub Copilot token (see Get Token below)
BYOK_API_KEYOpenAI or Anthropic key
BYOK_TYPEBYOK type: openai or anthropic
BYOK_BASE_URLBYOK API endpoint (required when using BYOK), e.g. https://api.openai.com/v1 (OpenAI) or https://api.anthropic.com (Anthropic). Other providers may differ — check vendor docs.

💡 Both at once: You can configure both GH_TOKEN and BYOK_API_KEY — the model list will show models from both.

Other valves are optional. See the full list on GitHub.

Get Token

  1. Visit github.com/settings/tokens?type=beta
  2. Create a Fine-grained token with Account permissions → Copilot Requests access
  3. Paste the token into the GH_TOKEN field

⭐ Support

If this plugin has been useful, a Star on OpenWebUI Extensions would be a great motivation for me. Thank you!


Troubleshooting

  • Agent ignores uploaded files? → Install the Files Filter so Copilot can process them directly (see above)
  • Errors after update? → Restart your OpenWebUI server to clear cached bytecode

20