Files
strand1-ComfyUI-Autogen/autogen_code_executor.py

41 lines
1.4 KiB
Python

from autogen_agentchat.agents import CodeExecutorAgent
from autogen_ext.code_executors.local import LocalCommandLineCodeExecutor
import os
class AutogenCodeExecutor:
def __init__(self):
pass
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"agent_name": ("STRING", {"default": "code_executor", "multiline": False}),
},
"optional": {
"working_directory": ("STRING", {"default": os.getcwd(), "multiline": False}),
"timeout": ("INT", {"default": 10, "min": 1, "max": 60, "step": 1}),
},
}
RETURN_TYPES = ("AGENT",)
RETURN_NAMES = ("code_executor_agent",)
FUNCTION = "initialize_code_executor"
CATEGORY = "Autogen"
def initialize_code_executor(self, agent_name, working_directory=None, allow_network=False, timeout=10):
# Initialize the LocalCommandLineCodeExecutor
local_executor = LocalCommandLineCodeExecutor(
work_dir=working_directory or os.getcwd(),
timeout=timeout,
)
# Create the CodeExecutorAgent
code_executor_agent = CodeExecutorAgent(
name=agent_name,
code_executor=local_executor,
)
print(f"[AutogenCodeExecutor] Initialized code executor agent: {code_executor_agent}")
return (code_executor_agent,)