AI 요약
최근 몇 주간 GitHub의 서비스 장애는 전 세계 오픈소스 소프트웨어(OSS)의 90%가 특정 서비스에 종속된 '중앙 집중식 시스템'의 취약점을 드러냈습니다. Tangled 프로젝트는 이메일이나 IRC처럼 시간이 흘러도 변치 않는 분산형 프로토콜의 가치를 코드 협업에 도입하고자 합니다. 과거의 'git+이메일' 방식과 현재의 'git+GitHub' 방식을 넘어, Tangled는 코드 전송을 위한 git과 커뮤니케이션을 위한 'AT 프로토콜'을 결합한 연합 모델을 제시합니다. 이를 통해 'Knot'이라 불리는 개별 서버들 사이에서 자유로운 포크(fork)와 풀 리퀘스트(PR)가 가능해지며, 사용자는 특정 플랫폼에 얽매이지 않고 자신의 서버에서 다른 서버의 저장소에 기여할 수 있습니다. 결과적으로 GitHub의 단일 문화(Monoculture)에서 벗어나 독립적이면서도 소셜 기능이 결합된 건강한 오픈소스 생태계를 지향합니다.
핵심 인사이트
- 전 세계 오픈소스 소프트웨어(OSS)의 약 90%가 현재 GitHub라는 단일 기업 서비스에 의존하고 있다는 구조적 위험성 지적.
- 코드 협업의 구성 요소를 '코드 전송(git)'과 '커뮤니케이션(AT 프로토콜 등)'의 이원적 프로토콜 결합으로 정의.
- Tangled는 서버 간 이벤트를 연합하는 기본 단위를 'Knot(노트)'라고 명명하여 분산 네트워크 구축.
- 기존 ForgeFed 프로젝트가 'ActivityPub'을 고려한다면, Tangled는 'AT 프로토콜'을 선택하여 인증된 이벤트 전송 구현.
주요 디테일
- 크로스 서버 협업: 사용자가 본인의 서버에 코드를 푸시하고, 완전히 다른 서버에 호스팅된 저장소로 풀 리퀘스트를 보내는 연합형 워크플로우 지원.
- AT 프로토콜 활용: 이슈, PR, 타임라인, 팔로우, 별점(Star) 등 소셜 데이터의 '인증된 전송(Authenticated Transfer)'을 처리.
- 보안 및 관리: 협업자 초대 및 SSH 공개키(pubkeys) 공유를 AT 프로토콜을 통해 관리하여 신뢰성 확보.
- 소셜 기능: 단순한 코드 저장소를 넘어 타임라인과 팔로우 기능을 제공하며, 곧 '보증(Vouches)' 기능이 추가될 예정.
- 사용자 경험: 자신의 cgit 인스턴스를 운영하며 이메일 패치를 보내는 고전적 방식의 자유로움을 현대적 UI와 소셜 기능으로 재구현.
향후 전망
- GitHub의 독점적 지위에 대응하는 대안적 연합체(Federation)로서, 오픈소스 커뮤니티의 기술적 자립도 향상 기여.
- AT 프로토콜이 단순 SNS(Bluesky 등)를 넘어 전문적인 개발 협업 도구의 기반 기술로 확장될 가능성 확인.
출처:hackernews
