OpenDeepWiki is the open-source version of the DeepWiki project, aiming to provide a powerful knowledge management and collaboration platform. The project is mainly developed using C# and TypeScript, https://opendeep.wiki/
  • C# 66.8%
  • TypeScript 31.6%
  • JavaScript 0.7%
  • PowerShell 0.3%
  • Batchfile 0.2%
  • Other 0.3%
Find a file
token aa81ee7df6
Merge pull request #369 from jirisacha/fix/incremental-update-catalog-wipe
Prevent incremental updates from wiping the wiki catalog
2026-06-14 03:26:27 +08:00
.claude Add Docker Compose configuration for OpenDeepWiki with PostgreSQL and web service 2026-04-12 03:00:45 +08:00
.github ci(github-actions): update workflows for current OpenDeepWiki build targets 2026-03-17 10:06:33 +08:00
.serena Implement GitPath search functionality with Grep tool integration 2025-11-23 22:13:11 +08:00
.spec-workflow Implement GitPath search functionality with Grep tool integration 2025-11-23 22:13:11 +08:00
.vscode Merge branch 'main' of https://github.com/AIDotNet/OpenDeepWiki 2026-02-10 11:36:15 +08:00
DatabaseQuery Implement GitPath search functionality with Grep tool integration 2025-11-23 22:13:11 +08:00
DevOps feat(docs): implement comprehensive documentation site and refactor project structure 2026-02-08 23:25:25 +08:00
docs feat: 分段生成 Wiki 内容并优化仓库页布局 2026-06-02 02:20:23 +08:00
framework chore(deps): update package versions and add cache framework infrastructure 2026-02-09 18:55:55 +08:00
scripts/sealos chore(project): clean up legacy scripts and VSCode settings 2026-02-09 00:52:53 +08:00
src Merge pull request #369 from jirisacha/fix/incremental-update-catalog-wipe 2026-06-14 03:26:27 +08:00
tests/OpenDeepWiki.Tests Add regression tests for the catalog shrink guard 2026-06-12 16:36:06 +02:00
web Merge pull request #368 from higkoo/patch-3 2026-06-14 03:23:58 +08:00
.dockerignore feat: 添加代码压缩器接口及多种语言的压缩实现,优化代码处理流程 2025-07-10 14:43:51 +08:00
.editorconfig feat: add repository management system with i18n support and frontend routing 2026-01-22 23:12:48 +08:00
.gitignore chore(.gitignore): add database and launch settings to ignore list 2026-01-30 14:02:23 +08:00
AGENTS.md feat(repository-processing): implement processing logs and branch management system 2026-01-29 04:16:46 +08:00
build.ps1 Add build automation scripts and test infrastructure improvements 2026-03-01 12:49:17 +08:00
CHANGELOG.md 发布版本 2026-05-30 14:32:35 +08:00
CLAUDE.md feat: add repository management system with i18n support and frontend routing 2026-01-22 23:12:48 +08:00
compose.pgsql.yaml Add Docker Compose configuration for OpenDeepWiki with PostgreSQL and web service 2026-04-12 03:00:45 +08:00
compose.yaml 修复空构建错误 2026-06-11 15:17:14 +08:00
Directory.Build.props refactor: remove unused using directives and clean up code 2025-09-24 17:32:09 +08:00
Directory.Packages.props 发布版本 2026-05-30 14:32:35 +08:00
LICENSE Create LICENSE 2025-05-01 00:27:08 +08:00
Makefile Add build automation scripts and test infrastructure improvements 2026-03-01 12:49:17 +08:00
OpenDeepWiki.sln chore(deps): update package versions and add cache framework infrastructure 2026-02-09 18:55:55 +08:00
publish.bat chore(release): bump version to 2.0.0 and upgrade to .NET 10.0 2026-02-13 04:03:03 +08:00
QueryDatabase.cs Implement GitPath search functionality with Grep tool integration 2025-11-23 22:13:11 +08:00
QueryDatabase.ps1 Implement GitPath search functionality with Grep tool integration 2025-11-23 22:13:11 +08:00
README.md feat: 分段生成 Wiki 内容并优化仓库页布局 2026-06-02 02:20:23 +08:00
README.zh-CN.md feat: 分段生成 Wiki 内容并优化仓库页布局 2026-06-02 02:20:23 +08:00
start.bat refactor: 移除OpenDeepWiki.CodeFoundation项目及相关代码压缩功能 2025-10-30 19:18:04 +08:00
start.sh refactor: 移除OpenDeepWiki.CodeFoundation项目及相关代码压缩功能 2025-10-30 19:18:04 +08:00

