diff --git a/CHANGELOG.md b/CHANGELOG.md index 71953c63f2..810f7707fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,11 +8,44 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Added -- Initial repository structure -- CI infrastructure (GitHub Actions, pre-commit hooks) -- Gateway sidecar framework -- Sandbox container framework -- CLI tool framework +- **Core Infrastructure (Phase 1)** + - Repository structure with Python packaging (pyproject.toml, hatchling) + - GitHub Actions CI/CD workflow (lint, test, security scan) + - Pre-commit hooks for code quality + - Development tooling (Makefile, dev script) + +- **Documentation (Phase 1.5)** + - Architecture documentation with security model + - Configuration reference with examples + - API documentation for gateway endpoints + - Setup and troubleshooting guides + - ADR (Architecture Decision Record) for design decisions + +- **Gateway Module (Phase 2)** + - Flask REST API server with Waitress production server + - Session management with token-based authentication + - Git/GitHub client wrappers with policy enforcement + - Repository visibility checking (public/private mode enforcement) + - Worktree management for isolated per-session workspaces + - Rate limiting and audit logging + - Squid HTTP proxy integration for network filtering + - Private repository policy enforcement + +- **Container Infrastructure (Phase 3)** + - Gateway container (Squid proxy + Flask API) + - Sandbox container (development environment) + - Git/gh binary wrappers routing through gateway + - Session token credential helper + - Parameterized for standalone deployment + +- **CLI Tool (Phase 4)** + - `egg start` - Start sandbox environment with network setup + - `egg stop` - Stop and cleanup containers + - `egg status` - Show container and network status + - `egg exec` - Execute commands in sandbox + - `egg logs` - View container logs + - `egg config` - Configuration management (validate, show, init) + - YAML configuration with repository and GitHub App support ### Changed - N/A diff --git a/pyproject.toml b/pyproject.toml index b826fd7f27..44298e6a37 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,10 +1,24 @@ [project] -name = "egg" +name = "egg-sandbox" version = "0.1.0" -description = "Sandboxed LLM code execution environment" +description = "Sandboxed LLM code execution environment with infrastructure-level security" readme = "README.md" license = {text = "MIT"} requires-python = ">=3.11" +keywords = ["sandbox", "llm", "security", "docker", "claude", "ai", "code-execution"] +classifiers = [ + "Development Status :: 3 - Alpha", + "Environment :: Console", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Operating System :: POSIX :: Linux", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Topic :: Security", + "Topic :: Software Development :: Code Generators", + "Typing :: Typed", +] dependencies = [ "flask>=3.0.0,<4.0.0", "waitress>=3.0.0,<4.0.0", diff --git a/uv.lock b/uv.lock index df166fb3e0..27f8b71732 100644 --- a/uv.lock +++ b/uv.lock @@ -339,7 +339,7 @@ wheels = [ ] [[package]] -name = "egg" +name = "egg-sandbox" version = "0.1.0" source = { editable = "." } dependencies = [