summaryrefslogtreecommitdiff
path: root/images/agent-base
diff options
context:
space:
mode:
authorPeter Stone <thepeterstone@gmail.com>2026-03-18 00:17:50 +0000
committerPeter Stone <thepeterstone@gmail.com>2026-03-18 07:54:48 +0000
commit0fb4e3e81c20b2e2b58040772b747ec1dd9e09e7 (patch)
tree6a0b8af6c3faacc332e1102776960ac218ec66ca /images/agent-base
parent1d550c1196ea836e0a0f798ba0127c1086f5f963 (diff)
feat: implement containerized repository-based execution model
This commit implements the architectural shift from local directory-based sandboxing to containerized execution using canonical repository URLs. Key changes: - Data Model: Added RepositoryURL and ContainerImage to task/agent configs. - Storage: Updated SQLite schema and queries to handle new fields. - Executor: Implemented ContainerRunner using Docker/Podman for isolation. - API/UI: Overhauled task creation to use Repository URLs and Image selection. - Webhook: Updated GitHub webhook to derive Repository URLs automatically. - Docs: Updated ADR-005 with risk feedback and added ADR-006 to document the new containerized model. - Defaults: Updated serve command to use ContainerRunner for all agents. This fixes systemic task failures caused by build dependency and permission issues on the host system.
Diffstat (limited to 'images/agent-base')
-rw-r--r--images/agent-base/Dockerfile37
1 files changed, 37 insertions, 0 deletions
diff --git a/images/agent-base/Dockerfile b/images/agent-base/Dockerfile
new file mode 100644
index 0000000..71807ae
--- /dev/null
+++ b/images/agent-base/Dockerfile
@@ -0,0 +1,37 @@
+# Claudomator Agent Base Image
+FROM ubuntu:22.04
+
+# Avoid interactive prompts
+ENV DEBIAN_FRONTEND=noninteractive
+
+# Install core build and dev tools
+RUN apt-get update && apt-get install -y \
+ git \
+ curl \
+ make \
+ golang \
+ nodejs \
+ npm \
+ sqlite3 \
+ jq \
+ sudo \
+ && rm -rf /var/lib/apt/lists/*
+
+# Install specific node tools if needed (example: postcss)
+RUN npm install -g postcss-cli tailwindcss autoprefixer
+
+# Setup workspace
+WORKDIR /workspace
+
+# Install Claudomator-aware CLI wrappers (placeholder)
+# These will be provided by the Claudomator project in the future.
+# For now, we assume 'claude' and 'gemini' binaries are available or mapped.
+
+# Add a user claudomator-agent
+RUN useradd -m claudomator-agent && \
+ echo "claudomator-agent ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
+
+USER claudomator-agent
+
+# Default command
+CMD ["/bin/bash"]