Home

Awesome

IntelliShell

Like IntelliSense, but for shells!

intelli-shell demo

IntelliShell acts like a bookmark store for commands, so you don't have to keep your history clean in order to be able to find something useful with ctrl + R.

It currently works on Bash, Zsh, Fish and PowerShell and should be compatible with most Linux, Windows and MacOS.

TL;DR

  1. Install the binaries:

    curl -sSf https://raw.githubusercontent.com/lasantosr/intelli-shell/main/install.sh | bash
    
  2. Bookmark your first command by typing it on a terminal and using ctrl + b

  3. (optional) Run intelli-shell fetch to download commands from tldr

  4. Hit ctrl + space to begin the journey!

  5. (optional) Check out the tips section below to get some ideas

Features

Installation

Remember to bookmark some commands or fetch them after the installation!

To skip profile updates, set INTELLI_SKIP_PROFILE environment variable to 1 before installing.

Bash (Linux)

curl -sSf https://raw.githubusercontent.com/lasantosr/intelli-shell/main/install.sh | bash

After installing it using bash, it should work in any supported shell.

PowerShell (Windows)

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser # Optional: Needed to run a remote script the first time
irm https://raw.githubusercontent.com/lasantosr/intelli-shell/main/install.ps1 | iex

After installing it with powershell, it should also work on cmd (without hotkeys).

Source

To install from source you'll need to have Rust installed, which is recommended to be installed using rustup.

cargo install intelli-shell --locked

To enable hotkeys, additional steps are required:

<details> <summary>Linux</summary>

Download source script:

Edit your profile to source it:

</details> <details> <summary>Windows</summary>

Download the source script also:

New-Item -Path $env:APPDATA\IntelliShell\Intelli-Shell\data\bin -Type Directory
Invoke-WebRequest -UseBasicParsing -URI "https://raw.githubusercontent.com/lasantosr/intelli-shell/main/intelli-shell.ps1" -OutFile $env:APPDATA\IntelliShell\Intelli-Shell\data\bin\intelli-shell.ps1

Edit your $Profile to execute it:

. $env:APPDATA\IntelliShell\Intelli-Shell\data\bin\intelli-shell.ps1
</details>

Usage

You can view supported actions by running intelli-shell -h. Most used standalone commands are:

Hotkeys

Note: When navigating items, selected suggestion can be deleted with ctrl + d or edited with any of: ctrl + e, ctrl + u or F2

You can customize key bindings using environment variables: INTELLI_BOOKMARK_HOTKEY, INTELLI_SEARCH_HOTKEY and INTELLI_LABEL_HOTKEY

Tips

Wishlist

Alternatives

You might want to have a look at Marker which is pretty similar but requires Python to be installed on your system.

License

IntelliShell is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.