Skip to content

Troubleshooting

The problems users actually hit, and what fixes them. AI-side first (it’s where most questions land), then pointers for everything else.

Test returns Offline.

  • For cloud providers: usually an invalid API key, or a key with insufficient permissions. Verify on the provider’s dashboard.
  • For local providers: the server isn’t running. Start it from the terminal.
  • Check the URL doesn’t have a typo. For the Ollama (native) preset the default is http://localhost:11434 — no /v1. For a generic OpenAI-compatible provider (LM Studio, llama.cpp’s own server, vLLM) the URL usually needs the /v1 suffix — LM Studio’s default is http://localhost:1234/v1.

“The AI provider can’t be reached” on a long answer, while short ones work.

  • The answer took longer than the provider’s Timeout (seconds). Raise it: AI page → the provider’s Edit. The built-in provider’s is 900 seconds; a local model thinking at High can need several minutes.

Local model is very slow.

  • Most likely you don’t have enough RAM. A 7B model wants ~8 GB free; a 13B model wants ~16 GB. Try a smaller model.
  • A GPU helps enormously. CPU-only inference is feasible but slow.

The model doesn’t return useful results.

  • Small local models (under 7B parameters) may not be good enough for critique or entity sweep. Try a larger model.
  • Some quantizations are noticeably worse than others. Try a higher-quality quant (Q5_K_M or Q6_K rather than Q4_K_S).
  • For writing tasks, larger context windows help. Check that your model has at least 8K context.

OpenAI is charging me unexpectedly.

  • Check Settings → AI Usage for the breakdown by feature.
  • The biggest spenders are usually: critique on long chapters, and “Ask the book” if auto-rebuild RAG is on.
  • Pin expensive features to cheaper models or local ones.

An AI call seems hung — should I wait or give up?

  • Open the AI task panel from the sparkle chip in the title bar (see Watching AI calls).
  • A live (green) freshness dot means tokens are still arriving; trust the wait, especially for big analysis features.
  • A stalling (gold) dot means no tokens in a few seconds; usually still recoverable.
  • A stuck (red) dot means nothing has arrived in 10+ seconds. Hit Cancel and try a different model.

A model refuses a thinking / reasoning request.

  • The error you see is the provider’s own message, with one sentence naming the fix: turn Thinking off on that feature’s preset, or point the preset at a model that can think. Nothing is filtered or silently retried — see Models for how the Thinking control resolves.

“The answer was cut off.”

  • The model ran out of room before it finished, so the run is marked failed rather than handing you half an answer. A half answer is worst for the analysis tools: thread extraction would have read it as “nothing found”.
  • Two causes. The feature’s preset has a Max tok cap and the answer hit it: raise the number or clear the box (0 = no limit). Or the chapter sent was too long for the model’s context: try a model with a larger context, or run the feature on a shorter chapter. Thinking counts against both, because the hidden reasoning is part of the answer.

“Can’t reach the JustWrite server.” The desktop app starts its own server; when that start fails, this page says why, if it knows:

  • “Another JustWrite server is using this data folder (…) — stop it first.” — another JustWrite server, such as one you started yourself on another port (Headless access), has the same data folder open. Stop it, then press Retry.
  • “Port 17495 is in use by another program — close that program, then press Retry.” — another program holds JustWrite’s port.
  • “Another person signed in to this computer has the app open, on port 17495…” — someone else signed in to this computer is running JustWrite, and only one copy can run at a time. They quit theirs from its tray icon; then press Retry.
  • “Windows has reserved port 17495 for another use (Hyper-V, WSL or Docker)…” — Windows keeps that port for one of those tools, so the desktop app can’t start its server there. You can still run the server yourself on another port with --port and open it in a browser (Headless access).
  • “Its server stopped as it started: …” — the server’s own error follows, such as a database it couldn’t open or a data folder it couldn’t use (Storage & engine).

Retry starts the server again.