Late.sh:给电脑人的命令行俱乐部
文章摘要
late.sh 自称「a cozy command-line clubhouse for computer people」——给电脑人的温馨命令行俱乐部。使用方式简单到只有一行:ssh late.sh。不需要注册、不需要安装任何东西,一个 SSH 客户端就是入场券。源码在 mpiorowski/late-sh。
站内提供的内容意外地丰富:chill radio、古典乐和客串电台;街机厅(2048、数独、Nonogram、纸牌);一块协作 ASCII 画板;每日挑战与连胜记录;实时聊天;新闻分享与讨论;多人游戏(即将推出)。画板是一块共享的 ASCII 画布,可以涂、可以擦、可以签名,每个格子都记得是谁放的;系统每日和每月存快照,所以即使画板不断变化,历史也留得住,站点另有一个可平移缩放、显示每格作者信息的全屏 /gallery 查看器。还有一个「work」板块:谁在附近、他们在做什么、谁在接活,一人一份档案,从 TUI 里发布(进 work room 按 i),包含标题、状态、技能、链接,以及可选的简介、late.fetch 输出和作品展示。
身份机制是整个项目最有话题性的设计:没有密码、没有 OAuth、没有账号——你的 SSH 密钥就是你的身份。聊天记录、分数和连胜都绑定在公钥指纹上,同一把密钥就是同一份数据。隐私方面站点声明只存密钥指纹而非完整公钥,不记录 IP,无追踪、无分析,聊天消息和游戏分数存在 Postgres 里,只与指纹关联。不放心的话,官方直接给了用一次性密钥连接的命令(ssh-keygen -t ed25519 -f ~/.ssh/late_throwaway && ssh -o IdentitiesOnly=yes -i ~/.ssh/late_throwaway late.sh)。
此外有一个可选的伴生 CLI(仓库里的 late-cli crate)。纯 ssh late.sh 已经能拿到全部内容,late 二进制只是补上终端本身做不到的部分:用自己的音箱放电台、给音频可视化喂数据、承载语音房的麦克风和播放、跑音乐厅的 YouTube 窗口、以及把剪贴板里的图片直接粘进聊天。它也会帮你启动同一个 SSH 会话。下一步计划是屏幕与视频共享。
HN 评论精华
-
jwr:一句话定性——「这是一个现代 BBS!我喜欢这个想法。不过我猜现在大多数人已经不知道 BBS 是什么了,如果你不知道,去查一下。」T3OU-736 在另一处也持同样看法:把拨号调制解调器换成 SSH,其余的类比相当站得住。
-
kksweet:「这就像 Habbo Hotel,但是给终端极客的。」pishpash 妙回一句:「读这句话的感觉,就像一边握着拨号调制解调器一边读『这就像 WiFi,但是给 RJ11 极客的』。」tristanMatthias 补充还像 Club Penguin。flexagoon 则想起了 tilde.town。
-
greengreengrass(当时的置顶争议):希望连接说明明确写出默认 SSH 用户名会被拿去在平台上建用户名,并展示给其他用户,而这一步没有事先征求同意——「在公司机器上,我没法决定
$USER就是我的全名。」他给出规避方式:用ssh [化名]@late.sh连接。soraminazuki 反驳「SSH 本来就是这样工作的,想匿名就该另生成一对密钥」,greengreengrass 再回应:我知道 SSH 会自动发送本地$USER,但这不意味着平台必须把收到的值自动展示给其他用户,完全可以先提示「你的用户名被报为 X,可以展示吗?」,或者在说明里建议用户在首次连接之前先选好用户名——这些都是合理且保护隐私的良好设计。 -
h43z:提出一个更细的 opsec 提醒——默认情况下 SSH 会把
~/.ssh/下所有存在的公钥以及 ssh-agent 里的全部公钥都发给你连接的服务器。一旦公钥泄露,就可以被用来探测另一台服务器是否认识这把钥匙。alentred 老实反问「公钥不就是本该公开的吗?」h43z 解释:这只是件人人都该知道的事,由你自己决定是否接受把一堆公钥交给服务方(比如 late.sh),因为它可以拿来探测你在哪些服务器上有访问权;每个人的 opsec 标准不同。benj111 抬杠说「那你也不该泄露用户名,我也能拿它去试别的服务器」,h43z 回应:OpenSSH 服务端的设计本就不会透露某个用户名是否存在。 -
1dom:说这个点子很酷、只需 SSH 客户端也很好,但有两点建议——应该解释伴生客户端是干什么用的;另外首页那条一行
curl | bash安装命令,要么去掉、要么在首页给出 git 仓库链接,「没有仓库链接却放着复制粘贴的 bash 管道,感觉像暗黑模式」。Izmaki 补充技术理由:Web 服务器完全可以配置成浏览器访问看到一个 sh、curl 取到的是另一个——展示一样、安装另一样。作者 bl4ckbe4r 表示收到,会改。但 rob 唱反调:「不必因为一个人抱怨就改。我个人就喜欢复制粘贴 curl 命令来安装,很方便,真那么偏执我可以自己检查文件。」 -
polycancel:提出一个务实要求——所有这类 SSH 服务都该公布服务器指纹以便验证,并贴出了自己看到的 ED25519 指纹求确认。
-
Dangeranger 也为谨慎的人贴了一份更安全的 SSH 连接脚本 gist。
-
关于配色的长串争论:docheinestages 阴阳了一句「我可太爱这个落地页的文字对比度了,深色背景上的灰字。」hankbond:「设计完全不可读,需要更高对比度。我根本没有视力障碍,也立刻开始眯眼。」arnitdo 更狠:「vibe coded 的垃圾都是同一套黑底黑字、灰底灰字的不可读文本模式,再配上糟糕的等宽小字号,你只能眯着眼一个字母一个字母读。」aslakhellesoy 追溯说 15 年前这问题就大到有人发起「对比度起义」(contrastrebellion.com),而 gombosg 笑着指出那个站点把 HN 自己灰掉的评论也列为反面案例之一。另一边 nativeit 强力辩护:整个品牌调性就是「late」——深夜、灯都关了、不想被屏幕闪瞎,这主题完全合适;能技术上玩得动基于 SSH 的社交网络的人,理应有能力注入用户脚本、自定义 CSS 或部署辅助扩展。d0ddy 提供了实用信息:其实有很多主题,包括高对比度的。tristanMatthias 也发现了这一点并广而告之:Ctrl + O 往下移动就能换主题,默认那个有点混乱。作者最后回帖:「对比度更好的新网页设计即将上线!:D 感谢反馈 :)」
-
hahahaa:直接质问「为什么不直接用 IRC?」作者 bl4ckbe4r 的回答很有说服力:「你能在 IRC 里听音乐、玩数独/nonogram/俄罗斯方块、做实时画板、跳进 NetHack/DCSS/dopewars/LOGD 吗?」dark-star 从另一个角度补充:「没人默认装了 mIRC/ircii,但所有人都默认装了 ssh。」Hugsbox 则为 IRC 说话:Libera 等服务器上仍有活跃社区,和 HN 一样是网上少数还能指望有正经对话的地方。
-
maxgashkov:留下一句让人后背发凉的疑问——「我很好奇有多少人是开着 agent forwarding SSH 进去的?」
-
joshspankit:「超酷,而且看得出有相当深的历史知识底蕴。」他为 LORD(Legend of the Red Dragon)因授权问题无法使用感到震惊——法律上他明白,但「一个基于 9600 波特电话调制解调器时代的热门游戏,在光纤、WiFi 和智能手机的年代仍被权利束缚」,就是感觉不对。
-
arm32:本帖最出彩的一句评价——「我从没见过这么烂的落地页配这么牛的项目。这就像一个反向特洛伊木马。批评说完,这是我这个季度见过最酷的东西。」
-
DANmode:「有没有那种见到新东西,就直接知道它能活下来的感觉?」sevg 泼冷水说文案「就是常见的 LLM 味」,DANmode 回应:设计确实是「本周流行的 LLM 风」,但总得有人去校对和调整生成的文案——「有人在乎过这一页。」
-
andschneider:借帖自荐了一个技术栈相同、开发时间相近的类似项目——棒球版的
mlbt.sh,还能作为本地 TUI 运行,并说 late.sh 是他的灵感来源之一。28304283409234 提到 DevZat 也是同类。podviaznikov 说自己正打算给带持久 SSH 服务的 macOS 应用 popssh.com 加类似功能。