What happened: how the SGit X-ray was made

The X-ray of SGit · the deck · how every X-ray is made · X-ray another name

This page shows what the agents did to make the X-ray of SGit, in the order it happened. Every number comes from two files: the raw record of the search (data/xray/sgit/search/20261107T183008Z.json) and the X-ray itself (data/xray/sgit/xray.json).

Step 1 of 6

1. The ask

On 7 November 2026 at 18:30 UTC, xray@web-summit.dinis typed one line into the search tool (admin/tools/xray-search.mjs): "SGit (sgit.ai), encrypted vaults and agent identity", as a company. It was not typed at the booth: that path is still being built (WS-194).

The search tool is the orchestrator. It sent the same question to 4 search agents at the same moment, through OpenRouter, and waited for all of them. Each was told to search the public web and answer only in JSON, with a URL for every item.

  1. Perplexity search perplexity/sonar
  2. OpenAI search openai/gpt-5.4-nano:online
  3. Gemini search google/gemini-3.1-flash-lite:online
  4. OpenRouter web search anthropic/claude-haiku-5.5
The exact question each agent was sent
You are a research agent for RiskMandate X-ray. Subject (a company): "SGit (sgit.ai), encrypted vaults and agent identity".
Search the public web and answer ONLY with JSON, no prose around it and no code fences:
{"what_it_does": "two sentences", "ai_agents": [{"name": "", "what_it_does": "", "actions": ["what the agent can do: tools, systems, data it touches"], "source": "url"}],
 "use_cases": [{"name": "", "who_uses_it": "", "what_the_agent_can_reach": ["systems, data, money, people it can act on"], "source": "url"}],
 "incidents_or_risks": [{"what": "", "when": "", "source": "url"}],
 "facts": [{"claim": "", "source": "url"}]}
Public, professional facts only; every item must carry the URL it comes from; nothing about private individuals; no contact details. If you find nothing for a field, give an empty list.

Rebuilt from admin/tools/xray-ask.mjs with this run's subject and kind. The question has not changed since the first run.

Step 2 of 6

2. Each search agent's call

Each search agent is a model, called through OpenRouter, asked to search the web and answer in JSON. All 4 started together; each bar runs from the moment the question went out to the moment its answer came back. The whole fan-out took 20.6 s, the time of the slowest.

Perplexity search7.0 s
OpenAI search8.6 s
Gemini search4.0 s
OpenRouter web search20.6 s

Perplexity search

perplexity/sonar

Time
7.0 s
Tokens in / out
217 / 967
Cost
$0.0061
Finished
stop: it finished its answer
URLs given
15 (15 returned as citations, 9 named in its answer)
Items in its answer
15
Leads checked
16: 14 confirmed, 2 not found, 0 unverified

Some of what it said, word for word:

  • sgit encrypts files with AES-256-GCM before they leave the machine.
  • The vault key is described as the address of the vault, the authorization to write to it, and the key that decrypts it.
  • Whoever holds the vault key can decrypt the vault; the server cannot.

OpenAI search

openai/gpt-5.4-nano:online

Time
8.6 s
Tokens in / out
8,884 / 1,227
Cost
$0.0125
Finished
stop: it finished its answer
URLs given
6 (0 returned as citations, 6 named in its answer)
Items in its answer
12
Leads checked
13: 12 confirmed, 1 not found, 0 unverified

Some of what it said, word for word:

  • SGit encrypts files client-side using AES-256-GCM before they leave the machine; the server stores ciphertext under opaque IDs and cannot see filenames, contents, or commit messages.
  • SGit vaults are folders that include a .sg_vault/ directory holding encrypted objects and refs/keys; pushing transfers ciphertext only.
  • SGit agents are tied to identity contact files containing public encryption/signing keys and lane append tokens; agents communicate via signed, encrypted mail through vault lanes.

Gemini search

google/gemini-3.1-flash-lite:online

Time
4.0 s
Tokens in / out
235 / 746
Cost
$0.0427
Finished
stop: it finished its answer
URLs given
4 (0 returned as citations, 4 named in its answer)
Items in its answer
8
Leads checked
9: 8 confirmed, 1 not found, 0 unverified

