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

RayRay
Magic CLI命令行工具LLMOpenAI命令建议Github开源项目

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 都能帮助你更高效、更智能地完成工作。

如果你对提高命令行效率感兴趣,不妨尝试一下 Magic CLI。它可能会成为你终端工具箱中不可或缺的一员,让你在处理复杂任务时如有神助。记住,真正的魔法不仅存在于代码中,还存在于使用工具的方式中。让 Magic CLI 成为你的魔法棒,在命令行的世界中施展你的魔法吧!🪄✨

编辑推荐精选

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

聊天机器人AI助手热门AI工具AI对话
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

热门AI工具AI办公办公工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

模型训练热门AI工具内容创作智能问答AI开发讯飞星火大模型多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

下拉加载更多