Tangled бросает вызов централизованным форжам: код и обсуждения теперь живут вместе с репозиторием

The Federated Code Forge

Tangled бросает вызов централизованным форжам: код и обсуждения теперь живут вместе с репозиторием

Tangled — первый по-настоящему федеративный код-форж: вы хостите код на своих серверах и при этом бесшовно сотрудничаете с другими. Проект построен на AT Protocol, а issues, пул-реквесты и комментарии хранятся прямо в Git-репозитории как цепочки объектов, что даёт максимальную переносимость. Новый фронтенд на Svelte и распределённый индексер bobbin на Rust ускоряют работу по всему миру. Также появились организации, стековые PR и поддержка агентов.

Проект живёт не только кодом: его issues и пул-реквесты — такая же часть проекта, как и код, поэтому они должны храниться вместе с ним, где бы вы ни решили его разместить.
  1. stryan

    Очень жду развития Tangled! У меня есть сайд-проект, основной репозиторий и CI которого находятся на моём self-hosted Gitea, но код и релизы зеркалируются на Github; надеюсь перенести его с Gitea на Tangled для кода/релизов/потенциально CI и оставить Github только для обнаружимости/бэкапов/«сквоттинга» пространства имён.

    Нужно только, чтобы git-bug добавил мост в Tangled, чтобы я мог синхронизировать issues и (в идеале) чтобы были инструкции по запуску клиента на self-hosted. Не обязательно полнофункциональный клиент, но я также не хочу остаться без веб-доступа, если основной appview Tangled упадёт.

    Одно размышление: на днях, настраивая Neovim на новой машине, я впервые столкнулся с «проблемой» федеративного Git-хостинга. Один из плагинов, которые я использую, размещён на Tangled, и, видимо, его поддерживающий Knot был недоступен. Это было неловко по двум причинам:

    1. Мне было непонятно с сайта Tangled, что проблема именно в поддерживающем knot (какое-то время я думал, что дело на моей стороне)

    2. У меня действительно не было запасных планов на случай, если исходный форж Neovim-плагина недоступен, и, очевидно, у менеджера пакетов Neovim их тоже не было, так как он просто показывал ошибку при каждой сессии, которую я запускал, без возможности это исправить :).

    Полагаю, в долгосрочной перспективе нам действительно не стоит предполагать, что хранение кода просто Всегда Доступно или легко кэшируется где-то, но я предвижу некоторые трудности роста в ближайшее время. У ATProto, похоже, нет преимущества ActivityPub, где если экземпляр, на котором я хотел просмотреть контент, […]

  2. icy

    Привет! Я соучредитель Tangled. Мы очень рады этому запуску — мы стабилизировали наши лексиконы AT Protocol, полностью переработали архитектуру и UI и сделали self-hosting всего стека (или его частей!) невероятно простым. Мы также выпустили поддержку организаций, а приватные репозитории появятся в ближайшие пару недель.

    Готов ответить на любые вопросы.

  3. ivanjermakov

    Финский стартап Tangled привлекает €3,8 млн, чтобы переизобрести совместную работу над кодом https://www.vestbee.com/insights/articles/tangled-raises-3-8...

  4. pksunkara

    Я вижу в посте, что лексикон был доработан. Включает ли это перенос записей issue, pr и comment в область репозитория вместо области пользователя?

    Я спрашиваю, потому что ждал этого изменения. Я намерен сделать все публичные репозитории с https://juju.bi (код-форж, который я строю) совместимыми с Tangled и по сути вести себя как knot-сервер.

  5. eterm

    Я попробовал запустить:

    git clone https://tangled.org/tangled.org/core

    И это не сработало?

    Cloning into 'core'...

    warning: redirecting to https://knot1.tangled.sh/did:plc:j5hmlfdrwkvtxm7cjmu7j2is/

    remote: Thanks for using knot1.tangled.sh!

    remote: Enumerating objects: 99191, done.

    remote: Total 99191, done.

    Receiving objects: 100% (99191/99191), 122.19 MiB | 39.12 MiB/s, done.

    Resolving deltas: 100% (49286/49286), done.

    error: invalid path 'localinfra/fixtures/blobs/did:plc:igzuueb63dytyy3tpaweofuu bafkreieify5bix4cmrj4iuxiceb6srr2boltkbbf7yizwtgwurqv42sltm'

    fatal: unable to checkout working tree

    warning: Clone succeeded, but checkout failed.

    and retry with 'git restore --source=HEAD :/'

    You can inspect what was checked out with 'git status'

    Это не очень хорошее впечатление, когда самое первое, что я хотел бы попробовать сделать:

    1. Подозрительно перенаправляет с .org на .sh

    2. с треском проваливается.

    Теперь мне нужно выяснить, этот другой домен намеренный или скомпрометирован.

Ещё за этот день

2026-10-30