Early access

SB-Git

Memory your agents can keep.

A versioned knowledge store for your agents — a real Git repo, hosted on Genspark. Your agent reads and writes it, your laptop clones it, your browser shows the history. Same repo. Same token.

What changes

What changes when your agents have memory they can trust.

Six dimensions. The same agent, with and without a versioned knowledge layer underneath.

Dimension
Agents alone
Agents + SB-Git
Memory
Lost between sessions
Persistent & versioned
History
Buried in chat logs
Diffable timeline
Collaboration
Silent overwrites
Safe parallel agents
Sharing
Siloed per agent
Shared across agents
Mistakes
Hard to undo
One-step rollback
Audit
Opaque
Fully traceable

A day with SB-Git

From "save it to SB-Git" to a clone on your laptop.

Four moments. No orchestrator code. The agent uses the same Git you do — plus a small CLI for tool calls that don't want a working tree.

ACT 01

The agent saves its work to SB-Git

You name the tool. The agent reaches for it directly.

You
Save this to a new SB-Git repo acme-research — tomorrow I'll resume from another machine.
Agent
bash · agent
# create the repo, then ask gsk for a ready-to-paste clone snippet
gsk sb-git init -r acme-research
eval "$(gsk sb-git clone-url -r acme-research | jq -r '.commands | join(\"\\n\")')"
cd acme-research

# write notes as files, commit, push — standard git
cat > hypotheses.md <<'EOF'
1. ACME ships in Q3 (per 10-K p.42)
2. Pricing tier B at $49/mo (unconfirmed)
EOF
git add . && git commit -m "day 1: hypotheses" && git push
Agent
For one-off reads or writes inside a tool call I can skip the clone — gsk sb-git cat and gsk sb-git commit hit the same repo with one HTTP call. Same token, same refs.
ACT 02

A second agent reads one file — no clone

An hour later, a different agent on a different VM needs just one file. It skips the working tree entirely and goes pointwise via the CLI.

You
Look at hypotheses.md in acme-research and tell me which ones are still unconfirmed.
Agent B
tool call · gsk
# list the repo, then read the one file I need — zero clones
gsk sb-git ls -r acme-research
gsk sb-git cat -r acme-research -p hypotheses.md

# found tier-B pricing was the open one — record the answer
gsk sb-git commit -r acme-research -m "answer: tier B unconfirmed" \
  --files '{"answers/q1.md":"Tier B at $49/mo is still unconfirmed."}'
Agent B
Three HTTP calls, no working tree, no temp files. The same $GSK_API_KEY authenticates everything; the same refs you'd see from git log.
ACT 03

You pick up on a laptop

Same repo. No agent runtime. Just plain Git over HTTPS.

You
Next morning, train ride. Laptop only. I want to read what the agent wrote, scratch a few notes, and push back.
You
bash · laptop
$ gsk sb-git clone-url -r acme-research
# prints the GSK_HOST line + git clone command, ready to paste

$ git log --oneline
a3f92c1 day 1: hypotheses        — agent · claw-vm
e0c10a2 init
You
Add a line to todo.md, git push. Tomorrow's agent run picks up where you left off.
ACT 04

You inspect in the browser

Open genspark.ai/sb-git. See the timeline of what your agent has been thinking.

UI
https://genspark.ai/sb-git/me/acme-research
me / acme-research · main
2f81a4cadd comp pricing notes — you · laptopjust now
b71d04erevise H2 after reading 10-K — agent · claw-vm2h ago
a3f92c1day 1: hypotheses — agent · claw-vmyesterday
e0c10a2init — agent · claw-vmyesterday
You
Click any commit to see the diff. Click hypotheses.md to read what the agent wrote. Roll back if it went sideways.

How it works

Three things make the story above just work.

1

Real Git underneath

Smart-HTTP, basic auth, standard refs. Clone with git, inspect with libgit2, run any community git skill. No proprietary SDK to learn.

2

A small CLI for tool calls

gsk sb-git covers the pointwise actions agents do most — init, ls, cat, commit, log, diff, clone-url, list-repos. One HTTP call each. No working tree required.

3

One token, three surfaces

Your gsk- API key authenticates git, REST, and the gsk CLI. Same identity, same repo, no extra setup.

Now you try · under 5 minutes

Four commands to a real, versioned memory store.

Run these on a Claw VM, your laptop, or anywhere git is installed.

STEP 01

Get your API token

Install the CLI and sign in once. Your token is reused by every surface — git, REST, and the CLI.

bash
$ npm i -g @genspark/cli
$ gsk login
# browser opens, you authorize, token is written to ~/.gsk/credentials
STEP 02

Create your first repo

One CLI call. Empty repo, ready to clone.

bash
$ gsk sb-git init -r my-notes
STEP 03

Clone, edit, push — the normal way

Ask the CLI for a ready-to-paste clone snippet, then it's plain Git from there. This is how you and your agent will spend most of your time.

bash
$ gsk sb-git clone-url -r my-notes
# prints { url, commands: [...] } — paste the commands, you're cloned

$ cd my-notes && echo "## Q3 goals" >> goals.md
$ git add . && git commit -m "Q3 goals" && git push
STEP 04

Or: bulk-import an existing folder

Got a directory of notes, transcripts, or session history? Push it whole. Any community git skill that speaks smart-HTTP works the same way.

bash
$ gsk sb-git init -r meetings
$ cd ~/notes/meetings   # 200 files, no problem
$ git init && git add . && git commit -m "import"
$ eval "$(gsk sb-git clone-url -r meetings | jq -r '.commands[0]')"
$ git remote add origin https://x-access-token:$GSK_API_KEY@$GSK_HOST/sb-git/me/meetings.git
$ git push -u origin main