Gemini-CLI-UI

GitHub
657 160 中等 1 次阅读 昨天GPL-3.0插件
AI 解读 由 AI 自动生成,仅供参考

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
GPU

未说明

内存

未说明

依赖
notes该工具是基于 Web 的界面,需要预先安装并配置好 Google 官方的 Gemini CLI。后端使用 Node.js (Express) 和 SQLite 数据库(自动初始化),前端使用 React + Vite。默认端口为 API 4008 和前端开发服务器 4009(可在 .env 中修改)。出于安全考虑,所有 Gemini CLI 工具默认禁用,需在设置中手动启用。首次运行会自动创建用户管理系统,第一个注册用户将成为管理员。
python不需要
Node.js v20+
React 18
Vite
Express
Tailwind CSS
CodeMirror
SQLite3
bcrypt
jsonwebtoken
Gemini-CLI-UI hero image

快速开始

Gemini CLI UI

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 模式 - 跳过确认提示以加快操作速度(请谨慎使用)

快速入门

先决条件

安装

  1. 克隆仓库:
git clone https://github.com/cruzyjapan/Gemini-CLI-UI.git
cd Gemini-CLI-UI
  1. 安装依赖:
npm install
  1. 配置环境:
cp .env.example .env
# 根据您的偏好编辑 .env 文件

注意:出于安全考虑,已移除 .env 文件。使用时请务必复制 .env.example.env,并根据需要修改设置。

  1. 启动应用:
# 开发模式(支持热重载)
npm run dev

应用程序将按照您在 .env 文件中指定的端口启动。

  1. 打开浏览器:
    • 开发环境:http://localhost:4009

安全与工具配置

🔒 重要提示:所有 Gemini CLI 工具默认处于禁用状态。这可以防止潜在的有害操作自动运行。

启用工具

要使用 Gemini CLI 的全部功能,您需要手动启用工具:

  1. 打开工具设置 - 点击侧边栏中的齿轮图标
  2. 选择性启用 - 仅开启您需要的工具
  3. 应用设置 - 您的偏好将被本地保存

关于 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: 用于筛选活跃用户

首次运行设置

  1. 服务器首次启动时,若数据库文件不存在,则会自动创建。
  2. 表结构从 server/database/init.sql 中加载。
  3. 首次访问时会显示用户注册界面。
  4. 第一个注册的用户将被设为管理员。

安全特性

  • 密码在存储前使用 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 项目。

致谢

使用的技术

支持与社区

关注最新动态

  • 点赞此仓库以表示支持。
  • 关注以获取更新和新版本发布。
  • 关注项目以接收相关公告。

相似工具推荐

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 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|2天前
插件开发框架

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85.1k|★★☆☆☆|今天
图像数据工具视频

OpenHands

OpenHands 是一个专注于 AI 驱动开发的开源平台,旨在让智能体(Agent)像人类开发者一样理解、编写和调试代码。它解决了传统编程中重复性劳动多、环境配置复杂以及人机协作效率低等痛点,通过自动化流程显著提升开发速度。 无论是希望提升编码效率的软件工程师、探索智能体技术的研究人员,还是需要快速原型验证的技术团队,都能从中受益。OpenHands 提供了灵活多样的使用方式:既可以通过命令行(CLI)或本地图形界面在个人电脑上轻松上手,体验类似 Devin 的流畅交互;也能利用其强大的 Python SDK 自定义智能体逻辑,甚至在云端大规模部署上千个智能体并行工作。 其核心技术亮点在于模块化的软件智能体 SDK,这不仅构成了平台的引擎,还支持高度可组合的开发模式。此外,OpenHands 在 SWE-bench 基准测试中取得了 77.6% 的优异成绩,证明了其解决真实世界软件工程问题的能力。平台还具备完善的企业级功能,支持与 Slack、Jira 等工具集成,并提供细粒度的权限管理,适合从个人开发者到大型企业的各类用户场景。

70.8k|★★★☆☆|今天
语言模型Agent开发框架

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 不仅是一套工具集,更是一种现代化的软件工厂实践,让单人开发者也能拥有严谨的工程流程。

67k|★★☆☆☆|今天
Agent插件

gpt4free

gpt4free 是一个由社区驱动的开源项目,旨在聚合多种可访问的大型语言模型(LLM)和媒体生成接口,让用户能更灵活、便捷地使用前沿 AI 能力。它解决了直接调用各类模型时面临的接口分散、门槛高或成本昂贵等痛点,通过统一的标准将不同提供商的资源整合在一起。 无论是希望快速集成 AI 功能的开发者、需要多模型对比测试的研究人员,还是想免费体验最新技术的普通用户,都能从中受益。gpt4free 提供了丰富的使用方式:既包含易于上手的 Python 和 JavaScript 客户端库,也支持部署本地图形界面(GUI),更提供了兼容 OpenAI 标准的 REST API,方便无缝替换现有应用后端。 其技术亮点在于强大的多提供商支持架构,能够动态调度包括 Opus、Gemini、DeepSeek 等多种主流模型资源,并支持 Docker 一键部署及本地推理。项目秉持社区优先原则,在降低使用门槛的同时,也为贡献者提供了扩展新接口的便利框架,是探索和利用多样化 AI 资源的实用工具。

66k|★★☆☆☆|5天前
插件语言模型Agent

meilisearch

Meilisearch 是一个开源的极速搜索服务,专为现代应用和网站打造,开箱即用。它能帮助开发者快速集成高质量的搜索功能,无需复杂的配置或额外的数据预处理。传统搜索方案往往需要大量调优才能实现准确结果,而 Meilisearch 内置了拼写容错、同义词识别、即时响应等实用特性,并支持 AI 驱动的混合搜索(结合关键词与语义理解),显著提升用户查找信息的体验。 Meilisearch 特别适合 Web 开发者、产品团队或初创公司使用,尤其适用于需要快速上线搜索功能的场景,如电商网站、内容平台或 SaaS 应用。它提供简洁的 RESTful API 和多种语言 SDK,部署简单,资源占用低,本地开发或生产环境均可轻松运行。对于希望在不依赖大型云服务的前提下,为用户提供流畅、智能搜索体验的团队来说,Meilisearch 是一个高效且友好的选择。

57k|★★☆☆☆|今天
图像Agent数据工具