惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
博客园 - Franky
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Microsoft Security Blog
Microsoft Security Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园_首页
腾讯CDC
D
Docker
The Cloudflare Blog
量子位
爱范儿
爱范儿
L
LangChain Blog
博客园 - 三生石上(FineUI控件)
博客园 - 司徒正美
aimingoo的专栏
aimingoo的专栏
Blog — PlanetScale
Blog — PlanetScale
Jina AI
Jina AI
Apple Machine Learning Research
Apple Machine Learning Research
Hugging Face - Blog
Hugging Face - Blog
博客园 - 聂微东
Vercel News
Vercel News
MyScale Blog
MyScale Blog

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - blacknon/lssh: A terminal-native remote access s...
blacknon · 2026-04-30 · via Hacker News: Show HN

Go Report Card Version Go Platforms License

ls + ssh = lssh

lssh is a terminal-native remote access suite for SSH workflows, cloud inventories, and provider-backed connectors.

It lets you select hosts from OpenSSH config, lssh config, or provider inventories, then operate them through native SSH or connector backends such as AWS SSM, EC2 Instance Connect Endpoint, WinRM, Telnet, and custom providers.

Use it for interactive shells, parallel commands, mux workspaces, file transfer, sync, mount, and monitoring. Connector-backed hosts expose only the operations their connector supports.

  • works with your existing SSH config
  • interactive host selection
  • parallel command execution

Install

Homebrew

brew install blacknon/lssh/lssh

Go

go install github.com/blacknon/lssh/cmd/lssh@latest

Provider-backed inventory and connector features use separate provider executables. If you install only cmd/lssh, those provider binaries are not installed automatically.

For local development, install the bundled providers with:

mise run provider_install

For release builds, either install the all-in-one lssh-complete_* archive or add the matching lssh-providers_* archive from GitHub Releases.

For more installation details, including other options and platform-specific notes, see docs/install.md.

Quick start

Already using ~/.ssh/config?

Just run:

lssh

Want to generate an lssh config from your existing SSH config?

lssh --generate-lssh-conf > ~/.lssh.toml

Basic workflow

lssh is built for a simple workflow:

  1. list hosts from SSH config
  2. pick one or more hosts
  3. open a shell or run a command

Examples

lssh host picker
Interactive host picker
lssh
Select one or more hosts from the TUI.
lssh parallel command execution
Parallel command execution
lssh -p tail -f /var/log/syslog
Pick hosts and run the same command across them.
lssh mux workflow
Mux workflow
lssh -P
Open the multi-pane terminal workflow.
lssh mux workflow with command
Mux workflow with command
lssh -P 'htop'
Start the mux UI and launch a command immediately.

You can still target a single host directly when you already know where to connect:

lssh -H my-server

For more details about config formats and settings, see cmd/lssh/README.md.

Demo

Want to try lssh quickly with a ready-to-run local playground? Start with demo/README.md. For the telnet connector + multi-hop provider flow, use demo-telnet-provider/README.md.

OpenSSH config and lssh config

lssh supports both your existing OpenSSH config and its own config format.

If you want to get started quickly, you can keep using ~/.ssh/config as-is. If you want richer host metadata and workflow-oriented settings, you can move to an lssh config instead.

You can also generate an lssh config from your existing SSH config:

lssh --generate-lssh-conf > ~/.lssh.toml

Even after moving to lssh config, you can still point it at your existing OpenSSH config and load hosts from there:

[sshconfig.default]
path = "~/.ssh/config"

For more details about config formats and settings, see docs/configuration.md.

Providers

lssh can work with more than static SSH config entries. Providers let it pull hosts from external inventory sources, resolve secrets just before connect, and use non-SSH connection backends such as cloud-managed connectors.

In v0.10.0, provider-backed inventory and secret workflows are best treated as beta. Connector-backed access beyond native SSH is still experimental, especially for cloud-managed runtimes and non-SSH backends.

If you want to try provider-oriented flows locally, start from these demos:

  • demo/README.md: core SSH, proxy chains, and general multi-host workflow examples
  • demo-telnet-provider/README.md: provider-managed telnet connector flow, including direct telnet access and telnet behind a double SSH hop

For the provider architecture and protocol overview, start with provider/README.md. Category details are also documented under inventory, connector, secret, and mixed.

Bundled providers

These provider implementations are currently bundled in this repository.

Inventory

Connector

Mixed

provider-mixed-aws-ec2
Combine EC2 inventory with AWS SSM and EC2 Instance Connect Endpoint connectors. Native SSH-adjacent flows are usable, while connector-specific behavior remains experimental.
provider-mixed-azure-compute
Build Azure Compute inventory with connector-aware access settings.
provider-mixed-gcp-compute
Build Google Compute Engine inventory with connector-aware access settings.

Secret

Tools in the lssh suite

The lssh project includes multiple tools for SSH-centered workflows.

lssh preview
lssh
core / stable
Interactive SSH access, parallel commands, and forwarding modes.
lscp preview
lscp
transfer / stable
SCP-style copy over SSH/SFTP, including remote-to-remote transfers.
lsftp preview
lsftp
transfer / stable
Interactive SFTP shell for browsing and transferring files.
lsshell preview
lsshell
sysadmin / beta
Parallel interactive shell with broadcast and targeted commands.
lsmux preview
lsmux
sysadmin / beta
Pane-based SSH workspace for multi-host terminal workflows.
lsmon preview
lsmon
monitor / beta
Multi-host monitoring UI over SSH without extra remote agents.
lssync preview
lssync
transfer / beta
Tree sync over SSH/SFTP with daemon and bidirectional modes.
lsdiff preview
lsdiff
sysadmin / beta
Compare remote files from multiple hosts in a synchronized TUI.
lspipe preview
lspipe
sysadmin / alpha
Persistent host sessions reusable from local pipelines and automation.
lsshfs
transfer / beta
Mount a remote directory through `FUSE on Linux` or `NFS on macOS`.

Docs

Related projects

  • go-sshlib: Go library for SSH connections, command execution, and interactive shells
  • tvxterm: tvxterm provides terminal widgets for tview
  • boco: Bash Shell Function's Fuzzy Finder.

Alternatives

If you are evaluating lssh, these projects are also worth a look. They overlap with parts of the suite, but each usually covers a narrower slice of the overall workflow.

Project Closest lssh command(s) Main focus How it differs from lssh
sshs lssh TUI-based SSH host picker Similar in spirit to a focused host picker, but lssh also covers parallel execution, forwarding, mux workflows, and provider/connector-backed targets.
ClusterSSH (cssh) lssh -P, lsmux, lsshell Multi-host interactive administration Strong for broadcast typing into multiple terminals; lsshell and lsmux are a closer fit when you want synchronized shell workflows inside one suite.
pssh lssh -p, lscp, lssync Parallel command execution and transfer tools A good fit for parallel CLI jobs, while lssh adds TUI host selection, interactive workflows, and a more integrated multi-command toolset.
tmuxinator lssh -P, lsmux tmux session layout management Great for predefined tmux workspaces, but it is not an SSH host picker or transfer tool by itself. lsmux is SSH-oriented from the start.

How the lssh suite is different

  • lssh combines host selection, interactive SSH, parallel command execution, forwarding, and connector/provider-backed targets.
  • lsshell focuses on parallel interactive shell workflows instead of just launching many terminals.
  • lscp, lsftp, and lssync cover file transfer and synchronization as first-class commands in the same suite.
  • lsmux provides a pane-based SSH workspace rather than only session templating.
  • lspipe keeps selected hosts reusable from local pipelines and automation.

License

MIT

Author

blacknon