OpenDeepWiki

中文 | English

OpenDeepWiki Logo

AI-driven repository knowledge base with docs, chat, and MCP

OpenDeepWiki turns Git repositories, ZIP archives, and local directories into searchable knowledge bases. It generates structured repository docs, serves them through a public Next.js site, and reuses the same indexed content for chat, embed, and MCP workflows.

Enterprise support and pricing: docs.opendeep.wiki/pricing

What OpenDeepWiki Ships Today

  • Import repository sources from Git URLs, uploaded ZIP archives, or approved local directories.
  • Generate README summaries, project overviews, wiki catalogs, document content, multi-language translations, mind maps, and optional Graphify artifacts.
  • Publish public repository docs on SEO-friendly routes such as /{owner}/{repo}, /{owner}/{repo}/mindmap, and /{owner}/{repo}/graphify.
  • Expose repository knowledge through repository-scoped MCP endpoints, the built-in chat assistant, embedded chat APIs, and share links.
  • Manage repositories, users, roles, departments, API keys, AI providers/models, skills, MCP providers, and GitHub App imports from the admin console.
  • Run background workers for repository processing, translation, mind map generation, Graphify artifacts, and scheduled incremental updates.
  • Support incoming chat/webhook channels for Feishu, QQ, WeChat, and Slack.

Architecture At A Glance

Layer Current implementation
Backend ASP.NET Core on .NET 10, MiniApis, background workers
AI orchestration Microsoft.Agents.AI, prompt assets under src/OpenDeepWiki/prompts, provider/model binding from settings
Frontend Next.js 16, React 19, App Router
Database SQLite or PostgreSQL
Repo processing LibGit2Sharp, ZIP/local-directory ingestion, incremental update pipeline
Visualization Mermaid mind maps plus optional graphifyy artifacts
Deployment Docker Compose, Makefile, optional Sealos deployment

Quick Start With Docker

Prerequisites

  • Docker with Compose support
  • At least one LLM API key compatible with your chosen provider

1. Clone the repository

git clone https://github.com/AIDotNet/OpenDeepWiki.git
cd OpenDeepWiki

2. Edit compose.yaml

At minimum, set a real JWT secret and your AI credentials:

services:
  opendeepwiki:
    environment:
      - JWT_SECRET_KEY=replace-this-in-production

      - CHAT_API_KEY=your-chat-api-key
      - ENDPOINT=https://api.openai.com/v1
      - CHAT_REQUEST_TYPE=OpenAI

      - WIKI_CATALOG_MODEL=gpt-4o
      - WIKI_CATALOG_ENDPOINT=https://api.openai.com/v1
      - WIKI_CATALOG_API_KEY=your-catalog-api-key
      - WIKI_CATALOG_REQUEST_TYPE=OpenAI

      - WIKI_CONTENT_MODEL=gpt-4o
      - WIKI_CONTENT_ENDPOINT=https://api.openai.com/v1
      - WIKI_CONTENT_API_KEY=your-content-api-key
      - WIKI_CONTENT_REQUEST_TYPE=OpenAI

      - WIKI_LANGUAGES=en,zh
      - WIKI_PARALLEL_COUNT=5

Notes:

  • CHAT_*, WIKI_CATALOG_*, and WIKI_CONTENT_* can point to the same provider.
  • Translation is optional. If WIKI_TRANSLATION_* is not set, translation falls back to the content-generation provider/model.
  • compose.yaml uses Database__Type=sqlite and ConnectionStrings__Default=Data Source=/data/opendeepwiki.db by default.

3. Start the stack

docker compose up -d --build

Or use the Makefile shortcuts:

make build
make up

4. Open the app

On a fresh database, the seeded admin account is:

  • Email: admin@routin.ai
  • Password: Admin@123

Change the default JWT secret and admin password before any real deployment.

PostgreSQL Instead Of SQLite

The current runtime code supports sqlite and postgresql.

