Skip to main content
GitHub turns repository code and documentation into searchable memory. Cognee reads code and documentation in the repositories you select, and sees the organization and repository names it is installed on.

Connecting

Connect on the GitHub card (Integrations → Data sources) authorizes the Cognee GitHub App and then asks which account it should use. A Choose a GitHub account modal lists the organizations that GitHub account can reach, marks the ones already connected, and always offers Install on another organization for one that does not have the app yet. Connect this account finishes the link, and the dialog settles into the connected view without closing. Reconnect and Connect another GitHub account ask the same question, so a workspace is never silently re-attached to the organization it last used, and a second workspace can connect an organization that already has the app installed.
If GitHub’s window stalls on the app’s settings page, close it and try again. That can only happen when installing fresh on an organization that already has Cognee.

Choosing repositories

The repository picker is the shared one described in Choosing what a connection reads: read every repository including ones added later, read an explicit list, or read none. Repositories are a flat list — GitHub sends no hierarchy, so there are no groups to collapse. Widening a narrowed connection again is Read every repository, including new ones. The picker only ever lists what the installation already shares; granting access to more repositories happens on GitHub’s side, through the Add repositories in GitHub link under the list.

Asking about a repository

A connected repository is ingested into the code graph, and the code graph is not embedded — so a question asked under the Search page’s Text type will not find it. Use the Code type instead, which looks up functions, classes, and files by name and can draw the repository’s architecture. See Search type. Each connection lands in its own dataset, named after the GitHub account’s numeric id — for example github_acct_12345678 — rather than its login, so renaming the organization does not move its data. The connected dialog shows the exact name.

Disconnecting

Disconnecting revokes the credential and stops the reading. What Cognee already learned from the connection stays in memory. The Cognee GitHub App stays installed on the organization — removing it is a GitHub-side action. Reconnecting lets you pick the account or organization again: the same one picks up where it left off, a different one starts its own.