
nlsh
Junaid Mahmood · 程式設計 · 其他
nlsh 是一款開放原始碼的命令列工具,能把白話英文轉成可用的 shell 指令。你不必再背參數和語法,只要描述任務,nlsh 就會找出適合你終端機的指令。它能在 macOS 和 Linux 上執行,需要 Python 3.8 或更新版本,並連接到你選擇的 AI 供應商,因此你能掌控自己的 API 金鑰與歷史紀錄。

關於 nlsh
nlsh 是什麼
nlsh 是一款自然語言 Shell。你輸入類似「列出所有 python 檔案」的句子,它就回傳 find . -name "*.py",可以直接執行。這個專案之所以存在,是因為多數人總在真正需要 shell 語法的那一刻忘光它,而在搜尋結果裡翻找正確的參數,浪費掉的時間本該花在真正的問題上。nlsh 介於你和 bash 之間,把意圖變成指令。
它為所有住在終端機裡、卻不想為此念一個資工學位的人而生。新手能獲得平緩的起步,有經驗的開發者則能在只記得一半的指令上找到更快的捷徑。這款工具是開放原始碼,而且在本機執行,所以除了你傳送給 AI 供應商的提示之外,沒有任何東西離開你的機器。如果你處理的是敏感檔案,最後這一點很重要。
最大的限制在平台與供應商。Windows 不支援,內建的 API 設定目前也只適用於 Gemini。你還需要自己的 API 金鑰,因為 nlsh 並未附帶帳號或代管的後端服務。不過,對一款只把一件事做好的免費工具來說,這份但書清單算是短的。
開始使用
- 確認你在 macOS 或 Linux 上,且已安裝 Python 3.8 或更新版本。
- 用一行指令碼安裝:
curl -fsSL https://raw.githubusercontent.com/junaid-mahmood/nlsh/main/install.sh | bash。 - 在終端機輸入
nlsh來啟動工作階段。 - 用
!api指令設定你的 LLM 供應商 API 金鑰。 - 用白話英文描述你要什麼,接著在執行前先檢視建議的指令。
輸入 !help 可查看完整指令清單,輸入 !cmd 可直接執行原始 shell 指令,或按 Ctrl+D 結束。
產品資訊
快速了解 nlsh 的定價、支援平台與效能。
適合對象
這項工具最適合的使用者、任務與情境。
使用者
- 面對空白提示字元就卡住的終端機新手,需要把白話英文轉成真的能用的指令。
- 知道某個指令存在、卻記不起確切參數,想要快速捷徑的資深開發者。
任務
- 把「殺掉佔用 3000 埠的行程」這類任務變成 `lsof -t -i
- 撰寫 git 提交、計算行數或尋找檔案時,用描述目標取代背誦語法。
情境
- 透過 SSH 在遠端 Linux 伺服器上工作,那裡無法倚賴圖形介面,每次查找都會打斷你的節奏。
- 在個人 Mac 上學 bash,猜錯的代價很低,因為你在執行前都會先檢視指令。
主要功能
把白話英文變成 shell 指令
nlsh 的核心就是翻譯。你用日常用語描述一項工作,它回傳能完成這件事的 bash 指令,再加上一小段說明每個部分代表什麼。它涵蓋常見任務,例如列出檔案、暫存 git 變更和檢查磁碟用量。不必再做到一半切換分頁去開搜尋引擎。
理解意圖,不只看關鍵字
請它「commit with message fixed bug」,它會把你的說法對應到 git commit -m "fixed bug"。意圖比確切措辭更重要,所以你不必為了跟自己電腦說話而去學一套查詢語言。
在本機執行,用你自己的金鑰
nlsh 在你的機器上執行,只會把你的提示傳送給你設定的 AI 供應商。沒有帳號要建立,也沒有伺服器蒐集你的指令歷史。!api 指令讓你安全地更換 API 金鑰。想知道你的資料去了哪裡?它去了你的供應商,不會去別的地方。
原始指令的緊急出口
!cmd 指令會直接執行 shell 指令,跳過自然語言這一步。它是為你已經確切知道自己要什麼、不需要協助的時刻而存在,讓你在同一個工作階段裡混用一般終端機工作與助理功能。有時候你就是想自己動手打。
開放原始碼且免費
整個專案在 GitHub 上以 junaid-mahmood/nlsh 儲存庫開放原始碼。沒有付費層級、沒有用量上限,也沒有加購推銷。你只需為連接的 AI 供應商付費,而且只為你實際送出的請求付費,這讓你若只是輕度使用,成本可預期。如果預設值不合你的工作方式,就 fork 它、檢視它,或改掉它。
優缺點
優點
- 把模糊的意圖變成精準的 shell 指令,縮短你搜尋正確語法的時間。
- 免費且開放原始碼,沒有帳號、沒有訂閱,也沒有被鎖住的功能。
- 在本機執行,讓你的歷史紀錄留在任何第三方伺服器之外。
- 對新手友善,因為它會解釋產生的指令,而不只是丟給你一串看不懂的字元。
缺點
- 不支援 Windows,所以如果你的唯一機器是它,就沒辦法用。
- 內建的 API 設定目前只支援 Gemini,限制了供應商的選擇。
- 它需要自己的 API 金鑰,所以在能運作之前得先做設定,而且每次請求都有少許成本。
- 你仍然得自己檢視並執行每個指令,所以它無法完全取代 shell 知識。
常見問題
是的。nlsh 免費且開放原始碼,沒有付費方案。你只需為自己做出的 API 呼叫向 AI 供應商付費,而許多供應商提供涵蓋輕度使用的免費額度。
相關內容
探索與 nlsh 相關的工具、技能與文章。
nlsh 替代方案
Base Code
Base44 (Wix) · 程式設計 · 生產力Base Code 是 Base44 推出的共享雲端開發環境。團隊在對話中描述對既有 GitHub 儲存庫的修改,看著預覽確認結果,再以 Pull Request 交回工程團隊。
Google EmbeddingGemma 2
Google DeepMind · 寫作 · 圖片 · 程式設計Google EmbeddingGemma 2 是 7.4 億參數的開源模型,能把文字、程式碼、圖片、音訊與影片畫面轉成同一個 768 維空間裡的向量,在手機與筆電上就能執行。
GitGlow
GitGlow · 程式設計 · 生產力GitGlow 是桌面版 Git 用戶端,把你自己的程式碼與 AI 代理程式的變更集中在同一份審查裡,讓你在交付前看清楚機器上究竟要送出什麼。
