Skip to content

DWIM

macOS command palette that reads the frontmost app's menu tree through the accessibility API, asks Jev one Noul per menu item against a plain-language request, and presses the top match above a confidence threshold, falling back to a ranked list otherwise.

Stars
5
Language
Swift
License
MIT
Published by
Community
Last verified
Oct 2026

About this project

Tap a key, type what you want in your own words, and DWIM finds and runs the right menu item in whatever app is in front. It works in any app with a standard Mac menu bar, with no per-app setup. macOS already exposes every app's full menu tree through the accessibility API; DWIM reads it, asks Jev (TypeSafe's decision model) one yes/no question per menu item, all in parallel, and presses the winner. Jev answers in a few hundred milliseconds, which is what makes this usable while you type.

Quoted from the project's README. Read the full README.

Highlights

  • Reads any Mac app's menu tree via the accessibility API and asks Jev one Noul per item
  • Runs the top match when confidence clears the default 0.5 threshold, with lead defaulting to 0
  • Destructive-sounding items (delete, erase, quit) never auto-run; they wait for a Return press
  • CLI mode tests ranking: --query Finder prints the top five matches with Jev probabilities
  • MIT-licensed single-file AppKit app; needs macOS 13+, Accessibility permission and your Jev key

Watch out

MIT license. Requires your own Jev API key, and it only sees the menu bar, so toolbar-only features and thin-menu Electron apps are out of reach.

Questions about this entry

Short answers drawn from the linked project or page.

Reactions & coverage

Posts, threads, and videos about this entry from around the web.

X: Copy and paste, with a decision in between

X: A keystroke oracle that reads intent in ~100 ms

X: Voice-controlled computer use on a Mac

X: A Downloads folder that sorts itself

More Jev resources like this

3GitHub stars
Go CLI for Jev with noul, choice, score, eval, rank, and models commands: rank sends one Score question per item per weighted YAML dimension in a single request and sums weight times score in code, while threshold flags turn a failed gate into exit code 10 for scripts and CI.
Jev Tools & CLIs#community#cli#go
3.4kGitHub stars
Vercel Labs' Unix-like coding agent CLI written in Zig, shipping a typesafe_permission_reviewer builtin that runs the agent's permission decisions through Jev rather than an LLM call. Model-agnostic and embeddable via libfx and ACP.
Jev Tools & CLIs#community#coding-agents#cli
4GitHub stars
Python harness for GUI grounding: it divides a screenshot into grid tiles, has a vision model describe each tile neutrally, then asks typesafe-ai/jev to choose among the descriptions. Local confidence and margin gates decide whether to descend or refuse, and it emits only a point and bounding box.
Jev Tools & CLIs#community#gui-grounding#computer-use
9.2kGitHub stars
An open-source AI office suite whose local file search reranks the top 20 FTS hits with TypeSafe Jev relevance scores before showing results.
Jev Tools & CLIs#community#typescript#desktop
2.6kGitHub stars
Cisco's security scanner for agent skills added a System One analyzer: it sends the full skill text to POST /v1/systemone as one advisory Noul question and records the probability, while being deliberately unable to emit a finding or change a severity.
Jev Tools & CLIs#community#security#agent-skills
3.5kGitHub stars
An Elasticsearch-compatible autoindex search layer that optionally sends top hits to TypeSafe Jev and reorders results by relevance scores.
Jev Tools & CLIs#community#rust#search

From the Jev guides

Original write-ups on what this entry is for.

The request shape barely changes across surfaces; the surrounding contract does. When to call the API directly and when a gateway, a Worker binding, or a router entry earns its extra hop.
Jev Tools & CLIs#gateway#vercel#cloudflare
Read article
Taking a decision checkpoint out of Python: what the GGUF and browser WebGPU exports preserve, what they change, and the parity evidence the model cards publish.
Jev Tools & CLIs#open-models#local#onnx
Read article
Jev labels a record that already exists. Code moves, flags, or holds it. How the document, mail, and transfer tools keep the action out of the model.
Jev Tools & CLIs#classification#email#security
Read article
Back to all resources

From the Jev community

Posts from builders shipping with Jev right now.

Follow @typesafeai