Skip to content

Commit ce67f51

Browse files
authored
Merge pull request #21 from AgentOps-AI/add-tools-to-config
add tool to agenstack.json
2 parents 1736ff3 + 2f67a07 commit ce67f51

File tree

2 files changed

+16
-8
lines changed

2 files changed

+16
-8
lines changed

agentstack/generation/tool_generation.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
import json
12
import sys
23
from typing import Optional
34

45
from .gen_utils import insert_code_after_tag
5-
from ..utils import snake_to_camel, open_json_file, get_framework
6+
from ..utils import open_json_file, get_framework, term_color
67
import os
78
import shutil
89
import fileinput
@@ -24,7 +25,14 @@ def add_tool(tool_name: str, path: Optional[str] = None):
2425
insert_code_after_tag(f'{path}/.env', '# Tools', [tool_data['env']], next_line=True) # Add env var
2526
insert_code_after_tag(f'{path}/.env.example', '# Tools', [tool_data['env']], next_line=True) # Add env var
2627

27-
print(f'\033[92m🔨 Tool {tool_name} added to agentstack project successfully\033[0m')
28+
agentstack_json = open_json_file(f'{path}/agentstack.json')
29+
if not agentstack_json.get('tools'):
30+
agentstack_json['tools'] = []
31+
agentstack_json['tools'].append(tool_name)
32+
with open(f'{path}/agentstack.json', 'w') as f:
33+
json.dump(agentstack_json, f, indent=4)
34+
35+
print(term_color(f'🔨 Tool {tool_name} added to agentstack project successfully', 'green'))
2836

2937

3038
def add_tool_to_tools_init(tool_data: dict, path: Optional[str] = None):

agentstack/utils.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@ def get_framework(path: Optional[str] = None) -> str:
3030
file_path = 'agentstack.json'
3131
if path is not None:
3232
file_path = path + '/' + file_path
33-
with open(file_path, 'r') as f:
34-
data = json.load(f)
35-
framework = data.get('framework')
3633

37-
if framework.lower() not in ['crewai', 'autogen', 'litellm']:
38-
print("\033[31magentstack.json contains an invalid framework\033[0m")
34+
agentstack_data = open_json_file(file_path)
35+
framework = agentstack_data.get('framework')
3936

40-
return framework
37+
if framework.lower() not in ['crewai', 'autogen', 'litellm']:
38+
print(term_color("agentstack.json contains an invalid framework", "red"))
39+
40+
return framework
4141
except FileNotFoundError:
4242
print("\033[31mFile agentstack.json does not exist. Are you in the right directory?\033[0m")
4343
sys.exit(1)

0 commit comments

Comments
 (0)