StarNet Help Download ↓

StarNet Privacy

Google connector disclosure reviewed: 2026-09-06, against the 0.11.0 candidate. Other sections last reviewed: 2026-07-25.

StarNet is a local-first desktop app. It runs a small server (the "sidecar") on your own machine (localhost) and does the agent work there. Out of the box there is no StarNet account and nothing of yours on a StarNet server — the app talks only to the providers you choose, with your own keys. There is exactly one opt-in exception: if you choose to buy StarNet Credits, that creates an account on our billing service. It is described in full under StarNet Credits below. Optional connections to services such as Google have their own data flows, described below, whether you use your own model key or StarNet Credits. This document is written in plain English and is grounded in an audit of the actual code — not aspirations.

Support questions: androo.agi@gmail.com.

The short version

What leaves your machine — and only these

StarNet makes outbound network requests in exactly these situations. Nothing else.

1. Your chosen AI model provider (using your key)

When an agent runs, StarNet calls the model provider you configured, authenticated with your API key (or your ChatGPT sign-in). Your prompts, conversation, and any content the agent works with are sent to that provider so it can generate a response — the same as any app that uses that provider. StarNet is a pass-through here; it does not sit in the middle.

Depending on what you set up, that provider is one of:

Your key, your data, your account. StarNet never sees a StarNet-owned copy — the key is yours and the request goes straight to the provider you picked.

2. Chat channels — only if you connect them

If you connect a chat channel, StarNet talks to that platform to send and receive messages on the channel you set up, authenticated with the token (or endpoint) you provide. Nothing is contacted unless you connect it:

If you never connect a channel, StarNet never contacts any of these services.

3. Spotify — only if you enable it

If you enable the Spotify integration and authorize it, StarNet calls the Spotify API (api.spotify.com, accounts.spotify.com) to read what's playing and control playback, using the token you granted. If you don't enable Spotify, no Spotify requests are made.

4. Web search / web fetch — only when an agent uses that tool

If an agent uses its web tools, StarNet fetches results through independent, keyless services — web search via Mojeek (mojeek.com, with DuckDuckGo as a fallback) and page reading via Jina Reader (r.jina.ai) — or, if you have an OpenRouter key, OpenRouter's web plugin. If the Jina reader is unavailable or rate-limits, the page is fetched directly from its own host as a fallback, so the site you asked to read may see the request come from your machine. Only your search query or the URL you asked to read is sent, and only when an agent actually runs a web search or fetch. (The fetch tool also refuses to reach private/internal network addresses, as an anti-abuse guard.)

5. Voice — two different paths, and they behave differently

Spoken agent lines use local Kokoro when the built-in voice engine is available. Other spoken lines use your configured model provider (OpenRouter, OpenAI, or Gemini), or ElevenLabs when you configure an ElevenLabs voice, so the line of text is sent to that service. If those paths are unavailable, StarNet can use Microsoft's keyless Edge Read Aloud service, which sends the line of text to Microsoft. Voices off means no TTS requests at all.

Hands-free Live Voice does not use a vendor realtime-voice session. Listening runs on local Whisper when installed; on Windows, offline System.Speech dictation can serve as the fallback. On those paths, your recorded audio never leaves your machine. The open Whisper and Kokoro weights may be fetched from huggingface.co on first use and cached in your user profile; that download carries no audio or transcript. Once cached, listening is offline. Speaking is also offline while Kokoro is available; if it is not, the Edge Read Aloud fallback described above may send only the answer text (not your recorded audio) to Microsoft.

6. A version check for updates (no personal data)

Automatic update checks are on by default. On first run and at the configured interval, the desktop app fetches a single public manifest file from GitHub Releases:

https://github.com/androoAGI/starnet-releases/releases/latest/download/latest.json

This is a plain GET for a static file. No user data, no identifier, and no telemetry are sent — it's the same request your browser would make to view that file. Each update's integrity is cryptographically verified against a key baked into the app before anything is installed. You can stop automatic checks by turning off AUTO-CHECK FOR UPDATES in SYSTEM > SETTINGS > UPDATES; the Update Center still lets you check manually.

7. Google Workspace — only when you connect an account

StarNet's local connector calls the Google services you authorize, using the permissions you approve in Google's consent screen. Gmail, Drive, Calendar, Docs and Sheets are connected separately. Google also supplies the account identity shown with a connected service.

Use in agent work. Content returned by these tools can become part of the agent's conversation and requests to your chosen model provider. If you use StarNet Credits, those model requests also pass through StarNet's credits gateway. Local execution of the Google connector does not mean that Google-derived content remains exclusively on your device. The provider you choose has its own data-handling terms. Saved conversations, downloaded artifacts and agent memories may retain content from this work.

