Gemini-CLI-UI
Gemini-CLI-UI 是一款专为 Google 官方 AI 编程助手 Gemini CLI 打造的响应式网页界面。它打破了传统命令行工具的操作壁垒,让用户无需记忆复杂指令,即可通过直观的图形界面在电脑、平板或手机上轻松进行 AI 辅助编程。
该工具主要解决了原生 CLI 缺乏可视化交互、移动端适配困难以及文件管理不便等痛点。它将原本枯燥的终端操作转化为包含交互式聊天、集成终端、实时文件编辑器和 Git 版本控制的一站式工作台。用户不仅能像在本地编辑器中一样直接浏览和修改代码,还能可视化管理多个会话历史,随时恢复之前的对话上下文。
这款软件非常适合希望提升开发效率的软件工程师、需要在不同设备间灵活切换工作的全栈开发者,以及想要尝试 AI 编程但畏惧命令行门槛的技术爱好者。其独特的技术亮点包括支持多模型切换(如 Gemini 2.5 Pro)、提供谨慎可控的"YOLO 模式”以跳过确认提示加速操作,以及默认禁用高风险工具的安全机制,确保用户在享受便利的同时保障项目安全。无论是本地开发还是远程协作,Gemini-CLI-UI 都能提供流畅且一致的使用体验。
使用场景
资深后端工程师李明正在通勤途中,急需利用碎片时间修复线上项目的紧急 Bug 并验证代码逻辑。
没有 Gemini-CLI-UI 时
- 设备受限严重:由于缺乏图形界面,手机无法运行复杂的命令行交互,只能干着急等到回公司用电脑处理。
- 操作繁琐易错:在纯文本终端中难以直观浏览项目文件结构,修改多行代码时极易因误触导致语法错误。
- 上下文割裂:无法同时查看 Git 变更差异与 AI 对话历史,切换分支或提交代码时需要频繁中断思路去执行独立命令。
- 安全风险难控:AI 自动执行文件修改前缺乏可视化的确认步骤,容易在不知情的情况下覆盖重要配置。
使用 Gemini-CLI-UI 后
- 全端无缝协作:借助响应式网页设计,李明在平板上即可通过直观的聊天窗口和文件树,像在公司一样流畅地进行 AI 辅助编程。
- 可视化高效编辑:内置的代码编辑器支持语法高亮和实时预览,他能直接选中报错函数让 AI 重构,无需手动敲入冗长指令。
- 工作流深度集成:Git 面板让他一边与 AI 讨论修复方案,一边直接查看 Diff、暂存更改并提交 Commit,保持了思维连贯性。
- 可控的自动化:通过设置页按需开启工具权限,他在关键操作前能清晰看到 AI 的计划并手动确认,彻底消除了“盲跑”脚本的隐患。
Gemini-CLI-UI 将原本局限于桌面的命令行能力解放到任意设备,让开发者在任何场景下都能拥有安全、可视且高效的全栈编程体验。
运行环境要求
- Linux
- macOS
- Windows
未说明
未说明

