Agents need private, versioned state

The encrypted git for
humans and AI agents

Version, branch, and share vaults of files that are encrypted before they leave your machine. Zero knowledge: the server stores ciphertext, not your data.

Or try it in your browser → 5-minute quickstart →

Pure Python · two runtime dependencies · Apache-2.0

$ sgit create my-vault
Vault created and registered
Initial commit pushed

  Vault key: <24-char-passphrase>:<vault-id>

Keep this safe — it is the address, the auth, and the
encryption key in one string. Without it, nobody — including
the server — can read this vault.
$ vim notes/positioning.md
$ sgit status
  On clone branch branch-clone-3f9c → named branch main
  modified:  notes/positioning.md
  added:    drafts/hero-copy.md

$ sgit commit -m "first draft of hero copy"
Committed 2 files (no staging area — commit snapshots the folder)
$ sgit history log --oneline
c4e81a first draft of hero copy
b2d70f initial commit

$ sgit history diff
--- a/notes/positioning.md
+++ b/notes/positioning.md
- sgit is a CLI for encrypted sync
+ sgit is git for encrypted vaults
$ sgit push
Pushed 2 objects (delta push — only changed, only ciphertext)

# on another machine (or another agent)
$ sgit clone <vault-key>
Cloned and decrypted 12 files

$ sgit pull
Up to date
# one call: encrypt, commit, push, machine-readable result —
# no working-directory scan, no full clone needed
$ sgit write notes/finding.md --file result.md \
    --message "agent A: analysis" --push --json
{
  "status": "pushed",
  "path": "notes/finding.md",
  "blob_id": "obj-cas-imm-9c2e41ab77d0"
}

The vault key is the address, the auth, and the encryption key — one high-entropy string. Keep it safe.

Git workflows. Encrypted vaults. Zero knowledge.

sgit is git for encrypted vaults: clone, commit, branch, diff and merge folders of files that are encrypted with AES-256-GCM before they leave your machine.

Git-like version controlcommit, branch, merge, diff, log, stash, revert your encrypted files
Client-side encryptionAES-256-GCM before upload; keys derived from your vault key, never sent to the server
Real three-way mergeconflict files plus a base/ours/theirs resolve --show view
The two-branch modela private clone branch per machine or agent; shared named branches for collaboration
Sparse & thin clonesstructure now, content on demand — for agents on a time budget
Browser interopopen the same vault in SG/Vault on the web — CLI and browser speak one wire format

What the server sees

Your machine

  • filenames & folder structure
  • file contents
  • commit messages
  • branch names
  • the vault key & derived keys

The server

  • obj-cas-imm-3f9c41ab77d0
  • ref-pid-muw-8e02cc194b3a
  • ciphertext blobs (AES-256-GCM)
  • object sizes · timestamps
  • the vault id

That's the whole list — and we publish the threat model, including what the server can see (sizes, timing, vault ID). Read the security model →

Built for agents

Agents need shared state. Shared state needs versioning — and privacy. sgit is the encrypted, versioned workspace for humans and AI agents.

Persistent memory

A vault is just a folder

An agent clones it, reads and writes files normally, commits, pushes. The next session pulls and continues. State survives the context window.

Multi-agent, human-merged

A branch per agent

Each agent gets its own private clone branch; work meets on named branches; a human reviews the merge — in the terminal or in the SG/Vault browser.

Agent-grade plumbing

Machine-readable everything

sgit write for surgical single-call commits, --json on every read path, cat --id with zero network calls, sparse clones for fast cold starts.

Read the agent guide →  ·  Install the skills →  ·  llms.txt

What people use it for

Use case

Private memory for AI agents

Durable, versioned state between sessions — encrypted end to end.

Read →
Use case

Multi-agent collaboration

Agents on their own branches, humans reviewing the merge.

Read →
Use case

Human ↔ agent workspaces

You in the SG/Vault browser, the agent in the CLI — same vault.

Read →
Use case

Encrypted folders with history

A shared folder the hosting provider cannot read, with rollback.

Read →
Use case

Signed & encrypted exchange

PKI: sign, verify, encrypt and decrypt files for named recipients.

Read →

In production — and honest about it

sgit is in beta, powering production workflows daily. No superlatives — just the evidence, and a page that tells you when not to use it.

~4,000 tests mutation testing in CI integration tests against a real server 2 runtime dependencies Apache-2.0 security model published when NOT to use sgit

One vault, three doors

Think of it as
sgit — git, for encrypted vaults

Open source CLI. Free. Apache-2.0. pip install sgit-ai

Think of it as
SG/Vault — the web app for your vaults

Browse, edit and review the same vaults in the browser — an independent implementation of the same wire format.

Platform docs → · sgraph.ai

Think of it as
SG/Send — the transfer API underneath

The zero-knowledge storage service both clients speak to — the same server the integration tests run against.

Platform docs → · sgraph.ai

Encrypted vaults. Git workflows. Zero knowledge.
5-minute quickstart → Star on GitHub →