---
title: "Troubleshooting"
description: "Empty store, missing console panels, unreadable turns, unpriced spend, labelling refused."
---

## `assay: command not found`

The installer put the binary in `/usr/local/bin` or `~/.local/bin`. Put that directory on `PATH`. Confirm with `assay --version`.

## `database not found`

Read verbs never create a store. Run `assay init`, then `assay capture …`, or pass `--db` / `--pg` at the store you actually use.

`--db` and `--pg` together are an error. Assay will not guess.

## Empty dashboard / empty `show`

Nothing is captured yet, or you are pointed at a different store than the sweep writes.

Check `assay --version`, the config file `db` path, and that `capture` roots exist.

## Session list exists, timeline is unreadable

The content key is missing, wrong, or the principal was shredded.

Default key: `~/.config/assay/transcript.key`. Pass `--key-file`. Shredded text is `[shredded]`, not an empty message.

## Search tab missing or a sentence instead of a box

Search needs the index **and** the content key. Capture builds the index. Old stores need `assay search backfill`.

Tool output is not indexed. A command you ran in a tool call will not hit. Search messages and reasoning.

## Products all look like folder names

There is no `products.groups` map. That is valid. Add groups when two folders are one product. See [Products](/products).

A component in two groups fails config load on purpose.

## `labelling on` refused

No harness CLI on `PATH` and no `labelling.api` in config. Assay will not buy a second model. Install a driver or skip labelling (observability path).

## Unpriced share on every total

The model is not in the price table. That is honest. `assay pricing check` names which. You may **add** a local rate. You may not override a shipped one. See [Pricing](/pricing).

## Dashboard will not bind my LAN IP

Loopback is the security boundary. A routable bind needs `--unsafe-bind` and means unauthenticated read of spend and conversations. Do not do that on a shared network. Embed behind your own login instead: [Embed](/embed).

## Share button missing

Sharing is off until **both** `ASSAY_SHARE_URL` and `ASSAY_SHARE_TOKEN` are set. One alone is refused. See [Share](/share).

## Shred reported failure

Treat it as not done. Partial erasure is a failure. Legacy rows sealed without a per-principal key cannot be key-shredded. The command says so.

## Config from a newer Assay broke an older binary

Upgrade the binary, or remove the unknown section. Default: unknown **top-level** sections warn and are ignored. `--strict-config` makes that an error.

## Still stuck

`assay <command> --help` is the flag authority for the binary you actually run. `assay --version` is the version these pages claim to match (**0.48.0**).
