Skip to content

Latest commit

 

History

History
56 lines (42 loc) · 2.45 KB

File metadata and controls

56 lines (42 loc) · 2.45 KB
title Connect a model
description Add a cloud API key, import one from your environment, or point Copse at a local server.

Connect a model

Copse has no account and no hosted backend. The desktop app talks directly to the provider you choose. Read Privacy and data flow and Provider data policies before sending a real repository to a hosted model.

Three ways in

  1. Type a key in Settings → Providers. Copse encrypts it with AES-256-GCM under a data key it keeps in the operating system's keyring — the macOS Keychain, Windows Credential Manager, or a Linux Secret Service keyring.
  2. Scan the environment. First-run setup and Settings both offer an explicit scan of process.env and a fixed list of shell startup files. You see masked previews only; nothing is stored until you import a key.
  3. Connect a local server. Point an OpenAI-compatible endpoint at LM Studio, Ollama, llama.cpp, Jan, vLLM, or similar. That traffic stays on the machine only when the URL you configured is local.

You should see the model picker list at least one model, and a first prompt should stream a reply (or a clear provider error).

If no keyring is available

Copse refuses to persist the key. Prefer installing and unlocking a system keyring or supply the provider key through its environment variable.

For an exceptional Linux/headless setup, start Copse with COPSE_ALLOW_PLAINTEXT_SECRETS=1. Copse will then ask for separate consent on each save before writing base64 plaintext. Base64 is recoverable by anyone who can read ~/.copse/user-data/settings.json; the environment variable does not bypass the confirmation.

Environment-only provider keys are never written to settings.

Attribution Copse always sends

Every provider request includes HTTP-Referer: https://copse.dev/ and X-Title: Copse. Those name the app, not you. They are the same on every install.

OpenRouter traffic defaults to zero-data-retention, non-training upstreams. Direct OpenAI requests send store: false. You can relax the OpenRouter ZDR toggle in Settings; training stays excluded unless you change that too.

Optional on-device PII redaction (Settings, off by default) can redact the text you typed before it leaves the machine. It does not cover repository files or tool output.

If the picker is empty or the key will not save, see Troubleshooting.