diff options
| author | Peter Stone <thepeterstone@gmail.com> | 2026-03-18 00:17:50 +0000 |
|---|---|---|
| committer | Peter Stone <thepeterstone@gmail.com> | 2026-03-18 07:54:48 +0000 |
| commit | 0fb4e3e81c20b2e2b58040772b747ec1dd9e09e7 (patch) | |
| tree | 6a0b8af6c3faacc332e1102776960ac218ec66ca /images | |
| parent | 1d550c1196ea836e0a0f798ba0127c1086f5f963 (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')
| -rw-r--r-- | images/agent-base/Dockerfile | 37 |
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"] |
