Important
Séance moved to https://github.com/L-K-M/Hauntware. This repository is
archived and gets no updates. Download from
https://github.com/L-K-M/Hauntware/releases (seance-* and seance_*.deb assets);
file issues there.
A cross-platform SSH client for Mac and Android with an optional self-hostable sync server, a file browser, and a built-in LLM assistant.
Important
LLM disclosure: This codebase was written with substantial help from large language models: AI coding agents working from the AGENTS.md brief in this repo.
You summon remote machines and talk to them.
Latest release: v0.9.2 · Download
This repository implements the design in PROPOSAL.md (read that for the full rationale, alternatives considered, and roadmap).
- Two-pane / two-screen UI — servers with online/offline/unknown indicators on the left, terminal sessions on the right; collapses to back/forward screens on narrow layouts.
- Clickable shell URLs — Ctrl-click (⌘-click on Mac) or tap on touch screens to open HTTP(S) links in your browser. Wrapped URLs work too, and links a program marks with OSC 8 open their real target even when the text on screen is a label or the program broke the URL across lines.
- SSH via dartssh2: password, private-key (stored or referenced-on-disk), local ssh-agent, and keyboard-interactive (2FA), including saved-host ProxyJump chains.
- Trust-on-first-use host keys with a hard, un-dismissable block when a pinned key changes.
- Layered secret storage — OS keystore holds a master key; passwords/keys live in an encrypted vault (XChaCha20-Poly1305, Argon2id).
- Optional sync — a self-hostable Docker server stores only end-to-end encrypted blobs and resolves conflicts by last-write-wins.
- Built-in assistant — natural-language → command (reviewed, never auto-run) and a session-aware chat whose only two tools are web search and a never-executing paste-to-prompt. Secret redaction is on by default; point it at local Ollama for a fully offline setup.
Séance's original code uses the Unlicense. Vendored xterm.dart remains MIT-licensed.
