Skip to content

Actions subtask origin mixin

ActionsSubtaskOriginMixin

Source code in griptape/mixins/actions_subtask_origin_mixin.py
@define(slots=False)
class ActionsSubtaskOriginMixin:
    @abstractmethod
    def find_tool(self, tool_name: str) -> BaseTool:
        ...

    @abstractmethod
    def find_memory(self, memory_name: str) -> TaskMemory:
        ...

    @abstractmethod
    def find_subtask(self, subtask_id: str) -> ActionsSubtask:
        ...

    @abstractmethod
    def add_subtask(self, subtask: ActionsSubtask) -> ActionsSubtask:
        ...

    @abstractmethod
    def actions_schema(self) -> Schema:
        ...

    def _actions_schema_for_tools(self, tools: list[BaseTool]) -> Schema:
        action_schemas = []

        for tool in tools:
            for activity_schema in tool.activity_schemas():
                action_schema = activity_schema.schema
                tag_key = Literal("tag", description="Unique tag name for action execution.")

                action_schema[tag_key] = str

                action_schemas.append(action_schema)

        return Schema(description="JSON schema for an array of actions.", schema=action_schemas)

actions_schema() abstractmethod

Source code in griptape/mixins/actions_subtask_origin_mixin.py
@abstractmethod
def actions_schema(self) -> Schema:
    ...

add_subtask(subtask) abstractmethod

Source code in griptape/mixins/actions_subtask_origin_mixin.py
@abstractmethod
def add_subtask(self, subtask: ActionsSubtask) -> ActionsSubtask:
    ...

find_memory(memory_name) abstractmethod

Source code in griptape/mixins/actions_subtask_origin_mixin.py
@abstractmethod
def find_memory(self, memory_name: str) -> TaskMemory:
    ...

find_subtask(subtask_id) abstractmethod

Source code in griptape/mixins/actions_subtask_origin_mixin.py
@abstractmethod
def find_subtask(self, subtask_id: str) -> ActionsSubtask:
    ...

find_tool(tool_name) abstractmethod

Source code in griptape/mixins/actions_subtask_origin_mixin.py
@abstractmethod
def find_tool(self, tool_name: str) -> BaseTool:
    ...