git-jev-stage
Git tool that stages only the hunks matching a plain-language description, using Jev include/exclude/mixed probabilities per hunk.
Overview
git-jev-stage lets you describe the change to stage in one sentence, such as "only the auth fix and its tests". It classifies each block of changed lines (a Git hunk) with Jev into include, exclude or mixed, shows the plan with probabilities, and after confirmation in interactive mode stages the selected hunks. It only stages: working files are untouched, and the commit and message remain yours.
Mixed or low-confidence hunks need review: in interactive mode they are printed and asked about before the final confirmation, while --yes leaves them unstaged. Without a key, an interactive run asks about every hunk and non-interactive modes exit with an error. A --dry-run prints the composed patch, and --json gives machine-readable output. It requires Git 2.30+ and Node 22+.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Does this hunk belong to the described change? | include · exclude · mixed |
How it works
- Run git jev-stage "<description>"
- Jev scores each hunk include/exclude/mixed
- Review mixed or low-confidence hunks
- Confirm to stage the selected hunks
Strengths
- Only stages; never edits files or commits
- Explicit handling of mixed hunks
- Dry-run and JSON modes
Caveats
- Diffs are sent to TypeSafe
- Requires an early-access TypeSafe key
Getting started
npm install -g git-jev-stage, export TYPESAFE_API_KEY, then git jev-stage "only the auth fix and its tests".At a glance
- Type
- Project
- Status
- beta
- Language
- TypeScript
- Runtime
- Node CLI (git subcommand)
- Has code
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
Select Git changes for staging with a plain-language description.
hellogumbo/awesome-jev
Frequently asked questions
Does it commit for me?
No, it only stages; you write the commit.
What happens with mixed hunks?
They are shown for review in interactive mode and left unstaged with --yes.
Can I run it without a key?
Interactively it asks about every hunk; non-interactive modes require a key.
Related projects
CLI and Claude Code plugin that reads each commit diff and counts capabilities gained, fixes and upkeep using narrow model judgments.
PluginbetaTypeScriptNeovim popup showing jev-lens verdicts after Claude Code edits: whether to look, which files, and debris to strip.
ProjectbetaLuaOpen-source AI email assistant; listed as using Jev as an optional classifier for email intent and triage.
ProjectproductionTypeScriptChrome extension that groups and orders all tabs in a window by meaning and your rules with a single Jev request.
ServiceproductionTypeScriptLarge Claude Code plugin of skills, agents and hooks that can optionally ask Jev to classify a session's work category.
ProjectproductionTypeScriptPrivacy-first personal knowledge management system, listed as integrating Jev for document classification and tag routing.
PluginproductionTypeScript