Commit graph

264 commits

Author SHA1 Message Date
Brendan Kellam
b05fc7a0c8
fix(backend): Explicitly set refspec on fetch (#497) 2025-09-08 16:15:58 -04:00
Brendan Kellam
2309b67999
chore(web): Disable page scroll when using arrow keys on search suggestions box (#493) 2025-09-06 12:16:57 -04:00
Brendan Kellam
a74d070775
feat(ask_sb): Add support for queryParams to OpenAI compatible language model providers (#490) 2025-09-04 18:02:49 -04:00
Brendan Kellam
d694330998
fix(worker): Fix "attempting to index 0 total files" zoekt issue (#488) 2025-09-04 11:14:29 -04:00
Brendan Kellam
d4cb532e40
fix(web): Fix error when navigating to paths with percent symbols (#485)
* fix

* changelog
2025-09-01 11:45:05 -04:00
bkellam
2241217b0b fix(worker): First check keys before unsetting them 2025-09-01 10:21:08 -04:00
Brendan Kellam
2b423ba7e9
fix(worker): Remove setting remote.origin.url for remote git repositories (#483) 2025-08-31 13:52:51 -04:00
Brian Mcclaugherty
ca9069e0fa
Add AWS Bedrock sessionToken (#478)
* add aws bedrock sessionToken

* update changelog for bedrock sessionToken

---------

Co-authored-by: Brendan Kellam <bshizzle1234@gmail.com>
2025-08-25 10:32:59 -04:00
Brendan Kellam
d9fa221d72
chore(web): Upgrade to NextJS 15 (#477) 2025-08-22 14:48:29 -04:00
Brendan Kellam
b36de3412d
experiment: Self-serve repository indexing for public GitHub repositories (#468) 2025-08-18 15:24:40 -04:00
bkellam
6fc771a0d3 Update references to github discussions over to issues 2025-08-12 14:50:51 -04:00
Brendan Kellam
111e1c3cee
feat(ask_sb): Add headers param to config to allow users to specify custom headers (#449) 2025-08-08 14:49:00 -07:00
Brendan Kellam
a9a61e7338
fix(ask_sb): Allow unauthed generation of titles for a chat 2025-08-08 14:44:59 -07:00
Brendan Kellam
4f2644daa2
fix(ask_sb): Fix long generation times on first message in thread (#447) 2025-08-07 21:56:56 -07:00
Brendan Kellam
0773399392
feat(ask_sb): Add reasoningEffort option to openai provider (#446) 2025-08-07 17:26:51 -07:00
Brendan Kellam
6215a8e949
chore(docs): Remove dead links to terms / privacy. Also change some MIT -> FSL references. 2025-08-07 17:24:00 -07:00
Brendan Kellam
26c553c1c3
chore(ask_sb): Bump AI SDK libs (#444) 2025-08-07 13:16:53 -07:00
Brendan Kellam
a3d9711178
feat(gerrit): Multi-branch indexing support for Gerrit (#433) 2025-08-05 16:35:47 -07:00
Brendan Kellam
01dee161b3
fix(github): Fix issue with users not getting picked up in GitHub config (#428)
* fix

* changelog
2025-08-04 17:39:28 -07:00
Brendan Kellam
65d3cd9dc6
feat(ask_sb): OpenAI compatible language models (#424)
* wip

* docs + add option for api key

* feedback

* nit
2025-08-04 17:25:54 -07:00
bkellam
68107da7dc @sourcebot/mcp v1.0.4 2025-08-04 16:14:09 -07:00
Brendan Kellam
821c6ba895
fix(mcp): Remove logs interfering with the stdio transport (#429) 2025-08-04 16:12:10 -07:00
Brendan Kellam
14900e47e7
chore(ask_sb): Bump Vercel SDK to official V5 release 🎉 (#417) 2025-07-31 17:50:31 -07:00
Michael Sukkarieh
e47fdb51db
fix(repoManager): Don't fetch files for each repo on validation (#414) 2025-07-31 17:50:04 -07:00
Brendan Kellam
48269781b7
chore(ask_sb): Add PostHog telemetry event for new chat thread creation (#418) 2025-07-31 17:49:06 -07:00
Brendan Kellam
163e558b9a
fix(ask_sb): Fix '413 content too large' error (#416) 2025-07-31 16:38:10 -07:00
bkellam
a16bf886fa chore(ask_sb): add background color to right column of the tutorial dialog 2025-07-29 23:41:32 -07:00
msukkari
11b97a54d0 chat toolbar ui nits 2025-07-29 22:19:36 -07:00
msukkari
b122e0375b change link for add repo button 2025-07-29 21:30:28 -07:00
msukkari
9fb5ad353c more citation color changes: 2025-07-29 18:52:23 -07:00
msukkari
5efe6a8721 make inline citations pop 2025-07-29 18:15:48 -07:00
msukkari
f888085952 demo card sizing nit and hide scroll bars 2025-07-29 17:14:24 -07:00
Michael Sukkarieh
53edd44462
feat(ask_sb): Add back search scope requirement and other UI changes (#411)
* Revert "Remove search scope constraint"

This reverts commit e69ac0d806.

* add llm section to onboard final page

* add select all button

* add repo snapshot to agentic search and other ui nits

* refactor demo repo index cta into repo snapshop

* changelog
2025-07-29 15:50:36 -07:00
Brendan Kellam
211ad8fb12
feat(ask_sb): Improved search tool ; tools for listing / searching repos ; removed search scope constraint (#400)
* wip

* Add additional tools for repo searching and listing

* Remove search scope constraint

* Only show the selected search scopes when there is > 0

* changelog

* fix build
2025-07-29 10:41:01 -07:00
Brendan Kellam
4343b3c3d5
feat(ask_sb): Add onboarding tutorial (#408) 2025-07-28 23:46:26 -07:00
Michael Sukkarieh
45416a41d1
feat(misc): Add GitHub star toast (#409)
* github star toast

* changelog
2025-07-28 23:39:32 -07:00
dependabot[bot]
104c8a8416
chore(deps): bump next from 14.2.26 to 14.2.30 (#406)
* chore(deps): bump next from 14.2.26 to 14.2.30

Bumps [next](https://github.com/vercel/next.js) from 14.2.26 to 14.2.30.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/compare/v14.2.26...v14.2.30)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 14.2.30
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* changelog

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: bkellam <bshizzle1234@gmail.com>
2025-07-28 22:05:15 -07:00
Brendan Kellam
da6e913628
chore(ask_sb): Bump AI SDK dependencies (#404)
* w

* changelog
2025-07-28 20:38:16 -07:00
msukkari
f62a492ab3 properly log zoekt index exec 2025-07-28 20:12:46 -07:00
Michael Sukkarieh
6662d20ee8
Search scope refactor (#405)
* new demo card ui

* rename search context to search scope

* rename everything to use search scope

* add changelog entry
2025-07-28 18:12:21 -07:00
msukkari
be9979f18a chore(demo): add posthog events and link to docs 2025-07-27 23:30:53 -07:00
msukkari
2ab0b988e4 limit to one search context in demo 2025-07-27 22:12:02 -07:00
Michael Sukkarieh
f720ec945d
Add demo example cards (#401)
* wip demo example path

* load demo example

* nit: format

* refactor demo cards to their own component

* ui nits

* more ui nits

* feedback
2025-07-27 21:26:56 -07:00
Michael Sukkarieh
aebd8df193
feat(search_contexts): Add ability to include/exclude connections in search contexts (#399)
* implement connection filter for search contexts

* changelog
2025-07-27 10:11:58 -07:00
Brendan Kellam
3e50469cf7
fix(web): Fix multiple writes race condition on config file watcher (#398) 2025-07-26 16:42:25 -07:00
Michael Sukkarieh
d0f9d43624
feat(ask_sb): Add search context into ask sourcebot toolbar (#397)
* new context selector

* ui nits

* move search context fetch to server

* feedback

* search context for chat suggestion, nits

* type nit

* fix minor ui nit
2025-07-26 16:16:07 -07:00
msukkari
430c0a1fe9 add env vars for google thinking config 2025-07-25 20:08:24 -07:00
Brendan Kellam
41addb50a7
fix(ask_sb): Various improvements to the references system (#396) 2025-07-25 18:34:33 -07:00
Brendan Kellam
efc9656b6e
chore(ask_sb): Allow for multiple user feedback (#395) 2025-07-25 13:21:44 -07:00
drew-u410
4e34406386
[bug] onboarding: fix infinite loop when using GCP IAP (#381)
Co-authored-by: Michael Sukkarieh <michael.sukkarieh@mail.mcgill.ca>
2025-07-25 12:03:50 -07:00
bkellam
74e37d129c fix: put selected repos at the top of the repo selector list. Aslo retain scroll position 2025-07-25 09:32:33 -07:00
bkellam
1cc23818c2 Update AI SDK dependencies 2025-07-24 16:14:59 -07:00
bkellam
732505be0e fix build 2025-07-24 12:13:06 -07:00
bkellam
e150310c98 fix: Fix chat title generation. Also improve how errors are reported 2025-07-24 12:05:39 -07:00
msukkari
d46615c4b2 add retry for config loading 2025-07-24 11:35:00 -07:00
msukkari
63d3123fa7 hide member page if not owner 2025-07-24 10:37:15 -07:00
Brendan Kellam
dbd8ef7fdb
fix: Fix issue with ambiguous references (#393) 2025-07-24 10:21:00 -07:00
msukkari
da8d49f8d9 add additional model providers 2025-07-23 16:53:43 -07:00
bkellam
f0fd44fac1 fix: Add bounds checks to codemirror code folding extension and other places to avoid crashes. 2025-07-23 16:32:39 -07:00
bkellam
ea655f4d4a fix: Add citation repairing. Also remove revision as a tool param. 2025-07-23 15:50:23 -07:00
bkellam
11099695da fix: Move search mode selection into a cookie to avoid SSR flashes 2025-07-23 14:45:55 -07:00
bkellam
78c07b814b Add sentry capture exception 2025-07-23 13:56:39 -07:00
bkellam
36ae7cfe52 Add additional debug logs. Also fix build warning about environment variables 2025-07-23 12:03:44 -07:00
Brendan Kellam
2b0dac4782
feat: Ask Sourcebot (#392)
Co-authored-by: msukkari <michael.sukkarieh@mail.mcgill.ca>
2025-07-23 11:25:15 -07:00
Brendan Kellam
efb4eb984a
fix(gitlab): Add configurable query timeout to GitLab client (#390)
* fix

* changelog
2025-07-20 11:59:15 -07:00
msukkari
eb00d72499 fix bug with anonymous access toggle 2025-07-19 16:18:58 -07:00
Michael Sukkarieh
aac1d4529e
Add anonymous access option to core (#385)
* migrate anonymous access logic out of ee

* add anonymous access toggle

* handle anon toggle properly based on perms

* add forceEnableAnonymousAccess setting

* add docs for access settings

* change forceEnableAnonymousAccess to be an env var

* add FORCE_ENABLE_ANONYMOUS_ACCESS to list in docs

* add back the enablePublicAccess setting as deprecated

* add changelog entry

* fix build errors

* add news entry for anonymous access

* feedback
2025-07-19 14:04:41 -07:00
Gabriel Dugny
9b13492cb3
chore: Misc typos (UI, docs, code...), Makefile PATH with spaces (#369)
* chore: Fix misc typos (UI, docs, code...)

* chore(dev): Support PATH with spaces in Makefile

E.g. `Application Support` on MacOS

* chore: Typos in schema v2 description

* chore: more typos

* chore(dev): Add _typos.toml
2025-07-16 11:59:01 -07:00
Brendan Kellam
38b2749580
chore: Update docs for vscode MCP GA 2025-07-15 08:53:14 -07:00
Michael Sukkarieh
173a56ab64
Revamp onboarding flow (#376)
* sign up copy nits

* first pass at new onboarding page

* wip join onboard logic

* refactor auth provider fetch logic

* add member approval and invite link flag logic

* update join request flow and remove jit logic

* onboard guard

* nits, onboard role check, invite link enabled check

* fix bg color issue in onboarding page

* refactor onboard UI

* ui nits and more onboarding resource cards

* revamp auth docs

* change member approval default behavior and updated docs

* merge prisma migrations

* add id to resource card

* feedback

* feedback

* feedback and fixed build

* settings drop down UI nit

* ui nits

* handle join when max capacity case

* add news data for member toggle

* refactor for public access case

* add iap bridge to onboard logic

* fetch member approval req and invite link enabled flag on server

* ui nits

* fix invite link enable toggle snapping issue

* ui nits

* styling and ui nits, pass in invite id from server

* add mcp resource in onboard step

* get invite link in server

* fix build issue

* refactor docs on config

* minor doc nit
2025-07-14 20:14:41 -07:00
Brendan Kellam
1384dd870e
fix(browse): Fix issue where files would sometimes never load (#365) 2025-07-14 16:07:09 -07:00
drew-u410
d9d0146c48
[indexing] make retry configurable (#377) 2025-07-14 12:31:34 -07:00
Chris Roberts
ebf6721836
Correctly build URLs to file paths containing spaces (#364)
Previously, such paths would have their spaces replaced with `/`s,
breaking external links to the file.

Fixes #249
2025-06-24 11:57:55 -07:00
Michael Sukkarieh
1c790ec169
Adds code navigation and highlighting support for Tcl (#362)
* use new tcl codemirror package

* update to new tcl version:

* add changelog entry
2025-06-21 12:10:11 -07:00
Michael Sukkarieh
4bb93c9f3e
feat(analytics): Adds analytics dashboard (#358)
* add deps

* hook up dau from audit table to analytics page

* add audit event for code nav

* analytics dashboard

* add changelog entry

* add news entry

* smaller video and news data nit

* feedback
2025-06-20 14:57:05 -07:00
Brendan Kellam
fb2ef05172
fix(invites): Fix regression to invite creation (#359) 2025-06-20 12:49:25 -07:00
msukkari
10f9f6b6a3 mcp v1.0.3 2025-06-18 11:32:00 -07:00
msukkari
a0a6ab22d8 add news entry for audit logs 2025-06-18 11:01:09 -07:00
Michael Sukkarieh
5438298d61
feat(audit-logging): Adds audit logging support (#355)
* add audit factory skeleton

* add additional audit events

* add more audit logs

* delete account join request when redeeming an invite

* add audit event for account request removed

* wip api to fetch audits

* add check for audit with public access and entitlement

* fix issues with merge

* add docs for audit logs

* add proper audit log for audit fetch and proper handling of api key hash in audit

* format nit

* feedback
2025-06-18 10:50:36 -07:00
Brendan Kellam
1d95e82b95
chore(api): Changed the search api to return raw source (instead of base64 encoding) (#356)
This PR alters the behaviour of the search api (and all apis that depend on it) to return raw source code instead of a base64 encoding. Reasoning: we are decoding it on the client in multiple different places, so it would be beneficial to decode it in a single spot.

**Note**: This is a **breaking change** to the API surface. However, since the API surface is still unofficial/unsupported, I will roll this as a patch version change. See #101
2025-06-17 15:58:04 -07:00
Brendan Kellam
22d548e171
fix(search-contexts): Fix issue where a repository would not appear in a search context if it was created after the search context was created (#354)
## Problem

If a repository is added **after** a search context (e.g., a new repository is synced from the code host), then it will never be added to the context even if it should be included. The workaround is to restart the instance.

## Solution

This PR adds a call to re-sync all search contexts whenever a connection is successfully synced. This PR adds the `@sourcebot/shared` package that contains `syncSearchContexts.ts` (previously in web) and it's dependencies (namely the entitlements system).

## Why another package?

Because the `syncSearchContexts` call is now called from:
1. `initialize.ts` in **web** - handles syncing search contexts on startup and whenever the config is modified in watch mode. This is the same as before.
2. `connectionManager.ts` in **backend** - syncs the search contexts whenever a connection is successfully synced.

## Follow-up devex work
Two things:
1. We have several very thin shared packages (i.e., `crypto`, `error`, and `logger`) that we can probably fold into this "general" shared package. `schemas` and `db` _feels_ like they should remain separate (mostly because they are "code-gen" packages).
2. When running `yarn dev`, any changes made to the shared package will only get picked if you `ctrl+c` and restart the instance. Would be nice if we have watch mode work across package dependencies in the monorepo.
2025-06-17 14:04:25 -07:00
Michael Sukkarieh
9d86052ff5
Delete account join request when redeeming an invite (#352)
* delete account join request when redeeming an invite

* fix account request fetch
2025-06-13 17:22:57 -07:00
Brendan Kellam
cf8fdd94f6
chore: Move bitbucket dependency to backend from workspace root (#351) 2025-06-13 16:53:05 -07:00
Michael Sukkarieh
4fbf8059d0
fix web build warnings (#348) 2025-06-13 10:24:25 -07:00
Brendan Kellam
5ebd07ffe1
fix: Add default debounce & staleTime to file/folder prefetching (#346) 2025-06-11 13:51:42 -07:00
Michael Sukkarieh
65d6e928b8
Fix repo column header styling (#344)
* fix repo column header styling

* add changelog entry
2025-06-11 09:34:24 -07:00
Gabriel Dugny
e423b56f42
fix(gitlab): Properly handle auth for Gitlab project avatars (#345) 2025-06-11 09:33:53 -07:00
Michael Sukkarieh
1ea377e7d6
Clean up successful and failed jobs (#343)
* clean up

* annoying log nit

* feedback
2025-06-10 18:07:07 -07:00
drew-u410
9be5522c7b
[selection] highlight clarity (#342) 2025-06-10 09:23:03 -07:00
Brendan Kellam
37ce151603
feature: basic file search (#341) 2025-06-09 12:51:35 -07:00
drew-u410
eb6d58d6d3
[search/browse] link repo name to file browser; link code image to external (#340) 2025-06-07 12:27:29 -07:00
Michael Sukkarieh
d29d3fc7f2
Added hover tooltip for long repo names in filter panel (#338)
* handle long repo names better in the UI

* changelog

* clean up hover UI

* cleanup unused logic

* simplify

* remove unused import

* changelog update
2025-06-06 13:16:19 -07:00
Michael Sukkarieh
0f3cdb7dd7
Add repo index validation (#339)
* add repo index validation

* add entry to changelog
2025-06-06 13:15:27 -07:00
Brendan Kellam
27fb5ad294
feature: File explorer (#336) 2025-06-06 12:38:16 -07:00
Michael Sukkarieh
8dc41a22b9
Fix repo images in authed instance case and add manifest json (#332)
* wip fix repo images

* fix config imports

* add manifest json

* more logos for manifest

* add properly padded icon

* support old gitlab token case, simplify getImage action, feedback

* add changelog entry

* fix build error
2025-06-06 10:50:13 -07:00
Michael Sukkarieh
397262ecf7
Adds support for encrypted license keys (#335)
* implement encrypted key logic

* cache public key

* add SOURCEBOT_PUBLIC_KEY_PATH to docs

* feedback
2025-06-05 22:18:52 -07:00
Brendan Kellam
ee88353e13
chore: Add separate login / signup screens (#331) 2025-06-04 16:42:52 -07:00
Brendan Kellam
46d7ca9ff4
feature: Add keyboard shortcuts for goto def & find all refs (#329) 2025-06-03 19:30:18 -07:00
Michael Sukkarieh
9227b3caba
Add support for GCP IAP JIT account provisioning (#330)
* initial gcp iap implementation

* gcp iap working

* add docs for gcp iap

* feedback

* changelog
2025-06-03 19:28:38 -07:00
drew-u410
749bfc28f3
[dev + copy button] add / update local dev w/docker compose; add copy button to the right of filenames (#328) 2025-06-03 08:52:59 -07:00