当前位置: 首页 > news >正文

LinuxAgent开源程序是一款智能运维助手,通过接入 DeepSeek API 实现对 Linux 终端的自然语言控制,帮助用户更高效地进行系统运维工作

一、软件介绍

文末提供程序和源码下载

       LinuxAgent 开源程序是基于LLM大模型的Linux智能运维助手。通过接入DeepSeek API实现对Linux终端的自然语言控制,帮助用户更高效地进行系统运维工作。

二、版本特性对比

特性v1.4.1  1.4.1 版v2.0.3  2.0.3 版v2.0.4  2.0.4 版v2.0.5 (最新)
自然语言理解
智能命令执行
安全控制机制
多轮对话支持✓+✓+
自动/手动模式切换
流式输出回答
自定义主题
交互式教程
Linux专属优化
输入阻塞问题修复
终端状态恢复

三、功能特点

  • 自然语言理解:通过DeepSeek API理解用户的自然语言指令
  • 智能命令执行:将用户意图转换为Linux命令并安全执行
  • 结果反馈:清晰展示命令执行结果
  • 安全控制:内置安全检查机制,防止危险操作
  • 历史记录:保存交互历史,方便复用和追踪

系统要求

  • Rocky Linux 9.4 或其他兼容系统
  • Python 3.8+  Python 3.8+ 版
  • 网络连接(用于访问DeepSeek API)
  • DeepSeek API密钥  DeepSeek API 密钥

重要提示: 从版本2.0.5起,LinuxAgent已专门针对Linux环境进行优化,移除了Windows相关代码,解决了终端状态和键盘输入问题。如果您在之前版本遇到过终端输入阻塞或"msvcrt"模块相关错误,强烈建议升级到最新版本。

四、安装说明

  1. 克隆代码库
git clone https://gitcode.com/qq_69174109/LinuxAgent.git
cd LinuxAgent
  1. 安装依赖
pip install -r requirements.txt
  1. 配置DeepSeek API密钥  配置 DeepSeek API 密钥
cp config.yaml.example config.yaml
# 编辑config.yaml,填入DeepSeek API密钥

详细使用指南

