From 4e516eaeeb73db0e96eb3e02585f9ceb460cdd33 Mon Sep 17 00:00:00 2001 From: James Murdza Date: Mon, 20 Oct 2025 09:53:58 -0700 Subject: [PATCH] Remove devcontainer --- .devcontainer/README.md | 66 --------------------------------- .devcontainer/devcontainer.json | 18 --------- .devcontainer/post-install.sh | 28 -------------- Development.md | 46 ----------------------- 4 files changed, 158 deletions(-) delete mode 100644 .devcontainer/README.md delete mode 100644 .devcontainer/devcontainer.json delete mode 100755 .devcontainer/post-install.sh diff --git a/.devcontainer/README.md b/.devcontainer/README.md deleted file mode 100644 index cabc2356..00000000 --- a/.devcontainer/README.md +++ /dev/null @@ -1,66 +0,0 @@ -# Dev Container Setup - -This repository includes a Dev Container configuration that simplifies the development setup to just 3 steps: - -## Quick Start - -![Clipboard-20250611-180809-459](https://github.com/user-attachments/assets/447eaeeb-0eec-4354-9a82-44446e202e06) - -1. **Install the Dev Containers extension ([VS Code](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) or [WindSurf](https://docs.windsurf.com/windsurf/advanced#dev-containers-beta))** -2. **Open the repository in the Dev Container:** - - Press `Ctrl+Shift+P` (or `⌘+Shift+P` on macOS) - - Select `Dev Containers: Clone Repository in Container Volume...` and paste the repository URL: `https://github.com/trycua/cua.git` (if not cloned) or `Dev Containers: Open Folder in Container...` (if git cloned). - > **Note**: On WindSurf, the post install hook might not run automatically. If so, run `/bin/bash .devcontainer/post-install.sh` manually. -3. **Open the VS Code workspace:** Once the post-install.sh is done running, open the `.vscode/py.code-workspace` workspace and press ![Open Workspace](https://github.com/user-attachments/assets/923bdd43-8c8f-4060-8d78-75bfa302b48c) -. -4. **Run the Agent UI example:** Click ![Run Agent UI](https://github.com/user-attachments/assets/7a61ef34-4b22-4dab-9864-f86bf83e290b) - to start the Gradio UI. If prompted to install **debugpy (Python Debugger)** to enable remote debugging, select 'Yes' to proceed. -5. **Access the Gradio UI:** The Gradio UI will be available at `http://localhost:7860` and will automatically forward to your host machine. - -## What's Included - -The dev container automatically: - -- ✅ Sets up Python 3.11 environment -- ✅ Installs all system dependencies (build tools, OpenGL, etc.) -- ✅ Configures Python paths for all packages -- ✅ Installs Python extensions (Black, Ruff, Pylance) -- ✅ Forwards port 7860 for the Gradio web UI -- ✅ Mounts your source code for live editing -- ✅ Creates the required `.env.local` file - -## Running Examples - -After the container is built, you can run examples directly: - -```bash -# Run the agent UI (Gradio web interface) -python examples/agent_ui_examples.py - -# Run computer examples -python examples/computer_examples.py - -# Run computer UI examples -python examples/computer_ui_examples.py -``` - -The Gradio UI will be available at `http://localhost:7860` and will automatically forward to your host machine. - -## Environment Variables - -You'll need to add your API keys to `.env.local`: - -```bash -# Required for Anthropic provider -ANTHROPIC_API_KEY=your_anthropic_key_here - -# Required for OpenAI provider -OPENAI_API_KEY=your_openai_key_here -``` - -## Notes - -- The container connects to `host.docker.internal:7777` for Lume server communication -- All Python packages are pre-installed and configured -- Source code changes are reflected immediately (no rebuild needed) -- The container uses the same Dockerfile as the regular Docker development environment diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json deleted file mode 100644 index 88113b84..00000000 --- a/.devcontainer/devcontainer.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "Cua - OSS", - "build": { - "dockerfile": "../Dockerfile" - }, - "containerEnv": { - "DISPLAY": "", - "PYLUME_HOST": "host.docker.internal" - }, - "forwardPorts": [7860], - "portsAttributes": { - "7860": { - "label": "Cua web client (Gradio)", - "onAutoForward": "silent" - } - }, - "postCreateCommand": "/bin/bash .devcontainer/post-install.sh" -} diff --git a/.devcontainer/post-install.sh b/.devcontainer/post-install.sh deleted file mode 100755 index 1738e635..00000000 --- a/.devcontainer/post-install.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env bash - -WORKSPACE="/workspaces/cua" - -# Setup .env.local -echo "PYTHON_BIN=python" > /workspaces/cua/.env.local - -# Run /scripts/build.sh -./scripts/build.sh - -# --- -# Build is complete. Show user a clear message to open the workspace manually. -# --- - -cat << 'EOM' - -============================================ - 🚀 Build complete! - - 👉 Next steps: - - 1. Open '.vscode/py.code-workspace' - 2. Press 'Open Workspace' - - Happy coding! -============================================ - -EOM diff --git a/Development.md b/Development.md index 399c1716..2b061aea 100644 --- a/Development.md +++ b/Development.md @@ -107,52 +107,6 @@ The workspace also includes compound launch configurations: - "Run Computer Examples + Server" - Runs both the Computer Examples and Server simultaneously -## Docker Development Environment - -As an alternative to installing directly on your host machine, you can use Docker for development. This approach has several advantages: - -### Prerequisites - -- Docker installed on your machine -- Lume server running on your host (port 7777): `lume serve` - -### Setup and Usage - -1. Build the development Docker image: - - ```bash - ./scripts/run-docker-dev.sh build - ``` - -2. Run an example in the container: - - ```bash - ./scripts/run-docker-dev.sh run computer_examples.py - ``` - -3. Get an interactive shell in the container: - - ```bash - ./scripts/run-docker-dev.sh run --interactive - ``` - -4. Stop any running containers: - - ```bash - ./scripts/run-docker-dev.sh stop - ``` - -### How it Works - -The Docker development environment: - -- Installs all required Python dependencies in the container -- Mounts your source code from the host at runtime -- Automatically configures the connection to use host.docker.internal:7777 for accessing the Lume server on your host machine -- Preserves your code changes without requiring rebuilds (source code is mounted as a volume) - -> **Note**: The Docker container doesn't include the macOS-specific Lume executable. Instead, it connects to the Lume server running on your host machine via host.docker.internal:7777. Make sure to start the Lume server on your host before running examples in the container. - ## Code Formatting Standards The Cua project follows strict code formatting standards to ensure consistency across all packages.