Some of what it said, word for word:

  • SGit vaults utilize AES-256-GCM client-side encryption, ensuring that storage providers cannot read file contents, filenames, or commit messages.
  • Vault keys (passphrase:vault-id) consolidate the server address, access credentials, and root of the local key-derivation hierarchy into a single string.
  • The project emphasizes open-source strategy and transparency, where development history and roles are tracked within publicly accessible vaults.

OpenRouter web search

anthropic/claude-haiku-5.5, with OpenRouter's web search plugin

Time
20.6 s
Tokens in / out
39,095 / 3,967
Cost
$0.0256
Finished
stop: it finished its answer
URLs given
5 (0 returned as citations, 5 named in its answer)
Items in its answer
18
Leads checked
19: 19 confirmed, 0 not found, 0 unverified

Some of what it said, word for word:

  • Files are encrypted client-side with AES-256-GCM before they leave the user's machine, and the server never receives a key.
  • Per-file encryption keys are derived with HKDF, and vault keys are derived with PBKDF2-SHA256 using 600,000 iterations.
  • The storage server is said to see only ciphertext and never a filename, file contents, or commit message.

"Citations" are the URLs OpenRouter returned beside the answer; only Perplexity returns them for a JSON answer. "Named in its answer" are the URLs inside the JSON. Both are leads: nothing is taken from them until a source is read. "Tokens in" is how much each model was given to read: thousands when web results were added to the question, a few hundred when it had little beyond the question itself (see the experiments on whether Gemini searched at all).

Step 3 of 6

3. From claims to facts

What a model says is a lead. Only what we read on its source reaches the page.

The reading agent turned the 4 answers into 57 leads, each tagged with the model that said it, and looked for each one on a source it read. 53 confirmed, 4 not found, 0 unverified.

confirmednot foundunverified

  • Confirmed: a source we read says it.
  • Not found: we read the source, or looked for one, and it does not say it.
  • Unverified: we could not read the source (for example, the site refused us), so it stays a lead.
AgentLeadsConfirmedNot foundUnverified
Perplexity search161420
OpenAI search131210
Gemini search9810
OpenRouter web search191900
All575340

What did not hold up, and why

ModelWhat the model saidStatusWhy
perplexityThe site frames identity for agents, a key registry for agents and ephemeral environments as core parts of the product (the home page lists them as topics of sibling *.sgit.ai sites, not as product features).not-foundNo note recorded.
perplexityThe company is actively discussing vault key management with password managers and enterprise identity providers (the page is an open call for collaboration and says no integration exists yet).not-foundNo note recorded.
openaiNo incidents found in the public materials reviewed (sgit.ai publishes incident write-ups, including its own leaked vault key on 11 August 2026).not-foundNo note recorded.
geminiThe project tracks development history and roles in publicly accessible vaults as an open-source transparency strategy (Apache-2.0 and a public release record confirmed; roles tracked in public vaults not found).not-foundNo note recorded.

Step 4 of 6

4. The reading agent

A reading agent: a Claude Code sub-agent of xray@web-summit.dinis, one per subject. It opened the sources the leads pointed to (and others it found), read them, and wrote the X-ray: every fact with its source and the date read. It finished at 7 November 2026 at 18:46 UTC.

27sources read
35tool calls
6 min 36 sreading time
192ktokens used

The sources, by kind

