mirror of
https://github.com/Significant-Gravitas/AutoGPT-Code-Ability.git
synced 2026-11-10 08:01:27 -10:00
* Adding multi-step interview process * added module interview phase * Fix conditional statement in user.j2 template * Update assistant prompt to use "architect" instead of "develop" in user.j2 template * Update phase_completed condition in system.j2 template * Update module response message in agent.py * Update module response message in agent.py * Update error message formatting in AIBlock class
74 lines
1.3 KiB
Python
74 lines
1.3 KiB
Python
import enum
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class AppFeature(BaseModel):
|
|
reasoning: str
|
|
name: str
|
|
functionality: str
|
|
|
|
|
|
class UndestandRequest(BaseModel):
|
|
thoughts: str
|
|
features: list[AppFeature] | None = None
|
|
say_to_user: str
|
|
phase_completed: bool
|
|
|
|
|
|
class Action(str, enum.Enum):
|
|
ADD = "add"
|
|
REMOVE = "remove"
|
|
UPDATE = "update"
|
|
|
|
|
|
class AppFeatureUpdate(BaseModel):
|
|
action: Action
|
|
id: int
|
|
reasoning: str | None = None
|
|
name: str | None = None
|
|
functionality: str | None = None
|
|
|
|
|
|
class UpdateUnderstanding(BaseModel):
|
|
thoughts: str
|
|
features: list[AppFeatureUpdate] | None = None
|
|
say_to_user: str
|
|
phase_completed: bool
|
|
|
|
|
|
class Feature(BaseModel):
|
|
name: str
|
|
functionality: str
|
|
|
|
|
|
class InterviewResponse(BaseModel):
|
|
id: str
|
|
say_to_user: str
|
|
phase: str
|
|
phase_completed: bool
|
|
|
|
|
|
class Module(BaseModel):
|
|
"""
|
|
A Software Module for the application
|
|
"""
|
|
|
|
action: Action
|
|
id: int
|
|
name: str | None = None
|
|
functionality: str | None = None
|
|
interaction_with_other_modules: list[str] | None = None
|
|
|
|
|
|
class ModuleResponse(BaseModel):
|
|
"""
|
|
This is the response model for the ModuleGenerationBlock
|
|
"""
|
|
|
|
thoughts: str
|
|
say_to_user: str
|
|
modules: list[Module] | None = None
|
|
access_roles: list[str]
|
|
phase_completed: bool
|