← Open Source
guywaldman

magic-cli

Command line utility to make you a magician in the terminal.

ApplicationsCodingRust
Open on GitHub
Momentum
+0stars in 24 hours0.0%
745
Stars
19
Forks
+0
This week
2
Contributors
Created 2024-06-24 · Updated 2026-10-06 · #14287 today
Top developers
guywaldmanyuankunzhang

guywaldman/magic-cli is ranked 14,287 with 745 stars.

Same-category comparison

guywaldman/magic-cli is ranked 14,287 among these 8 peers; math-ai-org/mathcode is ranked 14,290.

Same-category comparison
NameRankMetrics
DoubangoTelecom/ultimateALPR-SDK14,270
Language:
C++
Stars:
746
Forks:
182
Description:
World's fastest ANPR / ALPR implementation for CPUs, GPUs, VPUs and NPUs using deep learning (Tensorflow, Tensorflow lite, TensorRT, OpenVX, OpenVINO). Multi-Charset (Latin, Korean, Chinese) & Multi-OS (Jetson, Android, Raspberry Pi, Linux, Windows) & Multi-Arch (ARM, x86).
CryptoDmitry/Ghost-Agent14,279
Language:
Shell
Stars:
745
Forks:
59
Seanium/FeedMe14,281
Language:
TypeScript
Stars:
745
Forks:
167
Description:
😋 AI-powered, Lightweight RSS Reader. Supports: GitHub Pages | Vercel | Alibaba Cloud ESA Pages | Docker.
anantdgoel/ProjectFib14,282
Language:
Python
Stars:
745
Forks:
180
Description:
Chrome extension to flag fake news on Facebook. Built at HackPrinceton '16.
math-ai-org/mathcode14,290
Language:
Shell
Stars:
745
Forks:
68
Description:
MathCode: A Frontier Mathematical Coding Agent.
thu-vu92/knowledge-graph-llms14,293
Language:
Jupyter Notebook
Stars:
745
Forks:
224
Description:
In this project, I explored how to extract knowledge graphs from text using LLMs, such as OpenAI GPT4o.
bethesirius/ChosunTruck14,307
Language:
Python
Stars:
743
Forks:
96
Description:
Euro Truck Simulator 2 autonomous driving solution.
diStyApps/seait14,339
Language:
Python
Stars:
740
Forks:
52
Description:
SEAIT is a user-friendly application that simplifies the installation process of AI-related projects.
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguageRust
CategoryApplications
SubcategoryCoding
Stars745
Forks19
Contributors2
Created date2024-06-24
Updated date2026-10-06
Stars in 1 day0
Stars in 7 days0
Rank14,287
Previous rank14,143
Rank change-144
7-day stars rank14,392
Previous 7-day stars rank14,404
7-day stars rank change12
Total stars rank14,159
Previous total stars rank14,130
Total stars rank change-29
README summary

Magic CLI Magic CLI is a command line utility which uses LLMs to help you use the command line more efficiently, inspired by projects such as Amazon Q (prev. Fig terminal) and GitHub Copilot for CLI. relies on the orch library for LLM interactions (execution, orchestration, model alignment, etc. CAUTION] This project is still in early development. Expect breaking changes and bugs, and please report any issues you encounter. NOTE] For more options on how to install Magic CLI, see

the releases page for the version you wish to install. Shell Homebrew PowerShell Binaries See the releases page for binaries for your platform. Usage Tip Add functions to your or to make formatting the prompts in the terminal easier (not requiring quotes). For example: Suggest a command Supply a prompt to get a suggestion for the command to run. This is useful in scenarios where you know approximately what you want (and perhaps even the tool) but don't remember the

exact arguments or their order. This is especially useful with CLI tools like or . Search across your command history (experimental) Search a command across your shell history, and get a list of the top results. IMPORTANT] Word to the wise: If you're using a non-local LLM, be wary about the cost of the embeddings, especially for long shell histories. Ask to generate a command (experimental) Supply a prompt with a task you want the model to perform, and watch

