Open Source Protocol

Git is already decentralised. Now everything else is too.

Your repositories, your identity, your data. gitd moves issues, patches, CI, releases, and package publishing onto decentralised protocols. No platform lock-in.

$ curl -fsSL https://gitd.sh/install | bash
GitHub
11 composable protocols 763+ automated tests DID-native identity MIT licensed

Why gitd

Everything git needs, nothing it doesn't

gitd doesn't replace git. It extends it with decentralised protocols for everything that still depends on a platform.

DID-native identity

Every push is signed with your DID. No SSH keys managed by a third party. No usernames. Just cryptographic proof.

Composable protocols

11 independent protocols for issues, patches, CI, releases, registry, wiki, org, notifications, and social. Use what you need.

Encrypted by default

Private repos use JWE-encrypted DWN records. Only authorised DIDs can read. No server has your plaintext.

GitHub interop

API shim, npm/go/OCI registry shims, and a migration tool to import existing repos, issues, and PRs. Adopt incrementally.

No central bottleneck

No single point of failure. Your DWN is your server. Sync with anyone who speaks the protocol.

Self-hosted web UI

gitd web launches a local web interface for browsing repos, issues, and patches. No cloud dashboard needed.

CLI

One CLI for the full git lifecycle

Setup, clone, create issues, submit patches, run CI, publish packages, and migrate from GitHub. Everything from your terminal.

View documentation
terminal
$ gitd setup
# Generates DID, configures credential helper

$ gitd clone did:dht:abc123/my-repo
# Clone from a decentralised web node

$ gitd issue create --title "Fix auth"
$ gitd patch create
$ gitd ci create
$ gitd registry publish
$ gitd migrate all --from github
$ gitd web

Protocol Architecture

How the protocols work

Each protocol defines a DWN record schema. Your DWN stores the data. The gitd CLI reads and writes it. Anyone running the same protocol can interoperate.

git/repo

Repository metadata, description, visibility, and default branch configuration stored as a DWN record.

git/issues

Issue tracking with labels, assignees, and threaded comments. All records signed by author DIDs.

git/patches

Decentralised pull requests. Submit patches, review, comment, and merge without a central forge.

git/ci

CI pipeline definitions and run results. Trigger builds, publish status checks, review logs.

git/releases

Versioned releases with changelogs and binary attachments. Signed by the maintainer DID.

git/registry

Package publishing for npm, Go modules, and OCI images. Registry shims for backward compatibility.

11
composable protocols
763+
automated tests
0
central servers
MIT
open source

git without the platform

Your repositories, your identity, your data. Start in 30 seconds.

$ curl -fsSL https://gitd.sh/install | bash