$npx skillfedfor your agent
REPO

superagents-lab/jev-search

Jev Search is a plain-language web search front-end that deliberately withholds generated answers. You type a question, a model called Jev interprets it, derives a query, picks sources and a time range, and then Search1API fans out to whatever engines are relevant — Google, DuckDuckGo, Yandex for the open web; dedicated vertical engines for Hacker News, Reddit, GitHub, arXiv, YouTube, Wikipedia, IMDb and others. What comes back is ranked links and snippets with visible relevance scores, not a synthesized paragraph.

The architecture is honest about what it is. Jev scores each result for relevance, and results are merged by URL, ordered by relevance, engine agreement and original rank, then streamed as each engine lane finishes. Lower-scoring results are grouped separately rather than hidden. One engine failing does not suppress results from the others — a failed source shows a warning, not a silent zero count. Each engine has a 15-second deadline inside an overall 30-second request deadline, and successful non-empty responses are cached for anywhere from 10 minutes to 6 hours depending on the time window queried.

The Jev model itself is available through three providers — TypeSafe's own API, Vercel AI Gateway, or Cloudflare Workers AI — and the app chains them by preference, falling through on HTTP 402, 429, or 5xx responses. Client errors like 400 or 401 are not retried. The intent event in the streaming response names which provider actually answered, so you can see where the judgment came from.

What makes this worth examining for agent builders is the explicit separation of intent interpretation from search execution. Jev answers questions about the request — what source, what time range, what query — and those judgments are exposed as editable chips in the UI. The relevance percentages are model judgments, not verified accuracy, and the README says so plainly. Date filtering falls back from Search1API's published date to snippet dates when unavailable, and unknown dates can persist in results. That kind of documented fallibility is more useful than a system that pretends otherwise.

The source list is capped at 12 entries before filtering; longer lists return HTTP 400 before any provider is called. Repeated valid sources are merged, preserving first occurrence, so you cannot multiply search calls by repeating a source name. The rate limiter runs at 10 searches per IP per minute per Cloudflare location — not a global spending cap, and filter changes count toward the same limit.

Deploying your own instance requires Node.js 22.12 or later, pnpm 10.8.0, a Search1API key, and credentials for at least one Jev provider. The whole thing runs on Cloudflare Workers with KV for caching. The README is unusually complete about what data goes where: search text reaches Search1API and the Jev provider, result titles and snippets go to Jev for scoring, and the application itself does not record queries or clicks.

A no-generated-answers search front-end that exposes model judgments as editable filters and documents its fallbacks honestly.

Install it

Sources & links