Reference
Error codes
One catalogue for the API, the CLI and the web app.
Reference 4 min read
CLI exit codes group errors so scripts can react without parsing text.
SE_AUTH_REQUIRED | exit 10. You're not signed in. Run: storeenv login |
SE_AUTH_STATE_EXPIRED | exit 10. This login link has expired. Run: storeenv login |
SE_AUTH_TOKEN_EXPIRED | exit 10. Your session has expired. Run: storeenv login |
SE_IDENTITY_MISSING | exit 11. You have no StoreEnv identity yet. Finish setup in the browser: storeenv login |
SE_DEVICE_NOT_ENROLLED | exit 11. This device can't decrypt yet. Approve it from another device (storeenv device approve <code>) or run: storeenv recover |
SE_KEY_LOCKED | exit 11. Your private key is locked. Unlock your OS keychain or set STOREENV_PASSPHRASE |
SE_NOT_A_GIT_REPO | exit 20. Not inside a Git repository. cd into your project or pass --project <owner/name> |
SE_NO_REMOTE | exit 20. This repository has no remote. A local project id is kept in .storeenv.json |
SE_CONFIG_INVALID | exit 22. .storeenv.json is invalid. Fix the file, or remove it and run storeenv link |
SE_PROJECT_NOT_LINKED | exit 20. This folder isn't linked to a StoreEnv project. Run storeenv init to create one, or storeenv link <namespace/name> |
SE_NO_ENV_FILES | exit 21. No .env files found. Check ignore rules or create a .env file |
SE_PARSE_ERROR | exit 21. A line isn't KEY=value. Fix the line or quote the value |
SE_REMOTE_AHEAD | exit 30. Remote has a newer version. Run storeenv pull first, or push --force to add on top |
SE_LOCAL_CHANGES | exit 30. Pull would overwrite unpushed local changes. Choose keep, overwrite or diff |
SE_GITHUB_APP_REQUIRED | exit 42. StoreEnv can't see this repository on GitHub. If it's private, install the StoreEnv GitHub App on it |
SE_REMOTE_PROOF_REQUIRED | exit 43. Prove you control this repository first. Push the verification tag shown, then run storeenv push again |
SE_NAMESPACE_TAKEN | exit 31. That name is taken. Pick a different name |
SE_PROJECT_AMBIGUOUS | exit 31. More than one of your projects is linked to this repository. Pick one with --project <namespace/name>, or add "project" to .storeenv.json |
SE_NAMESPACE_FORBIDDEN | exit 40. You can't create projects in that namespace. Use your own namespace or an organization you administer |
SE_IMPORT_FORBIDDEN | exit 40. You can't import from that project. You must be a member who can read the source environment |
SE_IMPORT_CYCLE | exit 31. That import would make a cycle. Imports are one way; remove the other import first |
SE_IMPORT_SOURCE_GONE | exit 44. The imported project was deleted. Remove the import, or restore the source project within 7 days |
SE_FORBIDDEN_SCOPE | exit 40. You can't read or write this. Ask for access: storeenv request <file> |
SE_PRODUCTION_ACCESS | exit 40. This environment needs production access. Ask an owner to turn on production access for you |
SE_KEY_SHARE_PENDING | exit 41. You have access but no keys yet. A member's device will share them soon |
SE_INTEGRITY | exit 50. Integrity check failed. Nothing was written. Report this with the request id |
SE_FINGERPRINT_MISMATCH | exit 50. A member's key changed unexpectedly. Verify their fingerprint before sharing |
SE_KEY_MISMATCH | exit 50. A public key doesn't match what was verified or logged. Nothing was encrypted. Verify the fingerprint with the person: storeenv verify @username |
SE_KEY_NOT_VERIFIED | exit 51. Some readers' keys aren't verified on this device. Compare fingerprints and run: storeenv verify @username SE:XXXX-XXXX-XXXX |
SE_KEY_ROTATION_REQUIRED | exit 52. A reader replaced their key. Confirm the new fingerprint with them, then: storeenv verify @username SE:XXXX-XXXX-XXXX |
SE_KEY_LOG_INCONSISTENT | exit 53. The server's key log doesn't match what this device saw before. Nothing was encrypted. Report this to whoever runs your StoreEnv server |
SE_UNSAFE_ENV | exit 54. A key from the server can't be used safely. Nothing was written or run. Check the key name; allow a process variable by name with --allow-env NAME |
SE_SIGNATURE | exit 55. A value's writer signature doesn't verify. Nothing was written or run. Report this to whoever runs your StoreEnv server |
SE_UNSIGNED | exit 56. Some values aren't signed by their writer. Ask a writer to run storeenv sign, or pass --allow-unsigned once you have checked them |
SE_UNKNOWN_WRITER | exit 57. A value was written by someone this device doesn't trust as a writer. Check the writer's fingerprint, then: storeenv trust writer @login SE:XXXX-XXXX-XXXX, or list them in .storeenv.json writers |
SE_LOG_STALE | exit 58. The key log this device has is too old to trust. Connect to StoreEnv and retry; revocations newer than one hour may be missing |
SE_NETWORK | exit 60. Can't reach StoreEnv. Check your connection or proxy, then run: storeenv doctor |
SE_CHALLENGE_REQUIRED | exit 60. Solve the check and try again. The web app solves it for you; retry the sign in |
SE_RATE_LIMITED | exit 60. Too many requests. Retry after the time shown |
SE_EMAIL_FAILED | exit 60. We couldn't send the email. Try again in a few minutes. If it keeps failing, write to hello@storeenv.app |
SE_SERVER | exit 70. Something went wrong on our side. Retry, and include the request id if it keeps happening |
SE_NOT_FOUND | exit 44. Not found. Check the name, or ask a member for access |
SE_INVALID | exit 22. The request is invalid. Check the values you passed |
SE_CONFLICT | exit 31. That already exists. Pick a different name |
SE_ARCHIVED | exit 31. This project is archived. Pull still works. Unarchive the project to push |