Use these checks when Workspace Hub reports missing dependencies, failed installs, or an unreachable preview.
For direct local repos, Open preview now tries to start the repo automatically when the saved preview or healthcheck target is local and the runtime is not already running.
If a repo shows dependencies: missing:
- Run the repo install command from Workspace Hub or in a terminal.
- Confirm the expected install directory exists afterward.
Node repos usually expect
node_modules/. Composer repos usually expectvendor/. - Retry the repo start action after install completes.
If the repo has no inferred install command:
- Check the repo
README. - Add
installCommandto.workspace/project.jsonif the repo needs one. - Re-run the install from Workspace Hub.
If the repo looks like a Python-style project:
- Confirm whether it expects a local
.venv/orvenv/. - If it does, create or refresh that environment before retrying the runtime.
- If it intentionally uses a global interpreter or another workflow, capture that in repo docs so the next operator does not misread the Hub warning.
If the missing piece is not a repo dependency but an optional workspace ability:
- Do not hide that requirement in the repo manifest.
- Document it in the repo
README.mdorHANDOVER.md. - Install or update it from the workspace root with
tools/scripts/manage-workspace-capabilities.sh.
When an install ends in error:
- Read the install log in the details panel first.
- Check whether the wrong package manager was inferred.
- Confirm network access, private registry auth, and toolchain availability.
- If the repo needs a custom install command, write it into the manifest.
When the runtime status becomes error:
- Compare the runtime log with the dependency state.
- If dependencies are still missing or uncertain, install first.
- Check the repo
devCommandoverride or manifest command. - Re-run the repo start action only after the failing command is corrected.
If Workspace Hub shows the repo as running but health is unreachable:
- Confirm the preview URL is correct.
- Check whether the dev server chose a different port.
- Review the runtime log for the actual local URL.
- Save a
previewUrlorhealthcheckUrloverride when the repo uses a fixed non-default address.
If the repo prefers mapped-host routing:
- Confirm the repo has a stable mapped-host path or subdomain in the manifest.
- Save an explicit
previewUrlonce the routed hostname is known, instead of relying on transient runtime-log URLs. - Check the operator’s reverse-proxy or local-host mapping outside Workspace Hub if the route is configured but still unreachable.
If Open preview attempted to start the repo but still failed to open a working preview:
- Read the runtime log in the details panel first.
- Confirm the repo really exposes the saved
previewUrlorhealthcheckUrl. - Check for port conflicts or a slow startup path.
- Restart the repo manually after correcting the command or URL mismatch.
Typical signs:
- the runtime log mentions
address already in use - a Vite or Node server exits immediately after launch
- a healthcheck never becomes healthy even though the repo starts
Practical response:
- Stop the conflicting local process.
- Restart the repo.
- If the repo always needs a non-default port, make that explicit in the repo command or manifest.
If the repo lives in a synced folder such as Google Drive, iCloud, or Dropbox, the sync client can interfere with .git internals and local metadata files.
Practical response:
- Prefer a non-synced workspace path for active development.
- If Git starts reporting broken refs or weird metadata files, pause the sync client and clean the repo.
- Keep local-only operator files in ignored overrides such as
.workspace/project.local.jsonanddocs/*.local.md.
Update .workspace/project.json when Workspace Hub keeps inferring the wrong command, package manager, preview URL, or preferred mode. Use saved overrides for temporary local corrections and the manifest for repo-native behaviour that should stay with the repo.
Do not use the manifest to imply that an optional workspace ability is present. If a workflow depends on one, document that explicitly in repo docs and keep the install path visible to the next contributor.
After running repo intake:
- Read the intake notes in the details panel before assuming the repo is fully ready.
- Check whether intake created a manifest or intentionally skipped it.
- Fill in any repo-specific install, dev, preview, or mapped-host details that conservative intake could not infer safely.