-
Notifications
You must be signed in to change notification settings - Fork 42
Enhance Docker Compose setup and documentation #332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
- Added a new Docker Compose file for MongoDB to facilitate local development. - Introduced a comprehensive Docker Compose Quick Start guide in the README, enabling users to get Exosphere running locally in under 2 minutes. - Updated existing documentation to include links to the new Docker Compose setup guide and improved clarity on configuration options. - Removed outdated satellite documentation to streamline resources and focus on current features. This update aims to improve the onboarding experience for developers and enhance the overall usability of the Exosphere project.
|
Note Other AI code review bot(s) detectedCodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review. Warning Rate limit exceeded@NiveditJain has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 7 minutes and 14 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (2)
📝 WalkthroughSummary by CodeRabbit
WalkthroughAdds Docker Compose quick-start docs and two compose manifests (with and without MongoDB), updates mkdocs/README navigation and messaging, and removes multiple example satellite docs and two example runtimes under exosphere-runtimes (nodes, entrypoints, packaging, and some gitignore/python-version lines). Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor U as User
participant DC as Docker Compose
participant SM as State Manager (8000)
participant DB as MongoDB (27017)
participant UI as Dashboard (3000)
U->>DC: docker compose up -d
alt using local mongodb
DC->>DB: start mongodb container
DC->>SM: start State Manager (MONGO_URI -> mongodb)
else using cloud mongodb
DC->>SM: start State Manager (MONGO_URI -> cloud)
end
DC->>UI: start Dashboard (NEXT_PUBLIC_EXOSPHERE_STATE_MANAGER_URL)
U->>UI: open http://localhost:3000
UI->>SM: REST API requests
SM-->>DB: read/write persistent state
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Suggested reviewers
Poem
✨ Finishing Touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary of Changes
Hello @NiveditJain, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request significantly enhances the developer onboarding experience for the Exosphere project by introducing streamlined Docker Compose setups for local development. It provides clear quick-start guides and comprehensive documentation for both cloud and local MongoDB configurations. Concurrently, it cleans up the project by removing outdated documentation and code examples related to the previous 'satellite' concept, ensuring that resources are current and focused on the core features of the platform.
Highlights
- Simplified Local Development Setup: Introduced new Docker Compose configurations, offering quick-start options for local development with both cloud and local MongoDB instances.
- Enhanced Documentation for Onboarding: Added comprehensive Docker Compose Quick Start guides in the main README and a dedicated documentation file, significantly improving the developer onboarding experience.
- Streamlined Project Resources: Performed extensive cleanup by removing outdated 'satellite' related documentation and associated Python runtime examples, focusing resources on current core features.
- Updated Project Overview: Revised the core documentation's project description and navigation to reflect the enhanced setup and the platform's current focus on AI agents and workflows.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.
| Feature | Command | Description |
|---|---|---|
| Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
| Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
| Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
| Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request significantly improves the developer onboarding experience by introducing a Docker Compose setup and comprehensive documentation. The changes are well-structured and the new quick start guides will be very helpful for users. I've provided some feedback to enhance the Docker Compose files for better clarity and consistency, fix a platform-compatibility issue in the documentation, and reduce documentation duplication. Overall, this is a valuable contribution to the project.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
- Updated the README to streamline the Docker Compose setup instructions, removing outdated content and focusing on essential information. - Added a link to the official Docker Compose Setup Guide for detailed instructions. - Simplified the overall structure to enhance readability and user experience.
- Changed container names for `exosphere-state-manager` and `exosphere-dashboard` to align with the project naming conventions. - Ensured that the MongoDB URI environment variable remains intact for both services. - No functional changes were made to the service configurations or network settings.
…ormatting in documentation links
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 36
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
⛔ Files ignored due to path filters (3)
exosphere-runtimes/cloud-storage-runtime/uv.lockis excluded by!**/*.lockexosphere-runtimes/parse-list-of-docs/uv.lockis excluded by!**/*.lockexosphere-runtimes/uv.lockis excluded by!**/*.lock
📒 Files selected for processing (37)
README.md(1 hunks)docker-compose/README.md(1 hunks)docker-compose/docker-compose-with-mongodb.yml(1 hunks)docker-compose/docker-compose.yml(1 hunks)docs/docs/docker-compose-setup.md(1 hunks)docs/docs/satellites/exospherehost/call-webhook.md(0 hunks)docs/docs/satellites/exospherehost/deepseek-r1-distrill-llama-70b.md(0 hunks)docs/docs/satellites/exospherehost/forward-logs.md(0 hunks)docs/docs/satellites/exospherehost/get-files.md(0 hunks)docs/docs/satellites/exospherehost/move-file.md(0 hunks)docs/docs/satellites/exospherehost/parse-with-docling.md(0 hunks)docs/docs/satellites/exospherehost/send-alert.md(0 hunks)docs/docs/satellites/exospherehost/send-email.md(0 hunks)docs/docs/satellites/index.md(0 hunks)docs/mkdocs.yml(2 hunks)exosphere-runtimes/.gitignore(0 hunks)exosphere-runtimes/.python-version(0 hunks)exosphere-runtimes/cloud-storage-runtime/.gitignore(0 hunks)exosphere-runtimes/cloud-storage-runtime/.python-version(0 hunks)exosphere-runtimes/cloud-storage-runtime/main.py(0 hunks)exosphere-runtimes/cloud-storage-runtime/nodes/download_s3_file.py(0 hunks)exosphere-runtimes/cloud-storage-runtime/nodes/list_s3_files.py(0 hunks)exosphere-runtimes/cloud-storage-runtime/pyproject.toml(0 hunks)exosphere-runtimes/main.py(0 hunks)exosphere-runtimes/parse-list-of-docs/README.md(0 hunks)exosphere-runtimes/parse-list-of-docs/graph_template.py(0 hunks)exosphere-runtimes/parse-list-of-docs/main.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/chunk_document.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/create_report.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/generate_answer.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/generate_question.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/list_s3_files.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/parse_single_pdf.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/upload_to_s3.py(0 hunks)exosphere-runtimes/parse-list-of-docs/nodes/verify_answer.py(0 hunks)exosphere-runtimes/parse-list-of-docs/pyproject.toml(0 hunks)exosphere-runtimes/pyproject.toml(0 hunks)
💤 Files with no reviewable changes (31)
- exosphere-runtimes/cloud-storage-runtime/.python-version
- exosphere-runtimes/cloud-storage-runtime/main.py
- exosphere-runtimes/parse-list-of-docs/nodes/parse_single_pdf.py
- exosphere-runtimes/.gitignore
- exosphere-runtimes/parse-list-of-docs/main.py
- exosphere-runtimes/pyproject.toml
- exosphere-runtimes/parse-list-of-docs/nodes/chunk_document.py
- docs/docs/satellites/exospherehost/get-files.md
- exosphere-runtimes/parse-list-of-docs/pyproject.toml
- docs/docs/satellites/exospherehost/send-alert.md
- docs/docs/satellites/exospherehost/deepseek-r1-distrill-llama-70b.md
- docs/docs/satellites/exospherehost/send-email.md
- docs/docs/satellites/exospherehost/parse-with-docling.md
- exosphere-runtimes/parse-list-of-docs/nodes/generate_answer.py
- docs/docs/satellites/exospherehost/forward-logs.md
- exosphere-runtimes/parse-list-of-docs/graph_template.py
- exosphere-runtimes/cloud-storage-runtime/.gitignore
- docs/docs/satellites/index.md
- exosphere-runtimes/parse-list-of-docs/nodes/upload_to_s3.py
- exosphere-runtimes/.python-version
- exosphere-runtimes/parse-list-of-docs/nodes/verify_answer.py
- exosphere-runtimes/parse-list-of-docs/README.md
- exosphere-runtimes/main.py
- exosphere-runtimes/cloud-storage-runtime/pyproject.toml
- docs/docs/satellites/exospherehost/move-file.md
- docs/docs/satellites/exospherehost/call-webhook.md
- exosphere-runtimes/cloud-storage-runtime/nodes/download_s3_file.py
- exosphere-runtimes/cloud-storage-runtime/nodes/list_s3_files.py
- exosphere-runtimes/parse-list-of-docs/nodes/create_report.py
- exosphere-runtimes/parse-list-of-docs/nodes/generate_question.py
- exosphere-runtimes/parse-list-of-docs/nodes/list_s3_files.py
🧰 Additional context used
🪛 LanguageTool
docker-compose/README.md
[grammar] ~1-~1: Use correct spacing
Context: # Exosphere Docker Compose Quick Start This guide helps you quickly start the E...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~3-~3: Use correct spacing
Context: ...ng Docker Compose with a single command. ## 📥 Download Docker Compose Files First,...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~5-~5: There might be a mistake here.
Context: ...nd. ## 📥 Download Docker Compose Files First, download the Docker Compose files...
(QB_NEW_EN)
[grammar] ~7-~7: Use correct spacing
Context: ...ompose files from the GitHub repository: ### Option 1: Download Both Files ```bash #...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~9-~9: Use correct spacing
Context: ...tory: ### Option 1: Download Both Files bash # Download docker-compose file for cloud MongoDB (recommended) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ### Option 2: Using wget ```bash # Download...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~19-~19: Use correct spacing
Context: ...ongodb.yml ### Option 2: Using wget bash # Download docker-compose file for cloud MongoDB (recommended) wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ``` ## 🚀 Quick Start We **recommend using a c...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~30-~30: There might be a mistake here.
Context: ...with-mongodb.yml ``` ## 🚀 Quick Start We **recommend using a cloud MongoDB man...
(QB_NEW_EN)
[grammar] ~32-~32: Use correct spacing
Context: ... performance, reliability, and security. ### Option 1: With Cloud MongoDB (Recommende...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~34-~34: Use correct spacing
Context: ...tion 1: With Cloud MongoDB (Recommended) 1. Set up a cloud MongoDB instance (MongoDB...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~36-~36: There might be a mistake here.
Context: ...ce (MongoDB Atlas, AWS DocumentDB, etc.) 2. Create a .env file with your MongoDB c...
(QB_NEW_EN_OTHER)
[grammar] ~38-~38: Use correct spacing
Context: ....env` file with your MongoDB connection: bash MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ 3. Download and start the services: ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~43-~43: Use correct spacing
Context: ... 3. Download and start the services: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml && docker compose -f docker-compose.yml up -d ``` This will start: - Exosphere State Manag...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~48-~48: There might be a mistake here.
Context: ...mpose.yml up -d ``` This will start: - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~49-~49: There might be a mistake here.
Context: ...t: - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ### Opt...
(QB_NEW_EN)
[grammar] ~50-~50: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ### Option 2: With Local MongoDB (Developmen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~52-~52: Use correct spacing
Context: ...2: With Local MongoDB (Development Only) For quick local testing only: ```bash c...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~54-~54: Use correct spacing
Context: ...ent Only) For quick local testing only: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml && docker compose -f docker-compose-with-mongodb.yml up -d This will start: - MongoDB database (por...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~60-~60: There might be a mistake here.
Context: ...-mongodb.yml up -d ``` This will start: - MongoDB database (port 27017) - Exospher...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...l start: - MongoDB database (port 27017) - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~62-~62: There might be a mistake here.
Context: ...7) - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ## 🧪 B...
(QB_NEW_EN)
[grammar] ~63-~63: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ## 🧪 Beta Version To run the latest beta ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~65-~65: There might be a mistake here.
Context: ...ashboard (port 3000) ## 🧪 Beta Version To run the latest beta version of Exosph...
(QB_NEW_EN)
[grammar] ~67-~67: Use correct spacing
Context: ...place container tags with beta-latest: ### Quick Beta Setup with Cloud MongoDB ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~69-~69: Use correct spacing
Context: ... ### Quick Beta Setup with Cloud MongoDB bash # Download and modify for beta with cloud MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml sed -i 's/:latest/:beta-latest/g' docker-compose.yml # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d ### Quick Beta Setup with Local MongoDB ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~78-~78: Use correct spacing
Context: ... ### Quick Beta Setup with Local MongoDB bash # Download and modify for beta with local MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml sed -i 's/:latest/:beta-latest/g' docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d ### Manual Beta Setup (Alternative) 1. Down...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~86-~86: Use correct spacing
Context: ...``` ### Manual Beta Setup (Alternative) 1. Download the docker-compose file 2. Edit...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~88-~88: There might be a mistake here.
Context: ...ve) 1. Download the docker-compose file 2. Edit the file and change: ```yaml ...
(QB_NEW_EN_OTHER)
[grammar] ~89-~89: Use correct spacing
Context: ...ompose file 2. Edit the file and change: yaml # Change from: image: ghcr.io/exospherehost/exosphere-state-manager:latest image: ghcr.io/exospherehost/exosphere-dashboard:latest # To: image: ghcr.io/exospherehost/exosphere-state-manager:beta-latest image: ghcr.io/exospherehost/exosphere-dashboard:beta-latest 3. Start the services with `docker compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~99-~99: Use correct spacing
Context: ...atest ``` 3. Start the services with docker compose up -d ## 📋 Environment Variables ### Environmen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~101-~101: There might be a mistake here.
Context: ...pose up -d` ## 📋 Environment Variables ### Environment Variables for State Manager ...
(QB_NEW_EN)
[grammar] ~103-~103: Use correct spacing
Context: ... Environment Variables for State Manager | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~105-~105: There might be a mistake here.
Context: ...Description | Default Value | Required | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~106-~106: There might be a mistake here.
Context: ...------------|---------------|----------| | MONGO_URI | MongoDB connection strin...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...tring | - | ✅ (for docker-compose.yml) | | STATE_MANAGER_SECRET | API key for s...
(QB_NEW_EN)
[grammar] ~108-~108: There might be a mistake here.
Context: ...n | exosphere@123 | ⚙️ (has default) | | MONGO_DATABASE_NAME | MongoDB databa...
(QB_NEW_EN)
[grammar] ~109-~109: There might be a mistake here.
Context: ... name | exosphere | ⚙️ (has default) | | SECRETS_ENCRYPTION_KEY | Base64-enco...
(QB_NEW_EN)
[grammar] ~110-~110: Use correct spacing
Context: ...QuQQHyz64s8qAERVU=| ⚙️ (has default) | > **⚠️ Important**: TheSECRETS_ENCRYPTION_...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~112-~112: Use correct spacing
Context: ...osing access to existing encrypted data. ### Dashboard Environment Variables (All Opt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~114-~114: Use correct spacing
Context: ...ard Environment Variables (All Optional) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~116-~116: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~117-~117: There might be a mistake here.
Context: ...---------|-------------|---------------| | `NEXT_PUBLIC_EXOSPHERE_STATE_MANAGER_U...
(QB_NEW_EN)
[grammar] ~118-~118: There might be a mistake here.
Context: ... http://exosphere-state-manager:8000 | | NEXT_PUBLIC_DEFAULT_NAMESPACE | Defa...
(QB_NEW_EN)
[grammar] ~119-~119: There might be a mistake here.
Context: ...space for workflows | WhatPeopleWant | | NEXT_PUBLIC_DEFAULT_API_KEY | Defaul...
(QB_NEW_EN)
[grammar] ~120-~120: Use correct spacing
Context: ...PI key for dashboard | exosphere@123 | ### MongoDB Local Setup Variables (for docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~122-~122: Use correct spacing
Context: ...or docker-compose-with-mongodb.yml only) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~124-~124: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...---------|-------------|---------------| | MONGO_INITDB_ROOT_USERNAME | MongoDB...
(QB_NEW_EN)
[grammar] ~126-~126: There might be a mistake here.
Context: ...AME| MongoDB root username |admin| |MONGO_INITDB_ROOT_PASSWORD` | MongoDB...
(QB_NEW_EN)
[grammar] ~127-~127: There might be a mistake here.
Context: ...| MongoDB root password |password| |MONGO_INITDB_DATABASE` | Initial Mong...
(QB_NEW_EN)
[grammar] ~128-~128: Use correct spacing
Context: ...Initial MongoDB database | exosphere | ### SDK Environment Variables To use the Ex...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~130-~130: Use correct spacing
Context: ...sphere` | ### SDK Environment Variables To use the Exosphere Python SDK with you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~132-~132: Use correct spacing
Context: ...riables in your development environment: | Variable | Description | Example Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~134-~134: There might be a mistake here.
Context: ...Variable | Description | Example Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~135-~135: There might be a mistake here.
Context: ...---------|-------------|---------------| | EXOSPHERE_STATE_MANAGER_URI | URL wh...
(QB_NEW_EN)
[grammar] ~136-~136: There might be a mistake here.
Context: ...r is running | http://localhost:8000 | | EXOSPHERE_API_KEY | API key for auth...
(QB_NEW_EN)
[grammar] ~137-~137: Use correct spacing
Context: ...TATE_MANAGER_SECRET) | exosphere@123 | Example SDK setup: ```bash # Set envir...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~139-~139: Use correct spacing
Context: ...exosphere@123` | Example SDK setup: bash # Set environment variables for SDK export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 # Or add to your .env file for your Python project echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env echo "EXOSPHERE_API_KEY=exosphere@123" >> .env ## 🔧 Custom Configuration ### Using Your ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~150-~150: There might be a mistake here.
Context: ... >> .env ``` ## 🔧 Custom Configuration ### Using Your Own Environment Variables Cr...
(QB_NEW_EN)
[grammar] ~152-~152: Use correct spacing
Context: ...### Using Your Own Environment Variables Create a .env file in the same directo...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~154-~154: Use correct spacing
Context: ...e directory as your docker-compose file: bash # MongoDB Configuration (REQUIRED for docker-compose.yml) MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ # Optional Configuration (has defaults) MONGO_DATABASE_NAME=exosphere STATE_MANAGER_SECRET=your-custom-secret-key SECRETS_ENCRYPTION_KEY=your-base64-encoded-encryption-key # Dashboard Configuration (Optional) NEXT_PUBLIC_DEFAULT_NAMESPACE=YourNamespace NEXT_PUBLIC_DEFAULT_API_KEY=your-custom-secret-key # For local MongoDB setup only (docker-compose-with-mongodb.yml) MONGO_INITDB_ROOT_USERNAME=admin MONGO_INITDB_ROOT_PASSWORD=password MONGO_INITDB_DATABASE=exosphere Then run with your custom configuration:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~175-~175: Use correct spacing
Context: ...Then run with your custom configuration: bash # For cloud MongoDB (recommended) docker compose -f docker-compose.yml up -d # For local MongoDB docker compose -f docker-compose-with-mongodb.yml up -d Note: The docker-compose files now aut...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~184-~184: Use correct spacing
Context: ...ble defaults for all optional variables. ### Generating a New Encryption Key To gene...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~186-~186: Use correct spacing
Context: ...es. ### Generating a New Encryption Key To generate a secure encryption key for ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~188-~188: Use correct spacing
Context: ...yption key for SECRETS_ENCRYPTION_KEY: bash # Using Python python -c "import base64; import os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())" # Using OpenSSL openssl rand -base64 32 ## 🌐 Access Your Services After running t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~198-~198: There might be a mistake here.
Context: ...ase64 32 ``` ## 🌐 Access Your Services After running the Docker Compose command...
(QB_NEW_EN)
[grammar] ~200-~200: Use correct spacing
Context: ...fter running the Docker Compose command: - Exosphere Dashboard: http://localhost:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~202-~202: There might be a mistake here.
Context: ...phere Dashboard**: http://localhost:3000 - State Manager API: http://localhost:80...
(QB_NEW_EN)
[grammar] ~203-~203: There might be a mistake here.
Context: ...ate Manager API**: http://localhost:8000 - MongoDB (if using with-mongodb): http:...
(QB_NEW_EN)
[grammar] ~204-~204: There might be a mistake here.
Context: ...ng with-mongodb): http://localhost:27017 - API Documentation: http://localhost:80...
(QB_NEW_EN)
[grammar] ~205-~205: Use correct spacing
Context: ...umentation**: http://localhost:8000/docs ## 🛠️ Development Commands ```bash # Star...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~207-~207: There might be a mistake here.
Context: ...t:8000/docs ## 🛠️ Development Commands bash # Start services in background docker compose -f docker-compose-with-mongodb.yml up -d # View logs docker compose -f docker-compose-with-mongodb.yml logs -f # Stop services docker compose -f docker-compose-with-mongodb.yml down # Stop services and remove volumes (⚠️ This will delete your data) docker compose -f docker-compose-with-mongodb.yml down -v # Pull latest images docker compose -f docker-compose-with-mongodb.yml pull # Restart a specific service docker compose -f docker-compose-with-mongodb.yml restart exosphere-state-manager ## 🔍 Troubleshooting ### Check Service He...
(QB_NEW_EN)
[grammar] ~229-~229: There might be a mistake here.
Context: ...state-manager ## 🔍 Troubleshooting ### Check Service Health bash # Check if...
(QB_NEW_EN)
[grammar] ~231-~231: Use correct spacing
Context: ...roubleshooting ### Check Service Health bash # Check if all containers are running docker compose -f docker-compose-with-mongodb.yml ps # Check state manager health curl http://localhost:8000/health # View container logs docker compose -f docker-compose-with-mongodb.yml logs exosphere-state-manager ### Common Issues 1. *Port already in use...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~244-~244: Use correct spacing
Context: ...ere-state-manager ``` ### Common Issues 1. Port already in use: Change the port m...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~246-~246: Use correct spacing
Context: ...3000, 8000, or 27017 are already in use. 2. MongoDB connection issues: Ensure Mong...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~248-~248: Use correct spacing
Context: ...onfiguration handles this automatically. 3. Authentication errors: Verify your `ST...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~250-~250: Use correct spacing
Context: ...ate manager and dashboard configuration. ## 📖 Next Steps Once your Exosphere insta...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~253-~253: There might be a mistake here.
Context: ...hboard configuration. ## 📖 Next Steps Once your Exosphere instance is running:...
(QB_NEW_EN)
[grammar] ~255-~255: Use correct spacing
Context: ...Once your Exosphere instance is running: 1. Visit the dashboard at http://localhost:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~257-~257: There might be a mistake here.
Context: ...t the dashboard at http://localhost:3000 2. Check out the [official documentation](h...
(QB_NEW_EN_OTHER)
[grammar] ~258-~258: There might be a mistake here.
Context: ...2. Check out the official documentation 3. Follow the [Getting Started Guide](https...
(QB_NEW_EN_OTHER)
[grammar] ~259-~259: There might be a mistake here.
Context: ...g-started) to create your first workflow 4. Explore the [State Manager API](http://l...
(QB_NEW_EN_OTHER)
[grammar] ~260-~260: There might be a mistake here.
Context: .../localhost:8000/docs) for advanced usage ## 🤝 Support - [Documentation](https://do...
(QB_NEW_EN_OTHER)
[grammar] ~262-~262: There might be a mistake here.
Context: .../docs) for advanced usage ## 🤝 Support - [Documentation](https://docs.exosphere.ho...
(QB_NEW_EN)
docs/docs/docker-compose-setup.md
[grammar] ~1-~1: Use correct spacing
Context: # Docker Compose Setup Guide Get Exosphere running locally with Docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~3-~3: Use correct spacing
Context: ...ack locally for development and testing. ## Download Docker Compose Files First, do...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~5-~5: Use correct spacing
Context: ...sting. ## Download Docker Compose Files First, download the Docker Compose files...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~7-~7: Use correct spacing
Context: ...ompose files from the GitHub repository: ### Option 1: Download Both Files ```bash #...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~9-~9: Use correct spacing
Context: ...tory: ### Option 1: Download Both Files bash # Download docker-compose file for cloud MongoDB (recommended) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ### Option 2: Using wget ```bash # Download...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~19-~19: Use correct spacing
Context: ...ongodb.yml ### Option 2: Using wget bash # Download docker-compose file for cloud MongoDB (recommended) wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ``` ## Quick Start We **recommend using a clou...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~29-~29: Use correct spacing
Context: ...ose-with-mongodb.yml ``` ## Quick Start We **recommend using a cloud MongoDB man...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~31-~31: Use correct spacing
Context: ... performance, reliability, and security. ### Option 1: With Cloud MongoDB (Recommende...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~33-~33: Use correct spacing
Context: ...tion 1: With Cloud MongoDB (Recommended) 1. Set up a cloud MongoDB instance (MongoDB...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~35-~35: There might be a mistake here.
Context: ...ce (MongoDB Atlas, AWS DocumentDB, etc.) 2. Create a .env file with your MongoDB c...
(QB_NEW_EN_OTHER)
[grammar] ~37-~37: Use correct spacing
Context: ....env` file with your MongoDB connection: bash MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ 3. Download and start the services: ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~42-~42: Use correct spacing
Context: ... 3. Download and start the services: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml && docker compose -f docker-compose.yml up -d ``` This will start: - Exosphere State Manag...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~47-~47: There might be a mistake here.
Context: ...mpose.yml up -d ``` This will start: - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...t: - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ### Opt...
(QB_NEW_EN)
[grammar] ~49-~49: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ### Option 2: With Local MongoDB (Developmen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~51-~51: Use correct spacing
Context: ...2: With Local MongoDB (Development Only) For quick local testing only: ```bash c...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~53-~53: Use correct spacing
Context: ...ent Only) For quick local testing only: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml && docker compose -f docker-compose-with-mongodb.yml up -d This will start: - MongoDB database (por...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~59-~59: There might be a mistake here.
Context: ...-mongodb.yml up -d ``` This will start: - MongoDB database (port 27017) - Exospher...
(QB_NEW_EN)
[grammar] ~60-~60: There might be a mistake here.
Context: ...l start: - MongoDB database (port 27017) - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...7) - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ## Beta...
(QB_NEW_EN)
[grammar] ~62-~62: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ## Beta Version To run the latest beta ver...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~64-~64: Use correct spacing
Context: ...e Dashboard (port 3000) ## Beta Version To run the latest beta version of Exosph...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~66-~66: Use correct spacing
Context: ...place container tags with beta-latest: ### Quick Beta Setup with Cloud MongoDB ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~68-~68: Use correct spacing
Context: ... ### Quick Beta Setup with Cloud MongoDB bash # Download and modify for beta with cloud MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml sed -i 's/:latest/:beta-latest/g' docker-compose.yml # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d ### Quick Beta Setup with Local MongoDB ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~77-~77: Use correct spacing
Context: ... ### Quick Beta Setup with Local MongoDB bash # Download and modify for beta with local MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml sed -i 's/:latest/:beta-latest/g' docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d ### Manual Beta Setup (Alternative) 1. Down...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~85-~85: Use correct spacing
Context: ...``` ### Manual Beta Setup (Alternative) 1. Download the docker-compose file 2. Edit...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~87-~87: There might be a mistake here.
Context: ...ve) 1. Download the docker-compose file 2. Edit the file and change: ```yaml ...
(QB_NEW_EN_OTHER)
[grammar] ~88-~88: Use correct spacing
Context: ...ompose file 2. Edit the file and change: yaml # Change from: image: ghcr.io/exospherehost/exosphere-state-manager:latest image: ghcr.io/exospherehost/exosphere-dashboard:latest # To: image: ghcr.io/exospherehost/exosphere-state-manager:beta-latest image: ghcr.io/exospherehost/exosphere-dashboard:beta-latest 3. Start the services with `docker compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~98-~98: Use correct spacing
Context: ...atest ``` 3. Start the services with docker compose up -d ## Environment Variables ### Environment V...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~100-~100: Use correct spacing
Context: ...compose up -d` ## Environment Variables ### Environment Variables for State Manager ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~102-~102: Use correct spacing
Context: ... Environment Variables for State Manager | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~104-~104: There might be a mistake here.
Context: ...Description | Default Value | Required | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~105-~105: There might be a mistake here.
Context: ...------------|---------------|----------| | MONGO_URI | MongoDB connection strin...
(QB_NEW_EN)
[grammar] ~106-~106: There might be a mistake here.
Context: ... - | Required (for docker-compose.yml) | | STATE_MANAGER_SECRET | API key for s...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...cation | exosphere@123 | Has default | | MONGO_DATABASE_NAME | MongoDB databa...
(QB_NEW_EN)
[grammar] ~108-~108: There might be a mistake here.
Context: ...abase name | exosphere | Has default | | SECRETS_ENCRYPTION_KEY | Base64-enco...
(QB_NEW_EN)
[grammar] ~109-~109: Use correct spacing
Context: ...nb0_aQuQQHyz64s8qAERVU=| Has default | > **Important**: TheSECRETS_ENCRYPTION_KEY...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~111-~111: Use correct spacing
Context: ...osing access to existing encrypted data. ### Dashboard Environment Variables (All Opt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~113-~113: Use correct spacing
Context: ...ard Environment Variables (All Optional) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~115-~115: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~116-~116: There might be a mistake here.
Context: ...---------|-------------|---------------| | `NEXT_PUBLIC_EXOSPHERE_STATE_MANAGER_U...
(QB_NEW_EN)
[grammar] ~117-~117: There might be a mistake here.
Context: ... http://exosphere-state-manager:8000 | | NEXT_PUBLIC_DEFAULT_NAMESPACE | Defa...
(QB_NEW_EN)
[grammar] ~118-~118: There might be a mistake here.
Context: ...space for workflows | WhatPeopleWant | | NEXT_PUBLIC_DEFAULT_API_KEY | Defaul...
(QB_NEW_EN)
[grammar] ~119-~119: Use correct spacing
Context: ...PI key for dashboard | exosphere@123 | ### MongoDB Local Setup Variables (for docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~121-~121: Use correct spacing
Context: ...or docker-compose-with-mongodb.yml only) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~123-~123: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...---------|-------------|---------------| | MONGO_INITDB_ROOT_USERNAME | MongoDB...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...AME| MongoDB root username |admin| |MONGO_INITDB_ROOT_PASSWORD` | MongoDB...
(QB_NEW_EN)
[grammar] ~126-~126: There might be a mistake here.
Context: ...| MongoDB root password |password| |MONGO_INITDB_DATABASE` | Initial Mong...
(QB_NEW_EN)
[grammar] ~127-~127: Use correct spacing
Context: ...Initial MongoDB database | exosphere | ### SDK Environment Variables To use the Ex...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~129-~129: Use correct spacing
Context: ...sphere` | ### SDK Environment Variables To use the Exosphere Python SDK with you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~131-~131: Use correct spacing
Context: ...riables in your development environment: | Variable | Description | Example Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~133-~133: There might be a mistake here.
Context: ...Variable | Description | Example Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~134-~134: There might be a mistake here.
Context: ...---------|-------------|---------------| | EXOSPHERE_STATE_MANAGER_URI | URL wh...
(QB_NEW_EN)
[grammar] ~135-~135: There might be a mistake here.
Context: ...r is running | http://localhost:8000 | | EXOSPHERE_API_KEY | API key for auth...
(QB_NEW_EN)
[grammar] ~136-~136: Use correct spacing
Context: ...TATE_MANAGER_SECRET) | exosphere@123 | Example SDK setup: ```bash # Set envir...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~138-~138: Use correct spacing
Context: ...exosphere@123` | Example SDK setup: bash # Set environment variables for SDK export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 # Or add to your .env file for your Python project echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env echo "EXOSPHERE_API_KEY=exosphere@123" >> .env ## Custom Configuration ### Using Your Own...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~149-~149: Use correct spacing
Context: ...23" >> .env ``` ## Custom Configuration ### Using Your Own Environment Variables Cr...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~151-~151: Use correct spacing
Context: ...### Using Your Own Environment Variables Create a .env file in the same directo...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~153-~153: Use correct spacing
Context: ...e directory as your docker-compose file: bash # MongoDB Configuration (REQUIRED for docker-compose.yml) MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ # Optional Configuration (has defaults) MONGO_DATABASE_NAME=exosphere STATE_MANAGER_SECRET=your-custom-secret-key SECRETS_ENCRYPTION_KEY=your-base64-encoded-encryption-key # Dashboard Configuration (Optional) NEXT_PUBLIC_DEFAULT_NAMESPACE=YourNamespace NEXT_PUBLIC_DEFAULT_API_KEY=your-custom-secret-key # For local MongoDB setup only (docker-compose-with-mongodb.yml) MONGO_INITDB_ROOT_USERNAME=admin MONGO_INITDB_ROOT_PASSWORD=password MONGO_INITDB_DATABASE=exosphere Then run with your custom configuration:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~174-~174: Use correct spacing
Context: ...Then run with your custom configuration: bash # For cloud MongoDB (recommended) docker compose -f docker-compose.yml up -d # For local MongoDB docker compose -f docker-compose-with-mongodb.yml up -d Note: The docker-compose files now aut...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~183-~183: Use correct spacing
Context: ...ble defaults for all optional variables. ### Generating a New Encryption Key To gene...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~185-~185: Use correct spacing
Context: ...es. ### Generating a New Encryption Key To generate a secure encryption key for ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~187-~187: Use correct spacing
Context: ...yption key for SECRETS_ENCRYPTION_KEY: bash # Using Python python -c "import base64; import os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())" # Using OpenSSL openssl rand -base64 32 ## Access Your Services After running the ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~197-~197: Use correct spacing
Context: ... -base64 32 ``` ## Access Your Services After running the Docker Compose command...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~199-~199: Use correct spacing
Context: ...fter running the Docker Compose command: - Exosphere Dashboard: http://localhost:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~201-~201: There might be a mistake here.
Context: ...phere Dashboard**: http://localhost:3000 - State Manager API: http://localhost:80...
(QB_NEW_EN)
[grammar] ~202-~202: There might be a mistake here.
Context: ...ate Manager API**: http://localhost:8000 - MongoDB (if using with-mongodb): http:...
(QB_NEW_EN)
[grammar] ~203-~203: There might be a mistake here.
Context: ...ng with-mongodb): http://localhost:27017 - API Documentation: http://localhost:80...
(QB_NEW_EN)
[grammar] ~204-~204: Use correct spacing
Context: ...umentation**: http://localhost:8000/docs ## Development Commands ```bash # Start se...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~206-~206: Use correct spacing
Context: ...lhost:8000/docs ## Development Commands bash # Start services in background docker compose -f docker-compose-with-mongodb.yml up -d # View logs docker compose -f docker-compose-with-mongodb.yml logs -f # Stop services docker compose -f docker-compose-with-mongodb.yml down # Stop services and remove volumes (⚠️ This will delete your data) docker compose -f docker-compose-with-mongodb.yml down -v # Pull latest images docker compose -f docker-compose-with-mongodb.yml pull # Restart a specific service docker compose -f docker-compose-with-mongodb.yml restart exosphere-state-manager ## Troubleshooting ### Check Service Healt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~228-~228: Use correct spacing
Context: ...re-state-manager ## Troubleshooting ### Check Service Health bash # Check if...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~230-~230: Use correct spacing
Context: ...roubleshooting ### Check Service Health bash # Check if all containers are running docker compose -f docker-compose-with-mongodb.yml ps # Check state manager health curl http://localhost:8000/health # View container logs docker compose -f docker-compose-with-mongodb.yml logs exosphere-state-manager ### Common Issues 1. *Port already in use...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~243-~243: Use correct spacing
Context: ...ere-state-manager ``` ### Common Issues 1. Port already in use: Change the port m...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~245-~245: Use correct spacing
Context: ...3000, 8000, or 27017 are already in use. 2. MongoDB connection issues: Ensure Mong...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~247-~247: Use correct spacing
Context: ...onfiguration handles this automatically. 3. Authentication errors: Verify your `ST...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~249-~249: Use correct spacing
Context: ...ate manager and dashboard configuration. 4. SDK connection issues: Make sure `EXOS...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~251-~251: Use correct spacing
Context: ...EYmatches yourSTATE_MANAGER_SECRET`. ## Next Steps Once your Exosphere instance...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~253-~253: Use correct spacing
Context: ...r STATE_MANAGER_SECRET. ## Next Steps Once your Exosphere instance is running:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~255-~255: Use correct spacing
Context: ...Once your Exosphere instance is running: 1. Set up your SDK environment variables:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~257-~257: Use correct spacing
Context: ...Set up your SDK environment variables**: bash export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 2. Install the Python SDK: ```bash ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~263-~263: Use correct spacing
Context: ...3 2. **Install the Python SDK**: bash uv add exospherehost ``` 3. Create your first workflow following t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~268-~268: There might be a mistake here.
Context: ...w** following the Getting Started Guide 4. Explore the dashboard at http://localh...
(QB_NEW_EN_OTHER)
[grammar] ~270-~270: There might be a mistake here.
Context: ...the dashboard** at http://localhost:3000 5. Check out the API documentation at htt...
(QB_NEW_EN_OTHER)
[grammar] ~272-~272: There might be a mistake here.
Context: ...entation** at http://localhost:8000/docs ## Support - [Documentation](https://docs....
(QB_NEW_EN_OTHER)
[grammar] ~274-~274: Use correct spacing
Context: ...t http://localhost:8000/docs ## Support - [Documentation](https://docs.exosphere.ho...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
README.md
[grammar] ~97-~97: Use correct spacing
Context: ... ``` ## Quick Start with Docker Compose Get Exosphere running locally in under 2...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~99-~99: Use correct spacing
Context: ...here running locally in under 2 minutes: bash # Option 1: With cloud MongoDB (recommended) echo "MONGO_URI=your-mongodb-connection-string" > .env curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml docker compose up -d # Option 2: With local MongoDB (development) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d Access your services: - Dashboard: h...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~112-~112: There might be a mistake here.
Context: ...odb.yml up -d ``` Access your services: - Dashboard: http://localhost:3000 - **A...
(QB_NEW_EN)
[grammar] ~113-~113: There might be a mistake here.
Context: ...: - Dashboard: http://localhost:3000 - API: http://localhost:8000 > **📝 Not...
(QB_NEW_EN)
[grammar] ~114-~114: Use correct spacing
Context: ...st:3000 - API: http://localhost:8000 > 📝 Note: This configuration is for **d...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~116-~116: Use correct spacing
Context: ....exosphere.host/docker-compose-setup)**. ## Documentation For comprehensive documen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~118-~118: Use correct spacing
Context: ...cker-compose-setup)**. ## Documentation For comprehensive documentation and guid...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~120-~120: There might be a mistake here.
Context: ...hensive documentation and guides, check out: - **[Docker Compose Setup](https://docs.exosp...
(QB_NEW_EN_OTHER)
🪛 markdownlint-cli2 (0.17.2)
docker-compose/README.md
29-29: Multiple consecutive blank lines
Expected: 1; Actual: 2
(MD012, no-multiple-blanks)
39-39: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
44-44: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
49-49: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
61-61: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
69-69: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
70-70: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
78-78: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
79-79: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
90-90: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
98-98: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
140-140: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
176-176: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
202-202: Bare URL used
(MD034, no-bare-urls)
203-203: Bare URL used
(MD034, no-bare-urls)
204-204: Bare URL used
(MD034, no-bare-urls)
205-205: Bare URL used
(MD034, no-bare-urls)
252-252: Multiple consecutive blank lines
Expected: 1; Actual: 2
(MD012, no-multiple-blanks)
257-257: Bare URL used
(MD034, no-bare-urls)
258-258: Trailing spaces
Expected: 0 or 2; Actual: 1
(MD009, no-trailing-spaces)
docs/docs/docker-compose-setup.md
38-38: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
43-43: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
48-48: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
60-60: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
68-68: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
69-69: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
77-77: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
78-78: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
89-89: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
97-97: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
139-139: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
175-175: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
201-201: Bare URL used
(MD034, no-bare-urls)
202-202: Bare URL used
(MD034, no-bare-urls)
203-203: Bare URL used
(MD034, no-bare-urls)
204-204: Bare URL used
(MD034, no-bare-urls)
258-258: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
264-264: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
270-270: Bare URL used
(MD034, no-bare-urls)
272-272: Bare URL used
(MD034, no-bare-urls)
278-278: Trailing spaces
Expected: 0 or 2; Actual: 1
(MD009, no-trailing-spaces)
278-278: Files should end with a single newline character
(MD047, single-trailing-newline)
README.md
113-113: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
113-113: Bare URL used
(MD034, no-bare-urls)
114-114: Bare URL used
(MD034, no-bare-urls)
🪛 YAMLlint (1.37.1)
docker-compose/docker-compose.yml
[error] 34-34: no new line character at the end of file
(new-line-at-end-of-file)
docker-compose/docker-compose-with-mongodb.yml
[error] 56-56: no new line character at the end of file
(new-line-at-end-of-file)
docs/mkdocs.yml
[error] 107-107: trailing spaces
(trailing-spaces)
🪛 Checkov (3.2.334)
docker-compose/docker-compose-with-mongodb.yml
[MEDIUM] 22-23: Basic Auth Credentials
(CKV_SECRET_4)
🔇 Additional comments (3)
docker-compose/README.md (3)
32-37: DocumentDB caveatDocumentDB is MongoDB-compatible but lacks some features and wire versions. Call this out to prevent surprises.
-We **recommend using a cloud MongoDB managed service** (MongoDB Atlas, AWS DocumentDB, etc.) for better performance, reliability, and security. +We **recommend using a managed MongoDB service** (e.g., MongoDB Atlas). If using AWS DocumentDB, verify feature compatibility (indexes, transactions, change streams) with Exosphere before proceeding.Would you like me to add a short compatibility matrix link/note once confirmed?
150-173: Clarify .env discovery semanticsdocker compose reads .env from the working directory/project root, not necessarily the compose file’s directory when using -f with another path. Your note implies automatic discovery “in the same directory.”
-**Note**: The docker-compose files now automatically use `.env` files in the same directory and provide sensible defaults for all optional variables. +**Note**: docker compose loads `.env` from the current working directory (project root). Ensure you run commands from the directory containing your `.env`, or pass `--env-file .env`.Optionally add examples using
--env-file.Also applies to: 176-182
65-99: Verified beta-latest tags for exosphere-state-manager and exosphere-dashboard; guide is safe to publish
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 11
♻️ Duplicate comments (7)
docker-compose/docker-compose.yml (2)
35-35: Add trailing newlineFix YAML/tools complaining about “no newline at end of file”.
3-3: Always pull latest image tag to avoid stale local cachesAdd
pull_policy: alwaysto both services.exosphere-state-manager: - image: ghcr.io/exospherehost/exosphere-state-manager:latest + image: ghcr.io/exospherehost/exosphere-state-manager:latest + pull_policy: always @@ exosphere-dashboard: - image: ghcr.io/exospherehost/exosphere-dashboard:latest + image: ghcr.io/exospherehost/exosphere-dashboard:latest + pull_policy: alwaysAlso applies to: 17-17
docs/docs/docker-compose-setup.md (1)
247-248: Fix misleading readiness claim;depends_ondoes not wait for readinessDocument healthchecks and
condition: service_healthyinstead of implying automatic readiness.-2. **MongoDB connection issues**: Ensure MongoDB is fully started before the state manager. The `depends_on` configuration handles this automatically. +2. **MongoDB connection issues**: Ensure MongoDB is ready before the state manager. `depends_on` only orders start and does not wait for readiness. Use healthchecks and `depends_on: condition: service_healthy` in the compose files.docker-compose/docker-compose-with-mongodb.yml (4)
56-56: Add trailing newlineSatisfy linters expecting a final newline.
3-3: Always pull latest images to avoid stale tagsAdd
pull_policy: alwaysto service images.exosphere-state-manager: - image: ghcr.io/exospherehost/exosphere-state-manager:latest + image: ghcr.io/exospherehost/exosphere-state-manager:latest + pull_policy: always @@ exosphere-dashboard: - image: ghcr.io/exospherehost/exosphere-dashboard:latest + image: ghcr.io/exospherehost/exosphere-dashboard:latest + pull_policy: alwaysAlso applies to: 34-35
38-41: Neutralize product-specific defaults and avoid exposing real secrets to the browserUse generic namespace and dev-only API key.
- - NEXT_PUBLIC_DEFAULT_NAMESPACE=${NEXT_PUBLIC_DEFAULT_NAMESPACE:-WhatPeopleWant} - - NEXT_PUBLIC_DEFAULT_API_KEY=${NEXT_PUBLIC_DEFAULT_API_KEY:-exosphere@123} + - NEXT_PUBLIC_DEFAULT_NAMESPACE=${NEXT_PUBLIC_DEFAULT_NAMESPACE:-default} + - NEXT_PUBLIC_DEFAULT_API_KEY=${NEXT_PUBLIC_DEFAULT_API_KEY:-dev-only-change-me}
3-5: Optional: rename or drop container_name for consistencyEither remove
container_namefor auto-names or useexosphere-mongodb.- container_name: mongodb + # container_name: exosphere-mongodb
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (4)
docker-compose/README.md(1 hunks)docker-compose/docker-compose-with-mongodb.yml(1 hunks)docker-compose/docker-compose.yml(1 hunks)docs/docs/docker-compose-setup.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/docs/docker-compose-setup.md
[grammar] ~1-~1: Use correct spacing
Context: # Docker Compose Setup Guide Get Exosphere running locally with Docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~3-~3: Use correct spacing
Context: ...ack locally for development and testing. ## Download Docker Compose Files First, do...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~5-~5: Use correct spacing
Context: ...sting. ## Download Docker Compose Files First, download the Docker Compose files...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~7-~7: Use correct spacing
Context: ...ompose files from the GitHub repository: ### Option 1: Download Both Files ```bash #...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~9-~9: Use correct spacing
Context: ...tory: ### Option 1: Download Both Files bash # Download docker-compose file for cloud MongoDB (recommended) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ### Option 2: Using wget ```bash # Download...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~19-~19: Use correct spacing
Context: ...ongodb.yml ### Option 2: Using wget bash # Download docker-compose file for cloud MongoDB (recommended) wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ``` ## Quick Start We **recommend using a clou...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~29-~29: Use correct spacing
Context: ...ose-with-mongodb.yml ``` ## Quick Start We **recommend using a cloud MongoDB man...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~31-~31: Use correct spacing
Context: ... performance, reliability, and security. ### Option 1: With Cloud MongoDB (Recommende...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~33-~33: Use correct spacing
Context: ...tion 1: With Cloud MongoDB (Recommended) 1. Set up a cloud MongoDB instance (MongoDB...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~35-~35: There might be a mistake here.
Context: ...ce (MongoDB Atlas, AWS DocumentDB, etc.) 2. Create a .env file with your MongoDB c...
(QB_NEW_EN_OTHER)
[grammar] ~37-~37: Use correct spacing
Context: ....env` file with your MongoDB connection: bash MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ 3. Download and start the services: ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~42-~42: Use correct spacing
Context: ... 3. Download and start the services: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml && docker compose -f docker-compose.yml up -d ``` This will start: - Exosphere State Manag...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~47-~47: There might be a mistake here.
Context: ...mpose.yml up -d ``` This will start: - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...t: - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ### Opt...
(QB_NEW_EN)
[grammar] ~49-~49: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ### Option 2: With Local MongoDB (Developmen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~51-~51: Use correct spacing
Context: ...2: With Local MongoDB (Development Only) For quick local testing only: ```bash c...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~53-~53: Use correct spacing
Context: ...ent Only) For quick local testing only: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml && docker compose -f docker-compose-with-mongodb.yml up -d This will start: - MongoDB database (por...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~59-~59: There might be a mistake here.
Context: ...-mongodb.yml up -d ``` This will start: - MongoDB database (port 27017) - Exospher...
(QB_NEW_EN)
[grammar] ~60-~60: There might be a mistake here.
Context: ...l start: - MongoDB database (port 27017) - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...7) - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ## Beta...
(QB_NEW_EN)
[grammar] ~62-~62: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ## Beta Version To run the latest beta ver...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~64-~64: Use correct spacing
Context: ...e Dashboard (port 3000) ## Beta Version To run the latest beta version of Exosph...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~66-~66: Use correct spacing
Context: ...place container tags with beta-latest: ### Quick Beta Setup with Cloud MongoDB ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~68-~68: Use correct spacing
Context: ... ### Quick Beta Setup with Cloud MongoDB bash # Download and modify for beta with cloud MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml perl -pi -e 's/:latest/:beta-latest/g' docker-compose.yml # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d ### Quick Beta Setup with Local MongoDB ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~77-~77: Use correct spacing
Context: ... ### Quick Beta Setup with Local MongoDB bash # Download and modify for beta with local MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml perl -pi -e 's/:latest/:beta-latest/g' docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d ### Manual Beta Setup (Alternative) 1. Down...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~85-~85: Use correct spacing
Context: ...``` ### Manual Beta Setup (Alternative) 1. Download the docker-compose file 2. Edit...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~87-~87: There might be a mistake here.
Context: ...ve) 1. Download the docker-compose file 2. Edit the file and change: ```yaml ...
(QB_NEW_EN_OTHER)
[grammar] ~88-~88: Use correct spacing
Context: ...ompose file 2. Edit the file and change: yaml # Change from: image: ghcr.io/exospherehost/exosphere-state-manager:latest image: ghcr.io/exospherehost/exosphere-dashboard:latest # To: image: ghcr.io/exospherehost/exosphere-state-manager:beta-latest image: ghcr.io/exospherehost/exosphere-dashboard:beta-latest 3. Start the services with `docker compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~98-~98: Use correct spacing
Context: ...atest ``` 3. Start the services with docker compose up -d ## Environment Variables ### Environment V...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~100-~100: Use correct spacing
Context: ...compose up -d` ## Environment Variables ### Environment Variables for State Manager ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~102-~102: Use correct spacing
Context: ... Environment Variables for State Manager | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~104-~104: There might be a mistake here.
Context: ...Description | Default Value | Required | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~105-~105: There might be a mistake here.
Context: ...------------|---------------|----------| | MONGO_URI | MongoDB connection strin...
(QB_NEW_EN)
[grammar] ~106-~106: There might be a mistake here.
Context: ... - | Required (for docker-compose.yml) | | STATE_MANAGER_SECRET | API key for s...
(QB_NEW_EN)
[grammar] ~107-~107: There might be a mistake here.
Context: ...cation | exosphere@123 | Has default | | MONGO_DATABASE_NAME | MongoDB databa...
(QB_NEW_EN)
[grammar] ~108-~108: There might be a mistake here.
Context: ...abase name | exosphere | Has default | | SECRETS_ENCRYPTION_KEY | Base64-enco...
(QB_NEW_EN)
[grammar] ~109-~109: Use correct spacing
Context: ...nb0_aQuQQHyz64s8qAERVU=| Has default | > **Important**: TheSECRETS_ENCRYPTION_KEY...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~111-~111: Use correct spacing
Context: ...osing access to existing encrypted data. ### Dashboard Environment Variables (All Opt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~113-~113: Use correct spacing
Context: ...ard Environment Variables (All Optional) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~115-~115: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~116-~116: There might be a mistake here.
Context: ...---------|-------------|---------------| | `NEXT_PUBLIC_EXOSPHERE_STATE_MANAGER_U...
(QB_NEW_EN)
[grammar] ~117-~117: There might be a mistake here.
Context: ... http://exosphere-state-manager:8000 | | NEXT_PUBLIC_DEFAULT_NAMESPACE | Defa...
(QB_NEW_EN)
[grammar] ~118-~118: There might be a mistake here.
Context: ...space for workflows | WhatPeopleWant | | NEXT_PUBLIC_DEFAULT_API_KEY | Defaul...
(QB_NEW_EN)
[grammar] ~119-~119: Use correct spacing
Context: ...PI key for dashboard | exosphere@123 | ### MongoDB Local Setup Variables (for docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~121-~121: Use correct spacing
Context: ...or docker-compose-with-mongodb.yml only) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~123-~123: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~124-~124: There might be a mistake here.
Context: ...---------|-------------|---------------| | MONGO_INITDB_ROOT_USERNAME | MongoDB...
(QB_NEW_EN)
[grammar] ~125-~125: There might be a mistake here.
Context: ...AME| MongoDB root username |admin| |MONGO_INITDB_ROOT_PASSWORD` | MongoDB...
(QB_NEW_EN)
[grammar] ~126-~126: There might be a mistake here.
Context: ...| MongoDB root password |password| |MONGO_INITDB_DATABASE` | Initial Mong...
(QB_NEW_EN)
[grammar] ~127-~127: Use correct spacing
Context: ...Initial MongoDB database | exosphere | ### SDK Environment Variables To use the Ex...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~129-~129: Use correct spacing
Context: ...sphere` | ### SDK Environment Variables To use the Exosphere Python SDK with you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~131-~131: Use correct spacing
Context: ...riables in your development environment: | Variable | Description | Example Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~133-~133: There might be a mistake here.
Context: ...Variable | Description | Example Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~134-~134: There might be a mistake here.
Context: ...---------|-------------|---------------| | EXOSPHERE_STATE_MANAGER_URI | URL wh...
(QB_NEW_EN)
[grammar] ~135-~135: There might be a mistake here.
Context: ...r is running | http://localhost:8000 | | EXOSPHERE_API_KEY | API key for auth...
(QB_NEW_EN)
[grammar] ~136-~136: Use correct spacing
Context: ...TATE_MANAGER_SECRET) | exosphere@123 | Example SDK setup: ```bash # Set envir...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~138-~138: Use correct spacing
Context: ...exosphere@123` | Example SDK setup: bash # Set environment variables for SDK export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 # Or add to your .env file for your Python project echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env echo "EXOSPHERE_API_KEY=exosphere@123" >> .env ## Custom Configuration ### Using Your Own...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~149-~149: Use correct spacing
Context: ...23" >> .env ``` ## Custom Configuration ### Using Your Own Environment Variables Cr...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~151-~151: Use correct spacing
Context: ...### Using Your Own Environment Variables Create a .env file in the same directo...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~153-~153: Use correct spacing
Context: ...e directory as your docker-compose file: bash # MongoDB Configuration (REQUIRED for docker-compose.yml) MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ # Optional Configuration (has defaults) MONGO_DATABASE_NAME=exosphere STATE_MANAGER_SECRET=your-custom-secret-key SECRETS_ENCRYPTION_KEY=your-base64-encoded-encryption-key # Dashboard Configuration (Optional) NEXT_PUBLIC_DEFAULT_NAMESPACE=YourNamespace NEXT_PUBLIC_DEFAULT_API_KEY=your-custom-secret-key # For local MongoDB setup only (docker-compose-with-mongodb.yml) MONGO_INITDB_ROOT_USERNAME=admin MONGO_INITDB_ROOT_PASSWORD=password MONGO_INITDB_DATABASE=exosphere Then run with your custom configuration:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~174-~174: Use correct spacing
Context: ...Then run with your custom configuration: bash # For cloud MongoDB (recommended) docker compose -f docker-compose.yml up -d # For local MongoDB docker compose -f docker-compose-with-mongodb.yml up -d Note: The docker-compose files now aut...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~183-~183: Use correct spacing
Context: ...ble defaults for all optional variables. ### Generating a New Encryption Key To gene...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~185-~185: Use correct spacing
Context: ...es. ### Generating a New Encryption Key To generate a secure encryption key for ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~187-~187: Use correct spacing
Context: ...yption key for SECRETS_ENCRYPTION_KEY: bash # Using Python python -c "import base64; import os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())" # Using OpenSSL openssl rand -base64 32 ## Access Your Services After running the ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~197-~197: Use correct spacing
Context: ... -base64 32 ``` ## Access Your Services After running the Docker Compose command...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~199-~199: Use correct spacing
Context: ...fter running the Docker Compose command: - Exosphere Dashboard: http://localhost:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~201-~201: There might be a mistake here.
Context: ...phere Dashboard**: http://localhost:3000 - State Manager API: http://localhost:80...
(QB_NEW_EN)
[grammar] ~202-~202: There might be a mistake here.
Context: ...ate Manager API**: http://localhost:8000 - MongoDB (if using with-mongodb): http:...
(QB_NEW_EN)
[grammar] ~203-~203: There might be a mistake here.
Context: ...ng with-mongodb): http://localhost:27017 - API Documentation: http://localhost:80...
(QB_NEW_EN)
[grammar] ~204-~204: Use correct spacing
Context: ...umentation**: http://localhost:8000/docs ## Development Commands ```bash # Start se...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~206-~206: Use correct spacing
Context: ...lhost:8000/docs ## Development Commands bash # Start services in background docker compose -f docker-compose-with-mongodb.yml up -d # View logs docker compose -f docker-compose-with-mongodb.yml logs -f # Stop services docker compose -f docker-compose-with-mongodb.yml down # Stop services and remove volumes (⚠️ This will delete your data) docker compose -f docker-compose-with-mongodb.yml down -v # Pull latest images docker compose -f docker-compose-with-mongodb.yml pull # Restart a specific service docker compose -f docker-compose-with-mongodb.yml restart exosphere-state-manager ## Troubleshooting ### Check Service Healt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~228-~228: Use correct spacing
Context: ...re-state-manager ## Troubleshooting ### Check Service Health bash # Check if...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~230-~230: Use correct spacing
Context: ...roubleshooting ### Check Service Health bash # Check if all containers are running docker compose -f docker-compose-with-mongodb.yml ps # Check state manager health curl http://localhost:8000/health # View container logs docker compose -f docker-compose-with-mongodb.yml logs exosphere-state-manager ### Common Issues 1. *Port already in use...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~243-~243: Use correct spacing
Context: ...ere-state-manager ``` ### Common Issues 1. Port already in use: Change the port m...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~245-~245: Use correct spacing
Context: ...3000, 8000, or 27017 are already in use. 2. MongoDB connection issues: Ensure Mong...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~247-~247: Use correct spacing
Context: ...onfiguration handles this automatically. 3. Authentication errors: Verify your `ST...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~249-~249: Use correct spacing
Context: ...ate manager and dashboard configuration. 4. SDK connection issues: Make sure `EXOS...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~251-~251: Use correct spacing
Context: ...EYmatches yourSTATE_MANAGER_SECRET`. ## Next Steps Once your Exosphere instance...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~253-~253: Use correct spacing
Context: ...r STATE_MANAGER_SECRET. ## Next Steps Once your Exosphere instance is running:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~255-~255: Use correct spacing
Context: ...Once your Exosphere instance is running: 1. Set up your SDK environment variables:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~257-~257: Use correct spacing
Context: ...Set up your SDK environment variables**: bash export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 2. Install the Python SDK: ```bash ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~263-~263: Use correct spacing
Context: ...3 2. **Install the Python SDK**: bash uv add exospherehost ``` 3. Create your first workflow following t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~268-~268: There might be a mistake here.
Context: ...w** following the Getting Started Guide 4. Explore the dashboard at http://localh...
(QB_NEW_EN_OTHER)
[grammar] ~270-~270: There might be a mistake here.
Context: ...the dashboard** at http://localhost:3000 5. Check out the API documentation at htt...
(QB_NEW_EN_OTHER)
[grammar] ~272-~272: There might be a mistake here.
Context: ...entation** at http://localhost:8000/docs ## Support - [Documentation](https://docs....
(QB_NEW_EN_OTHER)
[grammar] ~274-~274: Use correct spacing
Context: ...t http://localhost:8000/docs ## Support - [Documentation](https://docs.exosphere.ho...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
docker-compose/README.md
[grammar] ~1-~1: Use correct spacing
Context: # Exosphere Docker Compose Setup This directory contains Docker Compose f...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🪛 markdownlint-cli2 (0.17.2)
docs/docs/docker-compose-setup.md
38-38: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
43-43: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
48-48: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
60-60: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
68-68: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
69-69: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
77-77: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below
(MD022, blanks-around-headings)
78-78: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
89-89: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
97-97: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
139-139: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
175-175: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
201-201: Bare URL used
(MD034, no-bare-urls)
202-202: Bare URL used
(MD034, no-bare-urls)
203-203: Bare URL used
(MD034, no-bare-urls)
204-204: Bare URL used
(MD034, no-bare-urls)
258-258: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
264-264: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
270-270: Bare URL used
(MD034, no-bare-urls)
272-272: Bare URL used
(MD034, no-bare-urls)
docker-compose/README.md
4-4: Files should end with a single newline character
(MD047, single-trailing-newline)
🪛 Checkov (3.2.334)
docker-compose/docker-compose-with-mongodb.yml
[MEDIUM] 22-23: Basic Auth Credentials
(CKV_SECRET_4)
🔇 Additional comments (1)
docs/docs/docker-compose-setup.md (1)
68-75: LGTM on portable beta retaggingSwitch to
perl -pifixes cross-platform sed issues. Nice.Also applies to: 77-83
- Updated container names for MongoDB and state manager for consistency. - Added health checks for MongoDB and state manager services to ensure readiness before dependencies start. - Improved README and documentation for clarity, including environment variable security notes and updated links. - Standardized URL formatting in documentation for better readability.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 10
♻️ Duplicate comments (8)
docker-compose/docker-compose.yml (2)
16-21: Normalize healthcheck to CMD-SHELL for better error propagation.Allows piping/grepping if needed and ensures non-zero exit on failures consistently.
- healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:8000/health"] + healthcheck: + test: ["CMD-SHELL", "curl -fsS http://localhost:8000/health || exit 1"] interval: 10s timeout: 5s retries: 5 start_period: 30s
8-11: Remove real-looking secret defaults; require or mark as dev-only.Defaulting secrets risks accidental reuse and leaks.
- - MONGO_URI=${MONGO_URI} - - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-exosphere@123} + - MONGO_URI=${MONGO_URI:?Set MONGO_URI in .env} + - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-dev-only-change-me} - MONGO_DATABASE_NAME=${MONGO_DATABASE_NAME:-exosphere} - - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-YTzpUlBGLSwm-3yKJRJTZnb0_aQuQQHyz64s8qAERVU=} + - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-dev-only-not-secure}docker-compose/docker-compose-with-mongodb.yml (3)
7-9: Stop shipping default DB credentials.Require a root password to be set; don’t default to “password”.
- MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME:-admin} - MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD:-password} - MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE:-exosphere} + MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME:-admin} + MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD:?Set MONGO_INITDB_ROOT_PASSWORD in .env} + MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE:-exosphere}
29-33: Eliminate embedded credentials and real-looking defaults in MONGO_URI and secrets.Avoid plaintext creds; construct URI from env vars and use dev-only placeholders.
- - MONGO_URI=${MONGO_URI:-mongodb://admin:password@exosphere-mongodb:27017/} - - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-exosphere@123} + - MONGO_URI=${MONGO_URI:-mongodb://${MONGO_INITDB_ROOT_USERNAME:-admin}:${MONGO_INITDB_ROOT_PASSWORD}@exosphere-mongodb:27017/${MONGO_INITDB_DATABASE:-exosphere}?authSource=admin} + - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-dev-only-change-me} - MONGO_DATABASE_NAME=${MONGO_DATABASE_NAME:-exosphere} - - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-YTzpUlBGLSwm-3yKJRJTZnb0_aQuQQHyz64s8qAERVU=} + - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-dev-only-not-secure}
16-21: Make MongoDB healthcheck robust.Check the “ok: 1” field and fail otherwise; increase retries for slow starts.
- healthcheck: - test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] - interval: 10s - timeout: 5s - retries: 5 - start_period: 30s + healthcheck: + test: ["CMD-SHELL", "mongosh --quiet --eval \"db.runCommand({ ping: 1 }).ok\" | grep -q 1"] + interval: 10s + timeout: 5s + retries: 8 + start_period: 30sREADME.md (1)
118-122: Minor: ensure blank line before lists (MD032).Add a blank line before the “Access your services” bullets.
-Access your services: +Access your services: + - **Dashboard**: `http://localhost:3000` - **API**: `http://localhost:8000`docs/docs/docker-compose-setup.md (2)
39-40: Quote MONGO_URI in .env examples to survive special characters.- MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ + MONGO_URI="mongodb+srv://username:password@your-cluster.mongodb.net/" @@ -# MongoDB Configuration (REQUIRED for docker-compose.yml) -MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ +# MongoDB Configuration (REQUIRED for docker-compose.yml) +# Quote if your password contains special characters +MONGO_URI="mongodb+srv://username:password@your-cluster.mongodb.net/"Also applies to: 202-205
145-152: Remove real-looking defaults; mark secrets as required.Don’t ship defaults for auth/encryption. Make users set strong values.
| `MONGO_URI` | MongoDB connection string | - | Required (for docker-compose.yml) | -| `STATE_MANAGER_SECRET` | API key for state manager authentication | `exosphere@123` | Has default | +| `STATE_MANAGER_SECRET` | API key for state manager authentication | (set a strong random value) | Required | | `MONGO_DATABASE_NAME` | MongoDB database name | `exosphere` | Has default | -| `SECRETS_ENCRYPTION_KEY` | Base64-encoded encryption key for secrets | `YTzpUlBGLSwm-3yKJRJTZnb0_aQuQQHyz64s8qAERVU=` | Has default | +| `SECRETS_ENCRYPTION_KEY` | Base64-encoded encryption key for secrets | (generate; see below) | Required |
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (7)
README.md(1 hunks)dashboard/README.md(1 hunks)docker-compose/docker-compose-with-mongodb.yml(1 hunks)docker-compose/docker-compose.yml(1 hunks)docs/docs/docker-compose-setup.md(1 hunks)docs/mkdocs.yml(5 hunks)landing-page/README.md(1 hunks)
🧰 Additional context used
🪛 LanguageTool
dashboard/README.md
[grammar] ~69-~69: Use correct spacing
Context: .... Open your browser and navigate to http://localhost:3000 ### Environment Configuration The dashboard...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
landing-page/README.md
[grammar] ~17-~17: Use correct spacing
Context: ...00` with your browser to see the result. You can start editing the page by modify...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
README.md
[grammar] ~97-~97: Use correct spacing
Context: ... ``` ## Quick Start with Docker Compose Get Exosphere running locally in under 2...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~99-~99: Use correct spacing
Context: ...here running locally in under 2 minutes: bash # Option 1: With cloud MongoDB (recommended) echo "MONGO_URI=your-mongodb-connection-string" > .env curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml docker compose up -d # Option 2: With local MongoDB (development) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d Environment Configuration: - Docker Co...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~112-~112: There might be a mistake here.
Context: ... up -d ``` Environment Configuration: - Docker Compose automatically loads `.env...
(QB_NEW_EN)
[grammar] ~113-~113: There might be a mistake here.
Context: ... .env files from the working directory - Create your .env file in the same dire...
(QB_NEW_EN_OTHER)
[grammar] ~114-~114: There might be a mistake here.
Context: ...me directory as your docker-compose file >
(QB_NEW_EN_OTHER)
[typographical] ~116-~116: To join two clauses or set off examples, consider using an em dash.
Context: ...er store real secrets in NEXT_PUBLIC_ variables - use server-side environment variables inste...
(QB_NEW_EN_DASH_RULE_EM)
[grammar] ~116-~116: Use correct spacing
Context: ...rver-side environment variables instead. Access your services: - Dashboard: ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~118-~118: Use correct spacing
Context: ...ariables instead. Access your services: - Dashboard: http://localhost:3000 - *...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~120-~120: There might be a mistake here.
Context: ...Access your services: - Dashboard: http://localhost:3000 - API: http://localhost:8000 > **📝 N...
(QB_NEW_EN)
[grammar] ~121-~121: Use correct spacing
Context: ...d**: http://localhost:3000 - API: http://localhost:8000 > 📝 Note: This configuration is for **d...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~123-~123: Use correct spacing
Context: ....exosphere.host/docker-compose-setup)**. ## Documentation For comprehensive documen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~125-~125: Use correct spacing
Context: ...cker-compose-setup)**. ## Documentation For comprehensive documentation and guid...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~127-~127: There might be a mistake here.
Context: ...hensive documentation and guides, check out: - **[Docker Compose Setup](https://docs.exosp...
(QB_NEW_EN_OTHER)
docs/docs/docker-compose-setup.md
[grammar] ~1-~1: Use correct spacing
Context: # Docker Compose Setup Guide Get Exosphere running locally with Docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~3-~3: Use correct spacing
Context: ...ack locally for development and testing. ## Download Docker Compose Files First, do...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~5-~5: Use correct spacing
Context: ...sting. ## Download Docker Compose Files First, download the Docker Compose files...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~7-~7: Use correct spacing
Context: ...ompose files from the GitHub repository: ### Option 1: Download Both Files ```bash #...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~9-~9: Use correct spacing
Context: ...tory: ### Option 1: Download Both Files bash # Download docker-compose file for cloud MongoDB (recommended) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ### Option 2: Using wget ```bash # Download...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~19-~19: Use correct spacing
Context: ...ongodb.yml ### Option 2: Using wget bash # Download docker-compose file for cloud MongoDB (recommended) wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ``` ## Quick Start We **recommend using a clou...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~29-~29: Use correct spacing
Context: ...ose-with-mongodb.yml ``` ## Quick Start We **recommend using a cloud MongoDB man...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~31-~31: Use correct spacing
Context: ... performance, reliability, and security. ### Option 1: With Cloud MongoDB (Recommende...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~33-~33: Use correct spacing
Context: ...tion 1: With Cloud MongoDB (Recommended) 1. Set up a cloud MongoDB instance (MongoDB...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~35-~35: There might be a mistake here.
Context: ...ce (MongoDB Atlas, AWS DocumentDB, etc.) 2. Create a .env file with your MongoDB c...
(QB_NEW_EN_OTHER)
[grammar] ~37-~37: Use correct spacing
Context: ....env` file with your MongoDB connection: bash MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ 3. Download and start the services: ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~42-~42: Use correct spacing
Context: ... 3. Download and start the services: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml && docker compose -f docker-compose.yml up -d ``` This will start: - Exosphere State Manag...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~47-~47: There might be a mistake here.
Context: ...mpose.yml up -d ``` This will start: - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...t: - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ### Opt...
(QB_NEW_EN)
[grammar] ~49-~49: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ### Option 2: With Local MongoDB (Developmen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~51-~51: Use correct spacing
Context: ...2: With Local MongoDB (Development Only) For quick local testing only: ```bash c...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~53-~53: Use correct spacing
Context: ...ent Only) For quick local testing only: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml && docker compose -f docker-compose-with-mongodb.yml up -d This will start: - MongoDB database (por...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~59-~59: There might be a mistake here.
Context: ...-mongodb.yml up -d ``` This will start: - MongoDB database (port 27017) - Exospher...
(QB_NEW_EN)
[grammar] ~60-~60: There might be a mistake here.
Context: ...l start: - MongoDB database (port 27017) - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...7) - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ## Beta...
(QB_NEW_EN)
[grammar] ~62-~62: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ## Beta Version To run the latest beta ver...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~64-~64: Use correct spacing
Context: ...e Dashboard (port 3000) ## Beta Version To run the latest beta version of Exosph...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~66-~66: Use correct spacing
Context: ...place container tags with beta-latest: ### Quick Beta Setup with Cloud MongoDB **O...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~68-~68: Use correct spacing
Context: ... ### Quick Beta Setup with Cloud MongoDB **Option 1: Environment Variable Approach ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~70-~70: Use correct spacing
Context: ...ironment Variable Approach (Recommended)** bash # Download compose file curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Set image tag via environment variable export EXOSPHERE_TAG=beta-latest # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d Option 2: In-place File Editing ```bas...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~80-~80: Use correct spacing
Context: ...d **Option 2: In-place File Editing**bash # Download and modify for beta with cloud MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Portable approach (works on all platforms): perl -pi -e 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml # Platform-specific alternatives: # Linux/GNU sed: # sed -i 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml # macOS/BSD sed: # sed -i '' 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d ``` ### Quick Beta Setup with Local MongoDB **O...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~98-~98: Use correct spacing
Context: ... ### Quick Beta Setup with Local MongoDB **Option 1: Environment Variable Approach ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~100-~100: Use correct spacing
Context: ...ironment Variable Approach (Recommended)** bash # Download compose file curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml # Set image tag via environment variable export EXOSPHERE_TAG=beta-latest docker compose -f docker-compose-with-mongodb.yml up -d Option 2: In-place File Editing ```bas...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~109-~109: Use correct spacing
Context: ...d **Option 2: In-place File Editing**bash # Download and modify for beta with local MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml # Portable approach (works on all platforms): perl -pi -e 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml # Platform-specific alternatives: # Linux/GNU sed: # sed -i 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml # macOS/BSD sed: # sed -i '' 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d ``` ### Manual Beta Setup (Alternative) 1. Down...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~126-~126: Use correct spacing
Context: ...``` ### Manual Beta Setup (Alternative) 1. Download the docker-compose file 2. Edit...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~128-~128: There might be a mistake here.
Context: ...ve) 1. Download the docker-compose file 2. Edit the file and change: ```yaml ...
(QB_NEW_EN_OTHER)
[grammar] ~129-~129: Use correct spacing
Context: ...ompose file 2. Edit the file and change: yaml # Change from: image: ghcr.io/exospherehost/exosphere-state-manager:latest image: ghcr.io/exospherehost/exosphere-dashboard:latest # To: image: ghcr.io/exospherehost/exosphere-state-manager:beta-latest image: ghcr.io/exospherehost/exosphere-dashboard:beta-latest 3. Start the services with `docker compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~139-~139: Use correct spacing
Context: ...atest ``` 3. Start the services with docker compose up -d ## Environment Variables ### Environment V...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~141-~141: Use correct spacing
Context: ...compose up -d` ## Environment Variables ### Environment Variables for State Manager ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~143-~143: Use correct spacing
Context: ... Environment Variables for State Manager | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~145-~145: There might be a mistake here.
Context: ...Description | Default Value | Required | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~146-~146: There might be a mistake here.
Context: ...------------|---------------|----------| | MONGO_URI | MongoDB connection strin...
(QB_NEW_EN)
[grammar] ~147-~147: There might be a mistake here.
Context: ... - | Required (for docker-compose.yml) | | STATE_MANAGER_SECRET | API key for s...
(QB_NEW_EN)
[grammar] ~148-~148: There might be a mistake here.
Context: ...cation | exosphere@123 | Has default | | MONGO_DATABASE_NAME | MongoDB databa...
(QB_NEW_EN)
[grammar] ~149-~149: There might be a mistake here.
Context: ...abase name | exosphere | Has default | | SECRETS_ENCRYPTION_KEY | Base64-enco...
(QB_NEW_EN)
[grammar] ~150-~150: Use correct spacing
Context: ...nb0_aQuQQHyz64s8qAERVU=| Has default | > **Important**: TheSECRETS_ENCRYPTION_KEY...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~152-~152: Use correct spacing
Context: ...osing access to existing encrypted data. ### Dashboard Environment Variables (All Opt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~154-~154: Use correct spacing
Context: ...ard Environment Variables (All Optional) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~156-~156: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~157-~157: There might be a mistake here.
Context: ...---------|-------------|---------------| | `NEXT_PUBLIC_EXOSPHERE_STATE_MANAGER_U...
(QB_NEW_EN)
[grammar] ~158-~158: There might be a mistake here.
Context: ... http://exosphere-state-manager:8000 | | NEXT_PUBLIC_DEFAULT_NAMESPACE | Defa...
(QB_NEW_EN)
[grammar] ~159-~159: There might be a mistake here.
Context: ...lt namespace for workflows | default | | NEXT_PUBLIC_DEFAULT_API_KEY | Defaul...
(QB_NEW_EN)
[grammar] ~160-~160: Use correct spacing
Context: ... | <your-api-key> (dev-only example) | > NEXT_PUBLIC_* v...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~162-~162: There might be a mistake here.
Context: ...Never put real secrets in NEXT_PUBLIC_ variables*. For production: > - Use server-side ...
(QB_NEW_EN_OTHER)
[grammar] ~162-~162: There might be a mistake here.
Context: ...EXT_PUBLIC_ variables**. For production: > - Use server-side environment variables (w...
(QB_NEW_EN)
[grammar] ~163-~163: There might be a mistake here.
Context: ... Use server-side environment variables (without NEXT_PUBLIC_ prefix) for real secrets >...
(QB_NEW_EN)
[grammar] ~163-~163: There might be a mistake here.
Context: ...ut NEXT_PUBLIC_ prefix) for real secrets > - Implement server-side token exchange or ...
(QB_NEW_EN_OTHER)
[grammar] ~164-~164: There might be a mistake here.
Context: ...hange or API proxy for secret operations > - Store sensitive data in secure vaults, n...
(QB_NEW_EN_OTHER)
[grammar] ~165-~165: There might be a mistake here.
Context: ... vaults, not client-accessible variables > - The defaults shown above are development...
(QB_NEW_EN_OTHER)
[grammar] ~166-~166: There might be a mistake here.
Context: ...hown above are development examples only ### MongoDB Local Setup Variables (for docke...
(QB_NEW_EN_OTHER)
[grammar] ~168-~168: Use correct spacing
Context: ...or docker-compose-with-mongodb.yml only) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~170-~170: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~171-~171: There might be a mistake here.
Context: ...---------|-------------|---------------| | MONGO_INITDB_ROOT_USERNAME | MongoDB...
(QB_NEW_EN)
[grammar] ~172-~172: There might be a mistake here.
Context: ...AME| MongoDB root username |admin| |MONGO_INITDB_ROOT_PASSWORD` | MongoDB...
(QB_NEW_EN)
[grammar] ~173-~173: There might be a mistake here.
Context: ...| MongoDB root password |password| |MONGO_INITDB_DATABASE` | Initial Mong...
(QB_NEW_EN)
[grammar] ~174-~174: Use correct spacing
Context: ...Initial MongoDB database | exosphere | ### SDK Environment Variables To use the Ex...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~176-~176: Use correct spacing
Context: ...sphere` | ### SDK Environment Variables To use the Exosphere Python SDK with you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~178-~178: Use correct spacing
Context: ...riables in your development environment: | Variable | Description | Example Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~180-~180: There might be a mistake here.
Context: ...Variable | Description | Example Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~181-~181: There might be a mistake here.
Context: ...---------|-------------|---------------| | EXOSPHERE_STATE_MANAGER_URI | URL wh...
(QB_NEW_EN)
[grammar] ~182-~182: There might be a mistake here.
Context: ...r is running | http://localhost:8000 | | EXOSPHERE_API_KEY | API key for auth...
(QB_NEW_EN)
[grammar] ~183-~183: Use correct spacing
Context: ...TATE_MANAGER_SECRET) | exosphere@123 | Example SDK setup: ```bash # Set envir...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~185-~185: Use correct spacing
Context: ...exosphere@123` | Example SDK setup: bash # Set environment variables for SDK export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 # Or add to your .env file for your Python project echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env echo "EXOSPHERE_API_KEY=exosphere@123" >> .env ## Custom Configuration ### Using Your Own...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~196-~196: Use correct spacing
Context: ...23" >> .env ``` ## Custom Configuration ### Using Your Own Environment Variables Cr...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~198-~198: Use correct spacing
Context: ...### Using Your Own Environment Variables Create a .env file in the same directo...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~200-~200: Use correct spacing
Context: ...e directory as your docker-compose file: bash # MongoDB Configuration (REQUIRED for docker-compose.yml) MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ # Optional Configuration (has defaults) MONGO_DATABASE_NAME=exosphere STATE_MANAGER_SECRET=your-custom-secret-key SECRETS_ENCRYPTION_KEY=your-base64-encoded-encryption-key # Dashboard Configuration (Optional) NEXT_PUBLIC_DEFAULT_NAMESPACE=YourNamespace NEXT_PUBLIC_DEFAULT_API_KEY=your-custom-secret-key # For local MongoDB setup only (docker-compose-with-mongodb.yml) MONGO_INITDB_ROOT_USERNAME=admin MONGO_INITDB_ROOT_PASSWORD=password MONGO_INITDB_DATABASE=exosphere Then run with your custom configuration:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~221-~221: Use correct spacing
Context: ...Then run with your custom configuration: bash # For cloud MongoDB (recommended) docker compose -f docker-compose.yml up -d # For local MongoDB docker compose -f docker-compose-with-mongodb.yml up -d Note: The docker-compose files now aut...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~230-~230: Use correct spacing
Context: ...ble defaults for all optional variables. ### Legacy Docker Compose v1 Compatibility ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~232-~232: Use correct spacing
Context: ...# Legacy Docker Compose v1 Compatibility If you have the legacy docker-compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~234-~234: Use correct spacing
Context: ...u can use the hyphenated command format: bash # Legacy v1 commands (replace "docker compose" with "docker-compose"): docker-compose -f docker-compose.yml up -d docker-compose -f docker-compose-with-mongodb.yml up -d docker-compose -f docker-compose-with-mongodb.yml logs -f docker-compose -f docker-compose-with-mongodb.yml down Creating an alias (optional): To use t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~244-~244: Use correct spacing
Context: ...as shown in this guide, create an alias: bash # Add to your shell profile (~/.bashrc, ~/.zshrc, etc.): alias 'docker compose'='docker-compose' # Or install the v2 plugin: # https://docs.docker.com/compose/install/ ### Generating a New Encryption Key To gene...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~253-~253: Use correct spacing
Context: ...``` ### Generating a New Encryption Key To generate a secure encryption key for ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~255-~255: Use correct spacing
Context: ...yption key for SECRETS_ENCRYPTION_KEY: bash # Using Python python -c "import base64; import os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())" # Using OpenSSL openssl rand -base64 32 ## Access Your Services After running the ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~265-~265: Use correct spacing
Context: ... -base64 32 ``` ## Access Your Services After running the Docker Compose command...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~267-~267: Use correct spacing
Context: ...fter running the Docker Compose command: - Exosphere Dashboard: `http://localhost...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~269-~269: There might be a mistake here.
Context: ...se command: - Exosphere Dashboard: http://localhost:3000 - State Manager API: `http://localhost:8...
(QB_NEW_EN)
[grammar] ~270-~270: There might be a mistake here.
Context: ...ocalhost:3000- **State Manager API**:http://localhost:8000` - MongoDB (if using with-mongodb): `mong...
(QB_NEW_EN)
[typographical] ~271-~271: To join two clauses or set off examples, consider using an em dash.
Context: ...godb): mongodb://localhost:27017 (not HTTP - use MongoDB clients like MongoDB Compass or...
(QB_NEW_EN_DASH_RULE_EM)
[grammar] ~271-~271: There might be a mistake here.
Context: ...clients like MongoDB Compass or mongosh) - API Documentation: `http://localhost:8...
(QB_NEW_EN)
[grammar] ~272-~272: Use correct spacing
Context: ...ss or mongosh) - API Documentation: http://localhost:8000/docs ## Development Commands ```bash # Start se...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~274-~274: Use correct spacing
Context: ...host:8000/docs` ## Development Commands bash # Start services in background docker compose -f docker-compose-with-mongodb.yml up -d # View logs docker compose -f docker-compose-with-mongodb.yml logs -f # Stop services docker compose -f docker-compose-with-mongodb.yml down # Stop services and remove volumes (⚠️ This will delete your data) docker compose -f docker-compose-with-mongodb.yml down -v # Pull latest images docker compose -f docker-compose-with-mongodb.yml pull # Restart a specific service docker compose -f docker-compose-with-mongodb.yml restart exosphere-state-manager ## Troubleshooting ### Check Service Healt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~296-~296: Use correct spacing
Context: ...re-state-manager ## Troubleshooting ### Check Service Health bash # Check if...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~298-~298: Use correct spacing
Context: ...roubleshooting ### Check Service Health bash # Check if all containers are running docker compose -f docker-compose-with-mongodb.yml ps # Check state manager health curl http://localhost:8000/health # View container logs docker compose -f docker-compose-with-mongodb.yml logs exosphere-state-manager ### Common Issues 1. *Port already in use...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~311-~311: Use correct spacing
Context: ...ere-state-manager ``` ### Common Issues 1. Port already in use: Change the port m...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~313-~313: Use correct spacing
Context: ...3000, 8000, or 27017 are already in use. 2. MongoDB connection issues: Ensure Mong...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~315-~315: There might be a mistake here.
Context: ...s for container startup, not readiness. For proper health-aware startup, add a heal...
(QB_NEW_EN)
[grammar] ~315-~315: There might be a mistake here.
Context: ... For proper health-aware startup, add a healthcheck to the MongoDB service: ```yaml ...
(QB_NEW_EN_OTHER)
[grammar] ~315-~315: Use correct spacing
Context: ...dd a healthcheck to the MongoDB service: yaml mongodb: # ... other config ... healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 5s timeout: 3s retries: 20 start_period: 30s Then update the state manager dependency...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~328-~328: Use correct spacing
Context: ...e manager dependency to wait for health: yaml exosphere-state-manager: # ... other config ... depends_on: mongodb: condition: service_healthy 3. Authentication errors: Verify your `ST...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~337-~337: Use correct spacing
Context: ...ate manager and dashboard configuration. 4. SDK connection issues: Make sure `EXOS...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~339-~339: Use correct spacing
Context: ...EYmatches yourSTATE_MANAGER_SECRET`. ## Next Steps Once your Exosphere instance...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~341-~341: Use correct spacing
Context: ...r STATE_MANAGER_SECRET. ## Next Steps Once your Exosphere instance is running:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~343-~343: Use correct spacing
Context: ...Once your Exosphere instance is running: 1. Set up your SDK environment variables:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~345-~345: Use correct spacing
Context: ...Set up your SDK environment variables**: bash export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 2. Install the Python SDK: ```bash ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~351-~351: Use correct spacing
Context: ...3 2. **Install the Python SDK**: bash uv add exospherehost ``` 3. Create your first workflow following t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~356-~356: There might be a mistake here.
Context: ...w** following the Getting Started Guide 4. Explore the dashboard at `http://local...
(QB_NEW_EN_OTHER)
[grammar] ~358-~358: Use correct spacing
Context: ...arted) 4. Explore the dashboard at http://localhost:3000 5. Check out the API documentation at `ht...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~360-~360: Use correct spacing
Context: ... Check out the API documentation at http://localhost:8000/docs ## Support - [Documentation](https://docs....
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~362-~362: Use correct spacing
Context: ...http://localhost:8000/docs ## Support - [Documentation](https://docs.exosphere.ho...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🪛 markdownlint-cli2 (0.17.2)
dashboard/README.md
69-69: Ordered list item prefix
Expected: 1; Actual: 5; Style: 1/1/1
(MD029, ol-prefix)
README.md
113-113: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
docs/docs/docker-compose-setup.md
38-38: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
43-43: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
48-48: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
60-60: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
70-70: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
71-71: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
80-80: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
81-81: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
100-100: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
101-101: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
109-109: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
110-110: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
130-130: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
138-138: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
163-163: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
186-186: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
222-222: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
245-245: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
329-329: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
346-346: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
352-352: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
🪛 Checkov (3.2.334)
docker-compose/docker-compose-with-mongodb.yml
[MEDIUM] 29-30: Basic Auth Credentials
(CKV_SECRET_4)
🔇 Additional comments (9)
landing-page/README.md (1)
17-17: LGTM: URL formatting consistency.Switching to inline-code URLs aligns with the new docs style.
docker-compose/docker-compose.yml (1)
29-31: Public API key note: verify dev-only usage is intentional.NEXT_PUBLIC_* is exposed to browsers. Confirm this is a throwaway dev value and not required in production; docs already warn users.
docker-compose/docker-compose-with-mongodb.yml (1)
53-56: Confirm exposure of NEXT_PUBLIC_DEFAULT_API_KEY is intentional and safe.Keep it demo-only; never use production secrets in NEXT_PUBLIC_*.
README.md (2)
116-116: Security note is spot on.Clear warning about NEXT_PUBLIC_* visibility is appreciated.
129-129: Docs link addition looks good.Direct link to the Compose guide improves onboarding.
docs/docs/docker-compose-setup.md (2)
35-36: DocumentDB caveat check.AWS DocumentDB is only partially MongoDB-compatible. Confirm Exosphere features used are supported, or narrow recommendation to Atlas.
68-78: EXOSPHERE_TAG wired correctly in compose files
Bothdocker-compose.ymlanddocker-compose-with-mongodb.ymluseimage: ghcr.io/...:${EXOSPHERE_TAG:-latest}, so the env-var approach will switch tags as expected.docs/mkdocs.yml (2)
14-44: LGTM on theme migration.Material config looks correct; no issues spotted.
111-111: Confirm no duplicate sidebar entries.You also reference docker-compose-setup.md inside llmstxt sections; that’s fine, but ensure it isn’t duplicated elsewhere in nav.
| ``` | ||
|
|
||
| 5. **Open your browser** and navigate to [http://localhost:3000](http://localhost:3000) | ||
| 5. **Open your browser** and navigate to `http://localhost:3000` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Fix ordered list numbering to satisfy markdownlint (MD029).
Use “1.” style for all items in ordered lists.
-5. **Open your browser** and navigate to `http://localhost:3000`
+1. **Open your browser** and navigate to `http://localhost:3000`📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| 5. **Open your browser** and navigate to `http://localhost:3000` | |
| 1. **Open your browser** and navigate to `http://localhost:3000` |
🧰 Tools
🪛 LanguageTool
[grammar] ~69-~69: Use correct spacing
Context: .... Open your browser and navigate to http://localhost:3000 ### Environment Configuration The dashboard...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🪛 markdownlint-cli2 (0.17.2)
69-69: Ordered list item prefix
Expected: 1; Actual: 5; Style: 1/1/1
(MD029, ol-prefix)
🤖 Prompt for AI Agents
In dashboard/README.md around line 69, the ordered list uses explicit
incremental numbers (e.g., "5.") which triggers markdownlint MD029; update the
list to use the "1." style for every ordered item (or at least change the "5."
at line 69 to "1.") so all ordered list entries consistently use "1." and
satisfy MD029.
| healthcheck: | ||
| test: ["CMD", "curl", "-f", "http://localhost:3000"] | ||
| interval: 10s | ||
| timeout: 5s | ||
| retries: 5 | ||
| start_period: 30s | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Mirror healthcheck command style for the dashboard.
Consistency and clearer failures.
- healthcheck:
- test: ["CMD", "curl", "-f", "http://localhost:3000"]
+ healthcheck:
+ test: ["CMD-SHELL", "curl -fsS http://localhost:3000 >/dev/null || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| healthcheck: | |
| test: ["CMD", "curl", "-f", "http://localhost:3000"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |
| start_period: 30s | |
| healthcheck: | |
| test: ["CMD-SHELL", "curl -fsS http://localhost:3000 >/dev/null || exit 1"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |
| start_period: 30s |
🤖 Prompt for AI Agents
In docker-compose/docker-compose.yml around lines 39 to 45, the service
healthcheck uses the array form ["CMD", "curl", "-f", "http://localhost:3000"]
which differs from the dashboard's healthcheck style; change the test to use the
same shell-style pattern (CMD-SHELL) and the same curl flags and failure
handling (e.g., use curl -fsS with an explicit failure exit) so the healthcheck
command style, flags, and behavior mirror the dashboard while leaving interval,
timeout, retries and start_period unchanged.
| # Linux/GNU sed: | ||
| # sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml | ||
| # macOS/BSD sed: | ||
| # sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix sed examples: grouping/backreference require -E (BSD/GNU) or escaped groups.
As written, (…) won’t create a capture group in basic sed; \1 won’t work. Use extended regex or escape groups.
-# Linux/GNU sed:
-# sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml
-# macOS/BSD sed:
-# sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml
+# Linux/GNU sed (extended regex):
+# sed -E -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml
+# macOS/BSD sed (extended regex):
+# sed -E -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| # Linux/GNU sed: | |
| # sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml | |
| # macOS/BSD sed: | |
| # sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml | |
| # Linux/GNU sed (extended regex): | |
| # sed -E -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml | |
| # macOS/BSD sed (extended regex): | |
| # sed -E -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml |
🤖 Prompt for AI Agents
In docs/docs/docker-compose-setup.md around lines 89 to 93, the sed examples use
( … ) and \1 but don’t enable extended regex or escape groups, so the
backreference won’t work; update the GNU/Linux and macOS/BSD examples to either
use extended regex (add -E for both sed commands) or escape the parentheses and
backslash for basic sed (use '\(' and '\)') so the capture group and \1
backreference function correctly; keep both variants (one with -E and one with
escaped groups) or convert both shown commands to the -E form for consistency.
| # Linux/GNU sed: | ||
| # sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml | ||
| # macOS/BSD sed: | ||
| # sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apply the same sed fix for the with-mongodb variant.
-# Linux/GNU sed:
-# sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml
-# macOS/BSD sed:
-# sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml
+# Linux/GNU sed (extended regex):
+# sed -E -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml
+# macOS/BSD sed (extended regex):
+# sed -E -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| # Linux/GNU sed: | |
| # sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml | |
| # macOS/BSD sed: | |
| # sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml | |
| # Linux/GNU sed (extended regex): | |
| # sed -E -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml | |
| # macOS/BSD sed (extended regex): | |
| # sed -E -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml |
🤖 Prompt for AI Agents
In docs/docs/docker-compose-setup.md around lines 118 to 121, the sed
replacement examples only target docker-compose.yml; add the same two variants
(Linux/GNU and macOS/BSD) applying the sed substitution to
docker-compose-with-mongodb.yml as well, i.e., duplicate the Linux and macOS sed
lines but replace the target filename with docker-compose-with-mongodb.yml so
both compose files are updated to use :beta-latest instead of :latest.
| | `MONGO_INITDB_ROOT_USERNAME` | MongoDB root username | `admin` | | ||
| | `MONGO_INITDB_ROOT_PASSWORD` | MongoDB root password | `password` | | ||
| | `MONGO_INITDB_DATABASE` | Initial MongoDB database | `exosphere` | | ||
|
|
||
| ### SDK Environment Variables |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Add dev-only warning for local MongoDB credentials.
| `MONGO_INITDB_DATABASE` | Initial MongoDB database | `exosphere` |
+> Security: The default root username/password are for local development only. Change them if you expose the container or persist data.
+
### SDK Environment Variables📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| | `MONGO_INITDB_ROOT_USERNAME` | MongoDB root username | `admin` | | |
| | `MONGO_INITDB_ROOT_PASSWORD` | MongoDB root password | `password` | | |
| | `MONGO_INITDB_DATABASE` | Initial MongoDB database | `exosphere` | | |
| ### SDK Environment Variables | |
| | `MONGO_INITDB_ROOT_USERNAME` | MongoDB root username | `admin` | | |
| | `MONGO_INITDB_ROOT_PASSWORD` | MongoDB root password | `password` | | |
| | `MONGO_INITDB_DATABASE` | Initial MongoDB database | `exosphere` | | |
| > Security: The default root username/password are for local development only. Change them if you expose the container or persist data. | |
| ### SDK Environment Variables |
🧰 Tools
🪛 LanguageTool
[grammar] ~172-~172: There might be a mistake here.
Context: ...AME| MongoDB root username |admin| |MONGO_INITDB_ROOT_PASSWORD` | MongoDB...
(QB_NEW_EN)
[grammar] ~173-~173: There might be a mistake here.
Context: ...| MongoDB root password |password| |MONGO_INITDB_DATABASE` | Initial Mong...
(QB_NEW_EN)
[grammar] ~174-~174: Use correct spacing
Context: ...Initial MongoDB database | exosphere | ### SDK Environment Variables To use the Ex...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~176-~176: Use correct spacing
Context: ...sphere` | ### SDK Environment Variables To use the Exosphere Python SDK with you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🤖 Prompt for AI Agents
In docs/docs/docker-compose-setup.md around lines 172 to 176, the table lists
default MongoDB credentials but lacks a dev-only security warning; add a short,
prominent note immediately after the table that these
MONGO_INITDB_ROOT_USERNAME, MONGO_INITDB_ROOT_PASSWORD, and
MONGO_INITDB_DATABASE defaults are intended only for local development, must
never be used in production, and recommend using environment overrides, secrets
management or strong credentials in production. Make the note concise and
clearly labeled (e.g., "Development only — do not use in production") and
include a one-line suggestion to rotate/change these values before deploying.
| | `EXOSPHERE_API_KEY` | API key for authentication (same as STATE_MANAGER_SECRET) | `exosphere@123` | | ||
|
|
||
| **Example SDK setup**: | ||
| ```bash | ||
| # Set environment variables for SDK | ||
| export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 | ||
| export EXOSPHERE_API_KEY=exosphere@123 | ||
|
|
||
| # Or add to your .env file for your Python project | ||
| echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env | ||
| echo "EXOSPHERE_API_KEY=exosphere@123" >> .env | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Use placeholders for SDK key; avoid encouraging reuse of example secrets.
-export EXOSPHERE_API_KEY=exosphere@123
+export EXOSPHERE_API_KEY=your-api-key
@@
-echo "EXOSPHERE_API_KEY=exosphere@123" >> .env
+echo "EXOSPHERE_API_KEY=your-api-key" >> .env📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| | `EXOSPHERE_API_KEY` | API key for authentication (same as STATE_MANAGER_SECRET) | `exosphere@123` | | |
| **Example SDK setup**: | |
| ```bash | |
| # Set environment variables for SDK | |
| export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 | |
| export EXOSPHERE_API_KEY=exosphere@123 | |
| # Or add to your .env file for your Python project | |
| echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env | |
| echo "EXOSPHERE_API_KEY=exosphere@123" >> .env | |
| ``` | |
| # Set environment variables for SDK | |
| export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 | |
| export EXOSPHERE_API_KEY=your-api-key | |
| # Or add to your .env file for your Python project | |
| echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env | |
| echo "EXOSPHERE_API_KEY=your-api-key" >> .env |
🧰 Tools
🪛 LanguageTool
[grammar] ~183-~183: Use correct spacing
Context: ...TATE_MANAGER_SECRET) | exosphere@123 | Example SDK setup: ```bash # Set envir...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~185-~185: Use correct spacing
Context: ...exosphere@123` | Example SDK setup: bash # Set environment variables for SDK export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 # Or add to your .env file for your Python project echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env echo "EXOSPHERE_API_KEY=exosphere@123" >> .env ## Custom Configuration ### Using Your Own...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🪛 markdownlint-cli2 (0.17.2)
186-186: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
🤖 Prompt for AI Agents
In docs/docs/docker-compose-setup.md around lines 183 to 194, the docs publish a
concrete example secret value ("exosphere@123") for
EXOSPHERE_API_KEY/STATE_MANAGER_SECRET; replace that literal with a neutral
placeholder (e.g. EXOSPHERE_API_KEY_PLACEHOLDER or <YOUR_EXOSPHERE_API_KEY>) in
the table and example export/.env commands, and add a brief note reminding
readers to generate/store their own secret rather than reusing the example.
| ```yaml | ||
| mongodb: | ||
| # ... other config ... | ||
| healthcheck: | ||
| test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] | ||
| interval: 5s | ||
| timeout: 3s | ||
| retries: 20 | ||
| start_period: 30s | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Make MongoDB healthcheck more robust; use CMD-SHELL and quiet eval.
Ensures non-zero exit on failure; avoids JSON noise. Works on images with mongosh.
- healthcheck:
- test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
- interval: 5s
- timeout: 3s
- retries: 20
- start_period: 30s
+ healthcheck:
+ test: ['CMD-SHELL', 'mongosh --quiet --eval "db.adminCommand({ ping: 1 })" >/dev/null 2>&1 || exit 1']
+ interval: 5s
+ timeout: 3s
+ retries: 20
+ start_period: 30sNote: If your MongoDB image lacks mongosh, add it or use a TCP check (nc) instead.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ```yaml | |
| mongodb: | |
| # ... other config ... | |
| healthcheck: | |
| test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] | |
| interval: 5s | |
| timeout: 3s | |
| retries: 20 | |
| start_period: 30s | |
| ``` | |
| mongodb: | |
| # ... other config ... | |
| healthcheck: | |
| test: ['CMD-SHELL', 'mongosh --quiet --eval "db.adminCommand({ ping: 1 })" >/dev/null 2>&1 || exit 1'] | |
| interval: 5s | |
| timeout: 3s | |
| retries: 20 | |
| start_period: 30s |
| export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 | ||
| export EXOSPHERE_API_KEY=exosphere@123 | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Same placeholder change in “Next Steps”.
-export EXOSPHERE_API_KEY=exosphere@123
+export EXOSPHERE_API_KEY=your-api-key📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 | |
| export EXOSPHERE_API_KEY=exosphere@123 | |
| ``` | |
| export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 | |
| export EXOSPHERE_API_KEY=your-api-key |
🤖 Prompt for AI Agents
In docs/docs/docker-compose-setup.md around lines 347 to 349, the example
exports include a hard-coded API key placeholder; update the "Next Steps"
section to use the same generic placeholder used elsewhere (e.g.
EXOSPHERE_API_KEY=<YOUR_API_KEY>) instead of a real-looking value so examples
are consistent and do not expose a sample credential.
| ## Quick Start with Docker Compose | ||
|
|
||
| Get Exosphere running locally in under 2 minutes: | ||
|
|
||
| ```bash | ||
| # Option 1: With cloud MongoDB (recommended) | ||
| echo "MONGO_URI=your-mongodb-connection-string" > .env | ||
| curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml | ||
| docker compose up -d | ||
|
|
||
| # Option 2: With local MongoDB (development) | ||
| curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml | ||
| docker compose -f docker-compose-with-mongodb.yml up -d | ||
| ``` | ||
|
|
||
| **Environment Configuration:** | ||
| - Docker Compose automatically loads `.env` files from the working directory | ||
| - Create your `.env` file in the same directory as your docker-compose file | ||
|
|
||
| > **⚠️ Security Note**: Variables prefixed with `NEXT_PUBLIC_` are embedded in client bundles and visible to browsers. Never store real secrets in `NEXT_PUBLIC_` variables - use server-side environment variables instead. | ||
|
|
||
| Access your services: | ||
|
|
||
| - **Dashboard**: `http://localhost:3000` | ||
| - **API**: `http://localhost:8000` | ||
|
|
||
| > **📝 Note**: This configuration is for **development and testing only**. For production deployments, environment variable customization, and advanced configuration options, please read the complete **[Docker Compose Setup Guide](https://docs.exosphere.host/docker-compose-setup)**. | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Great Quick Start; tweak .env phrasing and list spacing.
Compose loads .env from the working directory (where you run docker compose), not strictly “the same directory as your compose file.” Also add a blank line before the bullet list to satisfy MD032.
**Environment Configuration:**
-- Docker Compose automatically loads `.env` files from the working directory
-- Create your `.env` file in the same directory as your docker-compose file
+
+- Docker Compose automatically loads a `.env` file from the working directory (where you run `docker compose`)
+- Create your `.env` file in the same directory where you execute `docker compose`📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ## Quick Start with Docker Compose | |
| Get Exosphere running locally in under 2 minutes: | |
| ```bash | |
| # Option 1: With cloud MongoDB (recommended) | |
| echo "MONGO_URI=your-mongodb-connection-string" > .env | |
| curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml | |
| docker compose up -d | |
| # Option 2: With local MongoDB (development) | |
| curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml | |
| docker compose -f docker-compose-with-mongodb.yml up -d | |
| ``` | |
| **Environment Configuration:** | |
| - Docker Compose automatically loads `.env` files from the working directory | |
| - Create your `.env` file in the same directory as your docker-compose file | |
| > **⚠️ Security Note**: Variables prefixed with `NEXT_PUBLIC_` are embedded in client bundles and visible to browsers. Never store real secrets in `NEXT_PUBLIC_` variables - use server-side environment variables instead. | |
| Access your services: | |
| - **Dashboard**: `http://localhost:3000` | |
| - **API**: `http://localhost:8000` | |
| > **📝 Note**: This configuration is for **development and testing only**. For production deployments, environment variable customization, and advanced configuration options, please read the complete **[Docker Compose Setup Guide](https://docs.exosphere.host/docker-compose-setup)**. | |
| **Environment Configuration:** | |
| - Docker Compose automatically loads a `.env` file from the working directory (where you run `docker compose`) | |
| - Create your `.env` file in the same directory where you execute `docker compose` | |
| > **⚠️ Security Note**: Variables prefixed with `NEXT_PUBLIC_` are embedded in client bundles and visible to browsers. Never store real secrets in `NEXT_PUBLIC_` variables—use server-side environment variables instead. |
🧰 Tools
🪛 LanguageTool
[grammar] ~97-~97: Use correct spacing
Context: ... ``` ## Quick Start with Docker Compose Get Exosphere running locally in under 2...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~99-~99: Use correct spacing
Context: ...here running locally in under 2 minutes: bash # Option 1: With cloud MongoDB (recommended) echo "MONGO_URI=your-mongodb-connection-string" > .env curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml docker compose up -d # Option 2: With local MongoDB (development) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d Environment Configuration: - Docker Co...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~112-~112: There might be a mistake here.
Context: ... up -d ``` Environment Configuration: - Docker Compose automatically loads `.env...
(QB_NEW_EN)
[grammar] ~113-~113: There might be a mistake here.
Context: ... .env files from the working directory - Create your .env file in the same dire...
(QB_NEW_EN_OTHER)
[grammar] ~114-~114: There might be a mistake here.
Context: ...me directory as your docker-compose file >
(QB_NEW_EN_OTHER)
[typographical] ~116-~116: To join two clauses or set off examples, consider using an em dash.
Context: ...er store real secrets in NEXT_PUBLIC_ variables - use server-side environment variables inste...
(QB_NEW_EN_DASH_RULE_EM)
[grammar] ~116-~116: Use correct spacing
Context: ...rver-side environment variables instead. Access your services: - Dashboard: ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~118-~118: Use correct spacing
Context: ...ariables instead. Access your services: - Dashboard: http://localhost:3000 - *...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~120-~120: There might be a mistake here.
Context: ...Access your services: - Dashboard: http://localhost:3000 - API: http://localhost:8000 > **📝 N...
(QB_NEW_EN)
[grammar] ~121-~121: Use correct spacing
Context: ...d**: http://localhost:3000 - API: http://localhost:8000 > 📝 Note: This configuration is for **d...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~123-~123: Use correct spacing
Context: ....exosphere.host/docker-compose-setup)**. ## Documentation For comprehensive documen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🪛 markdownlint-cli2 (0.17.2)
113-113: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
🤖 Prompt for AI Agents
In README.md around lines 97 to 124, update the .env wording and spacing: change
the sentence that says "Create your `.env` file in the same directory as your
docker-compose file" to clarify that Docker Compose loads `.env` from the
working directory where you run `docker compose` (not necessarily the compose
file directory), and insert a single blank line before the "Environment
Configuration:" bullet list to satisfy MD032; keep the existing security note
and access URLs unchanged.
- Replaced `curl` commands with Python and Node.js scripts for health checks in `docker-compose.yml` and `docker-compose-with-mongodb.yml` to improve reliability. - Added a new section in the documentation for testing the Docker Compose setup, including configuration validation and service startup with health monitoring. - Updated health check details for MongoDB and state manager in the documentation to reflect the new implementation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
♻️ Duplicate comments (12)
docker-compose/docker-compose.yml (2)
7-11: Replace insecure defaults; require MONGO_URI.Ship no real-looking secrets. Make MONGO_URI mandatory and switch secrets to explicit dev-only placeholders.
environment: - - MONGO_URI=${MONGO_URI} - - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-exosphere@123} + - MONGO_URI=${MONGO_URI:?Set MONGO_URI in .env} + - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-dev-only-change-me} - MONGO_DATABASE_NAME=${MONGO_DATABASE_NAME:-exosphere} - - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-YTzpUlBGLSwm-3yKJRJTZnb0_aQuQQHyz64s8qAERVU=} + - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-dev-only-not-secure}
39-44: Mirror dashboard healthcheck style (optional).Align with CMD-SHELL + curl for consistency.
- healthcheck: - test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000', (res) => process.exit(res.statusCode === 200 ? 0 : 1)).on('error', () => process.exit(1))"] + healthcheck: + test: ["CMD-SHELL", "curl -fsS http://localhost:3000 >/dev/null || exit 1"] interval: 10s timeout: 5s retries: 5 start_period: 30sdocker-compose/docker-compose-with-mongodb.yml (3)
7-9: Do not ship a default MongoDB root password. Require it.This prevents accidental reuse and avoids CKV_SECRET_4.
- MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME:-admin} - MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD:-password} - MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE:-exosphere} + MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME:-admin} + MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD:?Set MONGO_INITDB_ROOT_PASSWORD in .env} + MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE:-exosphere}
16-21: Harden MongoDB healthcheck.Use quiet eval + explicit non-zero on failure.
- healthcheck: - test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] - interval: 10s - timeout: 5s - retries: 5 - start_period: 30s + healthcheck: + test: ['CMD-SHELL', 'mongosh --quiet --eval "db.adminCommand({ ping: 1 }).ok" | grep 1'] + interval: 10s + timeout: 5s + retries: 8 + start_period: 30s
29-33: Eliminate embedded credentials and insecure defaults in MONGO_URI and secrets.Build URI from envs and mark secrets as dev-only placeholders.
- - MONGO_URI=${MONGO_URI:-mongodb://admin:password@exosphere-mongodb:27017/} - - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-exosphere@123} + - MONGO_URI=${MONGO_URI:-mongodb://${MONGO_INITDB_ROOT_USERNAME:-admin}:${MONGO_INITDB_ROOT_PASSWORD}@exosphere-mongodb:27017/${MONGO_INITDB_DATABASE:-exosphere}?authSource=admin} + - STATE_MANAGER_SECRET=${STATE_MANAGER_SECRET:-dev-only-change-me} - MONGO_DATABASE_NAME=${MONGO_DATABASE_NAME:-exosphere} - - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-YTzpUlBGLSwm-3yKJRJTZnb0_aQuQQHyz64s8qAERVU=} + - SECRETS_ENCRYPTION_KEY=${SECRETS_ENCRYPTION_KEY:-dev-only-not-secure}docs/docs/docker-compose-setup.md (7)
37-41: Quote MONGO_URI in .env example.Prevents breakage with special characters in credentials.
- MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ + # Quote if your password has special characters + MONGO_URI="mongodb+srv://username:password@your-cluster.mongodb.net/"
89-92: Fix sed examples: require -E for capture groups.Without -E, ( ) and \1 won’t work.
-# Linux/GNU sed: -# sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml -# macOS/BSD sed: -# sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml +# Linux/GNU sed (extended regex): +# sed -E -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml +# macOS/BSD sed (extended regex): +# sed -E -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml
118-121: Apply same sed fix for with-mongodb variant.-# Linux/GNU sed: -# sed -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml -# macOS/BSD sed: -# sed -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml +# Linux/GNU sed (extended regex): +# sed -E -i 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml +# macOS/BSD sed (extended regex): +# sed -E -i '' 's|(ghcr\.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml
145-151: Don’t document real-looking defaults for secrets; mark them required.Align docs with secure compose defaults.
| `MONGO_URI` | MongoDB connection string | - | Required (for docker-compose.yml) | -| `STATE_MANAGER_SECRET` | API key for state manager authentication | `exosphere@123` | Has default | +| `STATE_MANAGER_SECRET` | API key for state manager authentication | (set a strong random value) | Required | | `MONGO_DATABASE_NAME` | MongoDB database name | `exosphere` | Has default | -| `SECRETS_ENCRYPTION_KEY` | Base64-encoded encryption key for secrets | `YTzpUlBGLSwm-3yKJRJTZnb0_aQuQQHyz64s8qAERVU=` | Has default | +| `SECRETS_ENCRYPTION_KEY` | Base64-encoded encryption key for secrets | (generate; see below) | Required |
180-194: Use placeholders for SDK key; avoid encouraging reuse of sample secrets.| `EXOSPHERE_STATE_MANAGER_URI` | URL where the state manager is running | `http://localhost:8000` | -| `EXOSPHERE_API_KEY` | API key for authentication (same as STATE_MANAGER_SECRET) | `exosphere@123` | +| `EXOSPHERE_API_KEY` | API key for authentication (same as STATE_MANAGER_SECRET) | `<your-api-key>` | @@ export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 -export EXOSPHERE_API_KEY=exosphere@123 +export EXOSPHERE_API_KEY=your-api-key @@ -echo "EXOSPHERE_API_KEY=exosphere@123" >> .env +echo "EXOSPHERE_API_KEY=your-api-key" >> .env
168-176: Add dev-only warning for local MongoDB defaults.| `MONGO_INITDB_DATABASE` | Initial MongoDB database | `exosphere` | + +> Security: The defaults above are for local development only. Change them if you expose the container or persist data.
387-391: Same placeholder change in “Next Steps”.export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 -export EXOSPHERE_API_KEY=exosphere@123 +export EXOSPHERE_API_KEY=your-api-key
📜 Review details
Configuration used: CodeRabbit UI
Review profile: ASSERTIVE
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (3)
docker-compose/docker-compose-with-mongodb.yml(1 hunks)docker-compose/docker-compose.yml(1 hunks)docs/docs/docker-compose-setup.md(1 hunks)
🧰 Additional context used
🪛 Checkov (3.2.334)
docker-compose/docker-compose-with-mongodb.yml
[MEDIUM] 29-30: Basic Auth Credentials
(CKV_SECRET_4)
🪛 LanguageTool
docs/docs/docker-compose-setup.md
[grammar] ~1-~1: Use correct spacing
Context: # Docker Compose Setup Guide Get Exosphere running locally with Docke...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~3-~3: Use correct spacing
Context: ...ack locally for development and testing. ## Download Docker Compose Files First, do...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~5-~5: Use correct spacing
Context: ...sting. ## Download Docker Compose Files First, download the Docker Compose files...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~7-~7: Use correct spacing
Context: ...ompose files from the GitHub repository: ### Option 1: Download Both Files ```bash #...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~9-~9: Use correct spacing
Context: ...tory: ### Option 1: Download Both Files bash # Download docker-compose file for cloud MongoDB (recommended) curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ### Option 2: Using wget ```bash # Download...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~19-~19: Use correct spacing
Context: ...ongodb.yml ### Option 2: Using wget bash # Download docker-compose file for cloud MongoDB (recommended) wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Download docker-compose file with local MongoDB included wget https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml ``` ## Quick Start We **recommend using a clou...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~29-~29: Use correct spacing
Context: ...ose-with-mongodb.yml ``` ## Quick Start We **recommend using a cloud MongoDB man...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~31-~31: Use correct spacing
Context: ... performance, reliability, and security. ### Option 1: With Cloud MongoDB (Recommende...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~33-~33: Use correct spacing
Context: ...tion 1: With Cloud MongoDB (Recommended) 1. Set up a cloud MongoDB instance (MongoDB...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~35-~35: There might be a mistake here.
Context: ...ce (MongoDB Atlas, AWS DocumentDB, etc.) 2. Create a .env file with your MongoDB c...
(QB_NEW_EN_OTHER)
[grammar] ~37-~37: Use correct spacing
Context: ....env` file with your MongoDB connection: bash MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ 3. Download and start the services: ```b...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~42-~42: Use correct spacing
Context: ... 3. Download and start the services: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml && docker compose -f docker-compose.yml up -d ``` This will start: - Exosphere State Manag...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~47-~47: There might be a mistake here.
Context: ...mpose.yml up -d ``` This will start: - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~48-~48: There might be a mistake here.
Context: ...t: - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ### Opt...
(QB_NEW_EN)
[grammar] ~49-~49: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ### Option 2: With Local MongoDB (Developmen...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~51-~51: Use correct spacing
Context: ...2: With Local MongoDB (Development Only) For quick local testing only: ```bash c...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~53-~53: Use correct spacing
Context: ...ent Only) For quick local testing only: bash curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml && docker compose -f docker-compose-with-mongodb.yml up -d This will start: - MongoDB database (por...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~59-~59: There might be a mistake here.
Context: ...-mongodb.yml up -d ``` This will start: - MongoDB database (port 27017) - Exospher...
(QB_NEW_EN)
[grammar] ~60-~60: There might be a mistake here.
Context: ...l start: - MongoDB database (port 27017) - Exosphere State Manager (port 8000) - ...
(QB_NEW_EN)
[grammar] ~61-~61: There might be a mistake here.
Context: ...7) - Exosphere State Manager (port 8000) - Exosphere Dashboard (port 3000) ## Beta...
(QB_NEW_EN)
[grammar] ~62-~62: Use correct spacing
Context: ...000) - Exosphere Dashboard (port 3000) ## Beta Version To run the latest beta ver...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~64-~64: Use correct spacing
Context: ...e Dashboard (port 3000) ## Beta Version To run the latest beta version of Exosph...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~66-~66: Use correct spacing
Context: ...place container tags with beta-latest: ### Quick Beta Setup with Cloud MongoDB **O...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~68-~68: Use correct spacing
Context: ... ### Quick Beta Setup with Cloud MongoDB **Option 1: Environment Variable Approach ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~70-~70: Use correct spacing
Context: ...ironment Variable Approach (Recommended)** bash # Download compose file curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Set image tag via environment variable export EXOSPHERE_TAG=beta-latest # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d Option 2: In-place File Editing ```bas...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~80-~80: Use correct spacing
Context: ...d **Option 2: In-place File Editing**bash # Download and modify for beta with cloud MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose.yml # Portable approach (works on all platforms): perl -pi -e 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml # Platform-specific alternatives: # Linux/GNU sed: # sed -i 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml # macOS/BSD sed: # sed -i '' 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose.yml # Set your MONGO_URI in .env file, then: docker compose -f docker-compose.yml up -d ``` ### Quick Beta Setup with Local MongoDB **O...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~98-~98: Use correct spacing
Context: ... ### Quick Beta Setup with Local MongoDB **Option 1: Environment Variable Approach ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~100-~100: Use correct spacing
Context: ...ironment Variable Approach (Recommended)** bash # Download compose file curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml # Set image tag via environment variable export EXOSPHERE_TAG=beta-latest docker compose -f docker-compose-with-mongodb.yml up -d Option 2: In-place File Editing ```bas...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~109-~109: Use correct spacing
Context: ...d **Option 2: In-place File Editing**bash # Download and modify for beta with local MongoDB curl -O https://raw.githubusercontent.com/exospherehost/exospherehost/main/docker-compose/docker-compose-with-mongodb.yml # Portable approach (works on all platforms): perl -pi -e 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml # Platform-specific alternatives: # Linux/GNU sed: # sed -i 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml # macOS/BSD sed: # sed -i '' 's|(ghcr.io/exospherehost/[^:]+):latest|\1:beta-latest|g' docker-compose-with-mongodb.yml docker compose -f docker-compose-with-mongodb.yml up -d ``` ### Manual Beta Setup (Alternative) 1. Down...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~126-~126: Use correct spacing
Context: ...``` ### Manual Beta Setup (Alternative) 1. Download the docker-compose file 2. Edit...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~128-~128: There might be a mistake here.
Context: ...ve) 1. Download the docker-compose file 2. Edit the file and change: ```yaml ...
(QB_NEW_EN_OTHER)
[grammar] ~129-~129: Use correct spacing
Context: ...ompose file 2. Edit the file and change: yaml # Change from: image: ghcr.io/exospherehost/exosphere-state-manager:latest image: ghcr.io/exospherehost/exosphere-dashboard:latest # To: image: ghcr.io/exospherehost/exosphere-state-manager:beta-latest image: ghcr.io/exospherehost/exosphere-dashboard:beta-latest 3. Start the services with `docker compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~139-~139: Use correct spacing
Context: ...atest ``` 3. Start the services with docker compose up -d ## Environment Variables ### Environment V...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~141-~141: Use correct spacing
Context: ...compose up -d` ## Environment Variables ### Environment Variables for State Manager ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~143-~143: Use correct spacing
Context: ... Environment Variables for State Manager | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~145-~145: There might be a mistake here.
Context: ...Description | Default Value | Required | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~146-~146: There might be a mistake here.
Context: ...------------|---------------|----------| | MONGO_URI | MongoDB connection strin...
(QB_NEW_EN)
[grammar] ~147-~147: There might be a mistake here.
Context: ... - | Required (for docker-compose.yml) | | STATE_MANAGER_SECRET | API key for s...
(QB_NEW_EN)
[grammar] ~148-~148: There might be a mistake here.
Context: ...cation | exosphere@123 | Has default | | MONGO_DATABASE_NAME | MongoDB databa...
(QB_NEW_EN)
[grammar] ~149-~149: There might be a mistake here.
Context: ...abase name | exosphere | Has default | | SECRETS_ENCRYPTION_KEY | Base64-enco...
(QB_NEW_EN)
[grammar] ~150-~150: Use correct spacing
Context: ...nb0_aQuQQHyz64s8qAERVU=| Has default | > **Important**: TheSECRETS_ENCRYPTION_KEY...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~152-~152: Use correct spacing
Context: ...osing access to existing encrypted data. ### Dashboard Environment Variables (All Opt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~154-~154: Use correct spacing
Context: ...ard Environment Variables (All Optional) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~156-~156: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~157-~157: There might be a mistake here.
Context: ...---------|-------------|---------------| | `NEXT_PUBLIC_EXOSPHERE_STATE_MANAGER_U...
(QB_NEW_EN)
[grammar] ~158-~158: There might be a mistake here.
Context: ... http://exosphere-state-manager:8000 | | NEXT_PUBLIC_DEFAULT_NAMESPACE | Defa...
(QB_NEW_EN)
[grammar] ~159-~159: There might be a mistake here.
Context: ...lt namespace for workflows | default | | NEXT_PUBLIC_DEFAULT_API_KEY | Defaul...
(QB_NEW_EN)
[grammar] ~160-~160: Use correct spacing
Context: ... | <your-api-key> (dev-only example) | > NEXT_PUBLIC_* v...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~162-~162: There might be a mistake here.
Context: ...Never put real secrets in NEXT_PUBLIC_ variables*. For production: > - Use server-side ...
(QB_NEW_EN_OTHER)
[grammar] ~162-~162: There might be a mistake here.
Context: ...EXT_PUBLIC_ variables**. For production: > - Use server-side environment variables (w...
(QB_NEW_EN)
[grammar] ~163-~163: There might be a mistake here.
Context: ... Use server-side environment variables (without NEXT_PUBLIC_ prefix) for real secrets >...
(QB_NEW_EN)
[grammar] ~163-~163: There might be a mistake here.
Context: ...ut NEXT_PUBLIC_ prefix) for real secrets > - Implement server-side token exchange or ...
(QB_NEW_EN_OTHER)
[grammar] ~164-~164: There might be a mistake here.
Context: ...hange or API proxy for secret operations > - Store sensitive data in secure vaults, n...
(QB_NEW_EN_OTHER)
[grammar] ~165-~165: There might be a mistake here.
Context: ... vaults, not client-accessible variables > - The defaults shown above are development...
(QB_NEW_EN_OTHER)
[grammar] ~166-~166: There might be a mistake here.
Context: ...hown above are development examples only ### MongoDB Local Setup Variables (for docke...
(QB_NEW_EN_OTHER)
[grammar] ~168-~168: Use correct spacing
Context: ...or docker-compose-with-mongodb.yml only) | Variable | Description | Default Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~170-~170: There might be a mistake here.
Context: ...Variable | Description | Default Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~171-~171: There might be a mistake here.
Context: ...---------|-------------|---------------| | MONGO_INITDB_ROOT_USERNAME | MongoDB...
(QB_NEW_EN)
[grammar] ~172-~172: There might be a mistake here.
Context: ...AME| MongoDB root username |admin| |MONGO_INITDB_ROOT_PASSWORD` | MongoDB...
(QB_NEW_EN)
[grammar] ~173-~173: There might be a mistake here.
Context: ...| MongoDB root password |password| |MONGO_INITDB_DATABASE` | Initial Mong...
(QB_NEW_EN)
[grammar] ~174-~174: Use correct spacing
Context: ...Initial MongoDB database | exosphere | ### SDK Environment Variables To use the Ex...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~176-~176: Use correct spacing
Context: ...sphere` | ### SDK Environment Variables To use the Exosphere Python SDK with you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~178-~178: Use correct spacing
Context: ...riables in your development environment: | Variable | Description | Example Value...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~180-~180: There might be a mistake here.
Context: ...Variable | Description | Example Value | |----------|-------------|--------------...
(QB_NEW_EN)
[grammar] ~181-~181: There might be a mistake here.
Context: ...---------|-------------|---------------| | EXOSPHERE_STATE_MANAGER_URI | URL wh...
(QB_NEW_EN)
[grammar] ~182-~182: There might be a mistake here.
Context: ...r is running | http://localhost:8000 | | EXOSPHERE_API_KEY | API key for auth...
(QB_NEW_EN)
[grammar] ~183-~183: Use correct spacing
Context: ...TATE_MANAGER_SECRET) | exosphere@123 | Example SDK setup: ```bash # Set envir...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~185-~185: Use correct spacing
Context: ...exosphere@123` | Example SDK setup: bash # Set environment variables for SDK export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 # Or add to your .env file for your Python project echo "EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000" >> .env echo "EXOSPHERE_API_KEY=exosphere@123" >> .env ## Custom Configuration ### Using Your Own...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~196-~196: Use correct spacing
Context: ...23" >> .env ``` ## Custom Configuration ### Using Your Own Environment Variables Cr...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~198-~198: Use correct spacing
Context: ...### Using Your Own Environment Variables Create a .env file in the same directo...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~200-~200: Use correct spacing
Context: ...e directory as your docker-compose file: bash # MongoDB Configuration (REQUIRED for docker-compose.yml) MONGO_URI=mongodb+srv://username:password@your-cluster.mongodb.net/ # Optional Configuration (has defaults) MONGO_DATABASE_NAME=exosphere STATE_MANAGER_SECRET=your-custom-secret-key SECRETS_ENCRYPTION_KEY=your-base64-encoded-encryption-key # Dashboard Configuration (Optional) NEXT_PUBLIC_DEFAULT_NAMESPACE=YourNamespace NEXT_PUBLIC_DEFAULT_API_KEY=your-custom-secret-key # For local MongoDB setup only (docker-compose-with-mongodb.yml) MONGO_INITDB_ROOT_USERNAME=admin MONGO_INITDB_ROOT_PASSWORD=password MONGO_INITDB_DATABASE=exosphere Then run with your custom configuration:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~221-~221: Use correct spacing
Context: ...Then run with your custom configuration: bash # For cloud MongoDB (recommended) docker compose -f docker-compose.yml up -d # For local MongoDB docker compose -f docker-compose-with-mongodb.yml up -d Note: The docker-compose files now aut...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~230-~230: Use correct spacing
Context: ...ble defaults for all optional variables. ### Legacy Docker Compose v1 Compatibility ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~232-~232: Use correct spacing
Context: ...# Legacy Docker Compose v1 Compatibility If you have the legacy docker-compose ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~234-~234: Use correct spacing
Context: ...u can use the hyphenated command format: bash # Legacy v1 commands (replace "docker compose" with "docker-compose"): docker-compose -f docker-compose.yml up -d docker-compose -f docker-compose-with-mongodb.yml up -d docker-compose -f docker-compose-with-mongodb.yml logs -f docker-compose -f docker-compose-with-mongodb.yml down Creating an alias (optional): To use t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~244-~244: Use correct spacing
Context: ...as shown in this guide, create an alias: bash # Add to your shell profile (~/.bashrc, ~/.zshrc, etc.): alias 'docker compose'='docker-compose' # Or install the v2 plugin: # https://docs.docker.com/compose/install/ ### Generating a New Encryption Key To gene...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~253-~253: Use correct spacing
Context: ...``` ### Generating a New Encryption Key To generate a secure encryption key for ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~255-~255: Use correct spacing
Context: ...yption key for SECRETS_ENCRYPTION_KEY: bash # Using Python python -c "import base64; import os; print(base64.urlsafe_b64encode(os.urandom(32)).decode())" # Using OpenSSL openssl rand -base64 32 ## Access Your Services After running the ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~265-~265: Use correct spacing
Context: ... -base64 32 ``` ## Access Your Services After running the Docker Compose command...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~267-~267: Use correct spacing
Context: ...fter running the Docker Compose command: - Exosphere Dashboard: `http://localhost...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~269-~269: There might be a mistake here.
Context: ...se command: - Exosphere Dashboard: http://localhost:3000 - State Manager API: `http://localhost:8...
(QB_NEW_EN)
[grammar] ~270-~270: There might be a mistake here.
Context: ...ocalhost:3000- **State Manager API**:http://localhost:8000` - MongoDB (if using with-mongodb): `mong...
(QB_NEW_EN)
[typographical] ~271-~271: To join two clauses or set off examples, consider using an em dash.
Context: ...godb): mongodb://localhost:27017 (not HTTP - use MongoDB clients like MongoDB Compass or...
(QB_NEW_EN_DASH_RULE_EM)
[grammar] ~271-~271: There might be a mistake here.
Context: ...clients like MongoDB Compass or mongosh) - API Documentation: `http://localhost:8...
(QB_NEW_EN)
[grammar] ~272-~272: Use correct spacing
Context: ...ss or mongosh) - API Documentation: http://localhost:8000/docs ## Development Commands ```bash # Start se...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~274-~274: Use correct spacing
Context: ...host:8000/docs` ## Development Commands bash # Start services in background docker compose -f docker-compose-with-mongodb.yml up -d # View logs docker compose -f docker-compose-with-mongodb.yml logs -f # Stop services docker compose -f docker-compose-with-mongodb.yml down # Stop services and remove volumes (⚠️ This will delete your data) docker compose -f docker-compose-with-mongodb.yml down -v # Pull latest images docker compose -f docker-compose-with-mongodb.yml pull # Restart a specific service docker compose -f docker-compose-with-mongodb.yml restart exosphere-state-manager ## Troubleshooting ### Check Service Healt...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~296-~296: Use correct spacing
Context: ...re-state-manager ## Troubleshooting ### Check Service Health bash # Check if...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~298-~298: Use correct spacing
Context: ...roubleshooting ### Check Service Health bash # Check if all containers are running docker compose -f docker-compose-with-mongodb.yml ps # Check state manager health curl http://localhost:8000/health # View container logs docker compose -f docker-compose-with-mongodb.yml logs exosphere-state-manager ### Testing Your Setup You can validate you...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~311-~311: Use correct spacing
Context: ...tate-manager ``` ### Testing Your Setup You can validate your docker-compose con...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~313-~313: Use correct spacing
Context: ... configuration before starting services: bash # Test configuration syntax docker compose -f docker-compose-with-mongodb.yml config # Pull all required images docker compose -f docker-compose-with-mongodb.yml pull # Start with health monitoring (--wait waits for all health checks) docker compose -f docker-compose-with-mongodb.yml up -d --wait The --wait flag ensures all services p...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~326-~326: There might be a mistake here.
Context: ...returning. The startup sequence will be: 1. MongoDB starts and passes health check (...
(QB_NEW_EN)
[grammar] ~327-~327: There might be a mistake here.
Context: ...and passes health check (~10-30 seconds) 2. State Manager starts and passes health c...
(QB_NEW_EN_OTHER)
[grammar] ~328-~328: There might be a mistake here.
Context: ...and passes health check (~10-30 seconds) 3. Dashboard starts and passes health check...
(QB_NEW_EN_OTHER)
[grammar] ~329-~329: There might be a mistake here.
Context: ...and passes health check (~10-30 seconds) ### Common Issues 1. *Port already in use...
(QB_NEW_EN_OTHER)
[grammar] ~331-~331: Use correct spacing
Context: ...heck (~10-30 seconds) ### Common Issues 1. Port already in use: Change the port m...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~333-~333: Use correct spacing
Context: ...3000, 8000, or 27017 are already in use. 2. MongoDB connection issues: Ensure Mong...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~335-~335: There might be a mistake here.
Context: ...ded docker-compose files include proper healthchecks: MongoDB healthcheck (tests database co...
(QB_NEW_EN_OTHER)
[grammar] ~337-~337: There might be a mistake here.
Context: ...lude proper healthchecks: MongoDB healthcheck (tests database connectivity): ```...
(QB_NEW_EN_OTHER)
[grammar] ~337-~337: Use correct spacing
Context: ...thcheck** (tests database connectivity): yaml mongodb: # ... other config ... healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 10s timeout: 5s retries: 5 start_period: 30s State Manager healthcheck (tests HTTP ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~349-~349: There might be a mistake here.
Context: ..._period: 30s **State Manager healthcheck** (tests HTTP API readiness): yam...
(QB_NEW_EN_OTHER)
[grammar] ~349-~349: Use correct spacing
Context: ...ealthcheck** (tests HTTP API readiness): yaml exosphere-state-manager: # ... other config ... healthcheck: test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"] interval: 10s timeout: 5s retries: 5 start_period: 30s depends_on: mongodb: condition: service_healthy Dashboard healthcheck (tests Next.js a...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~364-~364: There might be a mistake here.
Context: ... service_healthy **Dashboard healthcheck** (tests Next.js app readiness): ...
(QB_NEW_EN_OTHER)
[grammar] ~364-~364: Use correct spacing
Context: ...thcheck** (tests Next.js app readiness): yaml exosphere-dashboard: # ... other config ... healthcheck: test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000', (res) => process.exit(res.statusCode === 200 ? 0 : 1)).on('error', () => process.exit(1))"] interval: 10s timeout: 5s retries: 5 start_period: 30s depends_on: exosphere-state-manager: condition: service_healthy 3. Authentication errors: Verify your `ST...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~379-~379: Use correct spacing
Context: ...ate manager and dashboard configuration. 4. SDK connection issues: Make sure `EXOS...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~381-~381: Use correct spacing
Context: ...EYmatches yourSTATE_MANAGER_SECRET`. ## Next Steps Once your Exosphere instance...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~383-~383: Use correct spacing
Context: ...r STATE_MANAGER_SECRET. ## Next Steps Once your Exosphere instance is running:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~385-~385: Use correct spacing
Context: ...Once your Exosphere instance is running: 1. Set up your SDK environment variables:...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~387-~387: Use correct spacing
Context: ...Set up your SDK environment variables**: bash export EXOSPHERE_STATE_MANAGER_URI=http://localhost:8000 export EXOSPHERE_API_KEY=exosphere@123 2. Install the Python SDK: ```bash ...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~393-~393: Use correct spacing
Context: ...3 2. **Install the Python SDK**: bash uv add exospherehost ``` 3. Create your first workflow following t...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~398-~398: There might be a mistake here.
Context: ...w** following the Getting Started Guide 4. Explore the dashboard at `http://local...
(QB_NEW_EN_OTHER)
[grammar] ~400-~400: Use correct spacing
Context: ...arted) 4. Explore the dashboard at http://localhost:3000 5. Check out the API documentation at `ht...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~402-~402: Use correct spacing
Context: ... Check out the API documentation at http://localhost:8000/docs ## Support - [Documentation](https://docs....
(QB_NEW_EN_OTHER_ERROR_IDS_5)
[grammar] ~404-~404: Use correct spacing
Context: ...http://localhost:8000/docs ## Support - [Documentation](https://docs.exosphere.ho...
(QB_NEW_EN_OTHER_ERROR_IDS_5)
🪛 markdownlint-cli2 (0.17.2)
docs/docs/docker-compose-setup.md
38-38: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
43-43: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
48-48: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
60-60: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
70-70: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
71-71: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
80-80: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
81-81: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
100-100: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
101-101: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
109-109: Emphasis used instead of a heading
(MD036, no-emphasis-as-heading)
110-110: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
130-130: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
138-138: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
163-163: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
186-186: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
222-222: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
245-245: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
327-327: Lists should be surrounded by blank lines
(MD032, blanks-around-lists)
338-338: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
350-350: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
365-365: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
388-388: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
394-394: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
| ports: | ||
| - "27017:27017" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Consider not publishing MongoDB to the host (optional).
For local dev, you usually don’t need 27017 exposed; reduces attack surface.
- ports:
- - "27017:27017"
+ # ports:
+ # - "27017:27017" # Uncomment only if you need host access (e.g., MongoDB Compass)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ports: | |
| - "27017:27017" | |
| services: | |
| mongodb: | |
| image: mongo:7.0 | |
| container_name: exosphere-mongodb | |
| restart: unless-stopped | |
| environment: | |
| MONGO_INITDB_ROOT_USERNAME: ${MONGO_INITDB_ROOT_USERNAME:-admin} | |
| MONGO_INITDB_ROOT_PASSWORD: ${MONGO_INITDB_ROOT_PASSWORD:?Set MONGO_INITDB_ROOT_PASSWORD in .env} | |
| MONGO_INITDB_DATABASE: ${MONGO_INITDB_DATABASE:-exosphere} | |
| volumes: | |
| - mongodb_data:/data/db | |
| - ports: | |
| # ports: | |
| # - "27017:27017" # Uncomment only if you need host access (e.g., MongoDB Compass) | |
| healthcheck: | |
| test: ["CMD-SHELL", "mongosh --quiet --eval \"db.adminCommand({ ping: 1 }).ok\" | grep 1"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 8 | |
| networks: | |
| - exosphere-network |
🤖 Prompt for AI Agents
In docker-compose/docker-compose-with-mongodb.yml around lines 12 to 13 the
compose file publishes MongoDB's port 27017 to the host which is unnecessary for
local dev and increases attack surface; remove the ports mapping or comment it
out so MongoDB is only reachable by other services in the compose network, or
alternatively document/run with an environment flag to enable host binding when
explicitly needed (e.g., for external tooling), ensuring the default
configuration does not expose 27017 to the host.
| healthcheck: | ||
| test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"] | ||
| interval: 10s | ||
| timeout: 5s | ||
| retries: 5 | ||
| start_period: 30s |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧹 Nitpick (assertive)
Unify healthcheck style with curl (optional).
Use CMD-SHELL + curl for clearer errors and parity with other services (if curl exists in the image).
- healthcheck:
- test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
+ healthcheck:
+ test: ["CMD-SHELL", "curl -fsS http://localhost:8000/health || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| healthcheck: | |
| test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |
| start_period: 30s | |
| healthcheck: | |
| test: ["CMD-SHELL", "curl -fsS http://localhost:8000/health || exit 1"] | |
| interval: 10s | |
| timeout: 5s | |
| retries: 5 | |
| start_period: 30s |
🤖 Prompt for AI Agents
In docker-compose/docker-compose.yml around lines 16 to 21, the healthcheck uses
a Python one-liner; replace it with a CMD-SHELL style healthcheck that calls
curl (e.g. curl -fS to fail on non-2xx and show errors) to match other services
and provide clearer error messages, and if the image may not include curl ensure
the Dockerfile installs curl so the healthcheck will run; keep existing
interval/timeout/retries/start_period values unchanged.
This update aims to improve the onboarding experience for developers and enhance the overall usability of the Exosphere project.