Skip to content

What is githosted

githosted is a versioned filesystem for agents, apps and devs. Read, write, and diff files from any language. Real Git underneath, with first-class SDKs that don’t make you shell out.

The shortest example:

from githosted import Client
repo = Client(token="gw_…").repo("my-project")
repo.write("output.json", data, message="Run #42")
history = repo.log(limit=5)
delta = repo.diff("HEAD~1", "HEAD")

Three lines write a file, get the last five commits, and diff between them. No clones, no working directories, no git push ceremony — but you can still git clone the same repo if you want to.

We host the bytes; the protocol stays standard. No githosted-flavoured Git, no proprietary client, no CI plugin.

  • Just git — plain protocol. Clone, push, fetch, branches, tags, signed commits all use the standard wire format. Anything that speaks Git speaks githosted.
  • Portable — the clone URL is the only thing you’d change to move off. Export today is one git clone --mirror; two-way sync to GitHub and GitLab is on the roadmap.
  • Vendor agnostic — switch hosts and your tooling keeps working. Your code is yours, your CI is yours, your IDE doesn’t care where the remote lives.
  • Scales — thousands of repos, spun up and down via the SDK. Per tenant, per session, per agent run. Tokens scope cleanly per workspace or per repo.

Every interaction with githosted runs through this hierarchy:

user → organization → workspace → repo