github
github — ɳSelf documentation.
GitHub Plugin
GitHub integration, repos, issues, PRs, workflow events, and OAuth. Free: MIT licensed.
Install
nself plugin install github
What It Does
Syncs GitHub data into your Postgres database: repositories, issues, pull requests, commits, workflow runs, and webhook events. Provides a webhook receiver for real-time GitHub events. Supports OAuth authentication via GitHub for user login. Exposes 23 database tables with full GitHub data models.
Configuration
| Env Var | Default | Description |
|---|---|---|
GITHUB_PORT |
3002 |
GitHub plugin port |
GITHUB_TOKEN |
none | GitHub personal access token or App token |
GITHUB_WEBHOOK_SECRET |
none | Webhook HMAC secret |
GITHUB_APP_ID |
none | GitHub App ID (if using App auth) |
GITHUB_APP_PRIVATE_KEY |
none | GitHub App private key |
Ports
| Port | Purpose |
|---|---|
| 3002 | GitHub plugin REST API and webhook receiver |
Database Tables
23 tables added to your Postgres database, including:
np_github_repos: repository metadatanp_github_issues: issues and commentsnp_github_pull_requests: PRs and reviewsnp_github_commits: commit historynp_github_workflow_runs: CI/CD run historynp_github_webhook_events: raw webhook event log- And 17 more for stars, labels, milestones, etc.
Nginx Routes
| Route | Target |
|---|---|
/github/webhook |
GitHub webhook receiver |
/github/oauth/callback |
OAuth callback |
API
GET /health: Health check
POST /sync/repo/{owner}/{repo}: Sync a repository
GET /repos: List synced repositories
POST /webhook: GitHub webhook receiver
GET /oauth/authorize: Start GitHub OAuth flow