-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement an orchestrator for the GitHub plugin to handle complex scenarios #319
Comments
here are the results I am getting using gpt4o-mini: User:
Response: {
"actions": [
{
"action": "INITIALIZE_REPOSITORY",
"user": "Initialize the repository snobbee/todo-list on main branch",
"system": "Repository initialized successfully! URL: https://github.com/snobbee/todo-list"
},
{
"action": "CREATE_MEMORIES_FROM_FILES",
"user": "Create memories from files on repository snobbee/todo-list @ branch main and path '/'",
"system": "Memories created successfully!"
},
{
"action": "IDEATION",
"user": "Ideate on implementing functionality to show the history of actions used by the user in repository snobbee/todo-list",
"system": "Analyzing the repository and considering previous user feedback, here are some functionality improvement ideas:\n\n1. **Action Log Interface**: Create a dedicated page for displaying action history.\n2. **Database Schema Update**: Modify the database to track user actions over time.\n3. **Notification System**: Implement a way to notify users of recent actions related to tasks.\n4. **Filtering Options**: Allow users to filter the history by date, action type, etc."
},
{
"action": "CREATE_ISSUE",
"user": "Create an issue in repository snobbee/todo-list titled 'Feature Request: Show User Action History'",
"system": "Created issue #<ISSUE_NUMBER> successfully!"
},
{
"action": "GENERATE_CODE_FILE_CHANGES",
"user": "Generate code file changes to implement functionality for showing user action history in repository snobbee/todo-list",
"system": "Here are the list of code file changes to be made to implement functionality for showing user action history in repository snobbee/todo-list:\n\n1. **<FILE_PATH_1>**: ```\n<FILE_CONTENT_1>\n```\n2. **<FILE_PATH_2>**: ```\n<FILE_CONTENT_2>\n```\n3. **<FILE_PATH_3>**: ```\n<FILE_CONTENT_3>\n```\n4. etc."
},
{
"action": "CREATE_COMMIT",
"user": "Create a commit in the repository snobbee/todo-list on branch 'feature/action-history' with the commit message: 'Implement user action history functionality'",
"system": "Changes committed to repository snobbee/todo-list successfully to branch 'feature/action-history'! commit hash: <COMMIT_HASH>"
},
{
"action": "FORK_REPOSITORY",
"user": "Fork repository snobbee/todo-list",
"system": "Forked repository snobbee/todo-list successfully! Fork URL: https://github.com/<OWNER>/todo-list"
},
{
"action": "CREATE_PULL_REQUEST",
"user": "Create a pull request on repository <OWNER>/todo-list with branch 'feature/action-history', title 'Implement User Action History Functionality' against base 'main'",
"system": "Pull request created successfully! URL: https://github.com/snobbee/todo-list/pull/<PR_NUMBER> @ branch: 'feature/action-history'"
}
]
} |
This is interesting. However, this functionality is being worked on for https://github.com/elizaOS/eliza/tree/develop-v2 so it makes sense to take a look. Even in V1, there exists a concept called structured workflows, something to also keep in mind. |
@jkbrooks I reviewed the V2 draft PR here elizaOS#1061, which does focus on refactoring the client's logic. However, it doesn't mention anything about incorporating a structured workflow-like mechanism. I checked both V1 and V2, but so far, I don't see anything related to defining a dynamic sequence of actions that the client will execute. This might be missing in V2, so I just wanted to highlight it. |
Updates: pushed draft PR #322 require some additional tweaks and testing around ideation and code generation to make the process smoother |
This issue has been automatically marked as stale due to 30 days of inactivity. |
The ticket is intended to handle complex scenarios that cannot be executed by a single GitHub Action.
The new action prompt below enables the composition of a sequence of actions based on high-level scenarios, leveraging GitHub plugin actions to execute the workflow (see examples section in the prompt for more context)
Orchestrator prompt
You are an action orchestrator. Your role is to analyze the user message and determine the sequence of actions required to fulfill the request. Both the user message and system message in each action must be explicitly written in the context of the user's request, ensuring that it aligns precisely with their intent. The actions must be selected from the predefined list provided in JSON format and structured as JSON arrays.
Important Instructions:
Available Actions
Here is the complete list of actions you can use, where each action shows an example user message followed by the system's response:
Examples
Example 1: Implement a new feature
User: "Plan and implement a new feature to improve user experience in user1/repo1."
Example 2: Bug resolution
User: "There's a critical bug in the login system of user1/repo1 that needs to be fixed immediately."
Example 3: Documentation update
User: "Update the architecture documentation in octocat/hello-world."
The text was updated successfully, but these errors were encountered: