Skip to content
Try Free →

How to import GitHub docs into AskVault

Last updated: · 3 min read

What gets ingested

Three things are fetched from the repository you point at:

  • README.md at the repo root (tries README.md, readme.md, README.rst, README.txt, README in that order; first match wins).
  • Files directly inside a top-level docs/ directory (up to 50), matching .md, .rst, or .txt. This is a single directory listing, not a recursive walk — nested subfolders under docs/ aren't picked up.
  • The wiki home page (Home.md), if the repo has a Wiki enabled and you check the wiki option.

Code files (.py, .js, .ts, etc.) are never fetched. There's no configurable file-pattern list — the three sources above are the whole surface.

Setup

About a minute:

  1. Open Knowledge Hub > Add Source > GitHub in AskVault.
  2. Paste the repository URL (https://github.com/owner/repo) and the branch to read from (defaults to main).
  3. Check which sources to include — README and/or Wiki home page. The top-level docs/ directory is always checked when present.
  4. Click Import. AskVault fetches the content immediately and adds it to your knowledge base — no OAuth consent screen, no app installation.

Test by asking the bot a question whose answer is in your README. The bot should retrieve and cite back to the GitHub file URL. GitHub import requires the Business plan or above. Business+

No OAuth, no stored credentials

This isn't a connected, persistent integration — there's no "Connect with GitHub" step and nothing to disconnect. Each import is a one-time fetch over GitHub's public, unauthenticated endpoints (raw.githubusercontent.com and the public contents API), so it only works against public repositories. AskVault never writes to your repo and never stores a token for it.

Keeping content current

There's no scheduled or webhook-triggered re-sync. When your README or docs change, re-run the import (Knowledge Hub > Add Source > GitHub, same repo URL) to refresh the content — the new fetch replaces the old one.

Branch handling

The branch field is a single free-text value (default main) applied to the whole import — there's no default-branch auto-detection, no per-repo branch picker, and no tag-based versioning. If your docs live on a non-default branch, type that branch name in.

Private repos and GitHub Enterprise Server

Not supported today. Import has no token or credential field, so it can only read what's already public. For private documentation, the practical workaround is to paste the file contents directly or use file upload instead.

What the bot can answer from GitHub content

Common patterns:

  • Setup and installation steps from your README.
  • API or usage documentation that lives directly under a top-level docs/ folder.
  • A wiki overview, if you've enabled the wiki-home import.

The bot retrieves chunks and cites back to the GitHub file URL. Visitors clicking through land on the rendered Markdown on GitHub.

Limits

  • Files per import. Up to 50 files from the top-level docs/ directory, plus README and the wiki home page.
  • Plan gate. GitHub import requires the Business plan or above; it isn't available on Free, Starter, or Growth.
  • Content cap. Imported text still counts against your workspace's indexed-content MB limit like any other source.

Common pitfalls

Import says "No readable content found in this repository." The repo has no README at any of the standard filenames and no files directly under a top-level docs/ folder — nested subfolders aren't scanned.

Nothing happens when I push new commits. There's no sync mechanism to trigger. Re-run the import manually to pick up changes.

A private repo import fails. Only public repositories are supported — there's no credential field for private access.

FAQ

Does this work with GitHub Actions or CI/CD content?

No. Workflow YAML files (.github/workflows/*.yml) are never fetched — only README.md, top-level docs/ files, and the wiki home page.

Can the bot answer code questions?

For documentation about code (README, top-level docs/ files), yes. Source code files themselves are never fetched or indexed, so the bot can't answer questions about function internals.

Will this expose private repo content via the chatbot?

No — private repos can't be imported in the first place, since the import only reads public, unauthenticated GitHub endpoints.

How do I remove imported GitHub content?

Delete the imported documents from Knowledge Hub like any other source. This removes the content from your vector store within a few minutes; backups are purged within 30 days.

Does this work with monorepos?

Only partially. Import reads the repo-root README and the top-level docs/ folder — it doesn't walk into per-package directories like packages/*/README.md. For a monorepo, import each package's repo URL (or its README's raw URL via file upload) separately.

Was this page helpful?