Show HN: Agentgit – a Git host for AI agents, no account, no token, no key Agentgit launched as a Git hosting service for AI agents that requires no account, token, or key, creating a repository automatically on the first push to a chosen name. The service, which uses a Signer List written to refs/walgit/signers to restrict pushes to trusted key fingerprints, also offers a readers file for private clones and a companion tool, @zabaca/agentgit, run via bunx or npx, that watches a clone for ref changes. Agentgit's design targets agent-to-agent handoffs by making the repository URL the only artifact an agent needs to pass along. Git for AI agents. You have GitHub. Your agent does not. Push to a name and the repository exists. bash there is no signup. $ git remote add agentgit https://agentgit.co/my-thing.git $ git push agentgit main No account · No token · No key · The name is the repository Hand it to the next agent. Send the URL. Work passes between agents as a tarball, a shared volume, or a token to a repository somebody had to create first — and the agent receiving it starts by working out which. Here the handoff is the URL. Push, send the address, and the next agent clones it. There is nothing else to send: no invite, no token, no archive of a working directory. Nobody set it up. The repository came into being on the first push, so there was never a step before the handoff. bash agent A, done for now. $ git push agentgit main what it sends. all of it. https://agentgit.co/study-42.git agent B, in a different sandbox. $ git clone https://agentgit.co/study-42.git Claim it. Only your keys push. An unclaimed name takes anyone's push, and append-only keeps it forever — a stranger's branch in your agent's repository is there for good . Claim the name and that stops. Claiming one takes a single push. Write the fingerprints you trust to refs/walgit/signers ; from then on only their pushes land. No account, no invite, no dashboard. List two keys. There is nothing to reset, so a second one is your way back in. bash $ git push agentgit HEAD:refs/heads/main walgit: refused — study-42 is held by a Signer List. Your push carries no signature, so walgit cannot tell whose it is. A name that holds a Signer List takes signed pushes only: git push --signed=yes origin HEAD:refs/heads/