diff --git a/.gitignore b/.gitignore index 05ffa5769a..62b8a91c5b 100644 --- a/.gitignore +++ b/.gitignore @@ -59,6 +59,12 @@ benchmark .gpte_consent +# projects folder apart from default prompt + +projects +!projects/example/prompt +!projects/example-improve + # docs docs/_build diff --git a/gpt_engineer/applications/__init__.py b/gpt_engineer/applications/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/gpt_engineer/cli/__init__.py b/gpt_engineer/applications/cli/__init__.py similarity index 100% rename from gpt_engineer/cli/__init__.py rename to gpt_engineer/applications/cli/__init__.py diff --git a/gpt_engineer/cli/collect.py b/gpt_engineer/applications/cli/collect.py similarity index 92% rename from gpt_engineer/cli/collect.py rename to gpt_engineer/applications/cli/collect.py index 28dde4dd13..4ed8dfc44e 100644 --- a/gpt_engineer/cli/collect.py +++ b/gpt_engineer/applications/cli/collect.py @@ -30,18 +30,7 @@ from gpt_engineer.core import steps from gpt_engineer.data.file_repository import FileRepositories from gpt_engineer.core.domain import Step -from gpt_engineer.cli.learning import Learning, extract_learning - -... - -import hashlib - -from typing import List - -from gpt_engineer.core import steps -from gpt_engineer.data.file_repository import FileRepositories -from gpt_engineer.core.domain import Step -from gpt_engineer.cli.learning import Learning, extract_learning +from gpt_engineer.applications.cli.learning import Learning, extract_learning def send_learning(learning: Learning): diff --git a/gpt_engineer/cli/file_selector.py b/gpt_engineer/applications/cli/file_selector.py similarity index 100% rename from gpt_engineer/cli/file_selector.py rename to gpt_engineer/applications/cli/file_selector.py diff --git a/gpt_engineer/cli/learning.py b/gpt_engineer/applications/cli/learning.py similarity index 100% rename from gpt_engineer/cli/learning.py rename to gpt_engineer/applications/cli/learning.py diff --git a/gpt_engineer/cli/main.py b/gpt_engineer/applications/cli/main.py similarity index 97% rename from gpt_engineer/cli/main.py rename to gpt_engineer/applications/cli/main.py index 09822a1106..559f07111c 100644 --- a/gpt_engineer/cli/main.py +++ b/gpt_engineer/applications/cli/main.py @@ -36,8 +36,8 @@ from gpt_engineer.data.file_repository import FileRepository, FileRepositories, archive from gpt_engineer.core.ai import AI from gpt_engineer.core.steps import STEPS, Config as StepsConfig -from gpt_engineer.cli.collect import collect_learnings -from gpt_engineer.cli.learning import check_collection_consent +from gpt_engineer.applications.cli.collect import collect_learnings +from gpt_engineer.applications.cli.learning import check_collection_consent from gpt_engineer.data.code_vector_repository import CodeVectorRepository app = typer.Typer() # creates a CLI app diff --git a/gpt_engineer/core/chat_to_files.py b/gpt_engineer/core/chat_to_files.py index e4bc1063ae..22972c8f05 100644 --- a/gpt_engineer/core/chat_to_files.py +++ b/gpt_engineer/core/chat_to_files.py @@ -34,7 +34,7 @@ from typing import List, Tuple from gpt_engineer.data.file_repository import FileRepository, FileRepositories -from gpt_engineer.cli.file_selector import FILE_LIST_NAME +from gpt_engineer.applications.cli.file_selector import FILE_LIST_NAME logger = logging.getLogger(__name__) diff --git a/gpt_engineer/core/steps.py b/gpt_engineer/core/steps.py index 62651477f9..25dbbc0784 100644 --- a/gpt_engineer/core/steps.py +++ b/gpt_engineer/core/steps.py @@ -66,8 +66,8 @@ to_files_and_memory, ) from gpt_engineer.data.file_repository import FileRepositories -from gpt_engineer.cli.file_selector import FILE_LIST_NAME, ask_for_files -from gpt_engineer.cli.learning import human_review_input +from gpt_engineer.applications.cli.file_selector import FILE_LIST_NAME, ask_for_files +from gpt_engineer.applications.cli.learning import human_review_input from gpt_engineer.data.code_vector_repository import CodeVectorRepository MAX_SELF_HEAL_ATTEMPTS = 2 # constants for self healing code diff --git a/tests/test_chat_to_files.py b/tests/test_chat_to_files.py index e70aeb88c2..783ce1a286 100644 --- a/tests/test_chat_to_files.py +++ b/tests/test_chat_to_files.py @@ -1,7 +1,7 @@ import textwrap from gpt_engineer.core.chat_to_files import to_files_and_memory, get_code_strings -from gpt_engineer.cli.file_selector import FILE_LIST_NAME +from gpt_engineer.applications.cli import FILE_LIST_NAME from unittest.mock import MagicMock diff --git a/tests/test_collect.py b/tests/test_collect.py index 179ded237d..56db581e0d 100644 --- a/tests/test_collect.py +++ b/tests/test_collect.py @@ -10,9 +10,9 @@ import pytest import rudderstack.analytics as rudder_analytics -from gpt_engineer.cli.collect import collect_learnings, steps_file_hash +from gpt_engineer.applications.cli import collect_learnings, steps_file_hash from gpt_engineer.data.file_repository import FileRepository, FileRepositories -from gpt_engineer.cli.learning import extract_learning +from gpt_engineer.applications.cli import extract_learning from gpt_engineer.core.steps import simple_gen diff --git a/tests/test_collection_consent.py b/tests/test_collection_consent.py index 8316e22155..534dda60a4 100644 --- a/tests/test_collection_consent.py +++ b/tests/test_collection_consent.py @@ -4,8 +4,8 @@ import pytest from unittest.mock import patch from pathlib import Path -from gpt_engineer.cli.learning import ask_collection_consent -from gpt_engineer.cli.learning import check_collection_consent +from gpt_engineer.applications.cli import ask_collection_consent +from gpt_engineer.applications.cli import check_collection_consent # Use a fixture to clean up created files after each test