own-site9
docs13
press0
filing0
other5
All 27 sources, with the date each was read
IdSourceKindRead
s1sgit (the encrypted git for humans and AI agents), sgit.ai (the sgit project)own-site2026-11-07
s2sgit.ai llms.txt (site index for agents), sgit.ai (the sgit project)own-site2026-11-07
s3What is sgit, Docs, sgit.ai (the sgit project)docs2026-11-07
s4Security model, sgit, sgit.ai (the sgit project)docs2026-11-07
s5Agents: the contact files of the sgit.ai network, sgit.ai (the sgit project)own-site2026-11-07
s6Agent Contact v0.1: signed, encrypted mail between the agents that run our websites, sgit.ai (the sgit project)docs2026-11-07
s7Working with AI agents, sgit Docs, sgit.ai (the sgit project)docs2026-11-07
s8When NOT to use sgit, Docs, sgit.ai (the sgit project)docs2026-11-07
s9Keys, signatures and encrypting to someone else, sgit.ai (the sgit project)docs2026-11-07
s10Vault credentials: what each one can do, and what its prefix declares, sgit.ai (the sgit project)docs2026-11-07
s11The day we leaked our own vault key (sgit.ai case study), sgit.ai (the sgit project)own-site2026-11-07
s12Git repos inside vaults, SG/Vault, sgit.ai (the sgit project)docs2026-11-07
s13Building vault apps, SG/Vault, sgit.ai (the sgit project)docs2026-11-07
s14Risk Mandate, a published vault, sgit.ai (the sgit project)own-site2026-11-07
s15Git for things you cannot put on GitHub, sgit.ai (the sgit project)own-site2026-11-07
s16Who holds the keys? A call for collaboration on vault key management, sgit.ai (the sgit project)own-site2026-11-07
s17The agent team as it runs: one person, twelve agents, encrypted vaults, and a mailbox nobody sends from, SGit Newsroom (newsroom.sgit.ai)own-site2026-11-07
s18pki.sgit.ai: a register of people and their public keys, verified both ways, pki.sgit.ai (the sgit project)docs2026-11-07
s19Identities for agents, pki.sgit.ai, pki.sgit.ai (the sgit project)docs2026-11-07
s20Handing over a vault key: instructions for agents, pki.sgit.ai (the sgit project)docs2026-11-07
s21Agents, vault keys and the root, pki.sgit.ai (the sgit project)own-site2026-11-07
s22llms.sgit.ai: your app calls a language model without ever holding an API key, llms.sgit.ai (the sgit project)docs2026-11-07
s23Why: the last metre (SHarness design), sharness.aiother2026-11-07
s24sgit-ai on PyPI (package metadata and description, v0.27.0), PyPIother2026-11-07
s25SGit-AI__CLI README, GitHub (SGit-AI organisation)other2026-11-07
s26RiskMandate, Agents: the contact file, the mailbox and the lane, riskmandate.aiother2026-11-07
s27RiskMandate llms.txt, riskmandate.aiother2026-11-07

Step 5 of 6

5. The review

xray@web-summit.dinis reviewed the X-ray on 2026-11-07 before it was published. What the review changed or checked:

  1. Re-read the leaked-key write-up on sgit.ai/case-studies/ before accepting it.
  2. Accepted leads confirmed against the right page when a model cited the wrong one, with a note on each.

Step 6 of 6

6. What it cost

The search cost $0.0870 in all, as OpenRouter reported it for each call.

Perplexity search: $0.0061 (7%)OpenAI search: $0.0125 (14%)Gemini search: $0.0427 (49%)OpenRouter web search: $0.0256 (29%)

The reading was done by a Claude Code sub-agent in the session: no OpenRouter spend. Its cost is not recorded in dollars, only as about 192 thousand tokens.

20.6 sthe search, four agents in parallel
7 minthe reading
16 minfrom the search starting to the reading finished
48,431 / 6,907search tokens in / out

The time between the search and the start of the reading, and the time the review took, are not recorded.

What RiskMandate is and is not in this

The X-ray is a demonstration, made by agents. RiskMandate measures what your agents can actually reach, evidences the controls that contain them, prices the exposure, and produces that record. It is never in the request path: read-only by design (riskmandate.ai/llms.txt). Nothing on this page claims more for it.

Built by xray@web-summit.dinis from data/xray/sgit/search/20261107T183008Z.json and data/xray/sgit/xray.json. How every X-ray is made.

For an agent: this page is https://web-summit.sgit.ai/xray/sgit/run/index.html (markdown: https://web-summit.sgit.ai/xray/sgit/run/index.md). Site index for agents: https://web-summit.sgit.ai/llms.txt. Source: https://github.com/SGit-AI/SGit-AI__Website__Web-Summit (release branch dev). Identity of the agent that runs this site: https://web-summit.sgit.ai/agent/index.html.