Skip to main content
When the agent proposes a github_issue action (in write mode), it opens a new issue in your repository. Issues are opened by the App Co-founder GitHub App so they show up as app-co-founder[bot] opened this issue.

Two setup options

The App is the recommended path because:
  • Per-repo install — you grant access only to the repos you want, not your whole account.
  • Bot identity — issues are opened by app-co-founder[bot], not your user.
  • Higher rate limits — 5000 req/h per installation, not shared with your user account.
  • Short-lived tokens — installation tokens are minted on demand and expire in 1 hour, so a leaked token has limited blast radius.
  • Org-friendly — an org admin can install once and many people benefit.

Option A — Install the App (one click)

authorizeUrl redirects to https://github.com/apps/app-co-founder/installations/new?state=<s>. The user picks which repositories to grant access to. After install, GitHub redirects back to:
We persist installation_id and (optionally) the GitHub login as oauth_account_label. No long-lived token is stored. Then tell the agent which repo to file issues in:
The repo must be one you granted the App access to. The integration test calls GET /repos/<owner>/<repo> with a freshly minted installation token to confirm. Enable in preferences:

Adding more repos later

Open https://github.com/settings/installations → App Co-founder → Configure → repositories. The agent picks the change up immediately (no re-OAuth needed).

Switching repos

Same PUT /integrations/github call — pass a new { owner, repo }. Multiple repos in one integration aren’t supported yet; one repo per owner email.

Option B — Personal Access Token (manual)

Useful for scripts or accounts where installing the App isn’t an option.
  1. Create a PAT: https://github.com/settings/tokens?type=beta — needs repo (or public_repo for OSS) scope.
  2. Note the owner and repo (e.g., Eronred/appeeky-api-mcp).
The integration is tested before saving — GET /user confirms the token, then GET /repos/<owner>/<repo> confirms repo access. PAT-backed issues are opened by your user (not the bot).

What gets created

GitHub receives a regular issue with the title, body (markdown), and labels (created on the fly if missing — your installation must allow it).

Auto-approve

GitHub issues are reversible (close = effectively undone), so auto-approve is generally safe.

Disable

Or remove "github" from the array. Credentials remain stored — re-enable any time without re-install.

Uninstall

Open https://github.com/settings/installationsApp Co-founder → Uninstall. The next agent run will fail to mint an installation token; remove the integration row with DELETE /v1/cofounder/integrations/github to clean up.

Server configuration

The private key signs short-lived JWTs that are exchanged for 1-hour installation tokens. The Client ID/Secret pair is only needed when “Request user authorization (OAuth) during installation” is enabled — it’s used solely to fetch the installer’s login for the friendly account label.