# Troubleshooting cwdio

> What each cwdio hiccup means and what to do: SmartScreen, the “didn't close properly” dialog, where the logs are, an unknown update state, reporting bugs.

- Canonical: https://cwdio.com/docs/troubleshooting/
- Updated: 2026-08-15
- Product: Cwdio File Manager (cwdio) — https://cwdio.com

Most of what goes wrong with cwdio is one of the situations below, and most of them are cwdio being
careful rather than broken. Each entry says what you are seeing, why, and what to do.

## "Windows protected your PC" when I run it

SmartScreen weighs two things: who signed the file, and how many people have run it. cwdio is code-signed —
click **More info** and Windows names the verified publisher, *Ihor Melnyk* — but each new release starts its
install count at zero, so the prompt can still appear until enough people have run that build. It is not a
malware detection. Click **More info**, then **Run anyway** — once per file. If it appears again, it is a different file (a new version). If you would rather verify first, every
release publishes `SHA256SUMS.txt`; see [Install and update](/docs/install-and-update/).

## "It looks like the app didn't close properly last time"

cwdio writes a small marker file when it starts and removes it on a clean shutdown. If the marker is still
there at the next launch, the previous run ended abruptly — a hard crash, a force-kill, or power loss. The
dialog that reports this is **non-blocking and opt-in**: *Send report* opens a pre-filled GitHub issue
carrying the redacted tail of `main.log` (your home directory becomes `~`, user-profile path segments become
`<user>`, and email addresses are removed); *Open logs* opens the log folder; *Dismiss* closes it. It shows
once per incident and never touches your files.

If you see it on the very first launch after installing, that is a known bug in 0.1.0 through 0.1.2 — the
install step itself left the marker behind — and it is fixed in the release that follows. The dialog is
harmless; dismiss it.

## Where the logs are

`%AppData%\@cwdio\desktop\logs\` holds one file per process:

| File | What is in it |
| --- | --- |
| `main.log` | The Electron main process: startup, windows, updates, the crash marker, single-instance handoffs |
| `services.log` | The services host: listing, copy/move/delete, search, remote connections, git. **A failed file operation is diagnosable here**, with the full error and cause |
| `plugins.log` | The plugin host |

Help ▸ About ▸ **Open logs** opens the folder. The logs are size-bounded and never grow without limit.

## Something failed and then everything came back on its own

File work runs in a separate services host process. If that process dies, cwdio restarts it with a trace
in `services.log` and carries on; if it keeps dying, cwdio gives up restarting and says so in the log rather
than looping forever. In either case the main window stays up. Check `services.log` for what happened; a
bug report with those lines is the most useful thing you can send.

## The terminal opens but not with the shell I expected

cwdio discovers the shells you have the way Windows Terminal does — PowerShell, Windows PowerShell,
Command Prompt, one profile per WSL distribution, Git Bash, Visual Studio developer shells, and Windows
Terminal's own profiles. Discovery is best-effort: if a source cannot be read you get the base three rather
than an error. Use the `▾` picker on the terminal tab bar to choose a profile, and check that the shell
launches from Windows Terminal itself. Details: [terminal sync](/features/terminal-sync/).

## Help ▸ Check for updates says "unknown"

cwdio could not read the current release information — you are offline, the request returned a 404, or the
manifest was malformed. It is reported as a **warning on purpose**, never as "up to date": an app that
cannot reach the network cannot honestly claim you are current. Try again when online. The check itself
never blocks anything.

## The portable build never updates

By design. The portable zip changes nothing on disk, so it cannot replace itself. It shows a passive
notice when a newer version exists and Help ▸ Check for updates works any time; to update, download the new
zip and replace the folder. Your settings are outside the folder and carry over. If you want automatic
updates, use the installer build. See [Install and update](/docs/install-and-update/).

## The Explorer right-click entry is missing

*Open in Cwdio File Manager* is registered per user (no administrator rights) on folders, folder
backgrounds and drives.

- **On Windows 11** it lives under **Show more options** (the classic menu), not in the compact top-level
  menu — a top-level entry requires a signed package, which comes with code signing.
- **On the portable build** it is opt-in: Tools ▸ Explorer integration.
- **On the installer build** it is registered at install; if it is gone, run the toggle under Tools once.

## Two windows, or the wrong one, opened

A second `cwdio` launch — from Explorer's menu, a shortcut, or `cwdio <path>` — is handed to the running
instance. By default a path opens in the existing window's left panel; Tools ▸ *Open folders in a new
window* changes that. Explicit flags win: `cwdio -n <path>` always opens a new window and `cwdio -r <path>`
always reuses the running one. A bare launch with no path opens a new window, which is the Windows
taskbar's "new instance" gesture behaving as expected.

## Reporting a bug

1. Help ▸ About ▸ **Report an issue** — opens a GitHub issue pre-filled with your cwdio version and platform.
2. Say what you did, what happened, and what you expected.
3. For a file-operation problem, paste the relevant lines from `services.log`; for a startup or window
   problem, from `main.log`. Both are under `%AppData%\@cwdio\desktop\logs`.

Issues live at [github.com/cwdio/cwdio/issues](https://github.com/cwdio/cwdio/issues). The source is
private but the tracker is public, and every report is read.

## Related

- [Install and update](/docs/install-and-update/)
- [Security and privacy](/security/) — what the app does and does not send.
- [FAQ](/faq/)

## Frequently asked questions

**cwdio says the app didn't close properly last time. Did I lose anything?** No files are touched by that dialog. It means the previous run ended without a clean shutdown — a crash, a forced kill, or power loss. It offers Send report (a pre-filled GitHub issue with a redacted tail of the log), Open logs, or Dismiss, appears once per incident, and never blocks you.

**Where are the log files?** Under %AppData%\@cwdio\desktop\logs — main.log, services.log and plugins.log, one per process. Help ▸ About has an Open logs button that opens the folder. The services log is where a failed file operation is diagnosable in full.

**Are crash reports sent automatically?** No. Reporting is opt-in, one dialog per incident. When you choose Send report, cwdio opens a pre-filled GitHub issue in your browser with the tail of main.log, after replacing your home directory with ~, user-profile path segments with <user>, and any email addresses. Nothing is sent without you seeing it.

**How do I report a bug well?** Help ▸ About ▸ Report an issue opens a GitHub issue pre-filled with your cwdio version and platform. Add what you did, what happened, what you expected, and — for a file-operation problem — the relevant lines from services.log. Bug reports live at github.com/cwdio/cwdio/issues.
