AIBash:让 AI 成为你的命令行助手

还在为记不住复杂的 Shell 命令而烦恼吗?让 AI 来帮你!

写在前面
作为一名开发者,我们每天都要和命令行打交道。但说实话,谁能记住所有的命令参数呢?find 命令的正则表达式怎么写?tar 解压缩的参数是 -xzf 还是 -xvf?每次都要去查文档,实在太麻烦了。
于是,我开发了 AIBash —— 一个能把自然语言转换成 Shell 命令的智能工具。你只需要用人话描述你想做什么,AI 就能帮你生成对应的命令。
✨ 亮点功能
🤖 自然语言生成命令
告别死记硬背,用最自然的方式描述你的需求:‘
这是一个例子:
请添加图片描述

想找文件?

aibash -l “找出这个目录下所有大于 100MB 的视频文件”

想压缩文件?

aibash -l “把这个文件夹打包成 tar.gz 格式”

想批量处理?

aibash -l “把当前目录下所有 jpg 图片转成 png 格式”

AI 会立即生成对应的命令,你只需要确认执行就好。
🔄 智能交互体验
生成命令后,你有多种选择:

1.[e] 执行 - 觉得没问题?直接执行
2.[c] 复制 - 想手动调整?复制到剪贴板
3.[m] 修改 - 哪里不对?改一改再执行
4.[s] 跳过 - 不需要了?直接放弃

一切都在你的掌控之中。
📝 上下文记忆
AIBash 会记住你的命令历史,提供更智能的建议:

第一次

aibash -l “创建一个名为 project 的目录”

第二次 - AI 会记住你刚才创建的目录

aibash -l “在刚才那个目录里创建一个 README 文件”

就像和一个真人助手对话一样自然。
🌐 灵活的模型支持

5.在线模式:支持 OpenAI API,响应快速,效果出色
6.本地模式:支持 Ollama,数据不出本地,隐私有保障

根据你的需求自由选择。
🚀 快速上手
安装
两种方式任选:

方式一:从 PyPI 安装(推荐)

pip install aibash-wx

方式二:从源码安装

git clone https://github.com/W1412X/aibash.git
cd aibash
pip install -e .

配置
首次使用需要初始化配置:
aibash --init

程序会引导你完成配置,非常简单。
使用 OpenAI API
model:
provider: openai
api_base: https://api.openai.com/v1
api_key: sk-your-api-key-here
model_name: gpt-3.5-turbo

history:
enabled: true
max_records: 50
include_output: true

使用 Ollama(本地)
model:
provider: ollama
api_base: http://localhost:11434
api_key: “” # 本地模型无需密钥
model_name: llama2

history:
enabled: true
max_records: 50
include_output: true

开始使用
现在,你可以用自然语言来操作命令行了:

文件操作

aibash -l “把所有 log 文件移到 logs 文件夹”

系统管理

aibash -l “查看占用内存最多的 5 个进程”

网络操作

aibash -l “测试能否访问 google.com”

Git 操作

aibash -l “提交所有更改并推送到远程仓库”

💡 使用技巧

  1. 描述要具体
    ❌ 不好的描述:
    aibash -l “找文件”

✅ 好的描述:
aibash -l “在 /home/user/documents 目录下找所有包含 ‘report’ 关键词的 PDF 文件”

  1. 善用历史功能

查看命令历史

aibash --history

清空历史(重新开始)

aibash --clear-history

历史记录不仅能让你回顾之前的操作,还能为 AI 提供上下文,生成更准确的命令。
3. 自定义 Prompt
如果你对 AI 的输出风格有特殊要求,可以自定义 prompt:
custom_prompt: |
你是一个 Linux 系统管理专家。
系统信息: {system_info}
历史记录: {history_context}
用户需求: {user_query}

请生成最优雅、最高效的 shell 命令。
如果可能,请使用管道和重定向来简化命令。

命令:
use_default_prompt: false

  1. 测试连接
    在正式使用前,建议先测试一下 AI 连接:
    aibash --test

确保一切正常后再开始工作。
🎯 实用场景
场景一:日常开发

查找并删除所有 node_modules 目录

aibash -l “找出所有 node_modules 目录并删除它们”

统计代码行数

aibash -l “统计 src 目录下所有 Python 文件的代码行数”

批量重命名

aibash -l “把所有 .jpeg 文件扩展名改成 .jpg”

场景二:系统运维

监控系统资源

aibash -l “每 5 秒显示一次系统负载和内存使用情况”

日志分析

aibash -l “从 nginx 日志中提取所有 404 错误的 URL”

定时任务

aibash -l “创建一个 cron 任务每天凌晨备份数据库”

场景三:数据处理

CSV 处理

aibash -l “合并所有 CSV 文件并去除重复行”

文本处理

aibash -l “从所有文本文件中提取邮箱地址”

批量转换

aibash -l “把所有 PNG 图片转换成 WebP 格式并压缩”

🔧 高级功能
多配置文件
针对不同项目使用不同的配置:

项目 A 使用 OpenAI

aibash --config ~/configs/project-a.yaml -l “你的需求”

项目 B 使用本地 Ollama

aibash --config ~/configs/project-b.yaml -l “你的需求”

系统信息感知
AIBash 会自动检测你的系统信息(操作系统、架构等),确保生成的命令在你的系统上可用。
你也可以手动指定:
system_info: “Ubuntu 22.04 LTS (ARM64)”

输出记录
开启输出记录后,AI 不仅能看到你执行过的命令,还能看到命令的输出结果,提供更精准的建议:
history:
include_output: true # 记录命令输出

📊 性能与隐私
响应速度

7.OpenAI API:通常 1-3 秒
8.Ollama 本地:取决于你的硬件配置

隐私保护

9.本地模式:所有数据都在本地处理,完全私密
10.在线模式:只发送命令描述,不上传文件内容

历史记录默认存储在 ~/.aibash/history.json,只保存在你的本地。
🤔 常见问题
Q: 生成的命令不对怎么办?
A: 你可以:

11.选择 [m] 手动修改命令
12.重新描述需求,尽量具体
13.查看并清空历史记录,可能是上下文干扰了

Q: 支持 Windows 吗?
A: 当然!AIBash 支持 macOS、Linux 和 Windows。Windows 用户建议使用 PowerShell 或 Git Bash。
Q: 可以生成复杂的脚本吗?
A: 可以!虽然 AIBash 主要针对单行命令,但你可以让它生成包含管道、循环的复杂命令。
Q: 安全吗?
A: 非常安全:

14.生成的命令需要你确认才会执行
15.支持本地模型,数据不出本机
16.开源代码,欢迎审查

🛣️ 未来计划

17.[ ] 支持更多 AI 模型(Claude, Gemini 等)
18.[ ] 命令解释功能(解释现有命令是做什么的)
19.[ ] 命令优化建议
20.[ ] 跨平台命令转换
21.[ ] Web UI 界面

💬 最后的话
AIBash 的目标很简单:让命令行变得更友好,让开发者把时间花在真正重要的事情上,而不是查文档和背命令。
如果你觉得这个工具有用,欢迎:

22.⭐ 在 GitHub 上给个 Star
23.🐛 提交 Issue 反馈问题
24.🔧 提交 PR 贡献代码
25.📢 分享给更多朋友

让我们一起让命令行变得更智能!

项目地址:https://github.com/W1412X/aibash
PyPI 包:https://pypi.org/project/aibash-wx/
作者:W1412X
许可证:MIT
Happy Coding! 🚀

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