64 lines
1.7 KiB
Docker
64 lines
1.7 KiB
Docker
# Kandev Multi-Agent Dockerfile
|
|
# A multi-agent image supporting Auggie CLI (Augment Code) and Codex CLI (OpenAI) with agentctl sidecar
|
|
#
|
|
# Prerequisites: Build agentctl before building this image:
|
|
# make build-agentctl
|
|
#
|
|
FROM node:20-slim
|
|
|
|
# Install dependencies
|
|
RUN apt-get update && apt-get install -y \
|
|
git \
|
|
curl \
|
|
jq \
|
|
python3 \
|
|
python3-pip \
|
|
ca-certificates \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Install Auggie CLI from npm
|
|
RUN npm install -g @augmentcode/auggie
|
|
|
|
# Install Codex CLI from npm
|
|
RUN npm install -g @openai/codex
|
|
|
|
# Install code-server for VS Code web access (on-demand, started via agentctl)
|
|
RUN curl -fsSL https://code-server.dev/install.sh | sh
|
|
|
|
# Copy pre-built agentctl binary (run `make build-agentctl` first)
|
|
COPY bin/agentctl /usr/local/bin/agentctl
|
|
RUN chmod +x /usr/local/bin/agentctl
|
|
|
|
# Create agent directory
|
|
WORKDIR /agent
|
|
|
|
# Copy entrypoint script
|
|
COPY dockerfiles/entrypoint.sh /agent/entrypoint.sh
|
|
RUN chmod +x /agent/entrypoint.sh
|
|
|
|
# Workspace will be mounted here
|
|
VOLUME /workspace
|
|
WORKDIR /workspace
|
|
|
|
# Environment variables (passed at runtime)
|
|
# TASK_ID - The task identifier
|
|
# TASK_TITLE - Task title/name
|
|
#
|
|
# For Auggie:
|
|
# AUGMENT_SESSION_AUTH - Session auth JSON for Augment (from ~/.augment/session.json)
|
|
# AUGGIE_SESSION_ID - (Optional) Session ID to resume a previous conversation
|
|
#
|
|
# For Codex:
|
|
# OPENAI_API_KEY - OpenAI API key for Codex
|
|
#
|
|
# agentctl configuration:
|
|
# AGENTCTL_PORT - HTTP API port (default: 39429)
|
|
# AGENTCTL_AGENT_COMMAND - Command to run (e.g., "auggie --acp" or "codex app-server")
|
|
# AGENTCTL_AUTO_START - Auto-start agent on startup (default: false)
|
|
|
|
# Expose agentctl HTTP API port
|
|
EXPOSE 39429
|
|
|
|
# Run agentctl HTTP server
|
|
ENTRYPOINT ["/agent/entrypoint.sh"]
|