Design Considerations

Instance Configuration

Startup crashes caused by malformed configs in Monospace.

Monospace relies heavily on config.yaml and environment variables. Because configuration dictates the structure of the system database, file storage connectors, and email providers, missing or malformed configuration for a required service is fatal.

The Constraint

Invalid or missing settings for a required service, such as a missing KMS master key (set through MONOSPACE_KMS__MASTER_KEY, MONOSPACE_KMS__MASTER_KEY__FILE, or kms.master_key in config.yaml) or incomplete connector settings, will cause the application to crash on startup. Core connectors like the system database and file storage have no graceful degradation fallbacks.

Some services are optional:

  • Emailer - if unconfigured, the server starts with a warning and email features are disabled.
  • Redis - required only while caching is enabled (MONOSPACE_CACHE__ENABLED, on by default).
  • RabbitMQ - required only in clustered mode (MONOSPACE_CLUSTER__ENABLED, on by default). Without it, the server starts with a warning and cannot send email.

Mitigation

Always ensure your environment variables are correctly spelled and all required settings for a provider (such as host, port, user, and either password or aws_iam for Postgres) are successfully populated in the environment before boot. Keep a strict .env.example file synced with your config.yaml requirements.

MonospaceThe governed API layer for every app, person, and agent.

Copyright © 2026 Monospace Inc.