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
- 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.
| 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 |
- Docker with Compose support
- At least one LLM API key compatible with your chosen provider
git clone https://github.com/AIDotNet/OpenDeepWiki.git
cd OpenDeepWikiAt 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=5Notes:
CHAT_*,WIKI_CATALOG_*, andWIKI_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.yamlusesDatabase__Type=sqliteandConnectionStrings__Default=Data Source=/data/opendeepwiki.dbby default.
docker compose up -d --buildOr use the Makefile shortcuts:
make build
make up- Web UI: http://localhost:3000
- Backend health: http://localhost:8080/health
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.
The current runtime code supports sqlite and postgresql.
To boot the bundled PostgreSQL stack:
docker compose -f compose.pgsql.yaml up -d --buildIf 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=secretor
- DB_TYPE=postgresql
- CONNECTION_STRING=Host=your-host;Port=5432;Database=opendeepwiki;Username=postgres;Password=secretdotnet restore OpenDeepWiki.sln
dotnet build OpenDeepWiki.sln
dotnet run --project src/OpenDeepWiki/OpenDeepWiki.csprojUseful local endpoints:
- Backend API: http://localhost:5265 with the default
httplaunch profile, or the URL printed by ASP.NET Core - Health: http://localhost:5265/health
- OpenAPI/Scalar: http://localhost:5265/v1/scalar when running in
Development
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 devcd docs
npm install
npm run devdotnet test tests/OpenDeepWiki.Tests/OpenDeepWiki.Tests.csproj
cd web && npm test
cd web && npm run lintCommon Makefile shortcuts:
make dev
make down
make logs
make test
make build-arm
make build-amdgraph 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:
- Normalize the repository source and prepare a workspace under
REPOSITORIES_DIRECTORY. - Build or refresh repository metadata, branch/language state, and processing logs.
- Generate documentation catalogs and document content with the configured AI provider/model bindings.
- Queue follow-up work such as translation, mind map generation, Graphify artifacts, and incremental updates.
- Serve the final repository knowledge through the public web app, admin tooling, chat APIs, and MCP endpoints.
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=falseto disable MCP endpoints. - Set
GOOGLE_CLIENT_IDandGOOGLE_CLIENT_SECRETif you want protected-resource MCP OAuth support.
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_BACKENDGRAPHIFY_MODELGRAPHIFY_OPENAI_BASE_URLGRAPHIFY_OPENAI_API_KEYOPENAI_BASE_URL/OPENAI_API_KEYOLLAMA_BASE_URL/OLLAMA_MODEL
src/OpenDeepWiki/: ASP.NET Core entry point, endpoints, workers, AI/repository/chat/MCP servicessrc/OpenDeepWiki.Entities/: domain entitiessrc/OpenDeepWiki.EFCore/: shared EF Core model and context contractsrc/EFCore/OpenDeepWiki.Sqlite/: SQLite providersrc/EFCore/OpenDeepWiki.Postgresql/: PostgreSQL providerweb/: public docs site and admin UI built with Next.jsdocs/: separate documentation apptests/OpenDeepWiki.Tests/: xUnit and FsCheck testsscripts/: deployment and helper scripts
- Sealos: One-click deployment guide
- Backend container definition:
src/OpenDeepWiki/Dockerfile - Frontend container definition:
web/Dockerfile
- Discord: join us
- Feishu QR code:
This project is licensed under the MIT License. See LICENSE for details.

