Alpha Berkeley Framework v0.7.3 - Enhanced Container Deployment
Alpha Berkeley Framework - Latest Release (v0.7.3)
π Enhanced Container Deployment - Development mode support, PyPI integration, and improved service templates for seamless local and production workflows.
What's New in v0.7.3
π³ Container Deployment Improvements
Development Mode Support
- New
--devflag for deploy CLI command enables local framework testing - Local framework override - seamlessly switch between PyPI and local framework versions
- Smart dependency installation - containers detect dev mode and install local framework
- Improved development workflow - no need to rebuild containers when testing framework changes
PyPI Distribution Integration
- Project templates updated to use PyPI framework distribution by default
- Automatic framework dependency added to generated
pyproject.tomlandrequirements.txt - Removed hardcoded paths from configuration templates for better portability
- Agent data structure creation - ensures proper directory structure for container mounts
Service Template Enhancements
- Improved container startup with better logging and error messages
- Fallback mechanisms for missing requirements.txt files
- Changed restart policy to 'no' for better development experience
- Enhanced start scripts with PyPI framework and dev mode detection
What's New in v0.7.2
π¦ Simplified Installation
PostgreSQL dependencies moved to optional extras - The framework now installs without requiring PostgreSQL packages, making it much easier to get started:
# Basic installation (uses in-memory storage)
pip install alpha-berkeley-framework
# With PostgreSQL for persistent conversations
pip install alpha-berkeley-framework[postgres]
# Full installation with all features
pip install alpha-berkeley-framework[all]Benefits:
- β Faster, simpler installation process
- β No PostgreSQL setup required for development/testing
- β Framework works perfectly with in-memory checkpointing
- β
Production users can still get persistent state with
[postgres]extra
What's New in v0.7.0+
ποΈ Framework Decoupling (Breaking Changes)
The framework has transitioned from a monolithic architecture to a pip-installable dependency model, fundamentally changing how applications are built and deployed.
Before (v0.6.x):
# Applications embedded in framework repo
git clone https://github.com/thellert/alpha_berkeley
cd alpha_berkeley/src/applications/my_app # Edit inside frameworkNow (v0.7.0):
# Framework as pip dependency
pip install alpha-berkeley-framework
framework init my-app --template hello_world_weather
cd my-app # Independent repository⨠New Features
Unified CLI System
framework init- Create new projects from templates (minimal, hello_world_weather, wind_turbine)framework deploy- Manage Docker services (up/down/restart/status/rebuild/clean)framework chat- Interactive conversation interfaceframework health- Comprehensive system diagnostics (Python, dependencies, config, containers)framework export-config- View framework default configuration
All commands use lazy loading for fast startup, loading heavy dependencies only when needed.
Template System
Three production-ready templates for instant project generation:
- Minimal - Bare-bones starter with TODO placeholders
- Hello World Weather - Simple weather query example (tutorial)
- Wind Turbine - Complex multi-capability monitoring system (advanced tutorial)
Each template generates a complete, self-contained project with:
- Application code (capabilities, registry, context classes)
- Service configurations (Jupyter, OpenWebUI, Pipelines)
- Self-contained configuration file (~320 lines)
- Environment template (.env.example)
- Dependencies file (pyproject.toml)
- Getting started documentation
Registry Helper Functions
Simplify application registries by ~70% with extend_framework_registry():
# Before: 80+ lines of boilerplate
class MyAppRegistry(RegistryConfigProvider):
def get_registry_config(self):
return RegistryConfig(
core_nodes=[...], # 200+ lines listing framework nodes
capabilities=[...], # 200+ lines listing framework capabilities
# ... manual merging
)
# After: 5-10 lines focused on your app
class MyAppRegistry(RegistryConfigProvider):
def get_registry_config(self):
return extend_framework_registry(
capabilities=[...], # Only your capabilities
exclude_capabilities=["python"], # Optional exclusions
)Path-Based Discovery
- Explicit registry file paths in
config.yml(no magic conventions) - Applications never pip-installed during development
- Immediate code changes (no rebuild/reinstall)
- Natural import paths matching package structure
Self-Contained Configuration
- One
config.ymlper application (~320 lines) - Complete transparency - all settings visible
- Framework defaults included at project creation
- User controls config lifecycle (industry standard)
- Environment variable support with
.envfiles
π Documentation
New Migration Guide
Comprehensive upgrade guide for v0.6.x users:
- Breaking changes overview
- Step-by-step migration instructions (10 steps)
- Automated import path updates
- Common issues and solutions
- Migration progress checklist
Location: docs/source/getting-started/migration-guide.rst
Updated Getting Started
- Fresh installation path
- Migration path (v0.6.x β v0.7.0)
- Updated tutorials using new CLI
- Template-based examples
π Breaking Changes
This is a major release with significant breaking changes:
1. Import Paths Changed
# OLD β
from applications.my_app.capabilities import MyCapability
# NEW β
from my_app.capabilities import MyCapability2. CLI Commands Unified
# OLD β
python -m interfaces.CLI.direct_conversation
python -m deployment.container_manager deploy_up
# NEW β
framework chat
framework deploy up3. Configuration Structure
- Each application has own
config.yml(no global config) registry_pathspecifies exact registry file location- Self-contained configuration with all settings visible
4. Repository Structure
interfaces/βsrc/framework/interfaces/(pip-installed)deployment/βsrc/framework/deployment/(pip-installed)src/configs/βsrc/framework/utils/(merged)- Applications β separate repositories (production) or templates (tutorials)
5. Discovery Mechanism
- Explicit path-based discovery via
registry_pathin config - No automatic scanning of
applications/directory - Registry must contain exactly one
RegistryConfigProviderclass
π― Migration Path
For Production Applications:
- Install framework:
pip install alpha-berkeley-framework - Create new repository structure
- Copy application code
- Update import paths (automated script available)
- Simplify registry with
extend_framework_registry() - Create self-contained
config.yml - Validate with
framework health
For Tutorial Applications:
Regenerate from templates:
framework init my-weather --template hello_world_weather
framework init my-turbine --template wind_turbineComplete instructions: See migration guide in documentation.
β‘ Performance & Developer Experience
- Lazy Loading - CLI commands load dependencies on-demand (fast
--help) - Immediate Changes - Edit code, run immediately (no pip install)
- Explicit Configuration - All settings visible in one file
- Template-Based - New projects in seconds
- Health Diagnostics - Comprehensive validation with
framework health
π¦ Installation
# Install framework
pip install alpha-berkeley-framework
# Verify installation
framework --version
framework --help
# Create first project
framework init my-assistant --template hello_world_weather
cd my-assistant
# Setup and run
cp .env.example .env
# Edit .env with API keys
framework deploy up
framework chatUpgrade Notes
Required Actions for Existing Users
- Read Migration Guide - Comprehensive upgrade instructions
- Update Import Paths - Change
applications.*to package names - Simplify Registry - Use
extend_framework_registry()helper - Create Config - Self-contained
config.ymlfor each app - Test Migration - Use
framework healthto validate
Backward Compatibility
- Legacy entry points maintained -
alpha-berkeley,alpha-berkeley-deploystill work - Registry interface unchanged -
RegistryConfigProviderpreserved - Core functionality preserved - All framework features maintained
Dependencies
- Python 3.11+ required
- New dependencies: None (framework functionality unchanged)
- Framework now pip-installable with proper package data
Known Issues
None at release time. Please report issues at: https://github.com/thellert/alpha_berkeley/issues
Get Started with v0.7.0
- Fresh Installation: Follow Installation Guide
- Upgrading: Follow Migration Guide
- Templates: Try
framework init --helpto see available templates - Documentation: Visit complete documentation
GitHub Release Instructions
When creating the GitHub release:
- Go to GitHub repo β Releases β "Create a new release"
- Tag:
v0.7.0 - Title:
Alpha Berkeley Framework v0.7.0 - Framework Decoupling - Description: Copy the content above (from "π Major Architecture Release" through "Breaking Changes")
- Mark as major release - This is a breaking change release
Technical Details
Architecture Changes
- Framework repository restructured for pip installation
- Applications moved from
src/applications/to separate repos or templates - Unified CLI with lazy loading (5 commands)
- Template system with 3 production-ready templates
- Registry helper functions reduce boilerplate by ~70%
- Path-based discovery with explicit configuration
Implementation Stats
- 100+ tasks completed across 6 phases
- Template system: 3 app templates + project templates + service templates
- CLI infrastructure: 5 commands (~2000 lines)
- Registry helpers:
extend_framework_registry()(~200 lines) - Migration guide: Comprehensive documentation (~730 lines)
- Configuration system: Self-contained config generation
File Structure
Framework (pip-installed):
src/framework/
βββ cli/ # 5 commands with lazy loading
βββ templates/ # Bundled as package data
β βββ apps/ # 3 application templates
β βββ project/ # Project scaffolding
β βββ services/ # Docker configurations
βββ registry/helpers.py # Registry helper functions
βββ ... # Core framework modules
User Project (generated):
my-project/
βββ src/my_project/ # Application code
βββ services/ # Docker services
βββ config.yml # Self-contained config
βββ pyproject.toml # Framework as dependency
Previous Release (v0.6.0)
β‘ Performance Optimization System
- Task extraction bypass modes
- Capability selection bypass modes
- Runtime slash commands for performance tuning
- Reduced LLM overhead in preprocessing pipeline
See CHANGELOG.md for complete release history.
Current Release: v0.7.0 (October 2025)
Release Type: Major Release - Breaking Changes
Previous Release: v0.6.0 with performance optimization
Note: This file always contains information about the current release. For historical release information, see CHANGELOG.md.