Caller-CLI is a handy command-line tool that makes your life easier by simplifying your workflow. It's inspired by fig.io, which has shut down, and it offers shortcuts for those tricky commands you can never remember. Plus, it has some Git features and uses AI to help you find and run commands quickly. If you want to create your own shortcuts or just need a bit of help with command-line tasks, Caller-CLI is here to make things smoother and more straightforward.
- To install Caller CLI, follow these steps:
git clone https://github.com/tk-425/caller-cli.git
- Move the repository to the
/usr/local/sharedirectorysudo mv /path/to/repository/ /usr/local/share
- Navigate to the
/usr/local/share/caller-cli/src/bindirectorycd /usr/local/share/caller-cli/src/bin - Make the
caller.jsscript executablechmod +x caller.js
- Create a Symlink to your script
sudo ln -s /usr/local/share/caller-cli/src/bin/caller.js /usr/local/bin/caller
- Install packages (using pnpm or npm)
# Using pnpm (recommended) cd .. && pnpm install --prod # Or using npm cd .. && npm install --omit=dev
- Restart your terminal
- Use
caller <command>to run the Caller-CLI command
Saved commands are stored in ~/.caller-cli/caller-cli-commands.json by default.
caller listDisplay a list of all commands currently registered with Caller CLI.
Example
$ caller list
- List -
? Select command (use arrow keys)
> npm-global-list
...
...
---------------
EXITcaller add <name> <command>Add a new command to Caller CLI.
Example
$ caller add npm-global-list 'npm list -g'This will add a new command named npm-global-list that runs the command npm list -g when invoked.
caller rename <old_name> <new_name>Rename an existing command.
Example
$ caller rename npm-global-list npm-list-globalcaller remove <name>Remove a command from Caller CLI.
Example
$ caller remove npm-list-globalcaller gitAccess various Git commands. We will add more Git commands later.
Example
$ caller git
- GIT COMMANDS -
? Select a git command (Use arrow keys)
> Add All
Commit
List Branches
Create Branch
Push to current branch
Select a branch to push
-------------
EXITcaller aiUse AI to find a command. Please create a Gemini API key by following these instructions.
Example
$ caller ai
- AI -
? Enter your Gemini API key: *********************
? Ask AI: Command for listing all the global npm packages.
npm list -g
? Would you like to run the command? (y/N)Please only ask questions about command-line commands. Otherwise, the AI will respond with Please provide a question related to command-line commands.
Note: Your API key is securely stored using the keytar npm package and saved in your system's keychain.
caller del keyDelete the stored Gemini API key.
caller updateUpdate Caller CLI to the latest available version.
caller -V
caller --versionDisplay the current version number of Caller CLI.