
2026/10/31 0:44
連合型コードフォージ
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Tangled は、AT Protocol を基盤とした最初の真に連邦制のコードフォージとして大きなマイルストーンを刻みました。オープンソースの長命性を現代の洗練と効果的に融合させました。その主な成果は、ホスティングの多様な選択肢をまたいでシームレスなコラボレーションを実現し、かつ完全な自己ホスト化スタックをサポートしていることです。Git ホスティングや CI ランナーといった特定のコンポーネントから、サーバー全体への展開に至るまで、範囲に限りません。この強力な変化は、スウェーデンで SQLite 上で動作する単一の集中型 Go モノリシックシステムから、11 の地域以上を跨ぐグローバル分散アーキテクチャへと移行します。セキュリティとデータポータビリティは、すべてのレコード編集に対して暗号証明を提供することによって保証され、ユーザーがロックインされることなく不正な改ざんを防ぎます。技術的には、该系统は Rust ベースの Knot2 サーバー(カスタム Git サーバーおよび SSH サーバーを含む)、メモリー上インデクサー「bobbin」、そして視覚的一貫性が向上した新しい「Timeless Sans」フォントを備えた高速 Svelte フロントエンドに依存しています。以前はシンプルだったシステムは、標準化された
org.tangled レキシコンと Tranquil でホストされたアイデンティティを採用するよう進化し、現在は独自の DID を持つ組織アカウントをサポートし、パスワードレスの委譲が可能になりました。ユーザーは、スタックされたプルリクエストやインターディフ機能を備えた改修された Git ワークフローなどを享受しつつも、柔軟性を維持しています。今後、プライベートリポジトリ、コマンドラインインターフェース、マルチ言語 SDK、エージェント用スキルなどの機能が導入される予定です。現在、自己ホスティングを行う方は、この新しい連邦時代の互換性を確保するために Knot サーバーを v1.20.0 へアップグレードする必要があります。本文
Tangled リリースノート:連盟型フォージと全面刷新
背景:分散型のコードホスティングへ
従来の集中型フォージ(CodeForge)は利便性を提供しましたが、アップタイムや機能への依存リスクから崩壊しつつあります。Tangled はオープンプロトコルの耐久性とフォージの利便性を両立する、世界初の「連盟型(フェデレーテッド)」コードホスティングを目指します。
- 自己ホスティング: 必要な機能(Git ホスティング、CI ランナーなど)のみ、または全体を自前で運用可能。
- シームレスな協業: 自サーバー上で管理しながらも、他者とのコラボレーションは継続できます。
- 高い拡張性 (ハッカビリティ):
- AT プロトコルを基盤としているため独自拡張が可能。
- Cloudflare Workers などでの独自ノード(Knot)構築。
のようなスピンオフ事例も存在。mitchellh.com/tack
- エージェント対応: ハイパーパーソナライズされたソフトウェアの構築を容易にする「エージェントフレンドリー」な設計。
プロダクトアップデート
1. UI/UX の全面刷新
全く新しい外観を実現しました。
- アーキテクチャ変更: 単一モノリスから、Svelte を用いた独立したフロントエンドへ再構築。
- デザイン向上: 操作性の改善と視覚的な一貫性の付与。
- フォント変更: Inter から Timeless Sans に変更。
2. バックエンドの再構成:appview
→ bobbin
appviewbobbinウェブ UI とバックエンドの統合を解消し、パフォーマンスを最適化しました。
| 特徴 | 旧実装 () | 新実装 ( + エッジ) |
|---|---|---|
| 構成 | Go モノリス(単一サービス) | Rust メモリ内動作サービス + Svelte フロントエンド |
| 展開場所 | 単一の中型サーバー (スウェーデン) | 世界中の11 以上のリージョンに展開 |
| データ処理 | SQLite + HTML テンプレート | ディスクレス・インデクサー |
| パフォーマンス | 遠距離ユーザーには遅延発生 | 全球最適化された API/UI 体験 |
| データアクセス | 統合管理 | は読み専用(AT プロトコルデータのみ) |
注: UI レンダリングなどの残機能は、新たに設定されたサポートサービスへ委譲されています。
3. 新しいデータモデルと Knot2 の採用
データの保存場所と構造を根本から見直しました。
データスキームの変更
- レキシコンセットの導入: すべてのデータが
下で管理されるようになりました(従来のorg.tangled.*
に代わるもの)。sh.tangled.*
Knot2 (第 2 世代 Knot サーバー)
- 言語: Go から Rust で再実装。
- 機能内蔵: カスタム Git サーバーと SSH サーバーが同一バイナリにバンドル。
- 保存場所の変更: イシュー、PR、コメント、ラベルなどを「コードの隣り」に保存。
- これらのデータを**協働オブジェクト(COB)**として管理。
- COB は Git オブジェクトの連鎖そのもの。
- PDS (プロトコル分散ストレージ) 化:
- 署名済みレコードと完全な履歴を保持。
- AT プロトコルのファイアホースを通じて標準的に同期。
双方向検証とポータビリティの実装
プロジェクトの可移植性を最大化するため、以下を実現しました。
- 共存原則: イシューや PR はコードの一部であり、どのホスティング環境でも共存可能。
- アテステーション (Attestation):
- Knot 上の編集をユーザーの言葉に干渉させない保証。
- ウェブアプリは
レコードを作成し、正確なバージョンと COB 変更への指し示を行う。org.tangled.graph.attestation
- 双方向検証: 自らの PDS に書き込むことで、データの完全性を常に確認可能。
アップグレード注意: 自己ホスティングユーザーは、Knot v1.20.0 へのアップグレードが必要です。
4. 組織 (Organizations) の強化
組織アカウントが正式に登場しました。
- 本物の AT プロトコルアカウント: 独自 DID とハンドルを持ち、Tranquil PDS インスタンス上でホスト。
- 利便性: パスワード不要、委任された認証方式。
- 作成フロー: 「New Organization」ページから
ハンドルを自動付与され、即座に所有者として開始可能。<name>.tngl.sh - 機能:
- メンバー招待。
- 組織単位でのレポジトリ作成・フォーク。
- ドメインへのハンドル移行が可能。
5. PR フローの刷新とスタッキング機能
PR(プルリクエスト)フローを見直し、誰でもスタッキングされた PR の提出・レビューが容易になりました。
- Git ユーザー向け: バージョン間でのインターディフが可能(以前「rounds」と呼ばれていた機能)。
- Jujutsu ユーザー向け: 個々の変更間でもインターディフを行えます。
今後の展開
今回のリリースはスタート地点です。今後数週間かけて以下を順次展開予定です。
- プライベートレポジトリの提供
- CLI ツールの強化
- 各種言語向けのSDK
- エージェント向けに新しいスキル
このリリースのあらゆる側面を楽しみつつ、ぜひ新機能を体感してみてください。