Security

Why you can trust SyntaxCue with your API key and your interview audio.

Updated 2026-07-31

SyntaxCue has no backend. There is no SyntaxCue server anywhere in the audio path — audio is captured and transcribed locally on your machine and never leaves it. The app makes exactly three kinds of network connection, all listed in full below: to your own LLM provider (with your key), to LemonSqueezy to check your license, and to GitHub’s public API to see if a newer version exists. There is no analytics, no telemetry, no crash reporting, and nothing phoning home to any server we operate — because we don’t operate one.

At a glance

Network connections the app makes Exactly three: your LLM provider (your key), LemonSqueezy license API, GitHub public releases API. Nothing else.
Audio Captured and transcribed locally (whisper.cpp, on-device), processed in memory, never written to disk, never transmitted.
What leaves your machine Only the text of a transcribed question (and an optional screenshot), sent directly to your own LLM provider. Never anything audio-shaped.
Where your API key lives OS-native secure storage — macOS Keychain / Windows Credential Manager — never a plaintext file.
Analytics / telemetry None. There is no SyntaxCue backend to collect anything.
Code signing — macOS Signed with an Apple Developer ID and notarized by Apple.
Code signing — Windows Not yet signed (disclosed below).
Release checksums SHA-256 published for every release, starting with v0.1.7.
Open source No — the client source is not public today.

Every network connection this app makes

This is the complete list — not examples. You can confirm it yourself with a network monitor while the app runs.

1. Your own LLM provider. Either api.anthropic.com/v1/messages or api.openai.com/v1/chat/completions, depending on which you choose — connected directly from your machine to the provider, using your own API key. This happens only when you actually submit a question. There is no SyntaxCue server in this path; your request goes to Anthropic or OpenAI and nowhere else.

2. LemonSqueezy’s License API. api.lemonsqueezy.com/v1/licenses/activate, /validate, and /deactivate. This happens when you enter a license key, and then roughly once every 30 days for a silent background revalidation. If you’re offline when that check would run, it’s a no-op — it doesn’t block anything or interrupt you.

3. GitHub’s public releases API. api.github.com/repos/ZetBaur/syntaxcue-releases/releases/latest, once per app launch, to check whether a newer version exists. No account, no auth token — it’s the same public endpoint anyone can curl. If a newer version exists, the app shows a note. It never auto-downloads or auto-installs anything.

That’s all of it. No fourth connection, no analytics beacon, no usage statistics, no crash reporter — there is no server of ours for any of that to go to.

What never leaves your machine

Your settings (provider choice, interview context, hotkeys) and license state are stored as plain local JSON files in the OS’s standard per-app data directory. These are preferences, not secrets, which is why they’re not in the Keychain — but your API key, which is a secret, is.

How to verify your download

Every release on github.com/ZetBaur/syntaxcue-releases (starting with v0.1.7) publishes a SHA-256 checksum of the .dmg/installer in that release’s notes. To confirm the file you downloaded matches what was published:

macOS:

shasum -a 256 /path/to/SyntaxCue.dmg

Windows (PowerShell):

Get-FileHash C:\path\to\SyntaxCue-Setup.exe -Algorithm SHA256

Compare the output against the value posted on the GitHub release page. If they match, the file wasn’t corrupted or swapped in transit.

To be precise about what this proves: it confirms the file you have matches what was published under that release tag. It is not, by itself, proof of what’s inside the app — there’s no reproducible-build setup today that would let you independently verify the binary was built from a specific source. It verifies integrity of the download, not the contents of the build.

What we don’t do (yet)

Stated plainly, because vague reassurance would defeat the point of this page:

SyntaxCue is a solo-developer product, and these are the honest current limits of what you can independently verify. The things you can verify today — every network connection, local-only audio, where your key is stored, and the download checksum — are listed above specifically so you can check them yourself.

How to report a security issue

Found something? Email us directly — the same support address used for all feedback, listed on the Contact page. There’s no public issue tracker or bug bounty (it’s a solo-developer product), but security reports are taken seriously and we’d rather hear from you directly.

Is SyntaxCue open source?

No. The client source code is not public today — the main development repo is private, and the only public repo hosts compiled release binaries, not source. So you can't audit the source. What you can verify independently: every network connection the app makes (with a network monitor), that audio stays local, and that your download matches the published SHA-256 checksum.

Do you store my interview audio?

No. Audio is transcribed locally on your machine, processed in memory, and never written to disk or transmitted anywhere. There is no SyntaxCue server for it to go to. The only thing that leaves your machine is the text of a transcribed question, sent directly to your own LLM provider.

What if my license key or API key leaks?

Your API key is stored in your OS's secure storage (Keychain / Credential Manager), not a plaintext file, and clearing it in the app deletes that entry. For your license, you can remove it from a device with one click, and a purchase only activates on up to 3 devices with self-serve deactivation from your account portal. If you believe your provider API key is exposed, rotate it in your OpenAI or Anthropic dashboard.

How do I know the file I downloaded is genuine?

Every release (from v0.1.7) publishes a SHA-256 checksum in its GitHub release notes. Run "shasum -a 256 <file>" on macOS or "Get-FileHash <file> -Algorithm SHA256" in Windows PowerShell and compare against the posted value. A match confirms the file wasn't corrupted or swapped in transit. The macOS build is also Apple-notarized.

Is the Windows build safe if it isn't signed yet?

The SmartScreen notice appears because the build isn't code-signed yet, not because the file is unsafe — signing is planned. You can verify the download yourself with the published SHA-256 checksum before running it, and get past SmartScreen with "More info" then "Run anyway." You don't need to disable any security software to do this.

Get SyntaxCue

Download it, check every claim on this page yourself, and decide from there.

A network monitor and a checksum tool are all you need to check every claim on this page yourself, before or after you buy.