diff --git a/workspace-server/internal/handlers/admin_workspace_images.go b/workspace-server/internal/handlers/admin_workspace_images.go index 95af3c91..256bfbd8 100644 --- a/workspace-server/internal/handlers/admin_workspace_images.go +++ b/workspace-server/internal/handlers/admin_workspace_images.go @@ -44,8 +44,8 @@ func NewWorkspaceImageService(docker *dockerclient.Client) *WorkspaceImageServic // AllRuntimes is the canonical list mirroring docs/workspace-runtime-package.md. // Update both when a new template is added. var AllRuntimes = []string{ - "claude-code", "langgraph", "crewai", "autogen", - "deepagents", "hermes", "gemini-cli", "openclaw", + "claude-code", "langgraph", "autogen", + "hermes", "openclaw", } // RefreshResult is the per-call outcome surfaced to HTTP callers AND logged diff --git a/workspace-server/internal/models/runtime_defaults.go b/workspace-server/internal/models/runtime_defaults.go index 320586e8..79da0fba 100644 --- a/workspace-server/internal/models/runtime_defaults.go +++ b/workspace-server/internal/models/runtime_defaults.go @@ -23,8 +23,8 @@ package models // - claude-code: "sonnet" — Anthropic's CLI accepts the short // name and resolves it via the operator's anthropic-oauth or // ANTHROPIC_API_KEY chain. -// - everything else (hermes, langgraph, crewai, autogen, deepagents, -// codex, openclaw, gemini-cli, external, ""): a fully-qualified +// - everything else (hermes, langgraph, autogen, codex, openclaw, +// external, ""): a fully-qualified // vendor:model slug that the universal MODEL_PROVIDER chain in // molecule-core PR #247 can route via per-vendor required_env. // diff --git a/workspace-server/internal/models/runtime_defaults_test.go b/workspace-server/internal/models/runtime_defaults_test.go index bab673ac..13873b08 100644 --- a/workspace-server/internal/models/runtime_defaults_test.go +++ b/workspace-server/internal/models/runtime_defaults_test.go @@ -21,12 +21,9 @@ func TestDefaultModel(t *testing.T) { // as a generic "unknown" failure. {"hermes", "anthropic:claude-opus-4-7"}, {"langgraph", "anthropic:claude-opus-4-7"}, - {"crewai", "anthropic:claude-opus-4-7"}, {"autogen", "anthropic:claude-opus-4-7"}, - {"deepagents", "anthropic:claude-opus-4-7"}, {"codex", "anthropic:claude-opus-4-7"}, {"openclaw", "anthropic:claude-opus-4-7"}, - {"gemini-cli", "anthropic:claude-opus-4-7"}, {"external", "anthropic:claude-opus-4-7"}, // Unknown / empty — fall through to universal default rather diff --git a/workspace-server/internal/provisioner/localbuild_test.go b/workspace-server/internal/provisioner/localbuild_test.go index df804821..293b9c1c 100644 --- a/workspace-server/internal/provisioner/localbuild_test.go +++ b/workspace-server/internal/provisioner/localbuild_test.go @@ -190,7 +190,7 @@ func TestEnsureLocalImage_RepoNotFound(t *testing.T) { opts.HTTPClient = srv.Client() opts.remoteHeadSha = nil // exercise real HTTP path - _, err := ensureLocalImageWithOpts(context.Background(), "crewai", opts) + _, err := ensureLocalImageWithOpts(context.Background(), "hermes", opts) if err == nil { t.Fatalf("expected error, got nil") } diff --git a/workspace-server/internal/provisioner/provisioner_test.go b/workspace-server/internal/provisioner/provisioner_test.go index a800b44e..bbc1f61f 100644 --- a/workspace-server/internal/provisioner/provisioner_test.go +++ b/workspace-server/internal/provisioner/provisioner_test.go @@ -808,7 +808,7 @@ func TestIsImageNotFoundErr(t *testing.T) { {"nil", nil, false}, {"moby no such image", fmtErr(`Error response from daemon: No such image: workspace-template:openclaw`), true}, {"no such image lowercase", fmtErr(`error: no such image: foo:bar`), true}, - {"image not found", fmtErr(`Error: image "workspace-template:crewai" not found`), true}, + {"image not found", fmtErr(`Error: image "workspace-template:hermes" not found`), true}, {"generic not found without image", fmtErr(`container not found`), false}, {"unrelated error", fmtErr(`connection refused`), false}, {"permission denied", fmtErr(`permission denied`), false}, diff --git a/workspace-server/internal/provisioner/registry.go b/workspace-server/internal/provisioner/registry.go index 74334882..e1c72a7a 100644 --- a/workspace-server/internal/provisioner/registry.go +++ b/workspace-server/internal/provisioner/registry.go @@ -21,9 +21,6 @@ var knownRuntimes = []string{ "autogen", "claude-code", "codex", - "crewai", - "deepagents", - "gemini-cli", "hermes", "langgraph", "openclaw", diff --git a/workspace-server/internal/provisioner/registry_test.go b/workspace-server/internal/provisioner/registry_test.go index f9c6611c..50802976 100644 --- a/workspace-server/internal/provisioner/registry_test.go +++ b/workspace-server/internal/provisioner/registry_test.go @@ -53,8 +53,8 @@ func TestRuntimeImage_AllKnownRuntimes(t *testing.T) { } } // Pin the count so adding a runtime requires explicit test acknowledgement. - if len(knownRuntimes) != 9 { - t.Errorf("knownRuntimes length = %d, want 9 (autogen, claude-code, codex, crewai, deepagents, gemini-cli, hermes, langgraph, openclaw)", len(knownRuntimes)) + if len(knownRuntimes) != 6 { + t.Errorf("knownRuntimes length = %d, want 6 (autogen, claude-code, codex, hermes, langgraph, openclaw)", len(knownRuntimes)) } }