diff --git a/src/goose/toolkit/developer.py b/src/goose/toolkit/developer.py index 6f53ca4da8f4..a8507d647e66 100644 --- a/src/goose/toolkit/developer.py +++ b/src/goose/toolkit/developer.py @@ -33,7 +33,12 @@ class Developer(Toolkit): def system(self) -> str: """Retrieve system configuration details for developer""" - return Message.load("prompts/developer.jinja").text + hints_path = Path('.goosehints') + system_prompt = Message.load("prompts/developer.jinja").text + if hints_path.is_file(): + goosehints = hints_path.read_text() + system_prompt = f"{system_prompt}\n\nHints:\n{goosehints}" + return system_prompt @tool def update_plan(self, tasks: List[dict]) -> List[dict]: diff --git a/tests/toolkit/test_developer.py b/tests/toolkit/test_developer.py index 915380dfc076..e049ee9f20bb 100644 --- a/tests/toolkit/test_developer.py +++ b/tests/toolkit/test_developer.py @@ -1,4 +1,6 @@ from pathlib import Path + + from tempfile import TemporaryDirectory from unittest.mock import MagicMock, Mock @@ -66,3 +68,5 @@ def test_write_file(temp_dir, developer_toolkit): content = "Hello World" developer_toolkit.write_file(test_file.as_posix(), content) assert test_file.read_text() == content + +