Show HN: Use Natural Language to Run Terminal Commands (Ghost in the Shell) (github.com)

6 points by codingmoh ↗ HN
Hi HN,

I just released a very simple AI Shell / CLI tool that lets you convert natural language directly into executable shell commands. Built with python to simplify terminal workflows and help you quickly run commands without memorizing syntax.

It has two main usage modes:

One-shot mode: Quickly execute commands using natural language.

Example:

ai "find all PNG files larger than 5MB"

The AI responds with the appropriate command and asks if you want to execute it.

Interactive chat mode: Start a terminal chat session with the AI (ai -i) to iteratively build commands or scripts.

Some common use-cases:

* Quickly unzipping, untarring, or compressing files without Googling syntax.

* Complex file searches and manipulations (e.g., filtering, renaming batches of files).

* Managing Docker containers or Kubernetes deployments with plain English.

*...

It supports macOS, Linux, and Windows. It also integrates nicely with tools like tmux for split-pane workflows.

I built this because I regularly found myself searching the web for simple commands I couldn’t remember.

Feedback and feature ideas would be great!

GitHub Repo: https://github.com/codingmoh/ghost_in_the_shell/

Install with pip using

pip install ghost-in-the-shell

Looking forward to your thoughts!

4 comments

[ 2.7 ms ] story [ 21.0 ms ] thread
Cool project. I would think the killer use case for this is when you don't have internet access and you are forced to deal with something like an openssl man page when having to do something non-standard. With internet access I enjoy getting commands from ChatGPT directly and reading any ancillary information like explanations and alternatives (EDIT: I notice you support that to some extent). Have you tested this with local llms? I imagine it would be challenging to get something reliable from them beyond the most basic commands. For my part, I would never have the AI run a command for me and would be wary of that functionality even existing.
Hey, thanks for your feedback. That is great input, because I just realized that users might prefer to have a command printed out (inserted into clipboard) for them, instead of it being executed immediately. LocalLLMs are on my todo list! Also, what I want to work on next, is to make it possible to pipe errors / logs into the application, so it could help you troubleshoot and debug faster