Source Code:
src/gaia/agents/code/tools/project_management.pyComponent: ProjectManagementMixin
Module:
gaia.agents.code.tools.project_management
Import: from gaia.agents.code.tools.project_management import ProjectManagementMixinOverview
ProjectManagementMixin provides comprehensive project-level operations for the Code Agent, including intelligent project generation with LLM-driven architecture planning, iterative implementation, and multi-language validation. Key Features:- End-to-end project generation from natural language
- LLM-driven architectural planning with JSON schemas
- Iterative file implementation with validation
- Comprehensive multi-language validation (Python, JS/TS, CSS, HTML)
- Test generation and execution with auto-fix
- Anti-pattern detection and structure validation
- Generate detailed architectural plan (JSON schema)
- Create PLAN.md with structured task breakdown
- Implement modules one-by-one with validation
- Generate comprehensive test suite
- Apply Black formatting
- Run tests and auto-fix failures
- Final project validation with quality metrics
API Specification
Implementation Highlights
LLM-Driven Architecture Planning
Project Name Validation with Retry
Iterative File Implementation
Test Generation with Timeout
Testing Requirements
File:tests/agents/code/test_project_management_mixin.py
Key tests:
- Project generation from various requirements
- Name validation and sanitization
- Module implementation validation
- Test suite generation
- Multi-language validation
- Structure validation (entry points, essentials)
- Auto-fix workflow
- Timeout handling
Usage Examples
Acceptance Criteria
- End-to-end project generation works
- LLM-driven architecture planning
- Project name validation with retry
- Iterative file implementation
- Test generation with timeout handling
- Multi-language validation (Python, JS, CSS, HTML)
- Auto-fix workflow with re-validation
- Structure validation (entry points, essentials)
- PLAN.md generation with task breakdown
- Summary report with quality metrics
ProjectManagementMixin Technical Specification