Orkas Orkas
Home Security & Trust
Security & Trust

Your keys, your data,
on your machine.

Orkas is a local-first, open-source desktop client. Your work lives on your machine by default. With your own keys, your API keys and model traffic never go through Orkas — keys stay in an encrypted local config, and model calls go straight to your own provider, fully auditable. Official models run through Orkas's managed model service.

AES-256-GCM at rest Never proxied 100% open source
API key lifecycle

What happens to a key, from paste to call

You bring your own model key. Here is every step it takes — and where it never goes.

1

You add it

Paste an API key, or sign in with OAuth, in Settings on your own device.

on-device
2

Encrypted at rest

It's sealed with authenticated AES-256-GCM through a local secret store before it touches disk.

AES-256-GCM
3

Stored locally

Written to an encrypted config file in your local app directory — excluded from cloud sync.

never synced
4

Used directly

Decrypted in memory only to call your provider's API straight from your machine.

no proxy
How it's stored

The technical details, in the open

Because Orkas is open source, none of this is a claim you have to take on faith — read the code.

AES-256-GCM encryption

Credentials are encrypted with authenticated AES-256-GCM before touching disk, and the GCM auth tag makes tampering detectable. We're candid about scope: this guards against casual disclosure — a backup that runs OCR, a stray log or crash dump, another app reading the folder, a glance in a text editor — not a forensic attacker holding both your disk and the app.

auth-profiles.json · at-rest, tamper-evident

Local config, never synced

With your own keys, they live in your machine-private config directory. They're explicitly excluded from cloud sync and from the "clear cache" path — they never cross the wire.

<user>/local/config/ · sync-excluded

OAuth or API key

Connect via OAuth where supported, or paste a raw API key. Either way the credential is yours — Orkas stores it, then steps out of the request path.

oauth · api_key · masked in UI

Auditable & redacted in logs

The codebase is open. Logs redact key and token fields by name, so a stray debug log never leaks a secret.

open source · log redaction
Data boundary

What stays vs. what leaves

Stays on your machine by default

  • API keys & OAuth tokens (encrypted, never synced)
  • Chat history, plans, generated files
  • Agent configs, skills, knowledge bases
  • Personal memory (preferences & facts)

These stay local unless you turn on cloud sync — then the data you sync is stored on Orkas servers so it's available across your devices.

Leaves only on your command

  • The API call to your own LLM provider, made directly
  • Connector calls you explicitly authorize (GitHub, Notion…)
  • If you turn on cloud sync, your synced data is stored on Orkas servers
  • Limited, privacy-respecting usage analytics to help improve the product
  • With your own keys, your keys and model traffic never touch Orkas servers — no proxy, no key telemetry
You stay in control

Open by design — read before you run

Agents are capable and run autonomously on your machine. You stay in control because nothing is a black box: read exactly what any agent or skill does before you install it, and it only ever has the access you grant the app.

Read before you install

Every agent and skill is plain, open source. Read precisely what it will do before you bring it in.

Runs with the access you grant

Agents execute locally on your machine, using only the permissions you give the app — nothing reaches the cloud on its own.

Confirm on destructive actions

Deleting an agent, app, or memory asks you to confirm first — so a hard-to-undo action is never a single misclick.

Loved by builders. Auditable by everyone. Yours forever.
100%
Open source & auditable
0
Your own keys or their model traffic to our servers
AES-256
Encryption at rest
2
macOS · Windows
FAQ

Security questions, answered

Where does Orkas store my API keys?

On your own machine only, in an encrypted local config file (auth-profiles.json under your local config directory). With your own keys, they're never uploaded to Orkas servers and are excluded from cloud sync.

Are my API keys encrypted?

Yes — encrypted at rest with authenticated AES-256-GCM through a local secret store before it's written to disk, and the GCM auth tag makes tampering detectable. We're candid about the scope: this protects against casual disclosure — a config file landing in a cloud backup that runs OCR, a stray log or crash dump, another app reading the folder, a glance in a text editor. It is not hardware- or keychain-bound, and it does not defend against an attacker who holds both your disk and the app binary. Because the code is open, you can read exactly how it works.

Does Orkas proxy my model traffic?

With your own keys, no — Orkas calls your chosen LLM provider directly from your machine using your key, and your prompts, completions, and keys are never routed through, stored by, or wrapped by Orkas servers. Official models run through Orkas's managed model service.

Does any of my data go to Orkas's servers?

With your own keys, your API keys and model traffic never do — keys stay in a local config that isn't synced, and model calls go straight to your provider. Official models run through Orkas's managed model service. Two other things can involve Orkas: if you turn on cloud sync, your synced data is stored on Orkas servers so it's available across devices; and the free edition sends limited, privacy-respecting usage analytics to help improve the product. Neither uploads your keys or proxies your model calls.

Can I review what an agent is about to do?

Orkas provides three local-access modes: workspace approval, all-files approval (the default), and all-files auto. In approval modes, sensitive local file or shell operations ask for confirmation, while routine operations may run without a prompt; all-files auto does not prompt for sensitive operations. Some destructive in-app actions have separate confirmation dialogs.

What if I stop using Orkas — can I take my keys and data?

Your keys, chats, knowledge bases, and memory are local files in your app directory; uninstalling Orkas leaves them on disk for you to keep or delete. If you used cloud sync, a copy of your synced data also sits on Orkas servers — you can stop syncing and remove it.

Put Orkas's security boundaries on your own machine

Download Orkas, choose managed official models or your own provider, and keep control of local data, credentials, permissions, and confirmations.