Credentials and disconnecting. Google sign-in credentials and connector configuration are stored in plaintext JSON under your local StarNet workspace, including recovery copies; these connector credentials are not stored in the OS keychain. Removing a connected service verifies removal of its saved configuration and credentials from the active state and its recovery copy before reporting success. This does not delete prior conversations, artifacts, memories or documents in Google, and it does not itself revoke StarNet's authorization in your Google account. Manage or revoke that authorization separately through your Google account's third-party connections. Revocation stops future authorized access; it does not erase copies already saved locally or sent to a model provider. Delete those separately using the relevant app or provider controls.

What StarNet stores on your machine (and how)

Everything below lives under your per-user app-data directory (see the paths in "The short version" above for Windows/macOS/Linux). It never leaves your machine except as described above. Where this document says "OS keychain," that means Windows Credential Manager, the macOS Keychain, or the Linux Secret Service (e.g. GNOME Keyring), depending on your platform — always under the service name ai.skynet.harness.

What Where How it's stored
Conversation transcripts transcript.jsonl Plaintext JSON on disk
Run history + cost ledger runs.jsonl, ledger.jsonl Plaintext JSON on disk
Agent memory / beliefs / to-dos <agent>.notebook.json, <agent>.todo.json, dossier/goals Plaintext JSON on disk
Voice cache (spoken-line audio) voice-cache/ Plaintext audio files on disk
Discord / Telegram bot tokens OS keychain (desktop) OS keychain (Windows Credential Manager); plaintext fallback in bare/dev mode — see below
Your model-provider API keys OS keychain (desktop) OS keychain (Windows Credential Manager); loaded into app memory at launch, never written to disk by the app
Spotify OAuth token .secrets/spotify.json Plaintext JSON on disk
Google and other connector configuration, account identity and OAuth credentials connectors/state.json and its recovery copy Plaintext JSON on disk, including access/refresh tokens; not the OS keychain
ChatGPT / Codex sign-in token codex/tokens.json Plaintext JSON on disk
Grok sign-in token grok/tokens.json Plaintext JSON on disk
Kimi sign-in token kimi/tokens.json Plaintext JSON on disk
Channel message history (Discord/Telegram chats the bot saw) channels/*.history.json Plaintext JSON on disk
Agent memory ledgers (accepted/declined memory proposals, dossiers, goals) per-agent *.json Plaintext JSON on disk
Station state (widgets, sub-agents, routing, quests, XP) various *.json Plaintext JSON on disk
Settings, roster, permissions, cron, connectors various *.json Plaintext JSON on disk

Secrets: keychain vs. plaintext — the honest picture

On the desktop build, your provider API keys and your Discord/Telegram bot tokens are held in the OS keychain (Windows Credential Manager, under service ai.skynet.harness), not in a plaintext file. When you upgrade from an older build, any bot token found in the old plaintext channels/secrets.json is migrated into the keychain and stripped from that file.

If you instead run the bare sidecar directly (developer mode / node sidecar/index.js / tests), the OS keychain isn't reachable, so those bot tokens fall back to a plaintext file (channels/secrets.json). This is called out plainly in the code rather than hidden.

These integration secrets are plaintext even on desktop today: the Spotify OAuth token (.secrets/spotify.json) and the ChatGPT/Codex, Grok, and Kimi sign-in tokens (codex/tokens.json, grok/tokens.json, and kimi/tokens.json), plus Google and other connector OAuth credentials (connectors/state.json and its recovery copy). If that matters to you, keep those integrations off. (Transcripts are run through a redaction step at write-time to avoid capturing secret-shaped tokens in your chat history, but the transcript file itself is plaintext.)

Because this data sits in plaintext files under your user profile, anyone with access to your Windows user account can read it. Protect your machine account accordingly.

What we do NOT do

StarNet Credits — only if you buy them

Credits are optional and off by default. If you never buy them, skip this section: nothing in it applies to you, and the app behaves exactly as described above.

If you do buy credits, you create an account on StarNet's billing service, and these things become true:

Deleting your data

Your data is just files. To wipe it, uninstall StarNet and delete the ai.skynet.harness app-data folder for your OS — Windows: %APPDATA%\ai.skynet.harness\ (C:\Users\<you>\AppData\Roaming\ai.skynet.harness\); macOS: ~/Library/Application Support/ai.skynet.harness/; Linux: ~/.local/share/ai.skynet.harness/. If you ever ran the developer-mode sidecar on Windows, also delete %LOCALAPPDATA%\StarNet\. Provider API keys and channel tokens held in the OS keychain can be removed there too (search your credential manager / keychain for ai.skynet.harness).

Deleting local files or uninstalling StarNet does not revoke permissions granted in a Google account or remove data already held by Google or a model provider. For connected Google accounts, follow the disconnect and revocation steps above. Copies in backups you made outside the workspace must also be deleted separately.

This website (starnetos.com)

The website you're reading is a static site with no accounts, no cookies, no analytics, and no tracking scripts. Two things are worth stating plainly:

The "live preview" on the homepage is the real app running entirely in your browser from a seeded demo save; anything you do in it stays in your browser's local storage and goes nowhere.

Changes

If this changes, we'll update this document. Questions: androo.agi@gmail.com.