Docs menu

Error codes

When something goes wrong, Secretbase shows a code like HB-KEYS-001 and one sentence that says what happened and what to do. Words in angle brackets are filled in with your app's details when it happens.

Keys

  • HB-KEYS-001 Your app needs <NAME>, but it isn't set. Add it in Settings → Keys.
  • HB-KEYS-002 <NAME> is private but appears in website code (<file> line <n>).
  • HB-KEYS-004 <NAME> is too short to hide in logs. Use a longer value if it is secret.
  • HB-KEYS-005 <NAME> is set by Secretbase itself; pick another name.
  • HB-KEYS-006 secretbase.json lists <what>, which isn't a key name (letters, digits and _). Nothing was published.
  • HB-KEYS-007 The new version needs keys that aren't set yet: <names>. Set each with secretbase keys set <NAME> --app <app>; it goes live by itself once all are set.
  • HB-KEYS-008 <app> has no key <NAME>. Nothing changed.

Building

  • HB-BUILD-001 <cmd> failed: package <pkg>@<ver> not found.
  • HB-BUILD-002 The build failed: <file> imports <path>, which doesn't exist.
  • HB-BUILD-003 The build ran out of memory (<limit> limit).
  • HB-BUILD-005 This folder is too big to upload here (<limit>). Publish it with secretbase publish <folder> instead.
  • HB-BUILD-006 The upload contained something Secretbase doesn't accept (<reason>: <name>). Nothing was kept.
  • HB-BUILD-007 This computer is low on disk space, so the upload was stopped. Free some space and try again.
  • HB-BUILD-008 You have too many uploads waiting (<n>). Publish or remove one first.
  • HB-BUILD-009 The upload stopped arriving, so it was cancelled. Try again.
  • HB-BUILD-010 This app's files are bigger than its 4 GB limit (<size>). Remove large files from the project, or ask your AI tool to.
  • HB-BUILD-011 The build used more than its 4 GB of disk space. Remove large files or dependencies, or ask your AI tool to.
  • HB-BUILD-012 Secretbase can't tell which page to show. Drop one page, or a folder with an index.html.
  • HB-BUILD-013 You already have an app called <name> (from <source>). Update it (same app, address, password, keys and database), or publish this as new.
  • HB-BUILD-014 The finished app is too big to publish: <files> files, <size> (the limit is 20,000 files and 2 GB). Installed packages count too. Remove files or packages it doesn't need, or ask your AI tool to.
  • HB-BUILD-015 The build finished but made nothing in <folder>. Make the build write its files there, or ask your AI tool to.
  • HB-BUILD-016 Installing the app's packages failed. The last lines of its log say why: run secretbase logs <name> or open Logs in the dashboard.
  • HB-BUILD-017 Building the app failed. The last lines of its log say why: run secretbase logs <name> or open Logs in the dashboard.
  • HB-BUILD-018 The Dockerfile can't be used: <reason>. Fix it, or ask your AI tool to.
  • HB-BUILD-019 The Dockerfile asks for its own builder (# syntax= on line <line>). Secretbase builds with its own: remove that line.
  • HB-BUILD-020 Line <line> of the Dockerfile downloads <src> with ADD, which Secretbase doesn't allow. Download it in a RUN step instead, for example <how>.
  • HB-BUILD-021 The image <image> (line <line> of the Dockerfile) can't be used: <reason>. Secretbase builds only from public images.
  • HB-BUILD-022 A step of the Dockerfile failed: <step>. The last lines of its log say why: run secretbase logs <name> or open Logs in the dashboard.
  • HB-BUILD-023 Building the app took longer than 30 minutes, so it was stopped. Make the build faster, or ask your AI tool to.
  • HB-BUILD-024 Secretbase's image builder couldn't start. Try again in a minute; if it keeps failing, reinstall Secretbase.
  • HB-BUILD-026 <name> has no code yet, so there is nothing to publish. Publish its code into it: secretbase publish <folder> --app <app>.
  • HB-BUILD-027 There are already 2 uploads in progress from this token. Wait for one to finish, or try again in an hour.

Detecting

  • HB-DETECT-002 Secretbase can't tell what this project is. Found: <files>. Secretbase hosts websites, web apps & mobile apps.
  • HB-DETECT-003 This Docker Compose project (found: <files>) uses <what>, which Secretbase doesn't run. Secretbase runs one web service from a compose file, with Postgres or Redis next to it.
  • HB-DETECT-004 Secretbase can't tell how to start this <what>: <why>. Add <fix>, or ask your AI tool to.
  • HB-DETECT-005 secretbase.json's job <what> isn't valid: <why>. Nothing was published.
  • HB-DETECT-006 secretbase.json's <what> isn't valid: <why>. Nothing was published.

Starting

  • HB-START-001 Your app isn't listening on a port Secretbase can reach. Secretbase set PORT=<port>; your app listened on nothing.
  • HB-START-002 Your app only accepts connections from itself (127.0.0.1). It needs 0.0.0.0 (Secretbase sets HOST=0.0.0.0).
  • HB-START-003 Your app keeps crashing: it stopped 5 times in 10 minutes. Secretbase starts it again every 5 minutes; its last log lines are below.
  • HB-START-004 Your app tried to write <path>, but its folder is read-only. Turn on Storage and save files under /data.
  • HB-START-006 The earlier release (<release>) didn't answer, so Secretbase didn't go back to it. The release that was live keeps running.
  • HB-START-007 Your app is running and listening on port <port>, but it didn't answer a web request at / within 30 seconds (<what>). Its last log lines are below.
  • HB-START-008 Your app's worker <worker> stopped right after it started (<what>). Its last log lines are below.
  • HB-START-009 Your Procfile's release: line (<cmd>) <what>, so <outcome>. Its last lines are below.
  • HB-START-010 Your app stopped right after it started, before it listened on a port. Its last log lines are below.

Health check

  • HB-HEALTH-001 Your app didn't respond at <path> within 30 seconds.

Database

  • HB-DATABASE-001 The database backup before this release failed: <reason>. The release wasn't started.
  • HB-DATABASE-005 Your app refused Secretbase's database connection: it requires a certificate it trusts. Secretbase's database certificate is at /run/secretbase/db-ca.pem.
  • HB-DATABASE-006 Your app's database (<service>) keeps crashing: it stopped 5 times in 10 minutes. Secretbase starts it again every 5 minutes; its last log lines are below.
  • HB-DATABASE-007 You have a key named <NAME>, and Secretbase sets <NAME> for <service>. Remove your key first, then turn <service> on.
  • HB-DATABASE-008 Your app's database (<service>) didn't start, so nothing was changed. Its last log lines are below.
  • HB-DATABASE-009 Secretbase couldn't get the <service> image: <reason>. Nothing was changed; try again later.
  • HB-DATABASE-010 This project is a website, so it has no app to use <service> on its own. A website gets a database with its Supabase features: secretbase <command>.
  • HB-DATABASE-011 <app> has no Postgres database turned on, so there is nothing to read. Turn it on with secretbase database <app> postgres on.
  • HB-DATABASE-012 The database didn't run the query: <reason>. Nothing was changed.
  • HB-DATABASE-013 <name> has a database, but what you published is a plain website with no server to use it, so nothing was published. Publish the app's code with its server, or turn the database off: secretbase database <app> <service> off.
  • HB-DATABASE-014 <name>'s database uses PostGIS, so it stays. To stop the database, run secretbase database <name> postgres off. Nothing changed.
  • HB-DATABASE-015 <app> has no Postgres database running, so there is nothing to connect to. Turn it on with secretbase database <app> postgres on; it runs while the app is online.
  • HB-DATABASE-016 <app> already has 5 connections open through secretbase db connect, the most it takes. Close one, then try again.
  • HB-DATABASE-017 <name> has no keys while its Supabase features are off. Turn them on: secretbase <command>.
  • HB-DATABASE-018 <name> has no sign-in while its Supabase features are off. Turn them on: secretbase <command>.
  • HB-DATABASE-019 That isn't a web address sign-in can send people back to: <url>. Type one like http://localhost:3000 or https://example.com/welcome.
  • HB-DATABASE-020 <name> already has 50 redirects, the most it keeps. Remove one first: secretbase <command>.
  • HB-DATABASE-021 <name> has no file storage while its Supabase features are off. Turn them on: secretbase <command>.
  • HB-DATABASE-022 <name> has no live updates while its Supabase features are off. Turn them on: secretbase <command>.
  • HB-DATABASE-023 <name> has no functions while its Supabase features are off. Turn them on: secretbase <command>.
  • HB-DATABASE-024 <name> has no Studio while its Supabase features are off. Turn them on: secretbase <command>.
  • HB-DATABASE-025 <app> already has 64 connections open to its Studio, the most it takes. Close a few of its browser tabs, then try again.
  • HB-DATABASE-026 <name>'s Supabase features are off, and an import goes into them. Turn them on first: secretbase <command>.
  • HB-DATABASE-027 That isn't a Supabase connection string. In your Supabase project: Connect, then copy the Session pooler string (postgresql://postgres.<ref>:…@…pooler.supabase.com:5432/postgres).
  • HB-DATABASE-028 <name>'s database already has <what>. An import goes only into an empty database: use a new app, or empty this one first.
  • HB-DATABASE-029 Reading the Supabase project stopped: <why>. Nothing here was changed.
  • HB-DATABASE-030 Loading the Supabase project's database into <name> stopped: <why>. Its tables and users are as they were; files already copied stay, and running the import again finishes it.
  • HB-DATABASE-031 Copying the Supabase project's files into <name> stopped: <why>. Its database wasn't changed; run the import again to finish (the files already copied stay).

Domain

  • HB-DOMAIN-001 <domain> points to <ip>. Change the A record to <edge-ip-1> and add <edge-ip-2>.
  • HB-DOMAIN-002 Cloudflare proxy is on for <domain>. Set it to DNS only.
  • HB-DOMAIN-003 <domain> already has a record Secretbase didn't create (<type> → <value>). Approve replacing it, or change it yourself.
  • HB-DOMAIN-004 Your registrar refused the API key: <registrar message>.
  • HB-DOMAIN-005 Secretbase can't confirm you own <domain>. Add this record: TXT _secretbase-verify = secretbase-verify=<token>.
  • HB-DOMAIN-006 Your domain only allows certificates from <CA>. Add a CAA record for letsencrypt.org.
  • HB-DOMAIN-007 <domain> is connected to another Secretbase account. Adding the ownership record moves it to yours.
  • HB-DOMAIN-008 <domain> isn't a domain name. Type only the name, like example.com: no https://, no slashes, no port.
  • HB-DOMAIN-009 <domain> is already used by another app on this computer. Remove it there first, or use another name.
  • HB-DOMAIN-010 Your own name for the online dashboard goes through Cloudflare. Connect Cloudflare first: secretbase cloudflare connect.
  • HB-DOMAIN-011 Turn on the online dashboard first (secretbase dashboard on), then give it your own name.
  • HB-DOMAIN-012 <domain> is the online dashboard's own name on this computer. Use another name, or take it off there first: secretbase dashboard domain --remove.
  • HB-DOMAIN-013 <domain> isn't under a domain in your Cloudflare account. Use a name under one of the domains you added there.
  • HB-DOMAIN-014 There is nothing to approve for <domain>: Secretbase hasn't found other records there yet. secretbase domain list shows how it is going.
  • HB-DOMAIN-015 Tunnel <tunnel> is still connected (a machine is using it), so its records stay. Nothing changed.
  • HB-DOMAIN-016 There is no tunnel <tunnel> in your Cloudflare account. Nothing changed.
  • HB-DOMAIN-017 Cloudflare isn't connected on this machine, so there is no tunnel to move names from. Connect it first: secretbase cloudflare connect. Nothing changed.
  • HB-DOMAIN-018 Nothing is waiting for approval for <domain>. Nothing changed.
  • HB-DOMAIN-019 <app> has no domain <domain>. secretbase domain list <app> shows its domains. Nothing changed.
  • HB-DOMAIN-020 Not finished: <domain> no longer serves <app>, but its DNS record at Cloudflare couldn't be deleted yet (<reason>). Run secretbase domain remove <app> <domain> again to finish.

Resources

  • HB-RESOURCES-001 Your app is using <pct>% of its <ram> RAM.
  • HB-RESOURCES-002 This computer doesn't have enough memory reserved for another app (<apps> already use <GB>). Take an app offline, then try again.
  • HB-RESOURCES-003 <what> must be between <min> and <max> on this computer.
  • HB-RESOURCES-004 This app already uses <used> of disk. Choose at least that much.
  • HB-RESOURCES-005 This app saves files in /data, and copies can't share them. Keep 1 copy for an app that saves files.
  • HB-RESOURCES-006 A website is plain files: it has no app to run as copies.
  • HB-RESOURCES-007 Make room lasts 1, 6 or 24 hours.
  • HB-RESOURCES-008 Make room is already on for <app>. Switch it off first.
  • HB-RESOURCES-009 An app's priority is priority, normal or background.

Data

  • HB-DATA-001 Your app's data and releases use <used> of its <limit> disk. Delete files it no longer needs from /data, or give it more disk on its Settings tab, under Size.

Network

  • HB-NETWORK-001 This computer can't reach the Edge: outbound port 443 is blocked.
  • HB-NETWORK-002 Secretbase's network protection is missing on this computer. Apps were not started. Restart Secretbase.
  • HB-NETWORK-003 This computer lets outside traffic reach its own loopback addresses (<setting>), so an app could reach services meant to stay private. Apps and builds were not started. Set it to 0.

Machine

  • HB-MACHINE-001 Disk is <pct>% full. New publishes are paused.
  • HB-MACHINE-002 Secretbase isn't running on this computer. Start it with sudo systemctl start secretbase.service.
  • HB-MACHINE-003 Secretbase didn't understand that request. Update secretbase and the Secretbase app.
  • HB-MACHINE-004 Something went wrong inside Secretbase while doing <action>. Show logs has the details.
  • HB-MACHINE-005 There's no earlier release to go back to.
  • HB-MACHINE-011 Publishing is off: <reason>. Run secretbase logs selftest for the details; reinstall to try again.
  • HB-MACHINE-012 This computer has no app sandbox, so Secretbase publishes only ready-made websites here. <folder> needs a build or a server first.
  • HB-MACHINE-013 Publishing from a git address isn't available yet. Clone it into a folder and publish the folder.
  • HB-MACHINE-017 Open the dashboard as yourself, not with sudo: run secretbase open.
  • HB-MACHINE-019 There's no app by that name here that you can publish into: it isn't on this server, or another user made it. secretbase status shows the apps here.
  • HB-MACHINE-020 Another user's app here publishes from this folder, so you can't publish it. secretbase publish --new makes an app of your own from it.
  • HB-MACHINE-021 Only the user who made this app here, or this computer's admin, can let it reach a service on this computer or its network. Nothing changed.
  • HB-MACHINE-022 A host service is an address and a port, like 192.168.1.10:5432: an address of this computer or of another machine on its network, not 127.0.0.1 and not one of Secretbase's own app networks (10.91-10.93). Nothing changed.
  • HB-MACHINE-023 You don't have access to Secretbase on this computer: only its admins do (the secretbase group). An admin adds you with sudo usermod -aG secretbase <user>; then log out and back in.
  • HB-MACHINE-024 There's no app here by that name that you can reach: it isn't on this server, or another user made it. secretbase status shows your apps.
  • HB-MACHINE-025 Pairing with other machines is off on this computer, so nothing was paired. Its admin turns it on at the computer with secretbase machines pairing on.
  • HB-MACHINE-026 Pairing can't be turned off while machines are paired with this computer. Remove each one first with secretbase machines remove <name>, then turn it off.
  • HB-MACHINE-027 Root's uploads are made as this computer's admin, and none was recorded at install, so nothing was uploaded. Install again with --admin <user>, then try again.
  • HB-MACHINE-018 Use a login name such as your first name, not an address. Nothing changed.

Edge

  • HB-EDGE-001 The Edge isn't routing <domain> because the project isn't public yet.
  • HB-EDGE-002 Secretbase's servers can't save changes right now. Your live projects keep working; try again later.
  • HB-EDGE-003 This version of Secretbase is too old for the Edge. Update Secretbase.

Account

  • HB-ACCOUNT-001 This request expired. Ask again.
  • HB-ACCOUNT-002 Your account reached its <limit> limit.
  • HB-ACCOUNT-003 Sign in to Secretbase to get a test link, connect a domain or go public. Preview works without an account.
  • HB-ACCOUNT-004 That code is wrong. Check the email and try again.
  • HB-ACCOUNT-005 Too many sign-in codes. Wait an hour and try again.
  • HB-ACCOUNT-006 This computer is already signed in to another Secretbase account. Sign out there first.

Approval

  • HB-APPROVAL-001 Approving needs a terminal. Run sudo secretbase approve <id> in a terminal, or approve in the Secretbase app.
  • HB-APPROVAL-002 That confirmation code is wrong.
  • HB-APPROVAL-003 This approval was cancelled after 3 wrong codes. Ask again.
  • HB-APPROVAL-004 The approval wasn't confirmed. Ask again to retry.
  • HB-APPROVAL-005 This approval request expired. Ask again.
  • HB-APPROVAL-007 This request was already approved or refused.
  • HB-APPROVAL-008 The online dashboard's password was set with an access token, so requests can't be answered online. Set the password on the computer itself to answer them here.

Front door

  • HB-FRONTDOOR-001 Sign-in to Tailscale isn't finished. Continue in your browser to make your app public.
  • HB-FRONTDOOR-002 Public sharing isn't turned on for your Tailscale account yet. Continue in your browser.
  • HB-FRONTDOOR-003 This computer already has 3 apps on its Tailscale address. Give every app its own address with a Tailscale key: secretbase tailscale-key. Or use your own domain.
  • HB-FRONTDOOR-004 Tailscale couldn't be reached from this computer: <reason>.
  • HB-FRONTDOOR-005 Cloudflare refused Secretbase's access: <cloudflare message>. Connect Cloudflare again.
  • HB-FRONTDOOR-006 <domain> isn't active on Cloudflare yet. Change its nameservers at <registrar> to <ns1> and <ns2>.
  • HB-FRONTDOOR-007 The Cloudflare tunnel can't connect: outbound port 7844 is blocked on this network.
  • HB-FRONTDOOR-009 <domain> can't be reached from the internet on port 443 yet.
  • HB-FRONTDOOR-014 Your address didn't answer from the internet within 15 minutes. Tailscale may still be setting it up; publish again in a few minutes.
  • HB-FRONTDOOR-015 Secretbase couldn't check your public address from this computer, because its network blocks outside DNS. Your app may still be online: open <address> on a phone using mobile data to check.
  • HB-FRONTDOOR-016 Your new address is being published by Tailscale; this can take up to 30 minutes the first time. Secretbase keeps checking and tells you when it's live.
  • HB-FRONTDOOR-017 <name> is published and running on the computer, but it has no public address: the computer already has 3 apps on its Tailscale address. Delete another app to free its address, give every app its own address with a Tailscale key (secretbase tailscale-key), or put it on your own domain: <command>.
  • HB-FRONTDOOR-018 <name>'s own domain isn't live yet, so its Tailscale address is its only public address. Nothing changed.
  • HB-FRONTDOOR-019 <address> isn't one of this computer's own private network addresses. Give one of them with --address, or leave it out to use the one on its main network. Nothing changed.
  • HB-FRONTDOOR-020 This computer has no private network address on its main network, so the apps can't be put on it. Connect it to your network, or give its address with --address. Nothing changed.
  • HB-FRONTDOOR-021 Give --cert and --key together, with the --domain they are for; or leave both out to use Secretbase's own local certificate, for --domain too when it is a name like twin.lab.example. Nothing changed.
  • HB-FRONTDOOR-022 The certificate or key file isn't a PEM certificate and key. Nothing changed.
  • HB-FRONTDOOR-023 The key file doesn't belong to the certificate. Nothing changed.
  • HB-FRONTDOOR-024 The certificate isn't valid now (it ends <date>). Use a current one. Nothing changed.
  • HB-FRONTDOOR-025 The certificate doesn't cover <domain>. Use one issued for <domain>. Nothing changed.
  • HB-FRONTDOOR-026 Secretbase couldn't open port <port> on <address>: another program uses it. Stop that program, or give another address. Nothing changed.
  • HB-FRONTDOOR-027 LAN addresses are off. Turn them on first: secretbase lan on.
  • HB-FRONTDOOR-028 Secretbase has no local certificate authority yet: secretbase lan on without --cert makes one.
  • HB-FRONTDOOR-029 A mount's target is a port on this computer: 127.0.0.1:<port> or [::1]:<port>. Nothing changed.
  • HB-FRONTDOOR-030 <target> is one of Secretbase's own ports, so it can't be mounted. Nothing changed.
  • HB-FRONTDOOR-031 A mount's path starts with / and has letters, digits and . _ ~ - between the slashes, e.g. /globe. Nothing changed.
  • HB-FRONTDOOR-032 <path> overlaps <other>. Choose another path. Nothing changed.
  • HB-FRONTDOOR-033 <app> has no mount at <path>. Nothing changed.

Tokens

  • HB-TOKENS-001 This access token is wrong or was revoked. Make a new one on the computer with secretbase tokens create.
  • HB-TOKENS-002 Too many wrong tries from your address. Wait 15 minutes and try again.
  • HB-TOKENS-003 There is already a token named <name>. Choose another name, or revoke that one first.
  • HB-TOKENS-004 This computer already has 20 access tokens. Revoke one you no longer use first (secretbase tokens list shows them).
  • HB-TOKENS-005 A token name uses letters, digits and . _ - only, 40 at most.
  • HB-TOKENS-006 Make access tokens as yourself, not with sudo: run secretbase tokens create without sudo.
  • HB-TOKENS-007 This access token expired on <date>. Make a new one on the computer with secretbase tokens create.
  • HB-TOKENS-008 Only an admin token can last forever. Choose an expiry (1d, 7d, 30d or 90d), or add --scope admin.
  • HB-TOKENS-009 This token's scope is <scope>; this needs <needed>. Make a token for it on the computer: secretbase tokens create --scope <needed>.
  • HB-TOKENS-010 This token can only work on <apps>.
  • HB-TOKENS-011 An app token's scope is read or full (everything on its apps), never admin. For admin, make a token without --app.
  • HB-TOKENS-012 A Server token with full control is made only by you: on the computer with secretbase tokens create --server, or on the dashboard. A token can't make one.
  • HB-TOKENS-013 A Server token with full control reaches everything: it has no scope and no apps. Leave out --scope and --app.
  • HB-TOKENS-014 Full control can only be made on the computer itself.
  • HB-TOKENS-015 This co-dev token can have <limit>; it has <used>. Nothing changed.
  • HB-TOKENS-016 This token can make <name> smaller, not bigger: it has <size> now. Nothing changed.
  • HB-TOKENS-017 A co-dev token is made only by you: on the computer with secretbase tokens create --codev, or on the dashboard. A token can't make one.
  • HB-TOKENS-018 This token makes only app tokens for its own apps, never wider than itself or lasting longer: secretbase tokens create --name <name> --app <app>.
  • HB-TOKENS-019 A limited Server token sees an app's URL and publishable key, never its secret key. Read it on the computer, or with a Server token with full control.
  • HB-TOKENS-020 Only you can set an app's priority or make room for it: on the dashboard or on the computer. A token can't.
  • HB-TOKENS-021 This token already has 3 access tokens or connected apps it made, the most one token can have. Revoke one of them first, or ask the owner.
  • HB-TOKENS-022 Only this server's admin, the user who installed Secretbase, can make a server, master or co-developer token. For your own app: secretbase tokens create --name <name> --app <app>.

OAuth

  • HB-OAUTH-001 This sign-in request expired or was already answered. Start connecting again from your AI app.
  • HB-OAUTH-002 Secretbase doesn't know this app: its client_id can't be read, or it never registered. Start connecting again from your AI app.
  • HB-OAUTH-003 This app's return address isn't one it registered, so Secretbase won't send you there. Start connecting again from your AI app.
  • HB-OAUTH-004 This sign-in code expired or was already used. Connect again from your AI app.
  • HB-OAUTH-005 You refused this app's access. Nothing was connected.
  • HB-OAUTH-006 This connected app's sign-in ended. Your AI app renews it by itself; if it can't, connect it again and sign in.
  • HB-OAUTH-007 A connected app's sign-in works only for the AI address (/mcp).

Remote

  • HB-REMOTE-001 There's no server called <name> on this computer. secretbase remote list shows the ones you added.
  • HB-REMOTE-002 Can't reach the server at <address> (<reason>). Check that it is on and that this computer is online, then try again.
  • HB-REMOTE-003 A server's address must start with https://, like the one secretbase tokens create showed there. <address> doesn't.
  • HB-REMOTE-004 This secretbase command is <version>, too old for this server's answer (it needs <needed>). Nothing changed. Update it: <command>

Git

  • HB-GIT-001 Use an https:// link to a git repository, like https://github.com/<you>/my-app (no password or token in the link).
  • HB-GIT-002 This link points to an address on a private network. Secretbase fetches only from public addresses.
  • HB-GIT-003 Secretbase couldn't read this repository: it doesn't exist, or it's private. Check the link. If it's private, give the app an access token for <host>: secretbase git-token add <host> --app <app>.
  • HB-GIT-004 This repository has no branch or tag named <ref>.
  • HB-GIT-005 This repository is too large to publish: <files> files, <size>. The limit is 20,000 files and 2 GB.
  • HB-GIT-006 Fetching this repository took more than 10 minutes, so it was stopped. Try again, or publish a smaller repository.
  • HB-GIT-007 Use a host name like github.com, and a token without spaces.
  • HB-GIT-008 The access token for <host> was refused. Add a new one to the app: secretbase git-token add <host> --app <app>.
  • HB-GIT-009 This link redirects somewhere else. Use the repository's current link.
  • HB-GIT-011 Git tokens belong to an app now. Add it to the app that needs it: secretbase git-token add <host> --app <app>. Nothing changed.

Backup

  • HB-BACKUP-001 <place> can't be reached: <reason>. Backups still go to your other places.
  • HB-BACKUP-002 This backup can't be opened: it was damaged, or it was made with a different recovery key.
  • HB-BACKUP-003 This backup's files don't match its list (<file>): it was changed or damaged.
  • HB-BACKUP-004 <name> didn't start from its backup: <detail>.
  • HB-BACKUP-005 Not enough free space at <place> for this backup (<free> free, about <size> needed).
  • HB-BACKUP-006 There's no backup of <name> yet.
  • HB-BACKUP-007 That folder is on the same disk as your apps. Pick a USB drive or another disk.
  • HB-BACKUP-008 The storage bucket refused the sign-in. Check the access key and secret.
  • HB-BACKUP-009 You can add one folder and one storage bucket. Remove the <kind> you have first, then add the new one.
  • HB-BACKUP-010 <name> is busy with another backup, check or restore. Try again when it has finished.
  • HB-BACKUP-011 That backup place doesn't exist any more. Pick one from the list of places.
  • HB-BACKUP-012 This computer always keeps a copy and can't be removed.
  • HB-BACKUP-013 Not checked yet: not enough free memory. It's checked again at the next run.
  • HB-BACKUP-014 That isn't a recovery key. It starts with AGE-SECRET-KEY-1 and is on the paper or file you saved.
  • HB-BACKUP-015 No key on this computer opens that backup. Enter the recovery key of the computer that made it: secretbase recovery-key enter.
  • HB-BACKUP-016 There's no such backup to bring back. secretbase restore --list shows the ones found.
  • HB-BACKUP-017 <name> is still on this computer. Put its data back with secretbase restore <name>.
  • HB-BACKUP-018 <name> came back from a backup, so this computer has no folder or git link to build it from. Publish it again from its folder (secretbase publish <folder> --name <name>) or its git link.
  • HB-BACKUP-019 <name> is still on this computer, so its backups stay. To remove them, delete the app first: secretbase delete <name>.

Pairing

  • HB-PAIR-001 That pairing code is wrong, used or expired. Make a new one on the other machine with secretbase machines add.
  • HB-PAIR-002 That pairing code was typed wrong 5 times, so it no longer works. Make a new one on the other machine with secretbase machines add.
  • HB-PAIR-003 Other machines can't reach this one: it has no free public address (<reason>). Delete an app on this machine to free one, then try again.
  • HB-PAIR-004 Can't reach the machine <name> (<reason>). Check that it is on and online, then try again.
  • HB-PAIR-005 <name> doesn't accept this machine any more: it was removed there, or the two clocks differ by more than 5 minutes. Check both clocks, or remove it here and pair again.
  • HB-PAIR-006 There's already a paired machine called <name>. Remove it first with secretbase machines remove <name>, or give one of the computers another name.
  • HB-PAIR-007 There's no paired machine called <name>. secretbase machines lists the ones you paired.
  • HB-PAIR-008 <address> isn't a machine's online address. Use the whole line secretbase machines add showed on the other machine.
  • HB-PAIR-009 A pairing code has 8 letters and digits, like ABCD-EFGH.
  • HB-PAIR-010 That is this machine's own address. Run secretbase machines join on the other machine.
  • HB-PAIR-011 Pair machines as yourself, not with sudo: run the command again without sudo.
  • HB-PAIR-012 <name>'s answer didn't check out, so nothing was saved. Make a new code there with secretbase machines add and try again.
  • HB-PAIR-013 None of your machines has a free public address for a new app. Delete an app on one of them, then try again.

Update

  • HB-UPDATE-001 This computer can't update itself: it wasn't installed with the one-line command. Install the new version once with the one-line command from the download page; after that it updates itself.
  • HB-UPDATE-002 The download for <version> isn't a genuine Secretbase release (its signature doesn't match). Nothing was installed. Install <version> with the one-line command from <site>.
  • HB-UPDATE-003 This computer already has <current>, which is newer than <version>. Secretbase only updates to a newer version.
  • HB-UPDATE-004 Couldn't download the update from <site>: <reason>. Nothing was installed. Try again later.
  • HB-UPDATE-005 <site> doesn't offer an update this computer can use (<reason>). Nothing was installed.
  • HB-UPDATE-006 This computer is already updating to <version>. Wait until it has finished.
  • HB-UPDATE-007 The download for <version> couldn't be unpacked safely (<reason>). Nothing was installed.
  • HB-UPDATE-008 The update to <version> stopped before it finished: <reason>. This computer stays on <current>.
  • HB-UPDATE-009 The update to <version> didn't finish: this computer is still on <current>. Run secretbase update again; if it stops again, install <version> with the one-line command from <site>.