it try to suggest a command to run to achieve the goal. It may prompt you along the way to run commands if it needs more context. Use different LLMs Magic CLI supports two LLM providers: : Ollama is a local LLM provider. The command expects Ollama to be installed and running on your local machine. You configure an API token, and Magic CLI uses it with the OpenAI APIs. Configuration Magic CLI stores configurations in . Use (to see the options

, use ) to set the configuration options: The currently suppprted configuration options are: : The LLM to use for generating responses. Supported values: "ollama", "openai" : The base URL of the Ollama API (default: " : The model to use for generating embeddings (default: "nomic-embed-text:latest") : The model to use for generating responses (default: "codestral:latest") (secret): The API key for the OpenAI API : The model to use for generating embeddings (default: "text-embedding-ada-002") : The model to use for generating responses

(default: "gpt-4o") : Whether to add the suggested command to the shell history (default: false) : The mode to use for suggesting commands. Supported values: "clipboard" (copying command to clipboard), "unsafe-execution" (executing in the current shell session) (default: "unsafe-execution") Note: is named as such to make it clear that the CLI executes the command in the current shell session. Please be extremely careful when using this mode - Magic CLI is not responsible for the execution of commands suggested. Roadmap

[ ] Windows support (PowerShell is supported, but Windows has not been tested properly) [ ] Support for more LLM providers (e. In terms

Frequently asked questions

How many stars and forks are recorded?

guywaldman/magic-cli has 745 stars and 19 forks.

What is the repository rank?

guywaldman/magic-cli is ranked 14,287.

What language and category are recorded?

guywaldman/magic-cli has 745 stars, uses Rust and belongs to Applications.

Which repository is closest in rank?

guywaldman/magic-cli is compared with math-ai-org/mathcode, ranked 14,290 with 745 stars.

README

Magic CLI

Magic CLI is a command line utility which uses LLMs to help you use the command line more efficiently, inspired by projects such as Amazon Q (prev. Fig terminal) and GitHub Copilot for CLI.

magic-cli relies on the orch library for LLM interactions (execution, orchestration, model alignment, etc.).

Read the announcement blog post.

[!CAUTION]

This project is still in early development.
Expect breaking changes and bugs, and please report any issues you encounter.
Thank you!


Features

  • Suggest a command (see section)
  • Ask to generate a command to perform a task (see section)
  • Semantic search of commands across your shell history
  • Use a local or remote LLM (see section)

Installation

[!NOTE]

For more options on how to install Magic CLI, see the releases page for the version you wish to install.

Shell

curl -LsSf https://github.com/guywaldman/magic-cli/releases/download/0.0.6/magic-cli-installer.sh | sh

Homebrew

brew install guywaldman/tap/magic-cli

PowerShell

powershell -c "irm https://github.com/guywaldman/magic-cli/releases/download/0.0.6/magic-cli-installer.ps1 | iex"

Binaries

See the releases page for binaries for your platform.

Usage Tip

Add functions to your ~/.bashrc or ~/.zshrc to make formatting the prompts in the terminal easier (not requiring quotes).

For example:

function mcs {
  model_prompt="$*"
  magic-cli suggest "$model_prompt"
}

function mcf {
  model_prompt="$*"
  magic-cli search "$model_prompt"
}

function mca {
  model_prompt="$*"
  magic-cli ask "$model_prompt"
}

Suggest a command

Supply a prompt to get a suggestion for the command to run.
This is useful in scenarios where you know approximately what you want (and perhaps even the tool) but don't remember the exact arguments or their order.
This is especially useful with CLI tools like ffmpeg or kubectl.

magic-cli suggest "Resize test_image.png to 300x300 with ffmpeg"
Usage: magic-cli suggest 

Arguments:
    The prompt to suggest a command for (e.g., "Resize image to 300x300 with ffmpeg")

Search across your command history (experimental)

Search a command across your shell history, and get a list of the top results.

magic-cli search "zellij attach"
Usage: magic-cli search [OPTIONS] 

Arguments:
    The prompt to search for

[!IMPORTANT]

Word to the wise: If you're using a non-local LLM, be wary about the cost of the embeddings, especially for long shell histories.

Ask to generate a command (experimental)

Supply a prompt with a task you want the model to perform, and watch it try to suggest a command to run to achieve the goal. It may prompt you along the way to run commands if it needs more context.

magic-cli ask "Set up the dev environment as described in the README"
Usage: magic-cli ask 

Arguments:
    The prompt to ask for (e.g., "Set up the development environment")

Use different LLMs

Magic CLI supports two LLM providers:

  • ollama: Ollama is a local LLM provider. The command expects Ollama to be installed and running on your local machine.
  • openai: OpenAI is a cloud LLM provider. You configure an API token, and Magic CLI uses it with the OpenAI APIs.

Configuration

Magic CLI stores configurations in ~/.config/magic_cli/config.json.

Use magic-cli config (to see the options, use magic-cli config --help) to set the configuration options:

Usage: magic-cli config 

Commands:
  set    Set a value
  get    Get a value
  list   List the configurations
  reset  Reset the configurations to the default values
  path   Get the path to the configuration file

The currently suppprted configuration options are:

  • llm: The LLM to use for generating responses. Supported values: "ollama", "openai"
  • ollama.base_url: The base URL of the Ollama API (default: "http://localhost:11434")
  • ollama.embedding_model: The model to use for generating embeddings (default: "nomic-embed-text:latest")
  • ollama.model: The model to use for generating responses (default: "codestral:latest")
  • openai.api_key (secret): The API key for the OpenAI API
  • openai.embedding_model: The model to use for generating embeddings (default: "text-embedding-ada-002")
  • openai.model: The model to use for generating responses (default: "gpt-4o")
  • suggest.add_to_history: Whether to add the suggested command to the shell history (default: false)
  • suggest.mode: The mode to use for suggesting commands. Supported values: "clipboard" (copying command to clipboard), "unsafe-execution" (executing in the current shell session) (default: "unsafe-execution")

    Note: unsafe-execution is named as such to make it clear that the CLI executes the command in the current shell session. Please be extremely careful when using this mode - Magic CLI is not responsible for the execution of commands suggested.

Roadmap

  • [ ] Windows support (PowerShell is supported, but Windows has not been tested properly)

  • [ ] Support for more LLM providers (e.g., Anthropic)

  • [ ] Improve local embedding index (currently stored naively as a JSON, looked into SQLLite with vector extensions)

  • [ ] More test coverage


Security

Security is taken seriously and all vulnerabilities will be handled with utmost care and priority.

In terms of data stored, the sensitive data that is currently handled by Magic CLI is:

  • OpenAI API key, which is stored in the configuration within the user home directory (~/.config/magic_cli).

    There are plans to store this token in the system's secure key storage, but this is not yet implemented.

  • Embeddings of the shell history for the magic-cli search command, which are stored in the configuration within the user home directory (~/.config/magic_cli) and are generated using the LLM provider of choice.

Please see SECURITY.md for more information, and instructions on how to report potential vulnerabilities.

Contributing

Contributions are welcome!

Please see CONTRIBUTING.md for more information.

My only request is that pull requests follow an issue, such that we avoid situations of your hard work not being accepted due to a lack of context or necessity.

Nearby in the ranking
Similar items