canonical / canonical/workshop
Feature request: provide seamless devcontainer support
- Dominant language
- Go
- Stars
- 108
- Forks
- 17
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 40
Description
I don't trust VSCode "devcontainers" to properly contain an LLM working on a codebase. I would really like to use LXD containers as devcontainers instead of regular Docker containers.
Workshop seems like the right tool to do this with, but it doesn't actually integrate with devcontainers.
Currently, I might be able to "hack" it by simply starting an environment and using the "Remote - SSH" extension to connect to it. But that requires a lot of manual work, and I still need to manually install the project-specific tools if there's no SDK config for this project.
I see two possible approaches:
* Create a devcontainer-like feature that uses the workshop config file instead of a devcontainer config file. This feature is part of a vscode extension and hooks into the Remote feature to the remote into the workshop environment. The downside is that the user needs to recreate the devcontainer setup scripts to configure a workshop environment instead.
* Create an integration between devcontainers and workshop that runs the devcontainer _inside_ of the workshop environment. This would be the most seamless experience, but might be a bit more complicated/convoluted.
What do you think?
Contributor guide
Research direction
Start by reviewing Workshop’s existing environment configuration and any VS Code or Remote-SSH integration mentioned in the issue, then compare the two proposed approaches. Done is not defined: clarify whether the goal is a Workshop-backed VS Code devcontainer or devcontainers running inside Workshop, and establish acceptance criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, vscode
- Domain
- developer-experience, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100