Skip to content

feat: add Connectors for GitHub, Gmail, Google Drive, and Google Calendar - #475

Merged
locnguyen1986 merged 7 commits into
mainfrom
feat/connectors
Jan 29, 2026
Merged

locnguyen1986 merged 7 commits into
mainfrom
feat/connectors

Conversation

@locnguyen1986

Copy link
Copy Markdown
Collaborator

Implement OAuth connector integration allowing users to connect external services:

Backend (llm-api):

  • Add connector domain with service, repository, and entity
  • Add OAuth provider with PKCE support for secure token exchange
  • Add token encryption for secure storage of OAuth tokens
  • Add database migrations for connector tables
  • Add HTTP handlers and routes for connector management
  • Wire up connector service with dependency injection

Backend (mcp-tools):

  • Add 30 MCP tools across 4 connectors:
    • GitHub (16 tools): repos, issues, PRs, commits, search, files
    • Gmail (3 tools): search, read emails
    • Google Drive (3 tools): search, list, read files
    • Google Calendar (8 tools): events, calendars management
  • Add connector API client for token retrieval

Frontend (web app):

  • Add ConnectorsTab component for profile page
  • Add connector service and Zustand store
  • Add OAuth callback route for handling redirects
  • Update route tree for new connector routes

Testing:

  • Add Postman collection for connector API tests
  • Add Playwright tests for API validation

Configuration:

  • Add environment variables for OAuth credentials
  • Use system fonts in platform app for reliable builds

…e Calendar

Implement OAuth connector integration allowing users to connect external services:

Backend (llm-api):
- Add connector domain with service, repository, and entity
- Add OAuth provider with PKCE support for secure token exchange
- Add token encryption for secure storage of OAuth tokens
- Add database migrations for connector tables
- Add HTTP handlers and routes for connector management
- Wire up connector service with dependency injection

Backend (mcp-tools):
- Add 30 MCP tools across 4 connectors:
  - GitHub (16 tools): repos, issues, PRs, commits, search, files
  - Gmail (3 tools): search, read emails
  - Google Drive (3 tools): search, list, read files
  - Google Calendar (8 tools): events, calendars management
- Add connector API client for token retrieval

Frontend (web app):
- Add ConnectorsTab component for profile page
- Add connector service and Zustand store
- Add OAuth callback route for handling redirects
- Update route tree for new connector routes

Testing:
- Add Postman collection for connector API tests
- Add Playwright tests for API validation

Configuration:
- Add environment variables for OAuth credentials
- Use system fonts in platform app for reliable builds
Add detailed documentation for the OAuth connectors feature including:
- Architecture overview and data flow diagrams
- Configuration guide for GitHub and Google OAuth
- Complete API reference with examples
- MCP tools reference (30 tools across 4 connectors)
- Frontend integration guide
- Security details (encryption, PKCE, token refresh)
- Database schema documentation
- Testing instructions
- Troubleshooting guide
- Development guide for adding new connectors
Add comprehensive step-by-step guide for administrators to configure
GitHub and Google OAuth connectors including:

- Encryption key generation
- GitHub OAuth App creation with screenshots
- Google Cloud Project setup
- API enablement (Gmail, Drive, Calendar)
- OAuth consent screen configuration
- Credentials creation and management
- Environment variable configuration
- Service restart procedures
- Verification steps
- Troubleshooting common issues
- Security best practices
- Credential rotation procedures
- Quick reference tables
@locnguyen1986
locnguyen1986 merged commit 4b495bf into main Jan 29, 2026
12 checks passed
@locnguyen1986
locnguyen1986 deleted the feat/connectors branch January 29, 2026 07:21
@github-project-automation github-project-automation Bot moved this to QA in Jan Jan 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: QA

Development

Successfully merging this pull request may close these issues.

2 participants