diff --git a/README.md b/README.md index 97c0f2f45e4dd004b344e4e793b811672146e9e7..6f51209350d4792e6ef14187550b6b603d7fb5cf 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# openEuler Intelligence Smart Shell +# OE-CLI 命令行助手 -一个基于 Python Textual 构建的智能终端应用程序,提供 AI 驱动的命令行交互体验。支持多种 LLM 后端,集成 MCP 协议,提供现代化的 TUI 界面。 +OE-CLI 是 openEuler Intelligence 的命令行客户端,提供 AI 驱动的命令行交互体验。支持多种 LLM 后端,集成 MCP 协议,提供现代化的 TUI 界面。 ## 核心特性 @@ -8,6 +8,7 @@ - **智能终端界面**: 基于 Textual 的现代化 TUI 界面 - **流式响应**: 实时显示 AI 回复内容 - **部署助手**: 内置 openEuler Intelligence 自动部署功能 +- **一键认证**: 提供浏览器登录流程,自动获得并保存 API Key ## 安装说明 @@ -22,9 +23,11 @@ 2. 安装依赖(建议使用 Python 虚拟环境): - ```sh - pip install -r requirements.txt - ``` + ```sh + uv venv --python 3.11 .venv + source .venv/bin/activate + uv pip install -e '.[dev]' + ``` ### 方式二:通过 RPM 包安装 @@ -68,6 +71,14 @@ oi --init oi --agent ``` +通过浏览器登录并自动保存 API Key(需要已配置的 openEuler Intelligence 后端): + +```sh +oi --login +``` + +运行前请确保运行环境具备图形界面并能启动默认浏览器;在无图形界面的场景下可使用 X11 转发或直接在目标服务器上执行该命令。 + 应用启动后,您可以直接在输入框中输入命令。如果命令无效或无法执行,应用程序将基于您的输入提供智能建议。 ### 界面操作快捷键 @@ -177,6 +188,54 @@ oi --agent 3. 如果系统配置文件不存在或权限不足,工具会显示相应错误信息并退出; 4. 建议在修改配置前备份原有的配置文件。 +### `--login` 命令说明 + +`--login` 命令用于通过默认浏览器获取 openEuler Intelligence 的 API Key,并自动写入到本地配置: + +1. **获取授权地址**: 从已配置的 openEuler Intelligence 后端读取登录跳转链接; +2. **本地回调服务**: 在本地启动一个临时回调服务器,处理浏览器回传的数据; +3. **打开浏览器**: 自动打开登录页面,用户按提示完成账号登录; +4. **保存凭证**: 登录成功后自动将返回的访问令牌写入配置文件。 + +**使用要求**: + +- 已通过 `--init` 或手动方式配置 openEuler Intelligence URL; +- 运行环境具备可用浏览器(无头服务器需使用图形转发或在本地执行); +- 登录过程需要网络访问 openEuler Intelligence 后端。 + +遇到错误时,命令会输出详细的提示信息帮助排查,例如未检测到浏览器或 URL 未配置等情况。 + +## 国际化支持 + +应用程序内置多语言支持,提供英文和中文界面。 + +### 支持的语言 + +- **English (en_US)** - 默认语言 +- **简体中文 (zh_CN)** + +### 切换语言 + +```sh +# 切换到中文 +oi --locale zh_CN + +# 切换到英文 +oi --locale en_US +``` + +语言设置会自动保存,下次启动时生效。 + +### 语言自动检测 + +应用启动时会按以下优先级确定显示语言: + +1. 用户配置文件中的语言设置 +2. 系统环境变量(`LANG`, `LC_ALL` 等) +3. 默认语言(英语) + +如果系统语言为中文,首次运行时会自动使用中文界面。 + ## 配置说明 应用程序支持两种后端配置,配置文件会自动保存在 `~/.config/eulerintelli/smart-shell.json`: @@ -344,8 +403,9 @@ oi --agent ```text smart-shell/ ├── README.md # 项目说明文档 -├── requirements.txt # Python 依赖包列表 -├── setup.py # 包安装配置文件 +├── pyproject.toml # 项目配置与依赖(由 uv 管理) +├── requirements.txt # pip 兼容依赖列表(使用 uv export 生成) +├── uv.lock # uv 生成的锁定文件 ├── LICENSE # 开源许可证 ├── distribution/ # 发布相关文件 ├── docs/ # 项目文档目录 diff --git a/euler-copilot-shell-0.10.2.tar.gz b/euler-copilot-shell-0.10.2.tar.gz index a9fdd9e36c1431e9a46459afef09313410dace5f..2aee28f2524219b4bc04bf3119a84547d1f66c8d 100644 Binary files a/euler-copilot-shell-0.10.2.tar.gz and b/euler-copilot-shell-0.10.2.tar.gz differ diff --git a/euler-copilot-shell.spec b/euler-copilot-shell.spec index e5020e8e91604efdf6320edb5a8e4c81bd73f870..d495ab6721b99d20bfaf11d870924c46c92650db 100644 --- a/euler-copilot-shell.spec +++ b/euler-copilot-shell.spec @@ -4,7 +4,7 @@ Name: euler-copilot-shell Version: 0.10.2 -Release: 3%{?dist} +Release: 4%{?dist} Summary: openEuler Intelligence 智能命令行工具集 License: MulanPSL-2.0 URL: https://gitee.com/openeuler/euler-copilot-shell @@ -137,6 +137,10 @@ rm -f /usr/lib/openeuler-intelligence/scripts/5-resource/env.* fi %changelog +* Tue Nov 04 2025 openEuler - 0.10.2-4 +- Fix timeout when executing complex MCP tasks +- Feature: Add login through browser (requires proper desktop environment) + * Wed Oct 29 2025 openEuler - 0.10.2-3 - Fix issue where failing to fetch mcp when creating agent with oi-manager