~/projects/claude-exec.md
claude-exec
Turn natural language into real system commands
claude-exec is an npm CLI that wraps Claude Code and turns plain English into real work on your machine. Describe what you want (“find the 10 largest files on my desktop”) and it detects your OS, shell, and installed tools, hands the task to Claude Code, and executes it — immediately, by default. It’s the tool I reach for when I know precisely what I want but can’t be bothered to remember the find flag syntax for the four hundredth time.
Why it exists
The shell is the most powerful interface on any machine, and also the one with the least forgiving memory model. Nobody retains the tar flags, the find -exec terminator, or the ffmpeg incantation for “just make it smaller.” The usual fix is a browser tab and a copy-paste from a stranger’s answer, which is a long round trip for something you can describe in one sentence.
claude-exec keeps that translation step in the terminal and removes the ceremony. You state the intent; it works out the right commands for your environment, runs them, and shows you what it did. It’s a very fast colleague who happens to have memorized every man page — and who, fair warning, doesn’t ask before typing.
Install
npm i -g claude-exec
That’s the whole setup. The CLI rides on Claude Code, so authentication is whatever your Claude Code install already uses. Nothing new to configure, no separate API key to mint.
Usage
Ask for what you want in plain English:
claude-exec "find every file over 100MB modified this week"
A few real examples from my own history:
claude-exec "compress this folder into a tar.gz without the node_modules"
claude-exec "which process is listening on port 4321"
claude-exec "convert every .heic in this dir to jpg, keep originals"
The three modes
Be clear-eyed about the default: claude-exec executes immediately, with no confirmations. Under the hood it runs Claude Code with --dangerously-skip-permissions — a flag name that is doing honest work. That’s the whole appeal: state the intent, get the result, zero keystrokes in between. It’s also exactly why the other two modes exist:
--safe— Claude Code prompts for permission before each action. Use it for important files and unfamiliar operations.--dry-run— prints exactly what would be executed and runs nothing. Use it first for anything destructive-sounding: “delete”, “remove”, “clean up”.
My personal rules: read-only questions get the default, anything that writes gets --safe, and anything with “delete” in the sentence gets a --dry-run first. Nothing, ever, gets sudo.
The honest framing is that the speed and the risk are the same feature. A mandatory confirmation on every step would make it safer — and would also make it Claude Code with extra typing. claude-exec picks a lane instead: immediate by default, careful on request, and the flags make sure you always know which lane you’re in.
starting login shell…
Enjoying the IDE vibe?
This site ships as a full code editor, on purpose. If tabs and terminals are not your thing, there is a calmer classic view of the same pages.
asked once, your pick sticks
Adeel I. Chohan
Global Head of Data & AI, most recently at Provectus Consulting · Washington, DC
12+ years across applied AI, agentic systems, enterprise RAG, data platforms, and engineering leadership.