To boot the bundled PostgreSQL stack:

docker compose -f compose.pgsql.yaml up -d --build

If you prefer your own database, configure either of these equivalent pairs:

- Database__Type=postgresql
- ConnectionStrings__Default=Host=your-host;Port=5432;Database=opendeepwiki;Username=postgres;Password=secret

or

- DB_TYPE=postgresql
- CONNECTION_STRING=Host=your-host;Port=5432;Database=opendeepwiki;Username=postgres;Password=secret

Local Development

Backend

dotnet restore OpenDeepWiki.sln
dotnet build OpenDeepWiki.sln
dotnet run --project src/OpenDeepWiki/OpenDeepWiki.csproj

Useful local endpoints:

Web app

Set the backend proxy first. The web app reads API_PROXY_URL from the environment, web/.env.local, or web/.env.

cd web
npm install
echo API_PROXY_URL=http://localhost:5265 > .env.local
npm run dev

Docs app (optional)

cd docs
npm install
npm run dev

Tests and lint

dotnet test tests/OpenDeepWiki.Tests/OpenDeepWiki.Tests.csproj
cd web && npm test
cd web && npm run lint

Common Makefile shortcuts:

make dev
make down
make logs
make test
make build-arm
make build-amd

Repository Processing Flow

graph LR
    A["Git / ZIP / Local directory"] --> B["Prepare workspace"]
    B --> C["Analyze tree and existing repo context"]
    C --> D["Generate README, overview, and wiki catalog"]
    D --> E["Generate document content"]
    E --> F["Translation / mind map / Graphify / incremental workers"]
    F --> G["Public docs, chat, embed, and MCP"]

In practice, the main runtime path looks like this:

  1. Normalize the repository source and prepare a workspace under REPOSITORIES_DIRECTORY.
  2. Build or refresh repository metadata, branch/language state, and processing logs.
  3. Generate documentation catalogs and document content with the configured AI provider/model bindings.
  4. Queue follow-up work such as translation, mind map generation, Graphify artifacts, and incremental updates.
  5. Serve the final repository knowledge through the public web app, admin tooling, chat APIs, and MCP endpoints.

MCP Usage

OpenDeepWiki registers official MCP endpoints at:

  • /api/mcp
  • /api/mcp/{owner}/{repo}

You can scope the repository either by path or query string. Example:

{
  "mcpServers": {
    "OpenDeepWiki": {
      "url": "http://localhost:8080/api/mcp/AIDotNet/OpenDeepWiki"
    }
  }
}

Query-based alternative:

http://localhost:8080/api/mcp?owner=AIDotNet&name=OpenDeepWiki

Optional:

  • Set MCP_ENABLED=false to disable MCP endpoints.
  • Set GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET if you want protected-resource MCP OAuth support.

Optional Graphify Configuration

The backend Docker image already installs graphifyy. To enable Graphify artifact generation, configure one of the optional provider groups already present in compose.yaml, such as:

  • GRAPHIFY_BACKEND
  • GRAPHIFY_MODEL
  • GRAPHIFY_OPENAI_BASE_URL
  • GRAPHIFY_OPENAI_API_KEY
  • OPENAI_BASE_URL / OPENAI_API_KEY
  • OLLAMA_BASE_URL / OLLAMA_MODEL

Repository Layout

  • src/OpenDeepWiki/: ASP.NET Core entry point, endpoints, workers, AI/repository/chat/MCP services
  • src/OpenDeepWiki.Entities/: domain entities
  • src/OpenDeepWiki.EFCore/: shared EF Core model and context contract
  • src/EFCore/OpenDeepWiki.Sqlite/: SQLite provider
  • src/EFCore/OpenDeepWiki.Postgresql/: PostgreSQL provider
  • web/: public docs site and admin UI built with Next.js
  • docs/: separate documentation app
  • tests/OpenDeepWiki.Tests/: xUnit and FsCheck tests
  • scripts/: deployment and helper scripts

Deployment Notes

  • Sealos: One-click deployment guide
  • Backend container definition: src/OpenDeepWiki/Dockerfile
  • Frontend container definition: web/Dockerfile

Community

Feishu

WeChat

License

This project is licensed under the MIT License. See LICENSE for details.

Star History

Star History Chart