THESIS docs
v1.0.0
Live demo Get help
● Ship · Fixes

Troubleshooting
errors and their fixes.

Messages you may see, what they mean and what to do, grouped by where they appear. Tip: paste the exact error into the search box.

01Install and build

"pnpm server" does nothing

pnpm has a built-in command called server, which runs instead of the script. Use pnpm run server, after loading .env with set -a && . ./.env && set +a (Start the server).

better-sqlite3 fails to install

It is optional. Either install a C++ toolchain (Xcode Command Line Tools on macOS, build-essential and Python on Linux) and run pnpm install again, or skip it and set DATABASE_URL to a Postgres database.

Build stops with "vendor/mikodes-admin/ui is missing"

The vendored admin console was deleted or not unzipped. Restore vendor/mikodes-admin/ from the original package.

Node version error

Use Node 22.12 or newer: node --version. With nvm: nvm install 22 && nvm use 22.

Landing page blank after editing index.html

The landing has one small inline script that the security policy allows by its hash (server/csp.ts, vercel.json). If you change that script, update the hash in both files; pnpm test tells you when they disagree. Editing the title, meta tags or text does not affect it.

02Admin

/admin answers 503, or the log says "ADMIN_SECRET_KEY is not set"

The server started without ADMIN_SECRET_KEY. The desk still runs on default settings. Set the variable and restart (Vercel: redeploy). Remember that pnpm dev and the Node server do not read .env by themselves.

I cannot find the setup code

It is printed only while no owner exists, once per start. Restart the server (or, on Vercel, open /admin and look in the function logs for setup code).

Admin works locally but not on Vercel

On Vercel the admin needs DATABASE_URL. Without it the function has no admin.

Stored keys stopped working after a move

ADMIN_SECRET_KEY changed. Put the old value back, or enter the Anthropic key again under Integrations.

Status: "stats file in /tmp: does not survive cold starts"

On Vercel, connect a Blob store (how).

Status: "Every saved value is valid for the desk" fails

A value passed the admin's check but not the desk's stricter schema (length, whole number, address or ticker shape). The desk uses the default for that field until you fix it; the check's detail names the field.

03Desk

"AI (off)" or "AI chart reading is off"

Either AI is switched off in the admin, or no key is set. Add the key (how) and check Status → Anthropic API key accepted.

Chart reading answers with a limit or quota message

A visitor hit the hourly limit, the desk hit its daily cap, or (with plans on) a daily quota. Raise the limits under AI chart reading or Plans.

Testnet and mainnet are disabled

For visitors from a blocked country, or because the trading switch is off. Check Admin → Access and Trading.

Live is locked

The rules have not reached the minimum robustness grade (Admin → Robustness lab). Paper runs are always available.

Connect wallet does nothing

No browser wallet is installed or it is not injecting window.ethereum in this browser.

Telegram alerts fail

The desk shows Telegram's answer in plain words: 401/404 means the bot token is wrong; "chat not found" means the chat id is wrong or you have not sent /start to the bot; 403 means the bot cannot write to that chat.

"Price feed silent for more than 2 minutes"

The Hyperliquid websocket stopped delivering. Check the connection; stops and targets already sent stay on the exchange.