# duckterm1 **Repository Path**: acomma/duckterm1 ## Basic Information - **Project Name**: duckterm1 - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-26 - **Last Updated**: 2026-09-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DuckTerm 基于 [Wails 2](https://wails.io) 开发的桌面端 SSH 客户端,提供终端会话、主机管理、密钥管理、SSH 隧道与 SFTP 文件传输能力。当前版本 `v0.1.0`。 ## 功能特性 - **终端会话**:保存主机后一键连接,支持快速连接 `user@host[:port]` - **主机管理**:增删改查、收藏置顶、认证/端口配置、连接测试 - **认证方式**:密码(可写入系统钥匙串)、SSH Agent、私钥 - **密钥管理**:生成 / 导入私钥,管理密钥口令 - **SSH 隧道**:本地 / 远程端口转发,支持开机自启 - **文件传输**:SFTP 远程与本地文件浏览,上传 / 下载 / 删除 ## 技术栈 - 后端:Go + Wails 2(v2.16.0) - SSH / SFTP:`golang.org/x/crypto/ssh`、`github.com/pkg/sftp` - 凭据存储:系统钥匙串(`zalando/go-keyring`) - 前端:构建产物位于 `frontend/dist`(由前端源码编译,源码不在本仓库内) ## 环境要求 - Go 1.26+ - [Wails CLI v2](https://wails.io/docs/gettingstarted/installation) - Node.js + npm(仅在需要重新构建前端时使用) ## 构建与运行 ```bash # 安装 Wails CLI go install github.com/wailsapp/wails/v2/cmd/wails@latest # 开发模式(热重载) wails dev # 生产构建,产物输出至 build/ wails build ``` > 前端构建产物已随仓库提供(`frontend/dist`)。若修改前端源码,需先在前端工程中执行构建,再运行 `wails build`。 ## 目录结构 ``` duckterm/ ├── main.go # Wails 应用入口 ├── app.go # 后端业务入口,绑定至前端的方法集合 ├── internal/ │ ├── sshx/ # SSH / SFTP / 隧道 / 传输核心实现 │ └── store/ # 配置与主机 / 密钥 / 隧道持久化 ├── frontend/ │ ├── dist/ # 前端构建产物 │ └── wailsjs/ # Wails 生成的前端桥接代码 ├── build/ # 打包资源与构建输出 ├── design/ # UI 设计稿 └── wails.json # Wails 项目配置 ``` ## 数据安全 主机、密钥、隧道与设置保存在本地配置文件;密码等敏感凭据存入系统钥匙串(Keychain / Credential Manager),不会明文落盘。 ## 许可证 本项目采用 [MIT 许可证](LICENSE),允许自由使用、修改与分发。