···1313 "github.com/rs/zerolog/log"
1414)
15151616+const (
1717+ // Public Bluesky API
1818+ typeaheadProviderBluesky = "public.api.bsky.app"
1919+ // waow.tech https://tangled.org/zzstoatzz.io/typeahead
2020+ typeaheadProviderWaow = "typeahead.waow.tech"
2121+)
2222+1623// defaultHTTPClient is a shared HTTP client with connection pooling.
1724// Reusing http.Client is recommended by the Go documentation as it
1825// manages connection pooling and is safe for concurrent use.
···366373367374 // Try using the public API endpoint with typeahead parameter
368375 // Some PDS instances support public search
369369- searchURL := fmt.Sprintf("https://public.api.bsky.app/xrpc/app.bsky.actor.searchActorsTypeahead?q=%s&limit=5", query)
376376+ searchURL := fmt.Sprintf(
377377+ "https://%s/xrpc/app.bsky.actor.searchActorsTypeahead?q=%s&limit=5",
378378+ typeaheadProviderWaow,
379379+ query,
380380+ )
370381 resp, err := apiClient.Get(searchURL)
371382 if err != nil {
372383 log.Warn().Err(err).Str("query", query).Msg("Failed to search actors")