Target Repository URL
https://github.com/zaidmukaddam/scira
You.com API(s)
search
Estimated Complexity
medium
Integration Description
Scira (11.8K★) is an open Perplexity alternative — search is the product, so provider quality is the maintainer's own success metric rather than a checkbox.
lib/tools/web-search.ts already defines a SearchStrategy interface with a createSearchStrategy factory, and users pick the provider in Settings (persisted to scira-search-provider). Adding You.com is a new strategy class plus registration in the provider union, the settings UI, and the env schema.
Target Repo Contributing Guidelines
https://github.com/zaidmukaddam/scira/blob/main/.github/PULL_REQUEST_TEMPLATE.md
Planned Approach
YouSearchStrategy implements SearchStrategy in lib/tools/web-search.ts, registered in WEB_SEARCH_PROVIDERS, normalizeWebSearchProvider, and createSearchStrategy. Plus env/server.ts (optional key), .env.example, lib/utils.ts (searchProviderInfo), components/settings-dialog.tsx (provider picker), components/ui/form-component.tsx (in-composer picker), and components/chat-interface.tsx (stored-preference type).
Keyless by default: no YDC_API_KEY → api.you.com/v1/agents/search; key set → api.you.com/v1/search with X-API-Key. Endpoint and headers chosen together. YDC_API_KEY is registered as optional in the env schema, unlike every other search key in this repo, which are all z.string().min(1).
No SDK — plain fetch, so no new dependency.
Status Checklist
Links
Target repo issue: none — no issue-first requirement; externally authored PRs merge here regularly
Target repo PR: zaidmukaddam/scira#256
Additional Notes
Scope correction — Tavily is not the web-search incumbent. The brief listed Tavily as primary with Exa and Firecrawl also wired. In current main, lib/tools/web-search.ts implements exactly three strategies — Exa (default), Parallel AI, and Firecrawl — and @tavily/core survives only in lib/tools/stock-chart.ts for finance news. Any head-to-head eval should be against Exa, not Tavily.
Eval is not done and is blocked. The brief asks for a benchmark before opening the maintainer conversation. That needs an EXA_API_KEY (and ideally PARALLEL_API_KEY / FIRECRAWL_API_KEY) to run head-to-head on his own harness. Not available here. The integration is shipped so the eval can be run against a working provider; the conversation should wait for a number.
Merge climate is good. ~11 externally-authored PRs merged in the last 60, including vendor-authored work (yorkeccak, Valyu, merged "feat: upgrade stock mode"). No CLA, no issue-first requirement.
Repo hygiene notes: bun run lint is broken on main (no eslint.config.* present, ESLint 10 requires flat config). Prettier is not enforced — settings-dialog.tsx, env/server.ts, and web-search.ts are all unformatted on main. bun run typecheck (tsgo) is the real gate and is clean.
No official You.com SVG mark is publicly served (you.com/favicon.svg 307s to sign-in; only a 16×16 .ico is reachable). The provider row uses a text mark with a comment pointing at /you-color.svg — worth supplying the real asset in a follow-up.
User-Agent shipped: Scira youdotcom-integration/zaidmukaddam-scira (case 1). Sent on both the keyed and keyless paths, You.com hosts only.
UTM: none applicable — the diff places no human-clickable you.com link. The provider row is a text mark and there is no docs surface in this repo.
Target Repository URL
https://github.com/zaidmukaddam/scira
You.com API(s)
search
Estimated Complexity
medium
Integration Description
Scira (11.8K★) is an open Perplexity alternative — search is the product, so provider quality is the maintainer's own success metric rather than a checkbox.
lib/tools/web-search.tsalready defines aSearchStrategyinterface with acreateSearchStrategyfactory, and users pick the provider in Settings (persisted toscira-search-provider). Adding You.com is a new strategy class plus registration in the provider union, the settings UI, and the env schema.Target Repo Contributing Guidelines
https://github.com/zaidmukaddam/scira/blob/main/.github/PULL_REQUEST_TEMPLATE.md
Planned Approach
YouSearchStrategy implements SearchStrategyinlib/tools/web-search.ts, registered inWEB_SEARCH_PROVIDERS,normalizeWebSearchProvider, andcreateSearchStrategy. Plusenv/server.ts(optional key),.env.example,lib/utils.ts(searchProviderInfo),components/settings-dialog.tsx(provider picker),components/ui/form-component.tsx(in-composer picker), andcomponents/chat-interface.tsx(stored-preference type).Keyless by default: no
YDC_API_KEY→api.you.com/v1/agents/search; key set →api.you.com/v1/searchwithX-API-Key. Endpoint and headers chosen together.YDC_API_KEYis registered as optional in the env schema, unlike every other search key in this repo, which are allz.string().min(1).No SDK — plain
fetch, so no new dependency.Status Checklist
youdotcom-integration/<owner>-<repo>)Links
Target repo issue: none — no issue-first requirement; externally authored PRs merge here regularly
Target repo PR: zaidmukaddam/scira#256
Additional Notes
Scope correction — Tavily is not the web-search incumbent. The brief listed Tavily as primary with Exa and Firecrawl also wired. In current
main,lib/tools/web-search.tsimplements exactly three strategies — Exa (default), Parallel AI, and Firecrawl — and@tavily/coresurvives only inlib/tools/stock-chart.tsfor finance news. Any head-to-head eval should be against Exa, not Tavily.Eval is not done and is blocked. The brief asks for a benchmark before opening the maintainer conversation. That needs an
EXA_API_KEY(and ideallyPARALLEL_API_KEY/FIRECRAWL_API_KEY) to run head-to-head on his own harness. Not available here. The integration is shipped so the eval can be run against a working provider; the conversation should wait for a number.Merge climate is good. ~11 externally-authored PRs merged in the last 60, including vendor-authored work (
yorkeccak, Valyu, merged "feat: upgrade stock mode"). No CLA, no issue-first requirement.Repo hygiene notes:
bun run lintis broken onmain(noeslint.config.*present, ESLint 10 requires flat config). Prettier is not enforced —settings-dialog.tsx,env/server.ts, andweb-search.tsare all unformatted onmain.bun run typecheck(tsgo) is the real gate and is clean.No official You.com SVG mark is publicly served (
you.com/favicon.svg307s to sign-in; only a 16×16.icois reachable). The provider row uses a text mark with a comment pointing at/you-color.svg— worth supplying the real asset in a follow-up.User-Agent shipped:
Scira youdotcom-integration/zaidmukaddam-scira(case 1). Sent on both the keyed and keyless paths, You.com hosts only.UTM: none applicable — the diff places no human-clickable you.com link. The provider row is a text mark and there is no docs surface in this repo.