Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 51 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,65 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## Recent Releases

**v0.1.48 (February 6, 2026)** - Decomposition Mode & Worktree Isolation
New decomposition coordination mode decomposes tasks into subtasks assigned to individual agents with a presenter role. Worktree isolation for file writes with review modal for approving changes. Quickstart wizard Docker setup with animated pull progress.

**v0.1.47 (February 4, 2026)** - Codex Backend & TUI Theme Refactoring
New Codex backend for OpenAI Codex CLI with local and Docker execution. TUI theme system refactored to palette-based architecture with unified base styles. Per-agent voting sensitivity configuration. Claude Code backend refactored with shared NativeToolMixin.

**v0.1.46 (February 3, 2026)** - Subagent TUI Streaming & Event Architecture Refactor
Subagents now stream in real-time with clickable preview cards that expand to full timeline views. Major TUI event architecture refactor with structured event emission pipeline. Improved final presentation display with workspace visualization and winning agent highlighting. Tutorial video GIF previews added to documentation.

**v0.1.45 (January 31, 2026)** - TUI Default & Config Migration
TUI (Textual Terminal) is now the default display mode for all users. Existing configs with `rich_terminal` auto-migrate with deprecation warning. Setup wizard generates TUI configs. Enhanced documentation and first-run experience highlight TUI benefits. Minor documentation and packaging fixes.

---

## [0.1.48] - 2026-02-06

