告别手敲命令!个人开源 AI 运维神器 AITerm,用自然语言远程管理服务器
AITermAI 驱动的智能终端管理工具通过自然语言指令远程管理服务器。项目地址https://gitee.com/newpc/aiterm简介在日常运维服务器过程中经常需要手动输入大量命令。AITerm 旨在通过自然语言交互让 AI 自动完成这些任务提升运维效率。虽然市面上已有 Claude Code、Openclaw、OpenCode、Codex 等自动化工具但在部署、使用灵活性方面个人认为仍有不足。AITerm 专注于快速部署- 一键启动无需复杂配置模型配置简单- 支持 OpenAI 兼容 API配置直观提示词自定义- 系统提示词支持完全自定义多端访问- Web 架构PC 端、移动端均可访问本系统使用 DeepSeek 官方 API 调试开发支持/chat/completions接口兼容 OpenAI API 格式。功能特性自然语言交互- 用自然语言描述任务AI 自动规划并执行多节点管理- 支持管理多台服务器统一调度执行智能命令生成- AI 自动生成适配目标系统的命令风险评估- 高风险命令自动识别需人工确认后执行实时执行反馈- SSE 流式输出命令执行过程跨平台支持- 兼容 Windows、Linux、macOS工具系统- 支持自定义工具大模型可调用工具获取信息界面展示对话界面自然语言交互界面AI 实时展示思考过程和工具调用。对话历史查看历史对话记录支持继续对话和重新生成。终端界面支持在终端中直接执行命令实时查看执行结果。节点管理管理多台服务器节点支持添加、编辑、删除节点。技术栈后端Python 3.10 / FastAPISQLiteOpenAI 兼容 API前端Vue 3 TypeScriptElement Plusxterm.jsCodeMirror 6快速开始环境要求Python 3.10Node.js 18后端启动cdaiterm-server-python pipinstall-rrequirements.txt python main.py服务默认运行在http://localhost:18084前端启动cdaiterm-webyarninstallyarndev前端开发服务器默认运行在 http://localhost:18085工具系统初始化默认工具运行以下脚本导入预设工具和默认配置提示词cdaiterm-server-python python init_scripts/init_tools.py python init_scripts/init_settings.py预设工具包括工具名称显示名称描述get_current_time获取当前时间获取当前日期、时间和星期read_file读取文件读取指定路径的文件内容write_file写入文件将内容写入指定路径的文件list_directory列出目录列出指定目录下的文件和子目录delete_file删除文件删除指定的文件copy_file复制文件复制文件到指定路径move_file移动文件移动或重命名文件http_requestHTTP请求发送HTTP请求支持GET、POST等方法download_file下载文件从URL下载文件到本地create_directory创建目录创建目录支持多级创建get_file_info获取文件信息获取文件的详细信息包括大小、修改时间等search_files搜索文件在目录中搜索匹配的文件工具管理内置40工具可以导入工具编辑可以指定参数、工具名称、描述自定义工具代码功能可以测试工具的输入、输出。系统可以借助 工具大模型 灵活完成任务。自定义工具配置包括工具名称、描述、参数定义和执行代码。工具调用流程用户消息 → 大模型 → 判断是否需要调用工具 ↓ 返回 tool_calls工具名参数 ↓ 系统执行工具代码 → 返回结果 ↓ 结果返回大模型 → 生成最终回复对话流程消息展示结构对话过程中消息按照以下顺序展示┌─────────────────────────────────────────────────────────────┐ │ 用户输入 │ │ 写一个 HTTP Python 服务器文件并保存 │ └─────────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────────┐ │ 思考中... (实时显示) │ │ ├─ 用户想要创建一个 HTTP 服务器文件... │ │ ├─ 我需要先查看当前目录结构... │ │ └─ 然后创建一个简单的 HTTP 服务器代码... │ │ │ │ ✅ 已思考 (耗时 2.3s) [展开/收起] │ └─────────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────────┐ │ 调用工具: list_directory (2024-01-15 10:30:15) │ │ ├─ 参数: {path: /data/sandbox} │ │ └─ 结果: {files: [test.py, data.json]} │ │ │ │ 调用工具: write_file (2024-01-15 10:30:18) │ │ ├─ 参数: {path: /data/sandbox/http_server.py, ...} │ │ └─ 结果: {success: true} │ └─────────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────────┐ │ AI 回答 │ │ 我已经为你创建了一个简单的 HTTP 服务器文件 http_server.py │ │ 保存在沙盒目录中。你可以使用以下命令运行它 │ │ │ │ bash │ │ python http_server.py │ │ │ └─────────────────────────────────────────────────────────────┘多轮工具调用当任务复杂时大模型可能进行多轮思考和工具调用输入 → 思考1 → 工具调用1 → 思考2 → 工具调用2 → ... → 回答示例流程步骤类型内容说明1输入用户发送消息2思考大模型分析任务规划执行步骤3工具调用list_directory查看目录结构4思考根据目录内容决定下一步操作5工具调用write_file创建文件6思考确认文件创建成功准备回答7回答生成最终回复实时显示特性思考过程实时流式输出- 用户可以看到大模型的思考过程工具调用即时反馈- 显示工具名称、参数和执行结果时间信息- 每个思考阶段和工具调用都显示时间戳独立展开控制- 思考和工具调用区域可独立展开/收起配置选项在全局设置中可以配置配置项说明显示对话输入是否显示每次调用大模型时的输入内容最大迭代次数工具调用的最大循环次数默认 20沙盒路径文件操作允许的路径范围模型配置配置大模型 API支持 OpenAI 兼容的 API 接口。全局配置系统全局设置包括提示词模板、沙盒路径、迭代次数等。用户配置用户个人设置包括主题、语言等偏好配置。自定义工具工具代码需要定义execute函数defexecute(arguments): arguments: dict - 工具参数 返回: 工具执行结果 # 在这里编写你的工具逻辑return{success:True,result:...}使用示例访问 Web 界面配置 LLM API在聊天界面输入自然语言指令如“查看系统内存使用情况”“安装 nginx 并配置反向代理”“检查磁盘空间并清理临时文件”AI 自动生成命令计划确认后执行实时查看执行结果项目结构AITerm/ ├── aiterm-server-python/ # 后端服务 │ ├── app/ # 应用模块 │ │ ├── api/ # API 路由 │ │ ├── db/ # 数据库模型 │ │ ├── models/ # Pydantic 模型 │ │ ├── repositories/ # 数据访问层 │ │ └── services/ # 业务逻辑层 │ ├── scripts/ # 脚本 │ │ └── init_tools.py # 工具初始化脚本 │ └── main.py # 入口文件 ├── aiterm-web/ # 前端应用 │ ├── src/ # 源代码 │ └── public/ # 静态资源 └── README.md完整对话示例以下是一个完整的对话示例展示了从用户输入到 AI 回答的完整流程对话流程说明用户请求“写一个 HTTP Python 的代码文件并保存”第 1 轮迭代阶段内容思考分析用户需求决定先查看沙盒目录结构工具调用list_directory- 查看目录I:/sandbox结果发现目录中已有flask_app、http_server.py、main.py第 2 轮迭代阶段内容思考决定创建一个新的综合 HTTP 示例文件http_demo.py工具调用write_file- 写入完整的 HTTP 服务器代码结果成功创建 6.6 KB 的 Python 文件第 3 轮迭代阶段内容思考验证文件是否创建成功工具调用get_file_info- 获取文件信息结果确认文件创建成功显示文件详情最终回答AI 返回了文件创建成功的摘要包括文件路径、大小、创建时间以及文件内容说明和使用方法。流程测试2测试脚本测试结果系统自动规划步骤逐步骤进行思考、调用工具、生成结果最后得到答案标题测试流程3测试脚本测试结果测试过程
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2583137.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!