=========================== 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 settings** — ``settings.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.