Skip to content

jev-semgrep

sys1grep: a zero-dependency grep that finds lines by meaning, scoring each line with Jev, with AND/OR/NOT and cross-language queries.

ServicebetaCustom license

Overview

sys1grep (renamed from jev-semgrep to avoid a trademark clash and to cover future System One models) is a grep that finds lines by what they mean. For every line it asks Jev whether the line matches a meaning such as 'network failure', gets a probability and applies a threshold. Meanings combine with AND, OR and NOT.

It is a single Node.js file with no dependencies; 30 lines go into each request and 8 requests run concurrently, so the README says a 210-line file finishes in under a second. It is language-agnostic: a meaning in one language finds matching lines in others without translation, as shown with English and Japanese queries over mixed-language support tickets, and with French, Russian, German, Spanish, Chinese and Korean examples. It works as a git subcommand, has a 13-file test suite per the list summary, and offers a landing-page demo and a Japanese write-up of the design. Old configuration names still work for one minor release with deprecation notices.

What the decision model decides

TypeQuestionAnswers
Yes / noDoes this line match the meaning (e.g. 'customer is angry or frustrated')?yes · no

How it works

  1. Provide one or more meanings with optional AND/OR/NOT
  2. Batch 30 lines per request, 8 requests in parallel
  3. Jev returns a probability per line
  4. Print lines above the threshold (optionally with scores)

Strengths

  • Cross-language matching without translation
  • Zero dependencies and fast batching
  • Boolean composition of meanings

Caveats

  • Lines are judged individually without wider context
  • Text is sent to TypeSafe
  • Custom licence

Getting started

./sys1grep -n -e "customer is angry or frustrated" tickets.txt (or install @uehaj/sys1grep from npm)

At a glance

Type
Service
Status
beta
Language
JavaScript
Runtime
Node CLI (single file)
Has code
yes
Has tests
yes
License
Custom license

Use cases and integrations

How curated lists describe it

  • Semantic search: greps by meaning across languages, having Jev score every line against a meaning and letting meanings combine with AND, backed by a 13-file test suite.

    yibie/awesome-jev
  • A semantic grep that scores each line with Jev against a meaning, including AND/OR/NOT and cross-language queries.

    logicrw/awesome-jev-projects

Frequently asked questions

What does Jev decide?

Whether each line matches a meaning, as a probability.

Does it work across languages?

Yes. A meaning in one language finds lines in others.

Why was it renamed?

To avoid colliding with the Semgrep trademark and to cover future System One models.

Related projects

  • Deterministic code-graph context for coding agents on Postgres, AGE and pgvector, with optional Jev or local re-selection of symbols.

    MCP serverbetaPython
  • Claude Code plugin that adds Jev as an independent judge for review findings, debugging hypotheses, design options and search hits.

    Pluginbeta
  • Retrieval layer for Codex that finds evidence locally, optionally ranks sanitized excerpts with Jev, and returns bounded, cited evidence.

    Projectbeta
  • Pipe grep or file lists into Jev to get every candidate scored, sorted and cut at a calibrated threshold, so agents read only what matters.

    ProjectbetaTypeScript
  • Single MCP tool that indexes a repo and has Jev rank a shortlist so a coding agent reads the right files and lines instead of grepping.

    MCP serverbetaPython
  • Rust semantic code search: Jev scores file paths, then code windows in the survivors, and prints matching line ranges.

    ProjectbetaRust