Email

  • HB-EMAIL-001 Resend refused the key. Copy the whole API key from resend.com → API Keys and set it again: secretbase email set.
  • HB-EMAIL-002 Resend's test sender (onboarding@resend.dev) sends only to the email address of your own Resend account. Use that address for alerts and send the test again.
  • HB-EMAIL-003 Couldn't reach Resend, so no email was sent. Check this computer's internet connection and try again in a few minutes.
  • HB-EMAIL-004 Resend's sending limit was reached, so no email was sent. Try again later.
  • HB-EMAIL-005 That isn't one email address. Type a single address, like you@example.com.
  • HB-EMAIL-006 Email isn't set up yet. Add your Resend key and the address alerts go to: secretbase email set --to you@example.com.
  • HB-EMAIL-007 That isn't a domain name. Type the domain you own, like example.com (no https:// and no email address).
  • HB-EMAIL-008 Resend didn't add <domain>: it is already added to a Resend account, or your Resend plan has no room for another domain. Look at resend.com → Domains, then try again.
  • HB-EMAIL-009 <app> can't send email yet: no sending domain is verified. Add your domain in Settings › Alerts › Email, or run secretbase email domain add example.com with your domain.
  • HB-EMAIL-010 <app> has sent its 50 emails for today, so this one wasn't sent. It can send again tomorrow (the day starts at 00:00 UTC).
  • HB-EMAIL-011 <domain> isn't one of this server's verified sending domains. Pick one of them (secretbase email domain --app <app> <domain>); leave it empty only when there is just one.
  • HB-EMAIL-012 Your Resend key may only send email, so it can't add or check a domain. Make a key with Full access at resend.com → API Keys and paste it in Settings › Alerts › Email, or with secretbase email set (it replaces the old key).
  • HB-EMAIL-013 Couldn't reach Resend, so nothing changed for the domain. Check this computer's internet connection and try again in a few minutes.
  • HB-EMAIL-014 Resend no longer has <domain> (it was removed at resend.com). Remove it here and add it again: secretbase email domain remove <domain>.
  • HB-EMAIL-015 <domain> isn't the sending domain the owner gave <app>, and only the owner picks it. This token may set the one the owner gave, or leave it empty.
  • HB-EMAIL-016 <app> can't send email yet: this server has two or more verified sending domains, and the owner hasn't chosen which one <app> sends from. The owner (or a master token) chooses it: secretbase email domain --app <app> <domain>.
  • HB-EMAIL-017 All apps on this server have sent their 90 emails for today (10 are kept for alerts), so this one wasn't sent. Apps can send again tomorrow (the day starts at 00:00 UTC).
  • HB-EMAIL-018 10 alerts were sent with secretbase alert send in the last hour, so this one wasn't sent. Try again later; a script that alerts in a loop should send once.
  • HB-EMAIL-019 This server's apps and secretbase alert send have sent their 90 emails for today (10 are kept for the server's own alerts), so this one wasn't sent. Try again tomorrow (the day starts at 00:00 UTC).

