xkg

Privacy Policy

Effective October 23, 2026

xkg stores only what it needs to sign you in and act on your behalf: your captures stay in your own GitHub repository. This policy covers the hosted service at xkg.xmu.sh (“xkg”, “we”). The data controller is SPV Technology Inc., 1111B S Governors Ave, STE 34689, Dover, DE 19904, United States.

1. What we collect

DataWhere it comes fromWhy we need itHow it is stored
GitHub user ID and usernameGitHub, when you sign inTo identify your accountPlain text
GitHub access token (repo scope)GitHub, when you sign inTo write captures to and read them from your repositoryEncrypted (AES-256-GCM)
Name of your knowledge repositoryYou, at setupTo know where your captures goPlain text
LLM provider and API keyYou, at setupTo process captures with your own provider accountKey encrypted (AES-256-GCM)
xkg API key (for AI workers and the CLI)Generated by xkgTo authenticate your AI workersOne-way hash only; we cannot recover it
PINYou, at setupQuick unlock on a device already verified with GitHubSalted scrypt hash
Display name and profile imageYou, optionalShown in the appPlain text
Security recordsGenerated by xkgLock out repeated failed PIN attempts, cap captures per hour, and track connected AI clients, keyed by accountPlain text; the counts reset each window

Passed through, not stored. To do its job, xkg handles data it does not keep:

  • What you capture: the text or URL you submit, and the page at that URL when xkg fetches it.
  • Content of your knowledge repository, read to answer your AI workers.
  • From the optional CLI hooks: your project's name, current git branch, last five commit messages, and the path of a file being edited.
  • What you or your AI tools send to get briefings, plans and suggestions: project context, task descriptions and code snippets.

Not collected. No email address, no payment details, no analytics, tracking or advertising identifiers.

The repo scope lets xkg read and write all repositories your GitHub account can access. GitHub offers no narrower scope that covers private repositories. xkg only accesses your knowledge repository.

Legal basis (EU/UK). We process this data to provide the service you signed up for (contract), and keep security records to protect your account (legitimate interests).

2. Where your data goes

We do not sell your data, use it for advertising, or share it beyond the providers below, except where the law requires.

RecipientWhat it receivesWhyLocation
VercelEvery request to xkg, including your IP address and browser details in its request logsHosts the appUnited States (Washington, D.C.)
NeonThe account data in section 1DatabaseUnited States (Washington, D.C.)
GitHubYour captures, written to your repositoryWhere your knowledge livesGitHub's infrastructure
Your LLM provider (Anthropic, OpenAI or Google)Capture content, relevant knowledge-base entries, and the context sent for briefings, plans and suggestions (such as project name, branch, recent commit messages, file paths, task descriptions and code), sent with your API keyExtracting and ranking insights, writing briefings, plans and suggestionsYour provider's infrastructure
Websites you captureA request from xkg's servers, not from your deviceReading the page you submittedAnywhere

Your LLM provider processes this content under your account and its terms; xkg is not a party to that agreement. Your captures are subject to GitHub's terms and your repository's visibility, which is private by default.

International transfers. xkg is run by a US company, and its servers and database are in the United States. If you use xkg from elsewhere, including the EU or UK, your data is processed in the US, where data protection law may differ from yours; this policy's protections apply to you in full. Vercel and Neon are bound by data processing agreements that include the EU Standard Contractual Clauses.

3. How long we keep it, and deleting it

Account data and security records are kept while your account exists.

DataHow long
Account data (section 1)Until your account is deleted
Signed-in session30 days, or until you generate a new xkg API key
AI worker connectionsAccess tokens 1 hour; refresh tokens 30 days; authorization codes 5 minutes
Failed PIN attemptsCounted in 15-minute windows, lockouts last at most 24 hours; the record is kept until your account is deleted
Capture counterCounted in 1-hour windows; the record is kept until your account is deleted
Hosting request logsUp to 30 days
Database backupsUp to 30 days
Your capturesIn your GitHub repository, until you delete them

Deleting your account. In Settings, choose Delete account. It takes effect at once: your account data is deleted and we ask GitHub to revoke xkg's access. You can also email sofia@spvtechnology.com from, or naming, your GitHub username; we then delete your data within 30 days and confirm when done. Backup copies expire up to 30 days after deletion. Your captures are not touched: they live in your repository, and you delete them in GitHub.

Cutting off access immediately, without deleting anything:

  1. Generate a new xkg API key in Settings. This signs out every other session and disconnects every AI worker.
  2. Revoke xkg in GitHub under Settings → Applications → Authorized OAuth Apps. This invalidates the stored GitHub token.
  3. Delete your API key at your LLM provider.

4. Cookies

xkg sets only the cookies it needs to work; there are no analytics or advertising cookies, so no consent banner is shown.

CookiePurposeLasts
xkg_sessionKeeps you signed in30 days
xkg_deviceMarks a browser verified with GitHub, so PIN unlock works on it180 days
oauth_stateProtects GitHub sign-in against forgery10 minutes
xkg_oauth_returnReturns you to an AI worker after you approve its connection10 minutes

Older xmu_ and mnemos_ versions of the first two are still read so earlier sign-ins keep working.

5. Your rights

You can ask us to show, correct, export or delete your data, to restrict how we use it, or object to how we use it. Email sofia@spvtechnology.com; we answer within 30 days and won't charge you or treat you differently for asking. In the EU or UK you may also complain to your data protection authority. California residents have the same rights under the CCPA; we do not sell or share personal information.

To use xkg you need to sign in with GitHub, and at setup choose a knowledge repository, add an LLM API key and set a PIN; without them the service can't work. A display name and profile image are optional. xkg makes no automated decisions with legal or similarly significant effects on you. We have not appointed a Data Protection Officer; the law does not require one for a service like xkg.

6. Children

xkg is not for anyone under 16. GitHub, which you need to sign in, requires users to be at least 13. If we learn that an account belongs to someone under 16, we delete it.

7. Changes and contact

We'll post any change here and update the effective date, and tell you in the app before a material change takes effect. Questions or requests: sofia@spvtechnology.com. Security issues: report privately.

Privacy Policy · Terms of Service