Skip to content

refactor: remove WSL tools — will be a separate wsl-mcp project#13

Merged
aniongithub merged 1 commit into
mainfrom
fix/remove-wsl
May 10, 2026
Merged

refactor: remove WSL tools — will be a separate wsl-mcp project#13
aniongithub merged 1 commit into
mainfrom
fix/remove-wsl

Conversation

@aniongithub
Copy link
Copy Markdown
Owner

Summary

Remove WSL tools from devcontainer-mcp. WSL management will become its own wsl-mcp project.

Why

WSL management is a fundamentally different concern from dev containers. Bundling them together created a platform detection problem:

  • The Windows installer deploys a Linux binary inside WSL (for Docker/devcontainer access)
  • But WSL tools need to call wsl.exe from the Windows side
  • The binary running inside WSL has target_os = "linux", so WSL tools were compiled out
  • Even with all tools documented in SKILL.md, agents couldn't call them because they didn't exist in the binary

What's removed

  • wsl.rs core module, CliBinary::Wsl, Error::WslNotFound
  • tools/wsl/ (6 files, 9 MCP tools)
  • skills/wsl.md, skills/_tools/wsl.txt
  • Windows native build job in release.yml
  • WSL references in skill constraint text

What's kept

  • Composable #[tool_router] architecture (rmcp 1.6)
  • Tag-based skill composition (build.rs)
  • shell-escape crate fix
  • Strengthened skill constraints against direct CLI usage

WSL management is a different concern from dev containers. Bundling
them forced platform detection complexity that didn't fit the
deployment model (Linux binary running inside WSL via bridge).

Removed:
- crates/devcontainer-mcp-core/src/wsl.rs
- crates/devcontainer-mcp/src/tools/wsl/ (6 files, 9 tools)
- skills/wsl.md and skills/_tools/wsl.txt
- CliBinary::Wsl and Error::WslNotFound
- Windows native build job in release.yml
- WSL references in skill constraint text

Kept:
- Composable #[tool_router] architecture
- Tag-based skill composition (build.rs)
- shell-escape crate fix
- Strengthened skill constraints
@aniongithub aniongithub merged commit 10039a5 into main May 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant