AceShell README

The project's README from github.com/dingtongbin/AceShell. As one markdown file: README.md.

AceShell

AceShell 是一个跨平台(Windows / macOS / Linux)网络终端管理工具,基于 Go + Wails v3 + Vue 3 + TypeScript + Naive UI 构建,支持 SSH / Telnet / 串口 / SFTP / HTTP / RDP / 本地终端的统一管理,并内置 AI 智能助手。

功能特性

存储目录

应用数据存储在平台应用数据目录(不依赖可执行文件位置):

平台 数据目录
Windows %AppData%\AceShell\
macOS ~/Library/Application Support/AceShell/
Linux ~/.config/aceshell/

目录结构:

<数据目录>/
├── config.toml       # 全局配置(主题/透明度/开关等)
├── agent-mcp.json    # 智能体外接 MCP 服务器配置(兼容 Claude/Cursor 字段惯例)
├── sessions/         # 会话目录(.toml 会话文件 + 指纹 + 密钥库 key/)
├── autolog/          # 自动连接日志(logs/ 日志正文 + meta/ 会话元数据)
└── script/           # 脚本目录

构建

前置要求:Go 1.25+、Node.js 20+、wails3 CLI(go install github.com/wailsapp/wails/v3/cmd/[email protected])。

# 生产构建(输出 bin/AceShell)
wails3 build

# 开发模式(前后端热重载)
wails3 dev

Windows 发布

打标签自动触发 GitHub Actions 构建三平台产物并创建 Release:

git tag v0.2.3
git push --tags

CI 产物:Windows / Linux / macOS 二进制 + 未签名 MSIX(AceShell-<版本>.msix,供微软商店提交,商店侧自动重签)。

测试

# 后端单元测试(数据目录隔离,不触碰真实数据)
go test ./...

# 前端类型检查
cd frontend && npx vue-tsc --noEmit

部分测试(SSH / Telnet 真实连接)依赖外部服务器,凭据不提交仓库:

  1. 复制模板:cp internal/services/testservers.json.example internal/services/testservers.json
  2. 填入真实服务器信息(该文件已被 .gitignore 排除)
  3. 未配置时相关测试自动跳过,不影响 CI

许可证

GPL-3.0。第三方依赖许可见 THIRD_PARTY_NOTICES.md。

更新日志见 CHANGELOG.md。

AceShell (dingtongbin/AceShell)

sftp
Searching Database…

What is this?AceShell is a cross-platform desktop app for managing network terminal sessions - it unifies SSH, Telnet, serial, SFTP, HTTP, RDP and local terminals in one tool, built with Go, Wails3, Vue3 and TypeScript, with a built-in AI assistant.
Is this just an SSH client, or does it handle more protocols?It organizes seven session types in one tree view: SSH, Telnet, serial, SFTP, HTTP, RDP and local shells (PowerShell/CMD/Git Bash/WSL via cross-platform PTY), with encrypted storage and host-fingerprint TOFU verification.
How do I build and run it?Install Go 1.25+, Node.js 20+ and the wails3 CLI, then build with Wails3; tagging a release triggers GitHub Actions to produce Windows, Linux and macOS binaries (plus an unsigned MSIX for the Microsoft Store).
What tools do I need before building AceShell?You need Go 1.25+, Node.js 20+ and the wails3 CLI installed; no Docker or other runtime is required.
Is the AI assistant always on, and do I need an API key for it?The AI assistant ships enabled by default as a test feature but can be turned off from the view menu or settings; its web search falls back through Bing, a real browser render, and DuckDuckGo with zero API key required.
What can the built-in AI assistant actually do?It acts as an AI ops agent that thinks before acting, talks to tools over an MCP bus (Streamable HTTP/SSE/stdio/built-in), can pull docs via Context7, runs under plan/manual/auto permission tiers, and keeps a fully traceable, persisted history of commands, queries and results.
Does the RDP feature give a full remote desktop, not just a terminal?Yes - RDP sessions use IronRDP for a full-screen graphical desktop with mouse/keyboard interaction, 1:1 physical display scaling by device pixel ratio, and merged dirty-region rendering.
Can I transfer and edit remote files over SFTP?SFTP gives a dual-pane local/remote browser with upload, download, resumable transfers, in-app text editing (with a file-type whitelist and UTF-8 validation plus line numbers), and right-click/drag-and-drop support.
Is the app localized, or only in Chinese?It ships with built-in Simplified Chinese (default) and English, switchable instantly from settings, and the UI is designed to be extended with more languages.
What are similar projects?xpipe, navop, electerm, omnyssh, WindTerm, shell-rs, mRemoteNG, Netcatty
Size
14 MB
Stars
138
Age
2mo
Commits · 90 Days