Watch

  • HB-WATCH-001 Watching from outside uses your own Cloudflare account, and this computer has no Cloudflare key. Connect it first: secretbase cloudflare connect, then turn the watcher on again.
  • HB-WATCH-002 Watching from outside emails you when this computer stops answering, and email isn't set up. Set it up first: secretbase email set --to you@example.com, then turn the watcher on again.
  • HB-WATCH-003 Watching from outside checks the online dashboard's address, and the online dashboard isn't online. Turn it on first (secretbase dashboard on) and wait for its address, then turn the watcher on again.
  • HB-WATCH-004 Cloudflare refused this computer's key for the watcher. In Cloudflare, edit the key and add Account → Workers Scripts → Edit and Account → Workers KV Storage → Edit, then turn the watcher on again.
  • HB-WATCH-005 Couldn't reach Cloudflare, so the watcher isn't on. Try again in a few minutes: what was already made in your account is used again.
  • HB-WATCH-006 The watcher isn't fully removed: Cloudflare didn't answer, so <what> is still in your account. Finish turning it off in a few minutes: secretbase watch off, or Finish turning off in Settings → Alerts.
  • HB-WATCH-007 The watcher in your Cloudflare account still has the old email settings, because Cloudflare didn't answer. Turn the watcher on again to update it.
  • HB-WATCH-008 This computer has no Cloudflare key any more, so it can't remove the watcher <name> from your Cloudflare account. Connect Cloudflare again (secretbase cloudflare connect) and run secretbase watch off, or delete it in Cloudflare yourself: Workers & Pages → <name> → Settings → Delete.
  • HB-WATCH-009 Cloudflare is disconnected, but the outside watcher couldn't be removed from your Cloudflare account first: <what> is still there. Delete it in Cloudflare yourself: Workers & Pages → <name> → Settings → Delete, then Storage & Databases → KV → <name> → Delete.
  • HB-WATCH-010 The online dashboard's address is off, so the outside watcher will report this computer as not answering. Turn the online dashboard on again (secretbase dashboard on) or the watcher off (secretbase watch off).

Shield

  • HB-SHIELD-001 That isn't a visitor's address. Use one from the app's Blocked visitors list, like 203.0.113.7 or 2001:db8:1:2::/64.
  • HB-SHIELD-002 That address isn't blocked on this app; its block may have ended already. The app's Blocked visitors list shows who is blocked.