aboutsummaryrefslogtreecommitdiff
path: root/autogpts/autogpt/autogpt/core/agent/base.py
diff options
context:
space:
mode:
Diffstat (limited to 'autogpts/autogpt/autogpt/core/agent/base.py')
-rw-r--r--autogpts/autogpt/autogpt/core/agent/base.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/autogpts/autogpt/autogpt/core/agent/base.py b/autogpts/autogpt/autogpt/core/agent/base.py
new file mode 100644
index 000000000..c574dcea2
--- /dev/null
+++ b/autogpts/autogpt/autogpt/core/agent/base.py
@@ -0,0 +1,26 @@
+import abc
+import logging
+from pathlib import Path
+
+
+class Agent(abc.ABC):
+ @abc.abstractmethod
+ def __init__(self, *args, **kwargs):
+ ...
+
+ @classmethod
+ @abc.abstractmethod
+ def from_workspace(
+ cls,
+ workspace_path: Path,
+ logger: logging.Logger,
+ ) -> "Agent":
+ ...
+
+ @abc.abstractmethod
+ async def determine_next_ability(self, *args, **kwargs):
+ ...
+
+ @abc.abstractmethod
+ def __repr__(self):
+ ...