Skip to content

Latest commit

 

History

History
329 lines (234 loc) · 10.4 KB

File metadata and controls

329 lines (234 loc) · 10.4 KB

Netcatty

Netcatty

现代化 SSH 客户端、SFTP 浏览器 & 终端管理器
netcatty.app

一个基于 Electron、React 和 xterm.js 构建的功能丰富的 SSH 工作空间。
分屏终端、Vault 多视图、SFTP 工作流、自定义主题、关键词高亮 —— 一应俱全。

GitHub Release   Platform   License

下载最新版

在 Ko-fi 上支持我

English · 简体中文 · 日本語


Netcatty 主界面


目录


Netcatty 是什么

Netcatty 是一款现代化的跨平台 SSH 客户端和终端管理器,专为需要高效管理多台远程服务器的开发者、系统管理员和 DevOps 工程师设计。

  • Netcatty 是 PuTTY、Termius、SecureCRT 和 macOS Terminal.app 的现代替代品
  • Netcatty 是 一个强大的 SFTP 客户端,支持双窗格文件浏览
  • Netcatty 是 一个终端工作空间,支持分屏、标签页和会话管理
  • Netcatty 支持 SSH、本地终端、Telnet、Mosh、串口(Serial)等连接方式(视环境而定)
  • Netcatty 不是 Shell 替代品 —— 它通过 SSH/Telnet/Mosh 或本地/串口会话连接到 Shell

为什么是 Netcatty

如果你需要同时维护多台服务器,Netcatty 更像是“工作台”而不是单一终端:

  • 以工作区为核心 —— 分屏 + 多会话并行,适合长期驻留的工作流
  • Vault 管理 —— 网格/列表/树形视图,配合搜索与拖拽更顺手
  • 认真做的 SFTP —— 内置编辑器 + 拖拽上传,文件操作更丝滑

功能特性

🗂️ Vault

  • 多种视图 —— 网格 / 列表 / 树形
  • 快速搜索 —— 迅速定位主机与分组

🖥️ 终端工作区

  • 分屏 —— 水平/垂直分割,多任务并行
  • 多会话管理 —— 多连接并排处理

📁 SFTP + 内置编辑器

  • 文件工作流 —— 拖拽上传/下载更直观
  • 就地编辑 —— 内置编辑器快速修改文件

🎨 个性化

  • 自定义主题 —— 按喜好调整应用外观
  • 关键词高亮 —— 自定义终端输出高亮规则

演示

GIF 预览(素材均在 screenshots/gifs/),在 GitHub README 中可直接观看:

Vault 视图:网格 / 列表 / 树形

根据不同场景自由切换视图:网格适合总览,列表适合密集浏览,树形适合层级导航与整理。

Vault 视图:网格/列表/树形

分屏终端 + 会话管理

用分屏把多个会话并排放在同一个工作区里,降低来回切换窗口/标签页的成本。

分屏终端 + 会话管理

SFTP:拖拽 + 内置编辑器

通过拖拽完成文件传输,并用内置编辑器快速修改文件内容,不用来回切换工具。

SFTP:拖拽 + 内置编辑器

拖拽文件上传

把文件直接拖进应用即可触发上传流程,省去多层对话框与路径选择。

拖拽文件上传

自定义主题

按自己的审美与习惯定制主题与界面外观,让日常使用更顺手。

自定义主题

关键词高亮

让关键输出一眼可见:错误、告警或特定标记被高亮后更容易扫到与定位。

关键词高亮


界面截图

主界面

主界面围绕长期 SSH 工作流设计:把会话、导航和常用工具集中到同一处,减少切换成本。

主界面(深色)

主界面(浅色)

Vault 视图

用更适合当前任务的方式管理与浏览主机:网格看全局,列表做筛选,树形做整理与层级导航。

Vault 网格视图

Vault 列表视图

Vault 树形视图(深色)

Vault 树形视图(浅色)

分屏终端

分屏适合同时处理多个任务(例如部署 + 日志 + 排障),不用频繁切换窗口。

分屏窗口


支持的发行版

Netcatty 会自动识别并在主机列表中展示对应的系统图标:

Ubuntu Debian CentOS Fedora Arch Linux Alpine Amazon Linux Red Hat Rocky Linux openSUSE Oracle Linux Kali Linux

快速开始

下载

GitHub Releases 下载适合您平台的最新版本。

操作系统 支持情况
macOS Universal (x64 / arm64)
Windows x64 / arm64
Linux x64 / arm64

或在 GitHub Releases 浏览所有版本。

⚠️ macOS 用户注意: 由于应用未经代码签名,macOS Gatekeeper 会阻止运行。下载后,请在终端运行以下命令移除隔离属性:

xattr -cr /Applications/Netcatty.app

或者右键点击应用 → 打开 → 在弹出的对话框中点击"打开"。

前置条件

  • Node.js 18+ 和 npm
  • macOS、Windows 10+ 或 Linux

开发

# 克隆仓库
git clone https://github.com/binaricat/Netcatty.git
cd Netcatty

# 安装依赖
npm install

# 启动开发模式(Vite + Electron)
npm run dev

项目结构

├── App.tsx                 # 主 React 应用
├── components/             # React 组件
│   ├── Terminal.tsx        # 终端组件
│   ├── SftpView.tsx        # SFTP 浏览器
│   ├── VaultView.tsx       # 主机管理
│   ├── KeyManager.tsx      # SSH 密钥管理
│   └── ...
├── application/            # 状态管理 & 国际化
├── domain/                 # 领域模型 & 逻辑
├── infrastructure/         # 服务 & 适配器
├── electron/               # Electron 主进程
│   ├── main.cjs            # 主入口
│   └── bridges/            # IPC 桥接
└── public/                 # 静态资源 & 图标

构建与打包

# 生产构建
npm run build

# 为当前平台打包
npm run pack

# 为特定平台打包
npm run pack:mac     # macOS (DMG + ZIP)
npm run pack:win     # Windows (NSIS 安装程序)
npm run pack:linux   # Linux (AppImage, deb, rpm)

技术栈

分类 技术
框架 Electron 40
前端 React 19, TypeScript
构建工具 Vite 7
终端 xterm.js 5
样式 Tailwind CSS 4
SSH/SFTP ssh2, ssh2-sftp-client
PTY node-pty
图标 Lucide React

参与贡献

欢迎贡献!请随时提交 Pull Request。

  1. Fork 本仓库
  2. 创建你的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交你的更改 (git commit -m 'Add some amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开一个 Pull Request

查看 agents.md 了解架构概述和编码规范。


贡献者

感谢所有参与贡献的人!

查看:https://github.com/binaricat/Netcatty/graphs/contributors


开源协议

本项目采用 GPL-3.0 协议 开源 - 查看 LICENSE 文件了解详情。


用 ❤️ 制作,作者 binaricat