About

Let's be honest: you hate memorizing commands. You despise man pages. The very sight of tar -xzvf makes your heart grow three sizes smaller.

GrinSh is a conversational shell for macOS that couldn't care less about your ability to remember arcane flags and cryptic syntax. Just tell it what you want in plain English, and it gets to work. No studying. No googling "how to find files modified in the last week" for the hundredth time. No pretending you remember what awk does.

What It Looks Like

Talk to your terminal like a normal human being:

> what's using port 8080
> compress the projects folder
> find that pdf I downloaded last week
> quit slack

Notice anything? No flags. No pipes. No syntax errors because you forgot a semicolon. Just requests in actual English.

Why GrinSh Exists

Because life is too short to remember whether it's -la or -al. Because you have better things to do than memorize the seventeen different ways to kill a process. Because the year is 2025 and we shouldn't need a PhD to interact with our computers.

GrinSh knows more than you do, and it's not smug about it. It understands context, remembers what you were doing, and figures out the right tool for the job. If it doesn't have a tool, it finds one, installs it, learns it, and gets on with things.

Built with Swift and powered by Claude, GrinSh uses native macOS APIs whenever possible and falls back to CLI tools when necessary. It's fast, it's smart, and it doesn't make you feel like you're taking a Unix certification exam every time you want to compress a file.

What It Does

Understands Natural Language. Say what you want. Don't worry about syntax, flags, or the "proper" way to phrase things. GrinSh figures it out.

Remembers Your Conversation. Unlike your goldfish of a bash prompt, GrinSh maintains context across your session. Reference "that folder" or "the file from earlier" and it knows what you mean.

Auto-installs Missing Tools. Need a CLI tool you don't have? GrinSh discovers it via Homebrew, installs it, reads its documentation, and uses it. All without bothering you.

Uses Touch ID for Privileged Operations. No more typing your password like a caveman. When something needs sudo, you get a native macOS authentication prompt.

Gives You an Escape Hatch. Sometimes you actually do want to run a raw command. Prefix it with ! and GrinSh gets out of your way: !git status

Stays Native. Built with Swift, using macOS APIs for file operations, app management, and system tasks. It's not a wrapper around bash scripts held together with duct tape and prayers.

Installation

Getting GrinSh up and running takes about thirty seconds. Copy this line, paste it into your terminal, and let it do its thing:

curl -sSL https://raw.githubusercontent.com/aaronmaturen/GrinSh/main/install.sh | bash

The installer downloads the latest release, verifies the checksums (because we're not monsters), and drops the binary in /usr/local/bin.

What You Need

Not much. You need macOS 13.0 or later, because we're not supporting ancient history. You need a Claude API key from console.anthropic.com (that's what powers the natural language understanding). And you probably want Homebrew installed, because that's how GrinSh finds and installs CLI tools on demand.

First Launch

After installation, drop your Claude API key into ~/.grinshrc and run grinsh. That's it. You're done.

If you're feeling bold and want to make GrinSh your default shell, run chsh -s /usr/local/bin/grinsh. But maybe try it out first. We're confident, not reckless.

How It Works

The flow is straightforward: you type what you want in plain English. Claude interprets your intent and figures out which tool or API call will get it done. GrinSh executes it using native Swift APIs when possible, or the appropriate CLI tool when necessary.

When GrinSh encounters a tool it doesn't have, it doesn't throw an error and make you google things. It searches Homebrew, finds the package, installs it, pulls down its documentation, learns how to use it, and caches that knowledge for next time. All of this happens in the background while you're doing literally anything else.

The whole system maintains conversation context, so you can say things like "compress that" or "move it to the desktop" and GrinSh knows what you're referring to. It's almost like talking to someone who's paying attention.

More Information

The README has the full overview and getting started guide. If you want to contribute (and we genuinely hope you do), check out the contributing guidelines. The release process documentation explains how we cut new versions. And the releases page has pre-built binaries if you prefer to skip the installer script.

Found a bug? Have a feature request? File an issue on GitHub. We actually read them.