Skip to content

[Feature]: Add system dependencies for Claude Code support in Docker sandbox #240

@mg-dev25

Description

@mg-dev25

Problem

When running Claude Code inside the vibekit Docker sandbox, it crashes or outputs errors due to missing system dependencies:

  1. File editing fails - Claude Code needs a text editor but none is installed, causing edit operations to fail
  2. Diagnostic failures - Claude Code uses ps command for diagnostics, but procps package is missing
  3. MCP servers won't run - Many MCP servers are Node.js-based and can't start because Node.js isn't in the container
  4. Configuration errors - Claude Code has issues writing to /root/.claude when the directory doesn't exist

These aren't just inconveniences - they cause Claude Code to crash or produce errors that break the workflow.

Proposed solution

Add these system dependencies to packages/cli/Dockerfile:

  • procps - provides ps command used by Claude Code for diagnostics
  • neovim - text editor for file operations
  • Node.js LTS - runtime for MCP servers
  • Pre-create /root/.claude directory

Questions for maintainers

  1. Editor choice: Should we hardcode neovim, or provide a way for users to configure their preferred editor (vim, nano, etc.)? If configurable, where should this setting live?

  2. Scope: These dependencies would be added to the main CLI Dockerfile. Is this the right approach, or should there be a different strategy for tool-specific requirements?

Impact

Total image size increase is around 60-65MB. This makes Claude Code fully functional in the sandbox without crashes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions