Skip to content
BlackNode App
Sign in Start workspace

Troubleshooting

The four things that actually go wrong, and how to fix each in under a minute. If none of these match, email hello@blacknode.tech with your slug and we usually reply within four hours.

Magic link didn't arrive

  • Check spam / promotions tab. Sender is noreply@mail.app.supabase.io.
  • Wait 90 seconds. Supabase queues new accounts.
  • Check Supabase rate limit — if you re-requested 5× in a minute, you'll be paused for 5 min.
  • Whitelist *.supabase.io and *.blacknode.tech in your corporate mail.
  • Still nothing? Email hello@blacknode.tech with the address you used.

Workspace stuck on "provisioning"

  • Wait 90 seconds — Docker pulls can be slow on a fresh node.
  • Refresh /workspace. The status chip is polled every 5s.
  • Check provisioner status at app.blacknode.tech/status (coming soon).
  • If > 2 minutes, the provisioner is probably wedged. Email hello@blacknode.tech with your slug. We restart it manually and almost always recover the row without re-provisioning.
Don't click Destroy if your workspace is stuck. Destroy can race with the provisioner and leave the DB row in a half-state. Just email us.

Claude Code asks for login on every prompt

Run claude login once inside the workspace terminal. The OAuth token persists in ~/.claude/, which lives on the persistent volume.

If you're still being asked, your ~/.claude/ isn't writable — check disk usage with df -h /workspace. If 100% full, delete some files in /workspace and retry.

# inside the workspace terminal
claude login
# > opens https://claude.ai/oauth, paste the code back
claude
# > should now run without re-auth

Skills not visible

Confirm the skill directory exists:

ls /opt/skills/
# expected: reelmaker etsy-scrape stealth linkedin-outreach
#           reddit-autopilot email-outreach r2-upload claude-skills

If the directory is empty, the bootstrap script didn't run. Restart the container from the dashboard (Workspace → cog → Restart). Bootstrap re-mounts /opt/skills/ from our base image.

Workspace URL returns 502

  • Container is restarting. Wait 30s, refresh.
  • Caddy is reloading the EU edge config. Usually resolves in < 60s.
  • If > 2 minutes, hit /api/workspace/status from a terminal — it'll tell you the real state.

VS Code says "code-server connection lost"

  • Tab was background > 60 minutes. Refresh. Editor reconnects, unsaved changes are restored from the local cache.
  • You're on a captive Wi-Fi that blocks WebSockets. Switch network.
  • Your container hit its RAM ceiling and OOMed. Check /api/workspace/statusram_used_mb.

Brevo emails not arriving / silently dropped

99% of the time: the to: [{email, name}] shape has an empty name. Brevo silently drops these. Always pass a non-empty name (even if it's the same as the email's local part).

Still stuck?

Email hello@blacknode.tech with your workspace slug, the exact error, and the timestamp. Ondrej replies within 4 hours, usually sooner.
Last updated 2026-05-21 Edit on GitHub soon