Embedding GitHub Copilot Inside a DevExpress XAF Application
GitHub repository:
https://github.com/egarim/XafGitHubCopilot
Repository Structure (correct paths)
- Repo root:
/tree/master
- Solution folder (everything lives under this folder):
/XafGitHubCopilot
- Blazor Server project:
/XafGitHubCopilot/XafGitHubCopilot.Blazor.Server
- WinForms project:
/XafGitHubCopilot/XafGitHubCopilot.Win
- Module project (shared logic):
/XafGitHubCopilot/XafGitHubCopilot.Module
Startup (reference file you shared)
Blazor Startup:
/XafGitHubCopilot/XafGitHubCopilot.Blazor.Server/Startup.cs
Key Files (correct links)
Copilot SDK wiring (DI)
- AddCopilotSdk (DI registration):
/XafGitHubCopilot/XafGitHubCopilot.Module/Services/ServiceCollectionExtensions.cs
- CopilotChatService (Copilot SDK lifecycle + sessions):
/XafGitHubCopilot/XafGitHubCopilot.Module/Services/CopilotChatService.cs
- CopilotChatClient (IChatClient adapter for DevExpress AI):
/XafGitHubCopilot/XafGitHubCopilot.Module/Services/CopilotChatClient.cs
Tool calling (function calling)
- CopilotToolsProvider (AIFunctionFactory tools):
/XafGitHubCopilot/XafGitHubCopilot.Module/Services/CopilotToolsProvider.cs
XAF controllers
- ShowCopilotChatController (open chat / redirect ListView to DetailView):
/XafGitHubCopilot/XafGitHubCopilot.Module/Controllers/ShowCopilotChatController.cs
- SelectCopilotModelController (runtime model switcher):
The Day I Integrated GitHub Copilot SDK Inside My XAF App (Part 1) | Joche Ojeda