Dumb :question: but there are so many messages in ...
# proj-agent-canvas
g
Dumb ā“ but there are so many messages in thsi channel I am overwhelmed šŸ˜… Why did we remove docker install from the readme? edit: like is just UV just as safe? Safe meaning is openhands running free on the machine thsi way without docker?
@nutritious-balloon-65098 answer my questions above
n
I'm on it! Jamie can track my progress here.
Summary No code changes were made — this was a pure Q&A session. Here's a restatement of the answers: Why was Docker removed from the README? PR #635 (merged May 19, 2026) deleted the
dev-docker.mjs
script and all
dev:docker
npm commands entirely. The dev stack was replaced with a
uvx
-based approach (agent-server + automation + Vite + ingress), so Docker is simply no longer needed to run the project locally.
npm run dev
now handles everything. Is uv/direct install as safe as Docker? No — it is less safe for local laptop use. Docker previously provided a sandbox: the agent could only access a specific
$PROJECTS_PATH
folder you explicitly mounted into the container. With the current `uvx`/direct install, the agent runs natively on the host machine with full access to your entire filesystem. The README itself warns about this explicitly. The removal was a deliberate tradeoff — simplicity over sandboxing — justified by the project's increasing focus on running on dedicated servers or cloud VMs (which are already isolated environments). The production Docker image (`ghcr.io/openhands/agent-canvas`) still exists for those who want containerized deployments; what was removed was only the local-dev Docker sandbox path.
g
@nutritious-balloon-65098 if it has full run why did it say it couldn't access a csv when i gave the agent my file path? i updated my main branch npm install etc. or do i need clean install to take advantage of this? is docker completely gone?
n
No code changes were made in this session — it was purely Q&A. Here's a summary of what was answered: Summary Question 1: Why was Docker removed from the README? PR #635 (May 19, 2026) deleted the
dev-docker.mjs
script and all
dev:docker
npm commands entirely. The dev stack now runs via
uvx
(Python agent-server + automation + Vite + ingress proxy), so Docker is no longer needed as a development dependency.
npm run dev
just works. Question 2: Is `uv`/direct install as safe as Docker? No — it's less safe for local laptop use. Docker sandboxed the agent to only the mounted
$PROJECTS_PATH
folder. The direct
uvx
approach gives the agent-server full host filesystem access. The README even has an explicit āš ļø warning about this. The tradeoff was made because the project is increasingly oriented toward servers/VMs (already isolated), not laptops. Question 3: Why couldn't the agent access the CSV? Almost certainly because the old Docker-based stack was still running when the file path was provided. Docker only mounted
$PROJECTS_PATH
— files outside that folder were invisible to the agent regardless of what path was given. Question 4: Do you need a clean install? No,
npm install
is sufficient. Just stop the old server and run
npm run dev
(the old
dev:docker
commands no longer exist in the codebase). Question 5: Is Docker completely gone? Gone from the dev workflow, yes. The production Docker image (
<http://ghcr.io/openhands/agent-canvas|ghcr.io/openhands/agent-canvas>
on GHCR) still exists for self-hosted deployments, but it's not used for local development anymore.
g
@nutritious-balloon-65098 in the future how can I still use docker just for my own purposes
n
w
Rohit is working on the docker install path!
ty 1
n
This was a pure Q&A session — no code changes were made. Here's a summary of what was covered: Q1: Why was Docker removed from the README? Removed in PR #635 (May 19, 2026) because the Docker-based dev scripts (
dev-docker.mjs
,
npm run dev:docker
) were deleted entirely.
npm run dev
now uses
uvx
to spin up the agent-server directly, so Docker is no longer needed as a dev dependency. Q2: Is `uv`/direct install as safe as Docker? No — it's less safe for laptop use. Docker sandboxed the agent to only the mounted
$PROJECTS_PATH
folder. The direct install gives the agent full host filesystem access. The README even warns about this explicitly. Docker is still present as a production distribution image (`ghcr.io/openhands/agent-canvas`) but is no longer part of the dev workflow. Q3: Why couldn't the agent access a CSV after pulling latest? Almost certainly because the old Docker-based stack was still running (only seeing the mounted folder), not the new uvx-based stack. A simple stop +
npm run dev
restart would fix it. No clean install needed —
npm install
is sufficient. Q4: How to still use Docker personally for sandboxing? Two options: 1. Run the all-in-one image (`ghcr.io/openhands/agent-canvas`) with a
-v
mount 2. Run just the agent-server image (`ghcr.io/openhands/agent-server`) in Docker, run the frontend locally via
npm run dev
, and add the Dockerized backend via Manage Backends → Add a Backend in the UI — letting you flip between sandboxed and unsandboxed backends from the same frontend.
w
@quick-window-91705 seems like the images are published? if so let's add the docker run command to the README šŸ™‚
q
Yes on it, I'm doing a final QA (was squashing some docker related issues), will update readme shortly
ty 2
g
Also as a side note, I did not do a clean install of the latest from yesterday but did update my branch and it still automatically run with Docker šŸ˜…
q
using
npm run dev
? which branch are you on?
g
yes i am on main i ran thsi yesterday afternoon. it still has docker running. I synced round 4:20pm when i kicked this thread off
Copy code
git checkout main
git pull origin main
npm install
npm run dev
q
Just tried i see these logs
Copy code
rohitmalhotra@RohitMalhotra-MacBook-Pro agent-canvas % npm run dev

> @openhands/agent-canvas@1.0.0-alpha.3 dev
> node --env-file-if-exists=.env scripts/dev-with-automation.mjs

.env not found. Continuing without it.

Agent Canvas + Automation Development Stack

[1/2] Checking prerequisites...
āœ“ uvx found
āœ“ npm found
āœ“ frontend dependencies found
[ports] Allocating ports...
[2/2] Starting services...
15:40:11 [agent-server] Starting on port 18000...
15:40:11 [agent-server] Using PyPI (1.23.0, default)
15:40:11 [agent-server] Downloading litellm (16.2MiB)
15:40:12 [agent-server] Downloaded litellm
15:40:12 [agent-server] Installed 187 packages in 445ms
15:40:17 [agent-server] 11:40:17 - LiteLLM:WARNING: common_utils.py:979 - litellm: could not pre-load bedrock-runtime response stream shape — Bedrock event-stream decoding will be unavailable. Error: No module named 'botocore'
15:40:17 [agent-server] 11:40:17 - LiteLLM:WARNING: common_utils.py:24 - litellm: could not pre-load sagemaker-runtime response stream shape — SageMaker event-stream decoding will be unavailable. Error: No module named 'botocore'
^C
Shutting down...
15:40:19 [agent-server] Stopping...
We seem to be using uvx to spin up the agents server (not docker) what logs are you seeing?
g
I get an error that project path env needs to be set but I just ran
Copy code
cd documents/GitHub/agent-canvas
git checkout main
git pull origin main
git restore package-lock.json // had a change that didn't match
npm install
npm run dev
And, it seems to be running now and no docker container running thinky spin okay it'
UGH bad getaway -_-
using codex locally to troubleshoot [openhands-cli requiring wsl makes this tough]
Running
Copy code
$env:PYTHONUTF8 = "1"
node --env-file-if-exists=.env .\scripts\dev-static.mjs --skip-build
Allows me to avoid the bad getaway