Skip to content

[DONE] feature/cloud-infra-mode — add cloud infrastructure mode and improve CLI setup TUI - #170

Open
bharatsachya wants to merge 9 commits into
pre-releasefrom
feat/providers
Open

bharatsachya wants to merge 9 commits into
pre-releasefrom
feat/providers

Conversation

@bharatsachya

Copy link
Copy Markdown
Contributor

What changed

  • Added cloud Infrastructure Mode: Added cloud mode (infra_mode) alongside docker and embedded, allowing users to connect to cloud-hosted databases (MongoDB Atlas, Neo4j Aura, Redis Cloud/Upstash) without requiring a local Docker daemon.
  • Docker Auto-Configuration: Local Docker mode now automatically uses and defaults to standard Docker Compose connection endpoints, hiding database URI inputs from the form so users don't need to configure or worry about them.
  • Explicit Cloud Inputs: Only when cloud mode is active are the Mongo URI, Neo4j URI, Neo4j user/password, and Redis URL fields displayed in the setup form; switching to cloud clears localhost defaults so users know to enter their cloud credentials.
  • Deterministic Linear Tab Navigation: Fixed focus order in SetupForm.tsx so [Tab] and [Shift-Tab] navigate strictly linearly top-to-bottom through the visible form controls without jumping.
  • CLI Global Binary Wiring: Added "bin": { "bytebell": "./packages/cli/src/index.ts" } and "bytebell" script to root package.json so bun link registers the global bytebell CLI executable properly.
  • TUI Updates: Commented out embedded mode from the TUI for now so users choose cleanly between docker and cloud.
  • Boot/Shutdown Logic: Updated bootConfig.ts, BootCommand.ts, and ShutdownCommand.ts so cloud mode does not attempt to launch local Docker containers or prompt for Docker shutdown.

Why

Users who run databases in the cloud (such as Neo4j Aura, MongoDB Atlas, and remote Redis) needed a way to use their cloud database URLs without Bytebell forcing local Docker Compose containers to start. At the same time, users running Docker locally should have Docker Compose values populated automatically without having to configure them manually. Additionally, bun link run from the repository root previously failed to register the bytebell command because root package.json was missing a bin entry.

How to test

1. Test CLI binary linking

# Link the bytebell binary
bun link

# Verify bytebell command works from terminal
bytebell --help

@bharatsachya bharatsachya changed the title # [DONE] feature/cloud-infra-mode — add cloud infrastructure mode and improve CLI setup TUI [DONE] feature/cloud-infra-mode — add cloud infrastructure mode and improve CLI setup TUI Aug 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants