chore: drop Codespaces, document localhost + Docker step-by-step#195
Merged
Conversation
We ship two paths today — local from source and Docker — both end at http://localhost:5173. Codespaces was the third option but the OCI providers can't sign requests without ~/.oci/config and a private key on disk, neither of which a Codespace has. Removed: - .devcontainer/ (devcontainer.json, postCreate.sh, welcome.md, workbench-attach.sh). - Codespaces launch buttons / badges / billing copy from README, docs/index.md, docs/workbench.md. - The `.app.github.dev` allowedHost rule in workbench/web/vite.config.ts. Doc updates: - docs/workbench.md is now organised as two clear paths: "Run it locally (from source)" and "Run it in Docker", each with prereqs, step-by-step commands, and a verification step. - The Docker section documents the OCI bind-mount + HOME env trick. ~/.oci/config references the private key at an absolute host path, so mirroring $HOME/.oci at the same path inside the container (and pointing HOME at it) is what makes oci-apikey / oci-session work. Tested live: 112 OCI models returned via the bind-mounted config. - README collapses to the same two paths and ships the same OCI bind-mount snippet. - workbench/README.md gains a "Run in Docker" section so the in-tree audience sees the same guidance. - Provider settings entries now state both hosting paths (was "Local-machine only"). - Troubleshooting calls out the two specific failure modes: "no profile" (missing bind-mount) and "key file missing" (HOME env not set). workbench/web/src/main.ts: comment that referenced "On a Codespace" now reads "On any non-localhost host" — same behaviour. Signed-off-by: Federico Kamelhar <federico.kamelhar@oracle.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Drop the Codespaces launch path. We're keeping two ways to run the workbench going forward — local from source and Docker — and the docs are reorganised around those two paths.
Codespaces never worked for the OCI providers (api-key or session token) because the OCI SDK signs every request with a private key on disk, and a fresh Codespace has neither
~/.oci/confignor any.pem. Trying to ship Codespaces alongside the OCI flow meant the demo path silently fell back to OpenAI / Anthropic only, which isn't representative of what locus is about.Removed
.devcontainer/(4 files —devcontainer.json,postCreate.sh,welcome.md,workbench-attach.sh).README.md,docs/index.md,docs/workbench.md..app.github.devallowedHost rule inworkbench/web/vite.config.ts.Doc updates
docs/workbench.mdrestructured into two clear sections:git clone→pip install→ three-terminal setup,make-based shortcut, plus threecurlcommands to verify each tier is up.docker build+docker run, with both the OpenAI/Anthropic (no extra args) and OCI (-v "$HOME/.oci:$HOME/.oci:ro" -e "HOME=$HOME") variants explained. Includes a port-collision section for remapping host-side ports.HOMEpair is needed:~/.oci/config'skey_fileline is an absolute host path, so mirroring$HOME/.ociat the same path inside the container is what makes the SDK find the private key.HOMEenv.README.mdcollapsed to the same two paths, OCI bind-mount snippet matches.workbench/README.mdgains a## Run in Dockersection so the in-tree reader sees the same guidance.Verified live
-v "$HOME/.oci:$HOME/.oci:ro" -e "HOME=$HOME"→/api/modelsagainstLUIGI_FRA_APIinus-chicago-1returned 112 OCI models (the SDK successfully signed requests against the bind-mounted config + key file).-v $HOME/.oci:/root/.oci:ro -v $HOME/.oci:$HOME/.oci:ro) also works, but the single-mount +HOMEenv form is cleaner.Test plan
grep -ri codespacereturns no matches across the tracked tree.LUIGI_FRA_API(112 models returned).