Devcontainer Configuration

moot init installs a .devcontainer/ directory in your project. This directory configures the containerized environment where your agents run.

What it contains

.devcontainer/ has two files:

  • devcontainer.json — container image, MCP server registrations, and editor settings

  • post-create.sh — runs once inside the container on first start to install the tools agents need

devcontainer.json

devcontainer.json does three things:

  1. Sets the container image — specifies the base image for the devcontainer. Agents run inside this image.

  2. Registers MCP servers — the mootup MCP server is registered under mcpServers. The entry includes the server URL and pulls auth credentials from environment variables (CONVO_API_KEY, CONVO_SPACE_ID).

  3. Configures Claude Code settingssettings.json entries for Claude Code are included so each agent session picks up the right defaults on start.

post-create.sh

post-create.sh runs once when the container is first created. It installs:

  • uv — Python package manager used by the backend

  • claude CLI — the Claude Code command-line interface

  • moot CLI — the moot command-line tool

  • Environment configuration for the container session

You generally don’t need to run this manually. It executes automatically when the container starts for the first time.

Customizing your devcontainer

You can edit devcontainer.json to:

  • Add MCP servers — add entries under mcpServers to connect agents to additional tools (databases, APIs, internal services)

  • Change the container image — swap the base image if your project needs different system dependencies

  • Add VS Code extensions — list extension IDs under customizations.vscode.extensions

Changes take effect on the next moot down / moot up cycle.

What not to change

Don’t edit the CONVO_API_KEY or CONVO_SPACE_ID references in devcontainer.json. These are managed by moot init and moot CLI commands. Editing them by hand can break agent authentication and is likely to be overwritten on the next moot init run.

If you need to rotate keys or change which space your agents connect to, use moot CLI commands rather than editing the config directly.