Skip to content

rust-kotlin/ashell

Repository files navigation

中文 | English

ashell

Preview

ashell 是一款现代化的、基于 GPUI Component 构建的 Rust 桌面终端客户端。

该项目旨在通过结合本地和远程环境,并内置丰富的核心功能,提供一个高性能且美观的 Shell 工作区。

🚀 v0.3 版本重磅更新!

全新发布的 v0.3 迎来了架构和体验的全面升级:

  • 全局实时字体设置与字号调节(感谢 @ancion 提供的 PR #6):支持自定义全局 UI 字体和终端渲染字体,支持实时字号调节并自动记忆。
  • SFTP 多任务并发传输队列:引入全新的独立传输对话框,支持多文件并发上传下载,提供精准的进度展示。
  • 持久化工作区记忆:您对侧边栏的尺寸拖拽、终端主题、字体、隐藏文件开关等一切设置都会在下次启动时原样恢复!
  • 智能断线重连与状态感知:全面增强的 SSH 网络异常处理机制,断线后直接提供美观的覆盖层用于一键重连或关闭。
  • 多语言热切换增强:深度优化的 i18n 系统,包含中文与英文在内的所有界面文案现在均支持热切换。
  • 智能右键快捷操作:新增终端右键智能复制与粘贴功能,提供专属设置项自由控制开关,并支持根据不同操作系统自适应显示原生快捷键提示。

下载

您可以从 GitHub Releases 页面 下载 macOS、Windows 和 Linux 版本的最新预编译程序。

Mac 安装指南

下载并解压后,请先将 ashell.app 拖入或移动到 应用程序 (Applications) 目录。 由于应用采用本地签名,初次启动时如果系统提示“App 已损坏,无法打开”,请打开终端(Terminal)并执行以下命令:

sudo xattr -cr /Applications/ashell.app

功能特性

当前版本提供了一个功能完备的 GPUI 原生工作区:

  • 本地与远程会话:支持打开本地终端标签页或通过 SSH 连接到远程服务器。
  • 高级 SSH 认证:支持基于密码和基于密钥(文件路径或内联内容)的 SSH 连接方式。
  • 会话管理:可以轻松地保存、重新打开、编辑和删除您的 SSH 会话。
  • SFTP 集成:内置 SFTP 文件管理器,可以浏览、上传、下载以及管理远程文件。
  • 强大的终端模拟器:使用 alacritty_terminal 解析终端输出,支持丰富的 ANSI 颜色代码、极速渲染和完整的键盘输入转发。
  • 系统遥测:在左侧边栏实时可视化显示 CPU、内存、Swap、网络和磁盘的使用指标。
  • 主题系统:支持直接从顶部工具栏切换多种 GPUI Component 颜色主题。
  • 内置字体:开箱即用,内置 Maple Mono NF CN 字体,提供卓越的中日韩(CJK)字符与 Nerd Font 图标支持。

运行

在本地运行该应用:

cargo run --release

打包 macOS 应用

./scripts/package-macos-app.sh
open target/release/ashell.app

该打包脚本会创建一个标准的 .app 应用程序包。它没有附加 entitlements 文件,并且在签名后会验证是否不存在 com.apple.security.app-sandbox(这意味着它在非沙盒模式下运行)。

协议

本项目采用 GPL-3.0-or-later 协议 开源。

About

ashell is a modern, fast, GPUI Component-based desktop terminal client written in Rust.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors