serverdaun commited on
Commit
c5bb770
·
1 Parent(s): f5bbd44

Add SANDBOX_DIR configuration to config.py; update Dockerfile to install Playwright; refactor tools.py to use SANDBOX_DIR for file management functions.

Browse files
Files changed (3) hide show
  1. Dockerfile +1 -0
  2. config.py +1 -0
  3. tools.py +5 -3
Dockerfile CHANGED
@@ -6,6 +6,7 @@ COPY requirements.txt /app/
6
 
7
  RUN pip install --upgrade pip
8
  RUN pip install -r requirements.txt --no-cache-dir
 
9
 
10
  COPY . /app
11
 
 
6
 
7
  RUN pip install --upgrade pip
8
  RUN pip install -r requirements.txt --no-cache-dir
9
+ RUN playwright install
10
 
11
  COPY . /app
12
 
config.py CHANGED
@@ -7,3 +7,4 @@ load_dotenv(override=True)
7
  OPENAI_CHAT_MODEL_WORKER = os.getenv("OPENAI_CHAT_MODEL_WORKER", "gpt-4o-mini")
8
  OPENAI_CHAT_MODEL_EVALUATOR = os.getenv("OPENAI_CHAT_MODEL_EVALUATOR", "gpt-4o-mini")
9
  MEMORY_FILE = os.getenv("MEMORY_FILE", "sidekick_memory.json")
 
 
7
  OPENAI_CHAT_MODEL_WORKER = os.getenv("OPENAI_CHAT_MODEL_WORKER", "gpt-4o-mini")
8
  OPENAI_CHAT_MODEL_EVALUATOR = os.getenv("OPENAI_CHAT_MODEL_EVALUATOR", "gpt-4o-mini")
9
  MEMORY_FILE = os.getenv("MEMORY_FILE", "sidekick_memory.json")
10
+ SANDBOX_DIR = os.getenv("SANDBOX_DIR", "sandbox")
tools.py CHANGED
@@ -14,6 +14,8 @@ from langchain_experimental.tools import PythonREPLTool
14
  from playwright.async_api import async_playwright
15
  from sympy import SympifyError, sympify
16
 
 
 
17
 
18
  # Custom math tool
19
  def safe_math_calculator(expression: str) -> str:
@@ -50,7 +52,7 @@ def create_math_tool() -> List[Tool]:
50
  ]
51
 
52
 
53
- def create_file_tools(root_dir: str = "sandbox") -> List[Tool]:
54
  """Create file management tools"""
55
  try:
56
  # Ensure the directory exists
@@ -104,7 +106,7 @@ async def create_playwright_tools() -> (
104
  return [], None, None
105
 
106
 
107
- def get_tools(sandbox_dir: str = "sandbox") -> List[Tool]:
108
  """
109
  Get all available tools.
110
 
@@ -148,7 +150,7 @@ def get_tools(sandbox_dir: str = "sandbox") -> List[Tool]:
148
 
149
 
150
  async def get_all_tools_with_browser(
151
- sandbox_dir: str = "sandbox",
152
  ) -> Tuple[List[Tool], Optional[object], Optional[object]]:
153
  """
154
  Get all tools including browser tools.
 
14
  from playwright.async_api import async_playwright
15
  from sympy import SympifyError, sympify
16
 
17
+ from config import SANDBOX_DIR
18
+
19
 
20
  # Custom math tool
21
  def safe_math_calculator(expression: str) -> str:
 
52
  ]
53
 
54
 
55
+ def create_file_tools(root_dir: str = SANDBOX_DIR) -> List[Tool]:
56
  """Create file management tools"""
57
  try:
58
  # Ensure the directory exists
 
106
  return [], None, None
107
 
108
 
109
+ def get_tools(sandbox_dir: str = SANDBOX_DIR) -> List[Tool]:
110
  """
111
  Get all available tools.
112
 
 
150
 
151
 
152
  async def get_all_tools_with_browser(
153
+ sandbox_dir: str = SANDBOX_DIR,
154
  ) -> Tuple[List[Tool], Optional[object], Optional[object]]:
155
  """
156
  Get all tools including browser tools.