快速开始
Gemini CLI UI
Gemini CLI 的桌面和移动界面,它是 Google 官方提供的 AI 辅助编程命令行工具。您可以在本地或远程使用它来查看 Gemini CLI 中的活动项目和会话,并以与在 Gemini CLI 中相同的方式对其进行修改。这为您提供了一个可在任何地方使用的完善界面。
截图
聊天视图
显示项目概览和聊天的主要界面 |
设置
设置 |
聊天视图
Gemini CLI UI 架构图 |
功能
- 响应式设计 - 在桌面、平板和手机上都能无缝运行,因此您也可以在手机上使用 Gemini CLI
- 交互式聊天界面 - 内置聊天界面,可与 Gemini CLI 无缝沟通
- 集成的 Shell 终端 - 通过内置的 shell 功能直接访问 Gemini CLI
- 文件管理器 - 带语法高亮和实时编辑功能的交互式文件树
- Git 管理器 - 查看、暂存并提交您的更改。您还可以切换分支
- 会话管理 - 恢复对话、管理多个会话并跟踪历史记录
- 模型选择 - 可从包括 Gemini 2.5 Pro 在内的多个 Gemini 模型中进行选择
- YOLO 模式 - 跳过确认提示以加快操作速度(请谨慎使用)
快速入门
先决条件
- Node.js v20 或更高版本
- 已安装并配置好 Gemini CLI
安装
- 克隆仓库:
git clone https://github.com/cruzyjapan/Gemini-CLI-UI.git
cd Gemini-CLI-UI
- 安装依赖:
npm install
- 配置环境:
cp .env.example .env
# 根据您的偏好编辑 .env 文件
注意:出于安全考虑,已移除 .env 文件。使用时请务必复制 .env.example 到 .env,并根据需要修改设置。
- 启动应用:
# 开发模式(支持热重载)
npm run dev
应用程序将按照您在 .env 文件中指定的端口启动。
- 打开浏览器:
- 开发环境:
http://localhost:4009
- 开发环境:
安全与工具配置
🔒 重要提示:所有 Gemini CLI 工具默认处于禁用状态。这可以防止潜在的有害操作自动运行。
启用工具
要使用 Gemini CLI 的全部功能,您需要手动启用工具:
- 打开工具设置 - 点击侧边栏中的齿轮图标
- 选择性启用 - 仅开启您需要的工具
- 应用设置 - 您的偏好将被本地保存
关于 YOLO 模式
YOLO 模式(“You Only Live Once”)相当于 Gemini CLI 的 --yolo 标志,可跳过所有确认提示。此模式可加快您的工作速度,但应谨慎使用。
建议做法:先启用基本工具,然后根据需要逐步添加更多工具。您随时可以调整这些设置。
使用指南
核心功能
项目管理
该界面会自动从 ~/.gemini/projects/ 中发现 Gemini CLI 项目,并提供:
- 可视化项目浏览器 - 所有可用项目及其元数据和会话数量
- 项目操作 - 重命名、删除和整理项目
- 智能导航 - 快速访问最近的项目和会话
聊天界面
- 使用响应式聊天或 Gemini CLI - 您可以选择使用适配后的聊天界面,或点击 shell 按钮连接到 Gemini CLI
- 实时通信 - 通过 WebSocket 连接流式传输来自 Gemini 的回复
- 会话管理 - 恢复之前的对话或开始新的会话
- 消息历史 - 包含时间戳和元数据的完整对话历史
- 多格式支持 - 文本、代码块和文件引用
- 图片上传 - 在聊天中上传图片并提问
文件管理器与编辑器
- 交互式文件树 - 浏览项目结构,支持展开/折叠导航
- 实时文件编辑 - 直接在界面中读取、修改和保存文件
- 语法高亮 - 支持多种编程语言
- 文件操作 - 创建、重命名、删除文件和目录
Git 管理器
- 可视化更改 - 实时查看当前更改
- 暂存与提交 - 直接从界面创建 Git 提交
- 分支管理 - 切换和管理分支
会话管理
- 会话持久化 - 所有对话都会自动保存
- 会话组织 - 按项目和时间戳对会话进行分组
- 会话操作 - 重命名、删除和导出对话历史
- 跨设备同步 - 可从任何设备访问会话
移动应用
- 响应式设计 - 针对所有屏幕尺寸优化
- 触控友好界面 - 滑动手势和触控导航
- 移动端导航 - 底部标签栏便于拇指操作
- 自适应布局 - 折叠侧边栏和智能内容优先级排序
- 添加到主屏幕 - 将快捷方式添加到主屏幕后,应用将表现得像 PWA 一样
架构
系统概述
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 前端 │ │ 后端 │ │ Gemini CLI │
│ (React/Vite) │◄──►│ (Express/WS) │◄──►│ 集成 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
后端(Node.js + Express)
- Express 服务器 - 提供 RESTful API 和静态文件服务(端口:4008)
- WebSocket 服务器 - 用于聊天和项目刷新的通信
- Gemini CLI 集成 - 进程创建和管理
- 会话管理 - JSONL 解析和对话持久化
- 文件系统 API - 向用户暴露项目文件浏览器
- 认证系统 - 安全登录和会话管理(SQLite 数据库:geminicliui_auth.db)
前端(React + Vite)
- React 18 - 使用 hooks 的现代组件架构
- CodeMirror - 具有语法高亮功能的高级代码编辑器
- Tailwind CSS - 基于实用程序的 CSS 框架
- 响应式设计 - 以移动设备为先的设计方法
配置详情
端口设置
- API 服务器:端口 4008(默认)
- 前端开发服务器:端口 4009(默认)
- 这些端口可以在
.env文件中更改
数据库配置
初始设置与表结构
- 数据库文件:
server/database/geminicliui_auth.db - 数据库类型: SQLite 3
- 初始化: 服务器启动时自动创建并初始化
用户表详情
表名: geminicliui_users
| 列名 | 数据类型 | 约束 | 描述 |
|---|---|---|---|
id |
INTEGER | 主键自增 | 唯一用户标识符 |
username |
TEXT | 唯一,非空 | 登录用户名(推荐使用邮箱) |
password_hash |
TEXT | 非空 | bcrypt 加密后的密码哈希值 |
created_at |
DATETIME | 默认当前时间戳 | 账户创建时间戳 |
last_login |
DATETIME | 可为空 | 最后登录时间戳 |
is_active |
BOOLEAN | 默认 1 | 账户启用/禁用状态 |
索引:
idx_geminicliui_users_username: 用于快速查找用户名idx_geminicliui_users_active: 用于筛选活跃用户
首次运行设置
- 服务器首次启动时,若数据库文件不存在,则会自动创建。
- 表结构从
server/database/init.sql中加载。 - 首次访问时会显示用户注册界面。
- 第一个注册的用户将被设为管理员。
安全特性
- 密码在存储前使用 bcrypt 进行哈希处理。
- 基于 JWT 的认证系统。
- 具有超时功能的会话管理。
- SQL 注入防护(使用预处理语句)。
故障排除
常见问题及解决方案
“未找到 Gemini 项目”
问题: 界面显示无项目或项目列表为空。 解决方案:
- 确保 Gemini CLI 已正确安装。
- 至少在一个项目目录中运行
gemini命令以进行初始化。 - 检查
~/.gemini/projects/目录是否存在且权限正确。
文件浏览器问题
问题: 文件无法加载、权限错误、目录为空。 解决方案:
- 检查项目目录权限(在终端中运行
ls -la)。 - 确认项目路径存在且可访问。
- 查看服务器控制台日志以获取详细错误信息。
- 确保未尝试访问项目范围之外的系统目录。
模型选择无效
问题: 选择的模型未生效。 解决方案:
- 在设置中选择模型后,请务必点击“保存设置”。
- 清除浏览器本地存储并重新配置。
- 确认聊天界面中正确显示所选模型名称。
许可证
GNU 通用公共许可证 v3.0 - 详情请参阅 LICENSE 文件。
本项目为开源项目,可在 GPL v3 许可证下自由使用、修改和分发。
原始项目
本项目基于 Claude Code UI(GPL v3.0),并进行了定制化开发。
主要改动:
- 由 Claude CLI 改为 Gemini CLI。
- 添加了基于 SQLite 的认证系统。
- 引入了 Gemini 特有的模型选择功能。
- 增强了对日语的支持。
- 对 UI 进行了调整,并加入了 Gemini 品牌元素。
感谢原始的 Claude Code UI 项目。
致谢
使用的技术
- Gemini CLI - Google 官方 CLI
- React - 用户界面库
- Vite - 快速构建工具及开发服务器
- Tailwind CSS - 实用优先的 CSS 框架
- CodeMirror - 高级代码编辑器
支持与社区
关注最新动态
- 点赞此仓库以表示支持。
- 关注以获取更新和新版本发布。
- 关注项目以接收相关公告。
相似工具推荐
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
OpenHands
OpenHands 是一个专注于 AI 驱动开发的开源平台,旨在让智能体(Agent)像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点,通过自动化流程显著提升开发速度。 无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员,还是需要快速原型验证的技术团队,都能从中受益。OpenHands 提供了灵活多样的使用方式:既可以通过命令行(CLI)或本地图形界面在个人电脑上轻松上手,体验类似 Devin 的流畅交互;也能利用其强大的 Python SDK 自定义智能体逻辑,甚至在云端大规模部署上千个智能体并行工作。 其核心技术亮点在于模块化的软件智能体 SDK,这不仅构成了平台的引擎,还支持高度可组合的开发模式。此外,OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩,证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能,支持与 Slack、Jira 等工具集成,并提供细粒度的权限管理,适合从个人开发者到大型企业的各类用户场景。
gstack
gstack 是 Y Combinator CEO Garry Tan 亲自开源的一套 AI 工程化配置,旨在将 Claude Code 升级为你的虚拟工程团队。面对单人开发难以兼顾产品战略、架构设计、代码审查及质量测试的挑战,gstack 提供了一套标准化解决方案,帮助开发者实现堪比二十人团队的高效产出。 这套配置特别适合希望提升交付效率的创始人、技术负责人,以及初次尝试 Claude Code 的开发者。gstack 的核心亮点在于内置了 15 个具有明确职责的 AI 角色工具,涵盖 CEO、设计师、工程经理、QA 等职能。用户只需通过简单的斜杠命令(如 `/review` 进行代码审查、`/qa` 执行测试、`/plan-ceo-review` 规划功能),即可自动化处理从需求分析到部署上线的全链路任务。 所有操作基于 Markdown 和斜杠命令,无需复杂配置,完全免费且遵循 MIT 协议。gstack 不仅是一套工具集,更是一种现代化的软件工厂实践,让单人开发者也能拥有严谨的工程流程。
gpt4free
gpt4free 是一个由社区驱动的开源项目,旨在聚合多种可访问的大型语言模型(LLM)和媒体生成接口,让用户能更灵活、便捷地使用前沿 AI 能力。它解决了直接调用各类模型时面临的接口分散、门槛高或成本昂贵等痛点,通过统一的标准将不同提供商的资源整合在一起。 无论是希望快速集成 AI 功能的开发者、需要多模型对比测试的研究人员,还是想免费体验最新技术的普通用户,都能从中受益。gpt4free 提供了丰富的使用方式:既包含易于上手的 Python 和 JavaScript 客户端库,也支持部署本地图形界面(GUI),更提供了兼容 OpenAI 标准的 REST API,方便无缝替换现有应用后端。 其技术亮点在于强大的多提供商支持架构,能够动态调度包括 Opus、Gemini、DeepSeek 等多种主流模型资源,并支持 Docker 一键部署及本地推理。项目秉持社区优先原则,在降低使用门槛的同时,也为贡献者提供了扩展新接口的便利框架,是探索和利用多样化 AI 资源的实用工具。
meilisearch
Meilisearch 是一个开源的极速搜索服务,专为现代应用和网站打造,开箱即用。它能帮助开发者快速集成高质量的搜索功能,无需复杂的配置或额外的数据预处理。传统搜索方案往往需要大量调优才能实现准确结果,而 Meilisearch 内置了拼写容错、同义词识别、即时响应等实用特性,并支持 AI 驱动的混合搜索(结合关键词与语义理解),显著提升用户查找信息的体验。 Meilisearch 特别适合 Web 开发者、产品团队或初创公司使用,尤其适用于需要快速上线搜索功能的场景,如电商网站、内容平台或 SaaS 应用。它提供简洁的 RESTful API 和多种语言 SDK,部署简单,资源占用低,本地开发或生产环境均可轻松运行。对于希望在不依赖大型云服务的前提下,为用户提供流畅、智能搜索体验的团队来说,Meilisearch 是一个高效且友好的选择。