REPOWIKI
GitHub

Documentation

Welcome to RepoWiki! This guide will help you understand how to use the generator, configure API keys, and analyze private repositories.

How it works

RepoWiki uses the Vercel AI SDK to orchestrate a resilient multi-model pipeline. When you paste a URL:

  1. We fetch the repository's file tree, core infrastructure files (e.g. docker-compose.yml), and dependencies.
  2. The context is sent to Google Gemini 2.5 Flash as the primary engine.
  3. If Gemini is overloaded or fails during streaming, the system automatically falls back to OpenAI GPT-4o mini.
  4. The AI streams down a styled, standalone HTML file complete with Mermaid.js architecture diagrams.

GitHub Token Configuration

RepoWiki features a completely serverless "Bring Your Own Key" (BYOK) architecture. To prevent strict API rate-limiting issues when scanning massive codebases, you must provide a GitHub Token snippet (even for public repositories).

This also allows you to seamlessly analyze Private Repositories by simply assigning the correct permissions to your token.

Step-by-step Setup:

  • 1Go to your GitHub Developer Settings and create a Fine-grained Personal Access Token.
  • 2Under Repository access, select Public Repositories (read-only), or explicitly select your private repository.
  • 3Under Repository permissions, grant Read-only access to Contents and Metadata.
  • 4Return to RepoWiki, click the Settings (Gear Icon) in the top right, and paste your token.

API Rate Limits

RepoWiki covers the cost of AI generation for casual users using fallback API keys. If you are generating many wikis, or if the primary Gemini model is at capacity, you may encounter an error or high demand message.

To bypass these limits and ensure 100% uptime, you can provide your own API keys:

  • Gemini: Get a free API key from Google AI Studio.
  • OpenAI: Get an API key from the OpenAI Dashboard to enable the GPT-4o mini fallback.
  • Open the Settings modal in RepoWiki and paste your keys.
  • Your keys are stored securely in your browser's localStorage and are never saved to a database.