Trust

Security

How Gbuild protects your data and your device.

Our approach to security

Gbuild is built local-first. Wherever practical, your data stays on your own device, under your control. We take a defense-in-depth approach: rather than relying on any single layer, we apply overlapping protections so that if one layer is bypassed, the next one holds. This page describes the practices we follow today.

We do not hold certifications such as SOC 2 or ISO 27001 at this stage. Instead, we describe our actual practices honestly so you can evaluate them on their merits. As Gbuild grows, we will pursue independent audits where they add real value.

Local-first architecture

Gbuild is a native macOS desktop application. Your project data, captured conversations, local AI model outputs, and configuration stay on your Mac by default. There is no requirement to sync your work to our servers to use Gbuild.

When cloud processing is needed — for example, to use a larger AI model for a complex request — only the content of that specific request is sent, securely, to the provider that fulfills it. See our AI Transparency page and our Privacy Policy for details on what is sent and when.

Credentials and secrets

API keys, access tokens, and other credentials are stored in your Mac's secure Keychain — not in plain-text files, environment variables, or application databases. The Keychain is managed by macOS and protected by your system password and, on supported hardware, the Secure Enclave.

Gbuild's secret resolver uses a layered approach: it checks for cloud-managed keys, your own keys (bring-your-own-key), project-scoped configuration, and the Keychain, resolving each credential to the most appropriate source. At no point are secret values written to disk in cleartext by Gbuild. Internal representations of resolved secrets mask the value in debug output so that accidental logging cannot expose them.

On-device vault

Gbuild includes an on-device Vault that automatically identifies sensitive files on your Mac — financial documents, identity documents, and medical records — and quarantines them from the rest of the application. Quarantined files are excluded from project indexing, file search, and AI context injection unless you grant explicit, time-scoped access.

Classification uses a two-stage process: fast heuristic pattern matching followed by an optional on-device model confirmation (when available on your hardware). The Vault enforces quarantine at multiple layers, including sandbox profiles for connected integrations, so that even if one access path were bypassed, the others would still prevent exposure.

Dual redaction

Logs, diagnostics, and crash reports pass through dedicated redaction modules before anything is stored or transmitted. Gbuild maintains two independent redaction layers:

  • Rust sidecar redaction — operates on all output from background processes, including agent PTY streams and crash telemetry. Applies both regex-based pattern matching (for known key formats across major providers) and literal-value matching (for credentials loaded from your vault at runtime).
  • Electron renderer redaction — operates on the application layer, catching credentials that may appear in UI-facing logs, console output, or crash reports. Mirrors the same pattern library and adds its own literal-value set refreshed from the secrets vault.

Both layers are maintained in parallel so that a credential missed by one is caught by the other. The pattern library covers API keys and tokens from common providers, bearer tokens, JWTs, and generic key-value credential patterns.

Permission gating

Gbuild respects the macOS permission model. Each device capability — Calendar, Contacts, Reminders, Notes, Mail, Messages, Photos, Spotlight, Camera, Screen Recording, Location, Login Items, and Automation — is gated behind the standard macOS permission prompt. Gbuild probes permission state without triggering prompts, and only requests access when a feature that needs it is used.

You can review and withdraw any permission at any time in macOS System Settings > Privacy & Security. Agent-initiated actions that change your data are off by default and require your explicit approval before they proceed. Sensitive voice commands — such as spawning processes, resetting state, or committing code — are routed through a confirmation gate that displays what was heard and waits for you to confirm before acting.

Encrypted connections

All network communication between Gbuild and external services uses encrypted connections (TLS). This includes cloud AI requests routed through Gbuild's own gateway, authentication flows, connected-service APIs, and diagnostic telemetry (when you opt in). We do not transmit credentials or request content over unencrypted channels.

Defense in depth

No single measure is sufficient on its own. Gbuild layers protections so that a failure in one area does not compromise the whole:

  • Credentials in the Keychain, not plain files
  • Sensitive files quarantined by the Vault, enforced at multiple access points
  • Dual redaction (Rust + Electron) for logs and diagnostics
  • Per-capability macOS permission gating
  • Confirmation gates for consequential agent actions
  • Encrypted connections for all external communication
  • Diagnostics off by default in the shipped product
  • Local-first processing wherever the task allows

We continuously review these layers and add new ones as the product evolves. Security is never finished — it is ongoing work.

Responsible disclosure

If you discover a security vulnerability in Gbuild, please report it to [email protected] with enough detail for us to understand and reproduce the issue. We take every report seriously and will acknowledge it as quickly as we can.

We ask that you give us a reasonable window to investigate and address the issue before disclosing it publicly. We will not take legal action against researchers who report in good faith and follow responsible disclosure practices.

Questions

For security questions, email [email protected]. For privacy questions, see our Privacy Policy or email [email protected].