Sourcebot – Self-hosted Perplexity for Your Codebase
Sourcebot is an open-source, self-hosted tool that lets you ask natural-language questions about your code with inline citations, search across all repos, and navigate code like an IDE.
TL;DR
TL;DR: Sourcebot is a self-hosted, open-source code intelligence tool that lets you ask natural-language questions about your codebase, search across all repos, and get answers backed by inline citations.
Source and Accuracy Notes
⚠️ This section is MANDATORY. All links must be verified from actual source, not guessed.
- Project page: sourcebot.dev ← verified
- Source repository: github.com/sourcebot-dev/sourcebot ← README read end-to-end
- Live demo: app.sourcebot.dev ← verified public deployment
- Docs: docs.sourcebot.dev ← deployment docs read
- License: NOT YET SET — repository has no LICENSE file. GitHub API returns
NOASSERTION. Do not assume a license; check with the maintainers before using in proprietary projects. - HN launch thread: not listed in README; searched via HN Algolia (no confirmed launch thread found)
What Is Sourcebot?
Sourcebot is a self-hosted tool that helps developers and AI agents understand a codebase. It indexes your repositories and exposes two main interfaces:
- Ask Sourcebot — Ask natural-language questions and get answers with inline citations that link directly to the relevant source code.
- Code Search — Search across all repos and branches using regex, filters, and boolean logic. Source-level navigation (goto definition, find references) works across all repositories.
The project positions itself as a self-hosted alternative to hosted code intelligence services. It is built with Docker Compose in mind and requires PostgreSQL and Redis as backing services.
Setup Workflow
Prerequisites
- Docker and Docker Compose
- At least 4 GB RAM recommended
- A config file (
config.json) for code host connections (GitHub, GitLab, etc.) - Environment variables for secrets (AUTH_SECRET, SOURCEBOT_ENCRYPTION_KEY, DATABASE_URL, REDIS_URL)
Step 1: Download the Docker Compose file
curl -o docker-compose.yml https://raw.githubusercontent.com/sourcebot-dev/sourcebot/main/docker-compose.yml
Step 2: Configure code host access
Edit the config.json file to connect your code hosts. The full configuration reference is at docs.sourcebot.dev/docs/configuration/code-host.
A minimal GitHub config looks like this:
{
"codeHosts": [
{
"type": "github",
"id": "my-org",
"token": "ghp_your_github_token"
}
]
}
Step 3: Set environment variables
Generate secrets using OpenSSL, then add them to a .env file:
AUTH_SECRET=$(openssl rand -base64 33)
SOURCEBOT_ENCRYPTION_KEY=$(openssl rand -base64 24)
Then in your .env file:
AUTH_SECRET=your_generated_auth_secret
SOURCEBOT_ENCRYPTION_KEY=your_generated_encryption_key
DATABASE_URL=postgresql://postgres:password@postgres:5432/postgres
REDIS_URL=redis://redis:6379
Step 4: Start the containers
docker compose up -d
Sourcebot starts on port 3000 by default. The initial setup will index the configured repositories, which may take several minutes depending on codebase size.
Deeper Analysis
Architecture
Sourcebot uses a web interface backed by a search indexing layer. It maintains a PostgreSQL database for query storage and Redis for caching. Repositories are cloned and indexed locally — no data leaves your infrastructure.
What sets it apart
- Self-hosted — no external API calls, all code and data stays on your servers
- Multi-repo support — indexes across all connected repos simultaneously, surfacing results from different repositories in a single answer
- Inline citations — answers reference exact file locations and line numbers
- IDE-level navigation — goto definition and find references work across repo boundaries
Limitations
- No built-in authentication provider; you configure your own AUTH_SECRET
- Initial indexing can be slow for large monorepos
- No official cloud-hosted option — fully self-hosted only
Practical Evaluation Checklist
- [ ] Docker Compose starts cleanly with
docker compose up -d - [ ] Web UI accessible on port 3000 after startup
- [ ] GitHub token works and repos appear in the dashboard
- [ ] Ask Sourcebot returns answers with clickable inline citations
- [ ] Code search returns results with regex and language filters
- [ ] No sensitive data in logs or error messages
- [ ] Indexing progress visible during initial setup
Security Notes
- All secrets must be generated and stored securely — never commit
.envfiles - GitHub tokens used for repo access should be scoped to read-only where possible
- Sourcebot does not currently support SSO or fine-grained access control
- Database and Redis should be on a private network or bound to localhost
FAQ
Q: Does Sourcebot work with GitLab or Bitbucket?
A: Yes. The configuration supports multiple code host types. See the code host configuration docs for the full list.
Q: How long does initial indexing take?
A: It depends on repository size and number of repos. Small repos index in minutes; large monorepos can take an hour or more. Indexing runs in the background after startup.
Q: Can I use Sourcebot without an internet connection?
A: Yes. Once the Docker images are downloaded and repos are cloned locally, Sourcebot operates entirely offline.
Q: Is there a way to restrict access to certain repositories?
A: Access control is configured at the code host level through token scoping. There is no per-repo permission layer within Sourcebot itself at this time.
Conclusion
Sourcebot fills a specific niche: teams that want Perplexity-style code intelligence but need it self-hosted. The inline citations and cross-repo search are its strongest features, and the Docker Compose setup makes it accessible to teams without a dedicated platform engineering function. If you have been evaluating Sourcegraph Cloud or GitHub Copilot for code understanding and need the data to stay in-house, Sourcebot is worth a weekend evaluation.
Try the public demo at app.sourcebot.dev before committing to a self-hosted deployment.
Related Posts
ai-setup
Recall – Persistent Memory for Claude Code via MCP Hooks
Recall gives Claude Code a permanent memory store that survives session restarts and context compaction. Four hooks capture and restore context automatically — with cloud SaaS or self-hosted options.
2/28/2026
dev-tools
Automotive Skills Suite for AI Engineering
Evaluate Automotive Skills Suite for APQP, ASPICE, HARA, safety-plan, and DIA workflows with setup notes, governance risks, and SME review guidance.
5/28/2026
dev-tools
awesome-agentic-ai-zh Roadmap Guide
Explore awesome-agentic-ai-zh as a Chinese agentic AI learning roadmap, with setup notes, track selection, study workflow, and evaluation guidance.
5/28/2026