News Hacker|极客洞察

🤔Tangled:ATProto 联邦 Git forge,争议集中在可行性与 VC
Git 都分布式了,forge federation 还差哪口气?

🎯 讨论背景

Tangled 是一个建立在 ATProto(Bluesky 使用的开放社交协议)上的 Git collaboration platform,目标是把 issues、PRs、stars、身份和社交图谱一起做成可联邦的 forge。ATProto 的核心分层是 PDS(Personal Data Server,存用户数据)和 AppView(聚合并展示数据的应用层),再加上 relay 做索引与转发;这和 Mastodon/ActivityPub 那种 instance-to-instance 的联邦模型很不一样。讨论围绕的是:代码托管到底只需要 Git 本身,还是还需要一层共享的项目协作与发现网络。评论还把 Forgejo(开源代码托管平台)、Radicle(去中心化 git 协作网络)、SourceHut 和 Codeberg 等替代方案拿来比较,并争论 VC 资金是否会把这类基础设施带向 enshittification。

📌 讨论焦点

ATProto 架构并非 Mastodon 式联邦

很多评论都在纠正一个前提:Tangled 用的 ATProto 不是 Mastodon 那种“多个 instance 互相发消息”的模型。这里更像是把托管层和应用层拆开,用户数据放在 PDS,AppView 负责聚合所有数据后呈现统一体验。这样用户可以换托管而不影响在应用里的身份和可见性,也不存在传统 fediverse 里那种频繁 defederate 的问题。有人把它类比成 RSS、个人网站加聚合器,认为这更适合 forge 场景。

[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7] [来源8] [来源9] [来源10] [来源11]

冷启动、发现性与反垃圾

另一条主线是冷启动难题:如果每个 forge 都是孤岛,新站点一开始就会面临网络为空、feed 为空、发现性为零的问题。支持者认为 ATProto 的 shared AppView 和 relay 让新应用一上线就能看到全网数据,因此更容易从已有社交网络直接带人进来。反对者则担心 federation 最终仍会被 spam、moderation 和 defederation 搞坏,历史上的 blogosphere、trackback 和 pingback 就是被这些问题拖垮的例子。还有人提到项目被攻击、内容被屏蔽或被政府封锁时,分布式镜像和跨域可发现性才是真正难点。

[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7] [来源8] [来源9] [来源10] [来源11]

Git 已够分布式,额外联邦层未必必要

不少人直接质疑 forge federation 的必要性,认为 Git 本身已经是分布式 VCS,仓库在多个 remote 间同步就够了。真正麻烦的是 issues、PR、wiki、CI 这些周边协作功能,但评论里有人主张继续用 git-over-email、mailing list 或把 issue/PR 存成 markdown,而不是再造一套协议。也有人觉得独立 forge 只要做好 social login 和镜像迁移就行,不必为了互联互通搞一整套联邦层。少数人甚至提议把 federation 缩小到 forks、activity feed、身份认证这种更窄的范围。

[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7] [来源8] [来源9] [来源10] [来源11]

VC 资金与长期可持续性

最激烈的争议来自 VC funding。批评者把 VC-backed 直接等同于未来的 rug pull、广告、隐私风险、AI 训练、订阅墙和 enshittification,认为开源劳动搭上资本回报模型迟早会被迫增长和变现。支持者则说 bootstrapping、grants 和 corporate sponsorship 都很难拿,尤其安全、UI/UX、Ops、QA 和 CI 都需要全职人力,VC 至少能让团队更快把产品做出来。很多人要求明确 monetization plan、投资人预期回报,以及怎样保证 10 年后仍可迁移、可自托管、不过度依赖单一平台。

[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7] [来源8] [来源9] [来源10] [来源11] [来源12] [来源13] [来源14] [来源15] [来源16] [来源17]

实际功能、迁移性与替代方案

支持者主要从“能不能真的替代 GitHub”来评价 Tangled:同一套登录、社交图谱、静态站点托管、Spindles build system、开放 API,以及可自托管的 knot 和 runner,都让它看起来不只是一个 repo 镜像。有人也提到 private repo、LFS、迁移成本等缺口,说明它还不算完整替代品,但已经足够支撑个人和开源项目。讨论里还频繁拿 Forgejo federation、Radicle、GitSocial、SourceHut、Codeberg、Nostr/GRASP 等项目对比,说明联邦 forge 不是空想,只是路线各不相同、成熟度差很多。

[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7] [来源8] [来源9] [来源10] [来源11] [来源12] [来源13] [来源14] [来源15] [来源16] [来源17] [来源18] [来源19] [来源20] [来源21] [来源22]

GitHub 压力让替代方案更有吸引力

还有一批评论把背景焦点放在 GitHub 本身的压力上:持续的事故、search index 问题、Actions 复杂度、RCE、uptime 下降,以及被 AI/agents 和 Copilot 相关负载挤压。有人认为 GitHub 现在同时背着历史包袱和新需求,哪怕短期不会倒,也正在变得更难依赖。另一边也有人提醒,GitHub 的网络效应和企业集成太强,冷启动的替代品未必能在足够短时间内分流用户。这个背景让 Tangled 的“去中心化替代”听起来更像现实需求,而不只是理念实验。

[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7] [来源8] [来源9] [来源10] [来源11] [来源12] [来源13]

📚 术语解释

ATProto: Bluesky 使用的开放协议,Tangled 也建立在它上面来组织身份、数据和应用层。

PDS: Personal Data Server,存放用户数据和身份记录的托管层,用户可自托管或迁移。

AppView: 从多个 PDS 聚合数据并渲染成应用体验的视图层。

relay: ATProto 中负责收集、索引和转发数据给应用的中间层,帮助全网发现内容。

ActivityPub: Mastodon 等联邦社交网络常用的协议,采用实例之间直接交换消息的模型。

ForgeFed: 面向 forge(代码托管平台)联邦的规范/项目,目标是让不同 forge 互联。

enshittification: 平台先服务用户,随后在商业化压力下逐步变差的现象。

Jujutsu(jj): 与 Git 兼容、以 rebase 为中心的 VCS,评论里把 Tangled 形容为 jujutsu first。