### Added
- **Decomposition Coordination Mode** ([#858](https://github.com/massgen/MassGen/pull/858)): New coordination mode that decomposes tasks into subtasks assigned to individual agents
- Task decomposer with presenter agent role for final synthesis
- TUI mode bar toggle, subtask assignment display, and generation modals
- Quickstart wizard integration for decomposition mode selection

- **Worktree Isolation** ([#857](https://github.com/massgen/MassGen/pull/857)): Git worktree-based isolation for agent file writes with review workflow
- New `write_mode` config parameter (`auto`/`worktree`/`isolated`/`legacy`)
- `IsolationContextManager` for per-round worktree creation with `.massgen_scratch/` directories
- `ChangeApplier` and review modal for approving/rejecting changes before applying to original paths
- `WorktreeManager` and `ShadowRepo` infrastructure for git and non-git directories
- Deprecation of `use_two_tier_workspace` in favor of `write_mode`

- **Stop Tool** ([#858](https://github.com/massgen/MassGen/pull/858)): New tool enabling agents to signal completion and exit workflows

- **Global Answer Limits** ([#858](https://github.com/massgen/MassGen/pull/858)): Orchestrator-level `max_answers` config alongside existing per-agent controls

### Changed
- **Quickstart Wizard Docker Setup** ([#857](https://github.com/massgen/MassGen/pull/857)): Docker setup step integrated into quickstart wizard when Docker mode is selected, with animated pull progress and real-time stdout streaming

- **Codex Backend** ([#858](https://github.com/massgen/MassGen/pull/858)): Default model updated from `gpt-5.2-codex` to `gpt-5.3-codex`

### Fixed
- **Light Theme Visibility** ([#857](https://github.com/massgen/MassGen/pull/857)): Fixed invisible mode bar underlines, separator lines, and toast notifications in light theme with new semantic CSS variables
- **Subagent Timeout** ([#857](https://github.com/massgen/MassGen/pull/857)): Added timeout exemption for subagent-related MCP tools (`spawn_subagents`, `get_subagent_status`, `cancel_subagents`) that manage their own timeouts
- **Post-evaluation Restarts** ([#857](https://github.com/massgen/MassGen/pull/857)): Disabled `max_orchestration_restarts` in quickstart defaults to prevent TUI crash on restart

### Documentation, Configurations and Resources
- **Agent Workspaces Guide**: New `docs/source/user_guide/agent_workspaces.rst` for worktree isolation workflow
- **Worktrees Module**: New `docs/modules/worktrees.md` with integration examples
- **Decomposition Configuration**: Updated `docs/source/reference/yaml_schema.rst`, `configuration.rst`, and `running-massgen.rst` with decomposition mode examples
- **Backends Guide**: Updated `docs/source/user_guide/backends.rst` with Codex model update
- **Capabilities Registry**: Updated `massgen/backend/capabilities.py` with `gpt-5.3-codex`

### Technical Details
- **Major Focus**: Decomposition coordination mode, worktree isolation for file writes, quickstart improvements
- **Files Modified**:
- Orchestrator: `massgen/orchestrator.py` (decomposition + worktree isolation logic)
- New: `massgen/task_decomposer.py`, `massgen/infrastructure/worktree_manager.py`, `massgen/infrastructure/shadow_repo.py`
- New: `massgen/filesystem_manager/_isolation_context_manager.py`, `massgen/filesystem_manager/_change_applier.py`
- New: `massgen/frontend/displays/textual/widgets/modals/review_modal.py`, `massgen/frontend/displays/textual/widgets/modals/input_modals.py`
- TUI: Mode bar decomposition toggle, subagent decomposition display, quickstart wizard Docker step
- Docs: `docs/source/user_guide/agent_workspaces.rst`, `docs/modules/worktrees.md`
- **Dependencies**: Added `gitpython`
- **Contributors**: @ncrispino and the MassGen team

## [0.1.47] - 2026-02-04

### Added
Expand Down
17 changes: 12 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,13 @@ massgen/
├── message_templates.py # Message template system
├── logger_config.py # Logging configuration
├── utils.py # Helper functions and model registry
├── task_decomposer.py # Task decomposition for decomposition coordination mode
├── infrastructure/ # Infrastructure utilities
│ ├── worktree_manager.py # Git worktree create/remove/list/prune
│ └── shadow_repo.py # Shadow repo for non-git directories
├── filesystem_manager/ # Filesystem management
│ ├── _isolation_context_manager.py # Worktree isolation for agent writes
│ └── _change_applier.py # Apply approved changes from worktree
├── backend/ # Model-specific implementations
│ ├── __init__.py
│ ├── base.py # Base backend interface
Expand Down Expand Up @@ -349,16 +356,16 @@ Create a `.env` file in the `massgen` directory as described in [README](README.

## 🔧 Development Workflow

> **Important**: Our next version is v0.1.48. If you want to contribute, please contribute to the `dev/v0.1.48` branch (or `main` if dev/v0.1.48 doesn't exist yet).
> **Important**: Our next version is v0.1.49. If you want to contribute, please contribute to the `dev/v0.1.49` branch (or `main` if dev/v0.1.49 doesn't exist yet).

### 1. Create Feature Branch

```bash
# Fetch latest changes from upstream
git fetch upstream

# Create feature branch from dev/v0.1.48 (or main if dev branch doesn't exist yet)
git checkout -b feature/your-feature-name upstream/dev/v0.1.48
# Create feature branch from dev/v0.1.49 (or main if dev branch doesn't exist yet)
git checkout -b feature/your-feature-name upstream/dev/v0.1.49
```

### 2. Make Your Changes
Expand Down Expand Up @@ -488,7 +495,7 @@ git push origin feature/your-feature-name
```

Then create a pull request on GitHub:
- Base branch: `dev/v0.1.48` (or `main` if dev branch doesn't exist yet)
- Base branch: `dev/v0.1.49` (or `main` if dev branch doesn't exist yet)
- Compare branch: `feature/your-feature-name`
- Add clear description of changes
- Link any related issues
Expand Down Expand Up @@ -594,7 +601,7 @@ Have a significant feature idea not covered by existing tracks?
- [ ] Tests pass locally
- [ ] Documentation is updated if needed
- [ ] Commit messages follow convention
- [ ] PR targets `dev/v0.1.48` branch (or `main` if dev branch doesn't exist yet)
- [ ] PR targets `dev/v0.1.49` branch (or `main` if dev branch doesn't exist yet)

### PR Description Should Include

Expand Down
85 changes: 43 additions & 42 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ This project started with the "threads of thought" and "iterative refinement" id
<details open>
<summary><h3>🆕 Latest Features</h3></summary>

- [v0.1.47 Features](#-latest-features-v0147)
- [v0.1.48 Features](#-latest-features-v0148)
</details>

<details open>
Expand Down Expand Up @@ -122,15 +122,15 @@ This project started with the "threads of thought" and "iterative refinement" id
<details open>
<summary><h3>🗺️ Roadmap</h3></summary>

- [Recent Achievements (v0.1.47)](#recent-achievements-v0147)
- [Previous Achievements (v0.0.3 - v0.1.46)](#previous-achievements-v003---v0146)
- [Recent Achievements (v0.1.48)](#recent-achievements-v0148)
- [Previous Achievements (v0.0.3 - v0.1.47)](#previous-achievements-v003---v0147)
- [Key Future Enhancements](#key-future-enhancements)
- Bug Fixes & Backend Improvements
- Advanced Agent Collaboration
- Expanded Model, Tool & Agent Integrations
- Improved Performance & Scalability
- Enhanced Developer Experience
- [v0.1.48 Roadmap](#v0148-roadmap)
- [v0.1.49 Roadmap](#v0149-roadmap)
</details>

<details open>
Expand All @@ -155,25 +155,24 @@ This project started with the "threads of thought" and "iterative refinement" id

---

## 🆕 Latest Features (v0.1.47)
## 🆕 Latest Features (v0.1.48)

**🎉 Released: February 4, 2026**
**🎉 Released: February 6, 2026**

**What's New in v0.1.47:**
- **🚀 Codex Backend** - Run OpenAI Codex CLI as a MassGen backend with local and Docker execution
- **🎨 TUI Theme System** - Palette-based theming with dark and light variants
- **🗳️ Per-agent Voting Sensitivity** - Set different voting standards (strict/balanced/lenient) for each agent
- **🔧 Claude Code Refactored** - Shared `NativeToolMixin` for native tool handling across CLI-based backends
- **🐛 Bug Fixes** - Fixed final presentation display, improved MCP error handling, enhanced round tracking
**What's New in v0.1.48:**
- **🧩 Decomposition Mode** - New coordination mode that decomposes tasks into subtasks assigned to individual agents
- **🔒 Worktree Isolation** - Git worktree-based isolation for agent file writes with review modal
- **🐳 Quickstart Docker Setup** - Docker setup step in quickstart wizard with animated pull progress
- **🛑 Stop Tool** - Agents can signal completion and exit workflows
- **🐛 Bug Fixes** - Fixed subagent timeout, light theme visibility, post-evaluation restart crash

**Try v0.1.47 Features:**
**Try v0.1.48 Features:**
```bash
# Install or upgrade
pip install --upgrade massgen

# First install codex with `npm install -g @openai/codex`, then authenticate and run the below.
uv run massgen --config @examples/configs/providers/openai/codex/codex_local.yaml "Create a website about Bob Dylan"
uv run massgen --config @examples/configs/providers/openai/codex/codex_docker.yaml "Create a website about Bob Dylan"
# Launch the quickstart wizard and select Decomposition mode
uv run massgen
```

→ [See full release history and examples](massgen/configs/README.md#release-history--examples)
Expand Down Expand Up @@ -1222,38 +1221,42 @@ MassGen is currently in its foundational stage, with a focus on parallel, asynch

⚠️ **Early Stage Notice:** As MassGen is in active development, please expect upcoming breaking architecture changes as we continue to refine and improve the system.

### Recent Achievements (v0.1.47)
### Recent Achievements (v0.1.48)

**🎉 Released: February 4, 2026**
**🎉 Released: February 6, 2026**

#### Codex Backend
- **OpenAI Codex CLI**: New `codex` backend type with local and Docker execution modes
- **Authentication**: OAuth and API key support
- **Native Tool Architecture**: `NativeToolMixin` for shared tool handling between Codex and Claude Code, with custom and workflow MCP servers (`custom_tools_server.py`, `workflow_tools_server.py`) exposing MassGen tools to CLI-based backends
#### Decomposition Coordination Mode
- **Task Decomposition**: New coordination mode that decomposes complex tasks into subtasks assigned to individual agents
- **Presenter Agent**: Designated agent synthesizes subtask results into a final answer
- **TUI Integration**: Mode bar toggle, subtask assignment display, and generation modals

#### TUI Theme System
- **Palette-based Architecture**: Unified `base.tcss` with semantic CSS variables replacing per-widget inline CSS
- **Theme Variants**: Dark and light palette files
#### Worktree Isolation
- **Write Mode**: New `write_mode` config (`auto`/`worktree`/`isolated`/`legacy`) for git worktree-based isolation of agent file writes
- **Review Modal**: Two-panel modal with file list toggles and syntax-highlighted diff for approving/rejecting changes
- **Infrastructure**: `WorktreeManager`, `ShadowRepo`, `IsolationContextManager`, `ChangeApplier`

#### Per-agent Voting Sensitivity
- **Agent-level Override**: Voting sensitivity (`strict`/`balanced`/`lenient`) now configurable per-agent, overriding orchestrator-level defaults with rewritten evaluation criteria
#### Quickstart Wizard Docker Setup
- **Docker Setup Step**: Integrated into quickstart wizard when Docker mode is selected
- **Pull Progress**: Animated braille spinner with real-time `docker pull` stdout streaming

#### Changed
- **Claude Code Backend**: Refactored to use `NativeToolMixin` with native filesystem support and OS-level sandbox
- **Round Display Tracking**: Vote and answer submissions now track and display submission round numbers in TUI
- **Gemini Backend**: Globally unique tool call ID generation and configuration improvements
- **Codex Backend**: Default model updated from `gpt-5.2-codex` to `gpt-5.3-codex`
- **Deprecation**: `use_two_tier_workspace` deprecated in favor of `write_mode`

#### Bug Fixes
- **Final Presentation Display**: Fixed rendering issues with final presentation box
- **MCP Error Handling**: Enhanced handling for invalid MCP tool calls with clearer user guidance
- **Subagent Timeout**: Timeout exemption for subagent-related MCP tools that manage their own timeouts
- **Light Theme Visibility**: Fixed invisible mode bar underlines, separators, and toasts
- **Post-evaluation Restarts**: Disabled by default in quickstart to prevent TUI crash

#### Documentation, Configurations and Resources
- `docs/source/user_guide/backends.rst` — updated with Codex backend documentation
- `docs/modules/interactive_mode.md` — new interactive mode architecture document
- `massgen/backend/capabilities.py` — updated with Codex models
- `massgen/skills/backend-integrator/SKILL.md` — new backend integration skill
- `docs/source/user_guide/agent_workspaces.rst` — new agent workspaces and code isolation guide
- `docs/modules/worktrees.md` — new worktrees module documentation
- `docs/source/reference/yaml_schema.rst` — decomposition mode configuration
- `massgen/backend/capabilities.py` — updated with `gpt-5.3-codex`

### Previous Achievements (v0.0.3 - v0.1.47)

### Previous Achievements (v0.0.3 - v0.1.46)
✅ **Codex Backend & TUI Theme Refactoring (v0.1.47)**: New Codex backend for OpenAI Codex CLI with local and Docker execution, NativeToolMixin for shared tool handling, TUI theme system refactored to palette-based architecture with dark and light variants, per-agent voting sensitivity configuration

✅ **Subagent TUI Streaming & Event Architecture Refactor (v0.1.46)**: Interactive preview cards that expand to full timeline views with real-time event streaming, unified event pipeline with single source of truth for display creation, enhanced final presentation with workspace visualization and winning agent highlighting, fixed banner display and tool call ID handling

Expand Down Expand Up @@ -1491,18 +1494,16 @@ MassGen is currently in its foundational stage, with a focus on parallel, asynch

We welcome community contributions to achieve these goals.

### v0.1.48 Roadmap
### v0.1.49 Roadmap

Version 0.1.48 focuses on OpenAI native compression and enhanced log analysis capabilities:
Version 0.1.49 focuses on enhanced log analysis capabilities:

#### Planned Features
- **OpenAI Responses /compact Endpoint** ([#739](https://github.com/massgen/MassGen/issues/739)): Use OpenAI's native `/compact` endpoint instead of custom summarization for better token efficiency
- **Log Analysis Model Selector** ([#766](https://github.com/massgen/MassGen/issues/766)): Allow users to choose which model to use for `massgen logs analyze` self-analysis mode

Key technical approach:
- **Native Compression**: Leverage OpenAI's API-level context compression for improved response quality
- **Flexible Analysis**: Configurable model selection for cost/quality tradeoffs in log analysis
- **Seamless Integration**: Compatible with existing reactive compression system
- **Multi-Provider Support**: Works across OpenAI, Anthropic, Google backends

---

Expand Down
Loading
Loading