This PR introduces significant improvements to our template and model selection processes, as well as GitHub issue selection. We've replaced the simple select prompts with more powerful search functionality, providing users with a more interactive and informative selection experience. Additionally, we've added early checks for necessary environment variables to prevent unnecessary processing when API keys are missing.
Changes
1. Model Selection Enhancements
Replaced select with search for model selection
Implemented filtering based on user input for model names and IDs
Added detailed model information display (context window, max output, pricing)
2. Template Selection Improvements
Updated selectTemplatePrompt to use search instead of select
Added template content preview in the selection interface
Implemented template filtering based on user input
3. GitHub Issue Selection Updates
Modified selectGitHubIssuePrompt to use search
Added issue filtering based on title and number
Included issue descriptions in the selection interface
4. Error Handling and Edge Cases
Improved error handling for missing or undefined properties in GitHub issues
Added safeguards against potential errors when reading template files
Enhanced type checks and null/undefined handling
5. Test Updates
Updated test files to mock search instead of select
Added new test cases to cover error scenarios and edge cases
Adjusted expectations to match new function signatures and behaviors
Description
This PR introduces significant improvements to our template and model selection processes, as well as GitHub issue selection. We've replaced the simple select prompts with more powerful search functionality, providing users with a more interactive and informative selection experience. Additionally, we've added early checks for necessary environment variables to prevent unnecessary processing when API keys are missing.
Changes
1. Model Selection Enhancements
select
withsearch
for model selection2. Template Selection Improvements
selectTemplatePrompt
to usesearch
instead ofselect
3. GitHub Issue Selection Updates
selectGitHubIssuePrompt
to usesearch
4. Error Handling and Edge Cases
5. Test Updates
search
instead ofselect
closes #58