> ## Documentation Index
> Fetch the complete documentation index at: https://docs.luminy.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Luminy FAQ: Pricing, Privacy, and Common Questions

> Frequently asked questions about Luminy, covering providers, privacy, data storage, context limits, tool permissions, and how the agent loop works.

Here are answers to the questions we hear most often about Luminy — from pricing and privacy to how the agent loop works and what to do when things don't go as expected. If your question isn't here, check the rest of the documentation or open an issue on GitHub.

<AccordionGroup>
  <Accordion title="Is Luminy free?" icon="circle-dollar-to-slot">
    The Luminy desktop app is **free to download and use**. There is no subscription fee for the app itself.

    What you may pay for:

    * **Cloud AI providers** — if you connect Anthropic, OpenAI, Google Gemini, or any other cloud provider, you use your own API key and are billed directly by that provider according to their pricing. Luminy does not mark up or add fees on top of provider costs.
    * **Local models via Ollama** — completely free. Pull any model with `ollama pull` and run it with no per-token cost.

    You can use Luminy entirely for free by running local models through Ollama.
  </Accordion>

  <Accordion title="Where is my data stored?" icon="database">
    All of your data — sessions, messages, settings, model configurations, and API keys — is stored **locally on your machine** in a SQLite database managed by Luminy.

    Nothing is sent to Luminy's servers as part of normal app operation. Your conversations, code, and file contents stay on your device.

    <Note>
      The only data Luminy collects is an anonymous hashed hardware ID used to count unique installations. No personal data, session content, or code is ever transmitted. To opt out entirely, set the environment variable `DO_NOT_TRACK=1` before launching the app.
    </Note>
  </Accordion>

  <Accordion title="Are my API keys safe?" icon="shield-halved">
    Yes. API keys are stored locally in Luminy's SQLite database on your device. They are **never transmitted to Luminy's servers**.

    When you make a request to a cloud provider (Anthropic, OpenAI, etc.), your key is sent directly from your machine to that provider's API — Luminy is not a proxy and does not sit in the middle of that connection.

    To further protect your keys:

    * Do not share your Luminy database file with others.
    * Rotate keys in your provider's dashboard if you suspect they've been compromised.
    * Luminy cannot revoke or rotate keys on your behalf — that must be done through the provider's console.
  </Accordion>

  <Accordion title="Can I use Luminy without an internet connection?" icon="wifi">
    **Yes** — if you use Ollama with locally pulled models, Luminy works entirely offline. The agent can read and write files, run commands, and work through your codebase with no internet connection required.

    Cloud providers (Anthropic, OpenAI, Gemini, etc.) require an active internet connection to reach their APIs.

    To set up fully offline usage:

    1. Install [Ollama](https://ollama.ai/) on your machine.
    2. Pull a coding model while you have internet: `ollama pull qwen2.5-coder:7b`
    3. Once the model is downloaded, you can disconnect and Luminy will continue to work.
  </Accordion>

  <Accordion title="What's the difference between Build, Plan, and Explore modes?" icon="layer-group">
    These are Luminy's three built-in agent modes. They differ in what tools the agent is allowed to use and how it approaches your request.

    | Mode        | What it does                                          | Can write files? | Can run commands? |
    | ----------- | ----------------------------------------------------- | ---------------- | ----------------- |
    | **Build**   | Executes code changes end-to-end                      | ✅ Yes            | ✅ Yes             |
    | **Plan**    | Produces a structured plan or todo list before acting | ❌ No             | ❌ No              |
    | **Explore** | Reads and analyzes files without modifying anything   | ❌ No             | ❌ No              |

    **Build** is the default mode for most tasks. Use **Plan** when you want to review the agent's proposed approach before it starts making changes. Use **Explore** for audits, code reviews, or understanding an unfamiliar codebase without any risk of modification.

    See [Agents](/concepts/agents) for a deeper explanation of each mode.
  </Accordion>

  <Accordion title="How do I stop the agent mid-run?" icon="circle-stop">
    Click the **red Stop button** in the chat input area. It appears in place of the send button while the agent is running.

    Clicking Stop sends a cancellation signal. The agent finishes its current in-flight operation (e.g., if it's mid-file-write, it completes that write) and then halts. The partial run is preserved in the session history.

    You can resume, rephrase, or fork from that point.
  </Accordion>

  <Accordion title="Can the agent access files outside my project folder?" icon="folder-open">
    By default, the agent operates within the **project folder you've added to Luminy**. It uses tools like `read_file`, `list_dir`, `edit_file`, and `grep` scoped to that directory.

    The agent can also access files you **explicitly share** by:

    * Attaching a file directly to a message
    * Mentioning a file path outside the project (the agent can attempt to read it if your OS permissions allow)

    For security, we recommend adding only the project folders you want the agent to work with and keeping sensitive directories out of the project list.
  </Accordion>

  <Accordion title="Does Luminy support images and screenshots?" icon="image">
    Yes. You can **attach screenshots or images** to any message. The agent uses a vision tool to analyze the image and reason about what it shows — useful for sharing UI screenshots, error dialogs, design mockups, or diagrams.

    To attach an image, click the attachment icon in the chat input area or drag and drop an image file into the chat.

    <Note>
      Vision support depends on the model you're using. Cloud models like Claude 3.5 Sonnet, GPT-4o, and Gemini 2.0 Flash all support vision. Many local Ollama models do not. Check your model's documentation if you're unsure.
    </Note>
  </Accordion>

  <Accordion title="How do I update Luminy?" icon="arrow-up-from-bracket">
    Luminy checks for updates automatically in the background. When a new version is available, you'll see an **update notification** in the app (typically a badge or banner near the settings area).

    Click the notification to install the update. The app will restart briefly to apply it.

    You don't need to manually download or reinstall — the updater handles everything. If you've dismissed a notification and want to check manually, look in **Settings → About** for the current version and an option to check for updates.
  </Accordion>

  <Accordion title="What programming languages does code indexing support?" icon="code">
    Luminy's symbol-level code indexing supports:

    **Python**, **JavaScript**, **TypeScript**, **Rust**, **Go**, **Java**, **C++**, **C#**

    For these languages, the agent has symbol-aware understanding of your codebase — it can find function definitions, trace call hierarchies, and navigate imports with precision.

    **All other file types** (Ruby, PHP, Swift, Kotlin, Markdown, JSON, YAML, etc.) can still be read and modified by the agent — they just don't get symbol-level indexing. The agent uses full-text search and direct file reads for those languages instead.
  </Accordion>

  <Accordion title="What is session forking?" icon="code-branch">
    Forking creates a **copy of your session** branching from a specific message. The fork is an independent session that starts from that message — you can take it in a completely different direction without affecting the original conversation.

    Forking is useful when:

    * You want to try a different approach to the same problem without losing your current progress
    * You want to create a clean checkpoint before a risky operation (e.g., a large refactor)
    * Your context window is filling up and you want to start fresh from a recent stable state

    To fork: hover over any completed assistant message in the chat, click the **Fork** icon, and a new session opens from that point.

    See [Sessions](/concepts/sessions) for full details on forking and session management.
  </Accordion>

  <Accordion title="Can I use multiple AI providers at the same time?" icon="shuffle">
    You can have **different sessions using different providers** simultaneously — for example, one session using Claude 3.5 Sonnet and another using a local Ollama model. Each session uses exactly one model at a time, selected via the model picker at the bottom of the chat input.

    Within a single session, you cannot mix providers mid-conversation. If you want to switch models, you can:

    * Change the model in the model picker (takes effect on your next message in that session)
    * Fork the session and select a different model in the new fork

    All provider API keys are configured in **Settings → Providers**.
  </Accordion>
</AccordionGroup>
