- Tangled는 AT Protocol 기반의 소셜 기능을 갖춘 Git 협업 플랫폼으로, 개발자가 코드에 대한 완전한 소유권을 유지하면서도 오픈소스 커뮤니티가 자율적으로 운영할 수 있도록 설계됨
- 기존의 ActivityPub(Forgejo) 중심의 연합형 모델과 Radicle의 완전 P2P 모델의 장점을 결합한 분산형 코드 협업 구조를 채택
- 핵심 개념인 ‘Knot’ 은 경량의 헤드리스 Git 서버로, 개인의 셀프호스팅 또는 커뮤니티 단위의 멀티테넌트 환경 모두 지원함
- App View(tangled.sh) 는 네트워크 전역의 리포지터리를 통합 뷰로 제공해, 서로 다른 Knot에 있는 저장소를 원활하게 탐색·복제·기여할 수 있게 함
- 현재 베타 단계로, 데이터 소유권·낮은 진입장벽·사용자 경험 보존을 핵심 원칙으로 삼으며, 향후 완전 공개형 분산 Git 생태계 구축을 지향
Tangled 개요
- Tangled는 개발자가 코드와 정체성의 소유권을 유지하면서 사회적 상호작용이 가능한 Git 협업 환경을 제공하는 신규 플랫폼
- AT Protocol을 기반으로 하여, 탈중앙화된 소셜 앱 아키텍처를 Git 협업에 적용함
- 목표는 코드 협업을 개방적이고 즐거운 과정으로 되돌리는 것
분산 모델과 AT Protocol
- 기존 분산형 코드 협업 모델에는 다음과 같은 접근이 있음
- Forgejo(ActivityPub): 서버 간 연합(federation)을 통한 협업
- Radicle: 완전한 P2P(peer-to-peer) 구조
- Tangled는 두 모델의 장점을 결합하여, 중앙 신원 관리가 가능한 atproto를 채택함
- 이를 통해 사용자는 분산 네트워크 내에서도 일관된 ID와 인증 구조를 유지할 수 있음
Knot 구조
-
Knot은 Tangled의 핵심 구성요소로, 사용자가 직접 Git 리포지터리를 호스팅할 수 있게 하는 경량 서버임
- 싱글 또는 멀티 테넌트 구성을 모두 지원함
- Raspberry Pi 등 소형 장비에서도 셀프호스팅 가능함
- Tangled는 기본적으로 무료 관리형 Knot 서비스를 제공함
- 이러한 구조 덕분에 사용자 개인 서버와 커뮤니티 서버가 자연스럽게 연결되는 분산 Git 네트워크가 형성됨
App View와 통합 네트워크
- tangled.sh에서 제공되는 App View는 전체 네트워크의 리포지터리를 하나의 통합 뷰로 보여주는 역할을 함
- 사용자는 다른 Knot에 위치한 리포지터리라도 복제(clone) 및 기여(contribute) 를 손쉽게 수행 가능함
- 이러한 설계는 Git의 기존 워크플로를 그대로 유지하면서도 분산형 환경의 장벽을 제거함
개발 원칙
- Tangled 팀은 개발 방향성을 위해 다음 세 가지 원칙을 설정함
- 1. 데이터 소유권 — 모든 사용자가 자신이 만든 코드와 메타데이터를 직접 소유
- 2. 낮은 진입장벽 — 누구나 쉽게 참여 가능하도록 단순한 구조와 인터페이스 제공
- 3. 사용자 경험의 일관성 — 분산 구조임에도 불구하고 중앙형 서비스 수준의 UX 보장
- 이 원칙은 Tangled의 기술적 선택과 UI/UX 설계 전반에 반영됨
접근 및 커뮤니티
- 초기에는 초대 기반 접근(invite-only) 으로 운영되었으며, 개발자들은
#tangledIRC 채널(libera.chat)을 통해 참여할 수 있었음 - 현재는 공개 로그인 오픈 상태로, 누구나 tangled.sh/login에서 이용 가능함
- Tangled는 아직 초기 단계이지만, 내부적으로 자체 사용(dogfooding)을 통해 기능을 검증하며 성장 중임
결론
- Tangled는 Git 협업을 소셜 네트워크처럼 연결된 경험으로 확장하려는 시도임
- 자율성과 접근성, 그리고 즐거운 개발 문화를 결합한 새로운 분산 Git 플랫폼 생태계로 주목받고 있음