获取DeepSeek API密钥

  1. 访问DeepSeek官方网站(https://deepseek.com)注册账号
  2. 在个人设置或API页面申请API密钥
  3. 复制获得的API密钥
配置系统

  1. 编辑config.yaml文件:
vi config.yaml
  1. 将您的API密钥填入配置文件的相应位置:
api:api_key: "your_deepseek_api_key"  # 将此处替换为真实API密钥
  1. 其他配置项说明:

    • base_url: DeepSeek API的基础URL,默认不需要修改
    • model: 使用的模型名称,默认使用"deepseek-chat"
    • timeout: API请求超时时间,默认30秒
  2. 安全设置:

    • confirm_dangerous_commands: 是否确认危险命令(建议保持为true)
    • blocked_commands: 完全禁止执行的命令列表
    • confirm_patterns: 需要确认才能执行的命令模式
启动运行

  1. 直接运行主程序:
python linuxagent.py
  1. 使用调试模式运行(显示更多日志信息):
python linuxagent.py -d
  1. 指定配置文件路径:
python linuxagent.py -c /path/to/your/config.yaml

日常使用

  1. 基本交互方式

    • 启动程序后,您会看到提示符[LinuxAgent] >
    • 直接输入自然语言指令,例如:"帮我查看系统内存使用情况"
    • 系统会调用DeepSeek API分析您的指令并生成对应的Linux命令
    • 显示命令并执行,然后返回结果分析
  2. 内置命令

    • help: 显示帮助信息
    • exitquit: 退出程序
    • clear: 清屏
    • history: 显示历史记录
    • config: 显示当前配置
  3. 常用示例

    系统信息类:

    • "显示系统基本信息"
    • "查看当前系统负载情况"
    • "检查系统已运行时间和登录用户"

    文件操作类:

    • "查找/var目录下最近7天修改的大于100MB的文件"
    • "找出/home目录下权限为777的文件并列出"
    • "将/tmp目录下30天前的日志文件压缩"

    服务管理类:

    • "查看所有正在运行的服务"
    • "检查nginx服务状态并确保它在启动时自动运行"
    • "重启MySQL服务并查看最近的错误日志"

    网络操作类:

    • "检查网络连接状态"
    • "显示所有开放的网络端口和对应的进程"
    • "测试到百度和谷歌的网络连接"
  4. 高级用法

    • 管道和复杂命令: "查找占用CPU最高的5个进程,并显示它们的详细信息"

    • 多步骤任务: "备份MySQL数据库,压缩备份文件,然后移动到/backup目录"

    • 定期任务设置: "创建一个cron任务,每天凌晨3点自动清理/tmp目录下的临时文件"

  5. 设置功能

    • 主题设置:

      [LinuxAgent] > theme
      

      可选择不同的界面主题,包括默认、暗色、亮色、复古和海洋等主题风格。

    • 语言设置:

      [LinuxAgent] > language
      

      支持切换中文、英文等多种语言界面。

    • 模式切换:

      [LinuxAgent] > mode
      [LinuxAgent] > chat mode
      [LinuxAgent] > agent mode
      [LinuxAgent] > auto mode
      

      在聊天模式、命令执行模式和自动模式之间切换。

    • API密钥设置:

      [LinuxAgent] > set api_key YOUR_API_KEY
      

      在不修改配置文件的情况下,直接在程序内设置DeepSeek API密钥。

    • 教程启动:

      [LinuxAgent] > tutorial
      

      启动交互式教程,学习如何使用LinuxAgent。

    • 会话导出:

      [LinuxAgent] > export chat
      

      将当前会话内容导出为文档或脚本。

使用方法

基本用法

# 启动LinuxAgent
./linuxagent.py

输入自然语言命令,LinuxAgent会自动转换为相应的Linux命令并执行:

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>[LinuxAgent] > 查找最近7天内修改过的大于100MB的日志文件
</code></span></span></span></span>

特殊命令

  • help - 显示帮助信息
  • exit 或 quit - 退出程序
  • clear - 清屏
  • history - 显示命令历史
  • config - 显示当前配置

交互式命令

LinuxAgent支持直接使用交互式命令或自然语言描述:

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code># 直接使用命令
[LinuxAgent] > vim /etc/nginx/nginx.conf# 使用自然语言描述
[LinuxAgent] > 使用nano编辑apache配置文件
[LinuxAgent] > 编辑/etc/fstab文件用vim
[LinuxAgent] > 用htop查看系统资源占用
</code></span></span></span></span>

支持的交互式命令包括:

  • 文本编辑器:vim, vi, nano, emacs
  • 命令行工具:top, htop, less, more
    命令行工具:top, htop, less, more
  • 数据库客户端:mysql, psql, sqlite3
  • Shell程序:bash, sh, zsh  Shell 程序:bash, sh, zsh
  • 网络工具:ssh, telnet, ftp, sftp

高级功能

命令拆分执行

对于复杂的多步骤命令,LinuxAgent可以将其拆分为多个步骤执行,提供更好的可控性:

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>[LinuxAgent] > 更新系统,安装nginx,并设置开机启动
</code></span></span></span></span>

系统会询问是否要将这个复杂命令拆分为多个步骤执行。

交互式编辑

可以通过edit命令直接编辑文件:

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>[LinuxAgent] > edit /etc/hosts vim
</code></span></span></span></span>

或者使用自然语言描述:

<span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><span style="color:#1f2328"><span style="color:var(--fgColor-default, var(--color-fg-default))"><span style="background-color:var(--bgColor-muted, var(--color-canvas-subtle))"><code>[LinuxAgent] > 使用nano编辑/etc/resolv.conf</code></span></span></span></span>

五、软件下载

夸克网盘分享

本文信息来源于GitHub作者地址:https://github.com/Eilen6316/LinuxAgent

相关文章:

  • 遗传算法实现单货架库位优化
  • 在Linux系统中安装Anaconda的完整指南
  • vue3代码规范管理;基于vite和vue3、 eslint、prettier、stylelint、husky规范;git触发eslint校验
  • JavaWeb:vueaxios
  • 光触发RFID:破解物流、电力、资产管理三大领域的“不可能三角”
  • 基于 Python 的实现:居民用电量数据分析与可视化
  • 基于SpringBoot的食物营养分析与推荐网站系统
  • 22.晶振的信号与布局布线处理
  • 安卓基础(泛型)
  • 跨语言哈希一致性:C# 与 Java 的 MD5 之战?
  • 搭建speak yarn集群:从零开始的详细指南
  • C++(初阶)(十三)——继承
  • 【C++11特性】Lambda表达式(匿名函数)
  • 职坐标IT培训破局AI风口新赛道
  • 「Mac畅玩AIGC与多模态06」开发篇02 - 开发第一个知识库问答应用
  • MANIPTRANS:通过残差学习实现高效的灵巧双手操作迁移
  • MYSQL-OCP官方课程学习截图
  • K8s新手系列之K8s中的资源
  • 庙算兵棋推演AI开发初探(7-神经网络训练与评估概述)
  • springboot dev process
  • 癌症来临前,可能伪装成这几种常见病,千万别大意
  • 海尔·2025青岛马拉松两选手被终身禁赛:违规转让号码、穿戴他人号码
  • 观察|英国航母再次部署印太,“高桅行动”也是“高危行动”
  • 美乌总统梵蒂冈会谈,外交部:望有关各方继续通过对话谈判解决危机
  • 第1现场|无军用物资!伊朗港口爆炸已遇难40人伤1200人
  • 一回合摘下“狮心”,张名扬霸气回应观众:再嘘一个我听听