Skip to content

Semantic code search · free · no sign-in


Paste any public GitHub repo. grepless splits it into functions and classes, embeds every one, and finds the code you describe even when you don't know what it's called.

Try
repos indexed
0
chunks embedded
0
searches run
0
TypeScriptPythonGoRustJavaC#C++RubyPHPJavaScriptShellCSSMarkdown

Live · real results

Ask a real codebase a real question.

These results come from the live index of sindresorhus/ky right now. None of them are canned.

Open the ky workspace

Under the hood

A real retrieval system, not a wrapper around chat.

1import { sleep } from "./time"
2
3export class Client {
4 async retry(fn, tries = 3) {
5 for (let i = 0; i < tries; i++) {
6 try { return await fn() }
7 catch { await sleep(2 ** i * 100) }
8 }
9 }
10 refresh(token) {
11 return this.auth.renew(token)
12 }
13}
imports
method Client.retry
method Client.refresh

Chunks follow the syntax tree

tree-sitter parses 13 languages. Each function, method and class becomes one searchable chunk that keeps its qualified name.

semantic

1. retryDelay2. backoff3. shouldRetry

keyword

1. shouldRetry2. retryAfter3. retryDelay

fused · 1/(60+rank)

1. retryDelay0.03252. shouldRetry0.03143. backoff0.0303

Hybrid ranking

Vector top-40 and full-text top-40, fused with Reciprocal Rank Fusion.

Matchedonmeaningandkeywords:shares“retry”and“delay”—seelines151–153.

Says why it matched

Meaning, keywords or both, which words you share, and the lines to read.

gte-small

384

dims · int8

0 API keys

Model runs in-house

gte-small runs inside the serverless function, so there's no embedding API and no key.

src/auth.tsc03e…
src/retry.tsa91f…
src/http/client.tsc03e…
src/parse.tsa91f…

Re-index only what changed

Files are hashed. A new commit re-embeds only files whose content changed.

From URL to answer in five steps.

See how it works
  1. 01

    Fetch

    one tarball · streamed

  2. 02

    Filter

    no deps · no binaries

  3. 03

    Chunk

    tree-sitter AST

  4. 04

    Embed

    gte-small · 384-d

  5. 05

    Retrieve

    HNSW ⊕ full-text · RRF

Recently indexed

Explore all →

Your repo, searchable in about a minute.

No sign-in, no API key, no install. Paste a public GitHub repo and start asking.