Skip to content

feat(web-search): add Keenable as an external search backend - #238

Open
KGKallasmaa wants to merge 1 commit into
GoDiao:mainfrom
KGKallasmaa:feat/keenable-web-search
Open

KGKallasmaa wants to merge 1 commit into
GoDiao:mainfrom
KGKallasmaa:feat/keenable-web-search

Conversation

@KGKallasmaa

Copy link
Copy Markdown

Summary

Adds Keenable as a third external WebSearch backend, after Tavily and Brave.

  • webSearch.mode: 'keenable' and webSearch.keenableApiKey in settings, added to the zod schema and the resolver.
  • In auto mode, and as the fallback when native Anthropic search fails, the order is Tavily, then Brave, then Keenable. Existing setups don't change.
  • searchWithKeenable calls POST https://api.keenable.ai/v1/search with X-API-Key, sends { query, max_results: 8 } and maps results[] to { title, url }, the same way as the other backends. Domain filters go in as site: clauses, the same as Brave.
  • Adds resolver tests to backend.test.ts.

Disclosure: I work with the Keenable team.

cc @GoDiao

Signed-off-by: KGKallasmaa <KGKallasmaa@users.noreply.github.com>
@GoDiao

GoDiao commented Nov 4, 2026

Copy link
Copy Markdown
Owner

Thanks for the PR, and for disclosing that you work with the Keenable team.

DreamCoder adds commercial services, such as provider presets or search backends, through its sponsorship program rather than as regular contributions. If Keenable is interested, please email diaoshengjia@gmail.com with a short introduction and your budget, and we can go over the options there.

We'll keep this PR on hold until then.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants