Magic CLI:让你成为终端魔法师的命令行工具

Magic CLI:终端魔法师的得力助手

在当今的软件开发世界中,命令行界面(CLI)仍然是许多开发者的首选工具。然而,随着命令和选项的不断增加,记住所有的语法和用法变得越来越具有挑战性。这就是 Magic CLI 诞生的原因 —— 一个旨在让你成为终端魔法师的强大命令行工具。

Magic CLI logo

什么是 Magic CLI?

Magic CLI 是一个创新的命令行工具,它利用大语言模型(LLMs)来帮助用户更高效地使用命令行。这个项目的灵感来自于 Amazon Q(前身为 Fig terminal) 和 GitHub Copilot for CLI 等项目。Magic CLI 的核心目标是简化命令行操作,提高开发效率,并为用户提供一种更智能、更直观的方式来与终端交互。

Magic CLI 的主要特性

Magic CLI提供了一系列强大的功能,旨在改善用户的命令行体验:

  1. 命令建议:当你不确定具体的命令语法时,Magic CLI 可以根据你的描述提供合适的命令建议。这对于复杂的 CLI 工具(如 ffmpeg 或 kubectl)特别有用。

  2. 任务执行生成:你可以用自然语言描述你想要完成的任务,Magic CLI 会尝试生成相应的命令来实现你的目标。如果需要更多上下文信息,它还会提示你运行额外的命令。

  3. 历史命令语义搜索:Magic CLI 能够对你的 shell 历史进行语义搜索,帮助你快速找到之前使用过的相关命令。

  4. 多 LLM 提供商支持:Magic CLI 支持多种 LLM 提供商,包括:

安装 Magic CLI

Magic CLI 提供了多种安装方式,以适应不同用户的需求:

  1. 通过 Shell 脚本安装

    curl -LsSf https://github.com/guywaldman/magic-cli/releases/download/0.0.6/magic-cli-installer.sh | sh
    
  2. 使用 Homebrew 安装(适用于 macOS 用户):

    brew install guywaldman/tap/magic-cli
    
  3. 通过 PowerShell 安装(适用于 Windows 用户):

    powershell -c "irm https://github.com/guywaldman/magic-cli/releases/download/0.0.6/magic-cli-installer.ps1 | iex"
    
  4. 直接下载二进制文件:访问 GitHub 发布页面 下载适合你平台的二进制文件。

使用 Magic CLI

为了更方便地使用 Magic CLI,你可以在 ~/.bashrc 或 ~/.zshrc 文件中添加一些函数别名:

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"
}

这样,你就可以更简洁地使用 Magic CLI 的各项功能了。

命令建议功能

使用 magic-cli suggest 命令来获取命令建议:

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

Suggest subcommand

这个功能特别适合那些你大致知道要做什么,但不记得具体参数或顺序的情况。

历史命令搜索

使用 magic-cli search 命令来搜索你的命令历史:

magic-cli search "zellij attach"

Search subcommand

这个功能可以帮助你快速找到之前使用过的相关命令,提高工作效率。

任务执行生成

使用 magic-cli ask 命令来生成执行特定任务的命令:

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

Magic CLI 会尝试理解你的需求,并生成相应的命令序列来完成任务。

配置 Magic CLI

Magic CLI 的配置文件存储在 ~/.config/magic_cli/config.json 中。你可以使用 magic-cli config 命令来查看和修改配置选项。主要的配置选项包括:

  • llm:选择使用的 LLM 提供商("ollama" 或 "openai")
  • ollama.base_url:Ollama API 的基础 URL
  • ollama.embedding_model:用于生成嵌入的模型
  • ollama.model:用于生成响应的模型
  • openai.api_key:OpenAI API 密钥
  • openai.embedding_model:OpenAI 用于生成嵌入的模型
  • openai.model:OpenAI 用于生成响应的模型
  • suggest.add_to_history:是否将建议的命令添加到 shell 历史记录中
  • suggest.mode:命令建议模式("clipboard" 或 "unsafe-execution")

安全性考虑

Magic CLI 非常重视用户数据的安全性。目前,它处理的敏感数据主要包括:

  1. OpenAI API 密钥:存储在用户主目录的配置文件中。
  2. Shell 历史的嵌入:用于 magic-cli search 命令,同样存储在用户主目录的配置文件中。

开发团队计划在未来实现将 API 令牌存储在系统的安全密钥存储中,以进一步提高安全性。

未来发展路线

Magic CLI 的开发团队有着雄心勃勃的计划,包括:

  1. 完善 Windows 支持
  2. 增加更多 LLM 提供商的支持
  3. 改进本地嵌入索引的存储方式
  4. 增加测试覆盖率

贡献与社区

Magic CLI 是一个开源项目,欢迎社区成员的贡献。如果你有兴趣参与项目开发,可以查看 CONTRIBUTING.md 文件了解更多信息。开发团队建议在提交拉取请求之前先创建一个 issue,以确保你的工作能够被接受。

结语

Magic CLI 正在不断发展和完善中,它的目标是成为开发者在命令行中的得力助手。通过结合 AI 技术和传统 CLI 工具的优势,Magic CLI 正在重新定义我们与终端交互的方式。无论你是经验丰富的开发者还是命令行新手,Magic CLI 都能帮助你更高效、更智能地完成工作。

文章链接:www.dongaigc.com/a/magic-cli-command-line-tool
https://www.dongaigc.com/a/magic-cli-command-line-tool

https://www.dongaigc.com/p/guywaldman/magic-cli
www.dongaigc.com/p/guywaldman/magic-cli

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值