diff --git a/worker/.gitignore b/worker/.gitignore index 6aee1de..b900c78 100644 --- a/worker/.gitignore +++ b/worker/.gitignore @@ -15,3 +15,4 @@ taskStateInfoKeypair.json localKOIIDB.db metadata.json .npmrc +**/*.log diff --git a/worker/orca-agent/src/workflows/repoSummarizer/phases.py b/worker/orca-agent/src/workflows/repoSummarizer/phases.py index 4cedc3e..85b2122 100644 --- a/worker/orca-agent/src/workflows/repoSummarizer/phases.py +++ b/worker/orca-agent/src/workflows/repoSummarizer/phases.py @@ -19,7 +19,7 @@ class RepoClassificationPhase(WorkflowPhase): super().__init__( workflow=workflow, prompt_name="classify_repository", - available_tools=["read_file", "list_files", "classify_repository"], + available_tools=["read_file", "search_code", "classify_repository"], conversation_id=conversation_id, name="Repository Classification", ) @@ -32,7 +32,7 @@ class ReadmeSectionGenerationPhase(WorkflowPhase): prompt_name="generate_readme_section", available_tools=[ "read_file", - "list_files", + "search_code", "create_readme_section", ], conversation_id=conversation_id, @@ -56,7 +56,7 @@ class ReadmeReviewPhase(WorkflowPhase): super().__init__( workflow=workflow, prompt_name="review_readme_file", - available_tools=["read_file", "list_files", "review_readme_file"], + available_tools=["read_file", "search_code", "review_readme_file"], conversation_id=conversation_id, name="Readme Review", ) @@ -67,7 +67,7 @@ class CreatePullRequestPhase(WorkflowPhase): super().__init__( workflow=workflow, prompt_name="create_pr", - available_tools=["read_file", "list_files", "create_pull_request_legacy"], + available_tools=["read_file", "search_code", "create_pull_request_legacy"], conversation_id=conversation_id, name="Create Pull Request", ) diff --git a/worker/orca-agent/src/workflows/repoSummarizer/workflow.py b/worker/orca-agent/src/workflows/repoSummarizer/workflow.py index e9808e2..282d6f1 100644 --- a/worker/orca-agent/src/workflows/repoSummarizer/workflow.py +++ b/worker/orca-agent/src/workflows/repoSummarizer/workflow.py @@ -11,12 +11,16 @@ from prometheus_swarm.workflows.utils import ( validate_github_auth, setup_repository, ) +from kno_sdk import index_repo +from prometheus_swarm.tools.kno_sdk_wrapper.implementations import build_tools_wrapper from src.workflows.repoSummarizer.prompts import PROMPTS from src.workflows.repoSummarizer.docs_sections import ( DOCS_SECTIONS, INITIAL_SECTIONS, FINAL_SECTIONS, ) +from pathlib import Path + from prometheus_swarm.tools.git_operations.implementations import commit_and_push @@ -103,12 +107,22 @@ class RepoSummarizerWorkflow(Workflow): # Enter repo directory os.chdir(self.context["repo_path"]) - + tools_build_result = self.build_tools_setup() + if not tools_build_result: + log_error(Exception("Failed to build tools setup"), "Failed to build tools setup") + return { + "success": False, + "message": "Failed to build tools setup", + "data": None, + } # Configure Git user info # setup_git_user_config(self.context["repo_path"]) # Get current files for context - + def build_tools_setup(self): + index = index_repo(Path(self.context["repo_path"])) + tools = build_tools_wrapper(index) + return tools def cleanup(self): """Cleanup workspace.""" # Make sure we're not in the repo directory before cleaning up