|
1 | | - |
2 | | -<div align="center"> |
3 | | -<picture> |
4 | | - <source media="(prefers-color-scheme: dark)" srcset=".github/images/logo_dark.png"> |
5 | | - <img height="150" src=".github/images/logo_light.png"> |
6 | | -</picture> |
7 | | -</div> |
8 | | -<div align="center"> |
9 | | - <div> |
10 | | - <h3> |
11 | | - <a href="https://docs.sourcebot.dev"> |
12 | | - <strong>Self Host</strong> |
13 | | - </a> · |
14 | | - <a href="https://app.sourcebot.dev"> |
15 | | - <strong>Public Demo</strong> |
16 | | - </a> |
17 | | - </h3> |
18 | | - </div> |
19 | | - |
20 | | - <div> |
21 | | - <a href="https://docs.sourcebot.dev/"><strong>Docs</strong></a> · |
22 | | - <a href="https://github.com/sourcebot-dev/sourcebot/issues/459"><strong>Roadmap</strong></a> · |
23 | | - <a href="https://github.com/sourcebot-dev/sourcebot/issues/new?template=bug_report.yml"><strong>Report Bug</strong></a> · |
24 | | - <a href="https://github.com/sourcebot-dev/sourcebot/issues/new?template=feature_request.md"><strong>Feature Request</strong></a> · |
25 | | - <a href="https://www.sourcebot.dev/changelog"><strong>Changelog</strong></a> |
26 | | - </div> |
27 | | - <br/> |
28 | | - <div> |
29 | | - </div> |
30 | | -</div> |
31 | 1 | <p align="center"> |
32 | | - <a href="mailto:team@sourcebot.dev"><img src="https://img.shields.io/badge/Email%20Us-brightgreen" /></a> |
33 | | - <a href="https://github.com/sourcebot-dev/sourcebot/actions/workflows/release-prod.yml"><img src="https://img.shields.io/github/actions/workflow/status/sourcebot-dev/sourcebot/release-prod.yml"/><a> |
34 | | - <a href="https://github.com/sourcebot-dev/sourcebot/stargazers"><img src="https://img.shields.io/github/stars/sourcebot-dev/sourcebot" /></a> |
| 2 | + <picture> |
| 3 | + <source media="(prefers-color-scheme: dark)" srcset=".github/images/logo_dark.png"> |
| 4 | + <img height="100" src=".github/images/logo_light.png" alt="Sourcebot"> |
| 5 | + </picture> |
35 | 6 | </p> |
| 7 | + |
| 8 | +<h3 align="center">Code understanding for humans and agents</h3> |
| 9 | + |
36 | 10 | <p align="center"> |
| 11 | + <a href="https://www.sourcebot.dev">Website</a> · |
| 12 | + <a href="https://docs.sourcebot.dev">Docs</a> · |
| 13 | + <a href="https://app.sourcebot.dev">Public demo</a> · |
| 14 | + <a href="https://www.sourcebot.dev/changelog">Changelog</a> |
37 | 15 | </p> |
38 | 16 |
|
39 | | -Sourcebot is a self-hosted tool that helps you understand your codebase. |
| 17 | +Sourcebot is a self-hosted code context layer for humans and AI agents. Index all your repos in one place so you and your agents can search and navigate them. |
| 18 | + |
| 19 | +## Get started |
40 | 20 |
|
41 | | -- **Ask Sourcebot:** Ask questions about your codebase and have Sourcebot provide detailed answers grounded with inline citations. |
42 | | -- **Code search:** Search and navigate across all your repos and branches, no matter where they’re hosted. |
| 21 | +Run the setup wizard: |
43 | 22 |
|
44 | | -Try it out in our [public demo](https://app.sourcebot.dev)! |
| 23 | +```sh |
| 24 | +npx setup-sourcebot |
| 25 | +``` |
45 | 26 |
|
46 | | -https://github.com/user-attachments/assets/ed66a622-e38f-4947-a531-86df1e1e0218 |
| 27 | +You'll need Node.js (24 LTS recommended), Docker, and Docker Compose. |
47 | 28 |
|
48 | | -# Features |
49 | | - |
| 29 | +This wizard walks you through indexing your repos, optionally configuring a language model provider (for [Ask Sourcebot](https://docs.sourcebot.dev/docs/features/ask/ask-sourcebot)), and then creates the config files for you and starts up Sourcebot. |
50 | 30 |
|
51 | | -## Ask Sourcebot |
52 | | -Ask Sourcebot gives you the ability to ask complex questions about your codebase in natural language. |
| 31 | +For manual setup, use [Docker Compose](https://docs.sourcebot.dev/docs/deployment/docker-compose) or the [Helm chart](https://github.com/sourcebot-dev/sourcebot-helm-chart). Check out our [docs](https://docs.sourcebot.dev/) for more info on how to configure Sourcebot. |
53 | 32 |
|
54 | | -It uses Sourcebot's existing code search and navigation tools to allow reasoning models to search your code, follow code nav references, and provide an answer that's rich with inline citations and navigable code snippets. |
| 33 | +## Code Context for Agents |
55 | 34 |
|
56 | | -https://github.com/user-attachments/assets/8212cd16-683f-468f-8ea5-67455c0931e2 |
| 35 | +Your agent can use [Sourcebot MCP](https://docs.sourcebot.dev/docs/features/mcp-server) to search repos you haven't checked out locally. For example, it can find callers of an API in other services or read the implementation for dependencies that you don't have checked out locally. |
57 | 36 |
|
58 | | -## Code Search |
59 | | -Search across all your repos/branches across any code host platform. Blazingly fast, and supports regular expressions, repo/language search filters, boolean logic, and more. |
| 37 | + |
60 | 38 |
|
61 | | -https://github.com/user-attachments/assets/3b381452-d329-4949-b6f2-2fc38952e481 |
| 39 | +The MCP server exposes code search, file reading, and symbol definitions and references for the repos you've indexed. Open **Settings → MCP** in Sourcebot to connect Claude Code, Codex, Cursor, or another MCP client. The [MCP docs](https://docs.sourcebot.dev/docs/features/mcp-server) cover setup and authentication for each client. |
62 | 40 |
|
63 | | -## Code Navigation |
64 | | -IDE-level code navigation (goto definition and find references) across all your repos. |
| 41 | +Connect repos from GitHub, GitLab, Bitbucket, Azure DevOps, or local Git directories using the [connection guides](https://docs.sourcebot.dev/docs/connections/indexing-your-code). [Permission syncing](https://docs.sourcebot.dev/docs/features/permission-syncing) controls access based on your code host's repository permissions. |
65 | 42 |
|
66 | | -https://github.com/user-attachments/assets/e2da2829-71cc-40af-98b4-7ba52e945530 |
| 43 | +## Code Search |
67 | 44 |
|
68 | | -## Built-in File Explorer |
69 | | -Explore every file across all of your repos. Modern UI with syntax highlighting, file tree, code navigation, etc. |
| 45 | +[Code Search](https://docs.sourcebot.dev/docs/features/search/code-search) lets you search across all your indexed repos and branches in one place. Find uses of a dependency, track down a function, or look for a pattern across services without cloning each repo. |
70 | 46 |
|
71 | | -https://github.com/user-attachments/assets/31ec0669-707d-4e03-b511-1bc33d44197a |
| 47 | +Use regular expressions and boolean queries, then narrow the results by repo, file, language, or symbol definition. Results include syntax-highlighted code, with repo and language filters alongside them. |
72 | 48 |
|
73 | | -# Deploy Sourcebot |
| 49 | +Try it: [example search](https://app.sourcebot.dev/search?query=render%20lang%3Atypescript) in the public demo. |
74 | 50 |
|
75 | | -Sourcebot can be deployed in seconds using Docker Compose. Visit our [docs](https://docs.sourcebot.dev/docs/deployment/docker-compose) for more information. |
| 51 | +[](https://app.sourcebot.dev/search?query=render%20lang%3Atypescript) |
76 | 52 |
|
77 | | -1. Download the docker-compose.yml file |
78 | | -```sh |
79 | | -curl -o docker-compose.yml https://raw.githubusercontent.com/sourcebot-dev/sourcebot/main/docker-compose.yml |
80 | | -``` |
| 53 | +## Ask Sourcebot |
81 | 54 |
|
82 | | -2. In the same directory as the `docker-compose.yml` file, create a [configuration file](https://docs.sourcebot.dev/docs/configuration/config-file). The configuration file is a JSON file that configures Sourcebot's behaviour, including what repositories to index, language model providers, auth providers, and more. |
83 | | -```sh |
84 | | -echo '{ |
85 | | - "$schema": "https://raw.githubusercontent.com/sourcebot-dev/sourcebot/main/schemas/v3/index.json", |
86 | | - // Comments are supported. |
87 | | - // This config creates a single connection to GitHub.com that |
88 | | - // indexes the Sourcebot repository |
89 | | - "connections": { |
90 | | - "starter-connection": { |
91 | | - "type": "github", |
92 | | - "repos": [ |
93 | | - "sourcebot-dev/sourcebot" |
94 | | - ] |
95 | | - } |
96 | | - } |
97 | | -}' > config.json |
98 | | -``` |
| 55 | +[Ask Sourcebot](https://docs.sourcebot.dev/docs/features/ask/ask-sourcebot) answers questions about your codebase, including repos you haven't checked out locally. Ask how a feature works or what a migration would involve. [Connectors](https://docs.sourcebot.dev/docs/features/ask/connectors) let Ask access your apps and services with your permissions, so it can pull in context and take actions like creating a Linear or Jira issue with its findings. It searches your code and follows references using the same tools as the MCP server. |
99 | 56 |
|
100 | | -3. Update the secrets in the `docker-compose.yml` and then run Sourcebot using: |
101 | | -```sh |
102 | | -docker compose up |
103 | | -``` |
| 57 | +Open cited code alongside the answer, explore generated diagrams, and share the conversation with your team. Ask runs on a [language model provider you configure](https://docs.sourcebot.dev/docs/configuration/language-model-providers) (Bring Your Own Key), so you control where your code is sent. |
104 | 58 |
|
105 | | -4. Visit `http://localhost:3000` to start using Sourcebot |
106 | | -</br> |
| 59 | +Try it: [explore an example Ask Sourcebot conversation](https://app.sourcebot.dev/chat/cmt1kzlyv0062oq5axens5rdl) in the public demo. |
107 | 60 |
|
108 | | -To configure Sourcebot (index your own repos, connect your LLMs, etc), check out our [docs](https://docs.sourcebot.dev/docs/configuration/config-file). |
| 61 | +[](https://app.sourcebot.dev/chat/cmt1kzlyv0062oq5axens5rdl) |
109 | 62 |
|
110 | | -> [!NOTE] |
111 | | -> Sourcebot collects <a href="https://app.sourcebot.dev/~/search?query=captureEvent%5C(%20repo%3Asourcebot">anonymous usage data</a> by default to help us improve the product. No sensitive data is collected, but if you'd like to disable this you can do so by setting the `SOURCEBOT_TELEMETRY_DISABLED` environment |
112 | | -> variable to `true`. Please refer to our [telemetry docs](https://docs.sourcebot.dev/docs/overview#telemetry) for more information. |
| 63 | +Try both in the [public demo](https://app.sourcebot.dev). See [pricing](https://www.sourcebot.dev/pricing) for plan details. |
113 | 64 |
|
114 | | -# Build from source |
115 | | ->[!NOTE] |
116 | | -> Building from source is only required if you'd like to contribute. If you'd just like to use Sourcebot, we recommend checking out our self-hosting [docs](https://docs.sourcebot.dev/self-hosting/overview). |
117 | 65 |
|
118 | | -If you'd like to build from source, please checkout the `CONTRIBUTING.md` file for more information. |
| 66 | +## Feedback |
119 | 67 |
|
| 68 | +[Report a bug or request a feature](https://github.com/sourcebot-dev/sourcebot/issues/new/choose). |
0 commit comments