DeepWiki can clone and index private repositories on GitHub, GitLab, and Bitbucket. Authentication is handled by providing a personal access token (or Bitbucket app password) through the UI before generating a wiki. The token is sent with the request and used only for that operation — it is not stored permanently on the server.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/AsyncFuncAI/deepwiki-open/llms.txt
Use this file to discover all available pages before exploring further.
How tokens work in DeepWiki
When you enter a token, the frontend passes it in thetoken field of the ChatCompletionRequest payload sent to the API. The backend uses this token to authenticate the git clone operation for that specific request. The TokenInput component notes explicitly: “Your token is stored locally and never sent to our servers” — it exists only in your browser session and travels to your own self-hosted DeepWiki instance via your own network.
The ChatCompletionRequest model exposes the token as an optional field:
Adding a token in the UI
Open the token section
On the DeepWiki home page, click + Add Access Tokens for Private Repositories below the repository URL field. The token panel expands to show platform tabs and a token input field.
Select your platform
Click the GitHub, GitLab, or Bitbucket tab to select the platform that hosts your private repository.
Paste your token
Enter your personal access token (or Bitbucket app password) in the input field. The value is masked for security.
Creating a token on each platform
- GitHub
- GitLab
- Bitbucket
GitHub offers two types of personal access tokens: classic and fine-grained.Classic token (simpler)Fine-grained token (recommended)
Open token settings
Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic).
Generate a new token
Click Generate new token (classic). Enter a note, choose an expiration, and select the
repo scope to grant read access to private repositories.Open token settings
Go to GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens.
Generate a new token
Click Generate new token. Set an expiration, select Only select repositories, choose the target repository, and grant Contents: Read-only under Repository permissions.
Minimum required permissions
| Platform | Token type | Required scope / permission |
|---|---|---|
| GitHub | Classic | repo |
| GitHub | Fine-grained | Contents: Read-only |
| GitLab | Personal access token | read_repository |
| Bitbucket | App password | Repositories: Read |