All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.1.0 - 2026-04-05
- Capture Claude Code
session_idfrom stream output for multi-turn--resumesupport (PR #1, PR #3) - Pass through
ANTHROPIC_BASE_URL,ANTHROPIC_AUTH_TOKEN, andCLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFICenv vars into containers for proxy/gateway setups (PR #2)
- Remove
noexecfrom/tmptmpfs mount so compilers (Go, Rust, C) can execute test binaries - Increase
/tmptmpfs size from 64MB to 512MB for build artifacts - Remove duplicate output append in
claude_code_statusthat re-parsed full container logs (PR #3)
- Increase default container memory from 512MB to 2GB
- Replace Codecov with
vitest-coverage-report-actionfor PR coverage reports
1.0.12 - 2026-02-23
- Inject host git identity into containers via
GIT_AUTHOR_NAME,GIT_AUTHOR_EMAIL,GIT_COMMITTER_NAME,GIT_COMMITTER_EMAILenv vars - Refuse to start if host git identity (
user.name,user.email) is not configured delete_workspacesparameter onclaude_code_cleanupfor explicit workspace deletion
claude_code_cleanupno longer destroys workspace data (code, files, git history) — only session metadata is removed by default
1.0.11 - 2026-02-20
- Detect Claude Code authentication errors (expired OAuth tokens) and report to agent
- Detect Claude Code rate limit errors and report wait time to agent
- Real-time streaming output via
streamContainerLogs(replaces polling) - Job completion notifications via webhook (no polling required)
claude_code_sessionstool for listing all active sessions
- Mount host
~/.claudedirectly so OAuth token refreshes persist across jobs - Prevent race condition in concurrent job output streaming
- Rootless Podman UID mapping with
--userns=keep-id:uid=1000,gid=1000
npm testnow runs formatter and linter checks before tests- Extracted shared formatting utilities (
formatDuration,formatBytes) - Improved type safety, error handling, and code clarity
1.0.0 - 2026-02-12
- Initial public release
claude_codetool for executing prompts in isolated containersclaude_code_cleanuptool for cleaning up idle sessions- Session persistence with automatic state tracking
- Dual authentication support (API key and OAuth/Claude Max)
- Configurable resource limits (memory, CPU, PIDs)
- AppArmor profile support for additional security
- Startup and idle timeout detection
- Multi-arch container image (arm64, amd64)
- Comprehensive test suite (unit and integration)
- Rootless container execution via Podman
- All Linux capabilities dropped (
--cap-drop ALL) - tmpfs with noexec for /tmp
- Configurable network isolation
- Optional AppArmor MAC enforcement