diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..144199a
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,3 @@
+.PHONY: test
+test:
+	devcontainer features test
diff --git a/src/code-server/devcontainer-feature.json b/src/code-server/devcontainer-feature.json
index e0afe4a..b12799c 100644
--- a/src/code-server/devcontainer-feature.json
+++ b/src/code-server/devcontainer-feature.json
@@ -23,7 +23,11 @@
         "extensions": {
             "type": "string",
             "default": ""
-        }
+        },
+        "workspace": {
+             "type": "string",
+             "default": ""
+         }
     },
     "entrypoint": "/usr/local/bin/code-server-entrypoint",
     "dependsOn": {
diff --git a/src/code-server/install.sh b/src/code-server/install.sh
index 04be75d..3f9ff0b 100644
--- a/src/code-server/install.sh
+++ b/src/code-server/install.sh
@@ -3,7 +3,7 @@ set -e
 
 CODE_SERVER_INSTALL_ARGS=""
 
-if [ -n "$VERSION" ]; then
+if [[ -n $VERSION ]]; then
 	CODE_SERVER_INSTALL_ARGS="$CODE_SERVER_INSTALL_ARGS --version=\"$VERSION\""
 fi
 
@@ -17,12 +17,18 @@ do
     code-server --install-extension "$extension"
 done
 
+CODE_SERVER_WORKSPACE="$_REMOTE_USER_HOME"
+
+if [[ -n $WORKSPACE ]]; then
+    CODE_SERVER_WORKSPACE="$WORKSPACE"
+fi
+
 cat > /usr/local/bin/code-server-entrypoint \
 << EOF
 #!/usr/bin/env bash
 set -e
 
-su $_REMOTE_USER -c 'code-server --bind-addr "$HOST:$PORT" \$ARGS'
+su $_REMOTE_USER -c 'code-server --bind-addr "$HOST:$PORT" "$CODE_SERVER_WORKSPACE"'
 EOF
 
 chmod +x /usr/local/bin/code-server-entrypoint
diff --git a/test/code-server/code-server-workspace.sh b/test/code-server/code-server-workspace.sh
new file mode 100644
index 0000000..b57e334
--- /dev/null
+++ b/test/code-server/code-server-workspace.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+set -e
+
+# Optional: Import test library bundled with the devcontainer CLI
+source dev-container-features-test-lib
+
+# Feature-specific tests
+check "code-server version" code-server --version
+check "code-server running" pgrep -f 'code-server/lib/node.*/code-server'
+check "code-server listening" lsof -i "@127.0.0.1:8080"
+
+check "code-server workspace" grep $'\'code-server.*"/home"\'' < /usr/local/bin/code-server-entrypoint
+
+# Report results
+reportResults
diff --git a/test/code-server/scenarios.json b/test/code-server/scenarios.json
index f9f3cff..3a34c43 100644
--- a/test/code-server/scenarios.json
+++ b/test/code-server/scenarios.json
@@ -30,5 +30,13 @@
                 "version": "4.98.0"
             }
         }
+    },
+    "code-server-workspace": {
+        "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
+        "features": {
+            "code-server": {
+                "workspace": "/home"
+            }
+        }
     }
 }