mirror of
https://github.com/RooVetGit/Roo-Code.git
synced 2026-09-06 08:18:39 +00:00
improve: enhance new_task tool description for better LLM understanding
- Made the description more explicit about when and how to use todos - Added clearer examples showing both simple and complex use cases - Emphasized the importance of including todos for complex subtasks - Provided more detailed formatting instructions - Added an IMPORTANT note to encourage todo usage for better task organization
This commit is contained in:
parent
6b70b5a99f
commit
25b094d2f3
20 changed files with 322 additions and 1383 deletions
|
|
@ -1,202 +0,0 @@
|
|||
<orchestrator_workflow>
|
||||
<overview>
|
||||
This workflow orchestrates a comprehensive pull request review process by delegating
|
||||
specialized analysis tasks to appropriate modes while maintaining context through
|
||||
structured report files. The orchestrator ensures critical review coverage while
|
||||
avoiding redundant feedback. All GitHub operations are performed using the GitHub CLI.
|
||||
</overview>
|
||||
|
||||
<initialization>
|
||||
<step number="1">
|
||||
<name>Parse PR Information and Initialize Context</name>
|
||||
<description>
|
||||
Extract PR information from user input (URL or PR number).
|
||||
Create context directory and tracking files.
|
||||
If called by another mode (Issue Fixer, PR Fixer), set calledByMode field.
|
||||
</description>
|
||||
<actions>
|
||||
- Parse PR URL or number from user input
|
||||
- Create directory: .roo/temp/pr-[PR_NUMBER]/
|
||||
- Initialize review-context.json with PR metadata
|
||||
- Check if called by another mode and record it
|
||||
</actions>
|
||||
</step>
|
||||
</initialization>
|
||||
|
||||
<github_operations>
|
||||
<step number="2">
|
||||
<name>Fetch PR Details and Context</name>
|
||||
<description>
|
||||
Use GitHub CLI to fetch comprehensive PR details.
|
||||
</description>
|
||||
<command>
|
||||
gh pr view [PR_NUMBER] --repo [owner]/[repo] --json number,title,author,state,body,url,headRefName,baseRefName,files,additions,deletions,changedFiles
|
||||
</command>
|
||||
<save_to>.roo/temp/pr-[PR_NUMBER]/pr-metadata.json</save_to>
|
||||
</step>
|
||||
|
||||
<step number="3">
|
||||
<name>Fetch Linked Issue</name>
|
||||
<description>
|
||||
If PR references an issue, fetch its details for context.
|
||||
</description>
|
||||
<command>
|
||||
gh issue view [issue_number] --repo [owner]/[repo] --json number,title,body,author,state
|
||||
</command>
|
||||
<save_to>.roo/temp/pr-[PR_NUMBER]/linked-issue.json</save_to>
|
||||
</step>
|
||||
|
||||
<step number="4">
|
||||
<name>Fetch Existing Comments and Reviews</name>
|
||||
<description>
|
||||
CRITICAL: Get all existing feedback to avoid redundancy.
|
||||
</description>
|
||||
<commands>
|
||||
<command>gh pr view [PR_NUMBER] --repo [owner]/[repo] --json comments --jq '.comments'</command>
|
||||
<command>gh pr view [PR_NUMBER] --repo [owner]/[repo] --json reviews --jq '.reviews'</command>
|
||||
</commands>
|
||||
<save_to>.roo/temp/pr-[PR_NUMBER]/existing-feedback.json</save_to>
|
||||
</step>
|
||||
|
||||
<step number="5">
|
||||
<name>Check Out PR Locally</name>
|
||||
<command>gh pr checkout [PR_NUMBER] --repo [owner]/[repo]</command>
|
||||
<purpose>Enable local code analysis and pattern comparison</purpose>
|
||||
</step>
|
||||
</github_operations>
|
||||
|
||||
<delegated_analysis>
|
||||
<step number="6">
|
||||
<name>Delegate Pattern Analysis</name>
|
||||
<description>
|
||||
Create a subtask to analyze code patterns and organization.
|
||||
</description>
|
||||
<delegation>
|
||||
<mode>code</mode>
|
||||
<focus_areas>
|
||||
- Identifying similar existing features/components
|
||||
- Checking if implementations follow established patterns
|
||||
- Finding potential code redundancy
|
||||
- Verifying test organization
|
||||
- Checking file/directory structure consistency
|
||||
</focus_areas>
|
||||
<output>.roo/temp/pr-[PR_NUMBER]/pattern-analysis.md</output>
|
||||
</delegation>
|
||||
</step>
|
||||
|
||||
<step number="7">
|
||||
<name>Delegate Architecture Review</name>
|
||||
<description>
|
||||
Create a subtask for architectural analysis.
|
||||
</description>
|
||||
<delegation>
|
||||
<mode>architect</mode>
|
||||
<focus_areas>
|
||||
- Module boundary violations
|
||||
- Dependency management issues
|
||||
- Separation of concerns
|
||||
- Potential circular dependencies
|
||||
- Overall architectural consistency
|
||||
</focus_areas>
|
||||
<output>.roo/temp/pr-[PR_NUMBER]/architecture-review.md</output>
|
||||
</delegation>
|
||||
</step>
|
||||
|
||||
<step number="8">
|
||||
<name>Delegate Test Coverage Analysis</name>
|
||||
<description>
|
||||
If test files are modified or added, delegate test analysis.
|
||||
</description>
|
||||
<delegation>
|
||||
<mode>test</mode>
|
||||
<focus_areas>
|
||||
- Test organization and location
|
||||
- Test coverage adequacy
|
||||
- Test naming conventions
|
||||
- Mock usage patterns
|
||||
- Edge case coverage
|
||||
</focus_areas>
|
||||
<output>.roo/temp/pr-[PR_NUMBER]/test-analysis.md</output>
|
||||
</delegation>
|
||||
</step>
|
||||
</delegated_analysis>
|
||||
|
||||
<synthesis>
|
||||
<step number="9">
|
||||
<name>Synthesize Findings</name>
|
||||
<description>
|
||||
Collect all delegated analysis results and create comprehensive review.
|
||||
</description>
|
||||
<actions>
|
||||
- Read all analysis files from .roo/temp/pr-[PR_NUMBER]/
|
||||
- Identify critical issues vs suggestions
|
||||
- Check against existing comments to avoid redundancy
|
||||
- Prioritize findings by impact
|
||||
</actions>
|
||||
</step>
|
||||
|
||||
<step number="10">
|
||||
<name>Create Final Review Report</name>
|
||||
<description>
|
||||
Generate comprehensive review report with all findings.
|
||||
</description>
|
||||
<output>.roo/temp/pr-[PR_NUMBER]/final-review.md</output>
|
||||
<sections>
|
||||
- Executive Summary
|
||||
- Critical Issues (must fix)
|
||||
- Pattern Inconsistencies
|
||||
- Redundancy Findings
|
||||
- Architecture Concerns
|
||||
- Test Coverage Issues
|
||||
- Minor Suggestions
|
||||
</sections>
|
||||
</step>
|
||||
</synthesis>
|
||||
|
||||
<completion>
|
||||
<step number="11">
|
||||
<name>Present Review to User</name>
|
||||
<description>
|
||||
Show the review findings and ask for action.
|
||||
</description>
|
||||
<decision_points>
|
||||
<if_called_by_mode>
|
||||
Only present the analysis report, do not comment on PR
|
||||
</if_called_by_mode>
|
||||
<if_direct_review>
|
||||
Ask user if they want to post the review as a comment
|
||||
</if_direct_review>
|
||||
</decision_points>
|
||||
</step>
|
||||
|
||||
<step number="12">
|
||||
<name>Post Review Comment (if approved)</name>
|
||||
<description>
|
||||
If user approves and not called by another mode, post review using GitHub CLI.
|
||||
</description>
|
||||
<command>
|
||||
gh pr comment [PR_NUMBER] --repo [owner]/[repo] --body-file .roo/temp/pr-[PR_NUMBER]/final-review.md
|
||||
</command>
|
||||
</step>
|
||||
</completion>
|
||||
|
||||
<error_handling>
|
||||
<github_cli_failures>
|
||||
<scenario name="authentication_failure">
|
||||
<action>Inform user to run 'gh auth login' and check authentication status</action>
|
||||
</scenario>
|
||||
<scenario name="pr_not_found">
|
||||
<action>Verify PR number and repository, ask user to confirm details</action>
|
||||
</scenario>
|
||||
<scenario name="rate_limit">
|
||||
<action>Wait briefly and retry, inform user about rate limiting</action>
|
||||
</scenario>
|
||||
</github_cli_failures>
|
||||
<delegation_failures>
|
||||
Continue with available analysis and note limitations
|
||||
</delegation_failures>
|
||||
<context_preservation>
|
||||
Always save intermediate results to temp files
|
||||
</context_preservation>
|
||||
</error_handling>
|
||||
</orchestrator_workflow>
|
||||
|
|
@ -1,208 +0,0 @@
|
|||
<critical_review_guidelines>
|
||||
<overview>
|
||||
These guidelines ensure PR reviews are appropriately critical while remaining
|
||||
constructive. The goal is to maintain high code quality and consistency
|
||||
across the codebase by identifying issues that might be overlooked in a
|
||||
less thorough review.
|
||||
</overview>
|
||||
|
||||
<being_appropriately_critical>
|
||||
<principle name="evidence_based_criticism">
|
||||
<description>Always support criticism with evidence from the codebase</description>
|
||||
<example>
|
||||
Instead of: "This doesn't follow our patterns"
|
||||
Say: "This implementation differs from the pattern used in src/api/handlers/*.ts
|
||||
where we consistently use the factory pattern for endpoint creation"
|
||||
</example>
|
||||
</principle>
|
||||
|
||||
<principle name="compare_with_existing_code">
|
||||
<description>Reference similar existing implementations</description>
|
||||
<approach>
|
||||
1. Find 2-3 examples of similar features
|
||||
2. Identify the common patterns they follow
|
||||
3. Explain how the PR deviates from these patterns
|
||||
4. Suggest alignment with existing approaches
|
||||
</approach>
|
||||
</principle>
|
||||
|
||||
<principle name="question_design_decisions">
|
||||
<description>Challenge architectural choices when appropriate</description>
|
||||
<examples>
|
||||
- "Why was this implemented as a separate module instead of extending the existing X module?"
|
||||
- "This introduces a new pattern for Y. Have we considered using the established pattern from Z?"
|
||||
- "This creates a circular dependency with module A. Could we restructure to maintain cleaner boundaries?"
|
||||
</examples>
|
||||
</principle>
|
||||
</being_appropriately_critical>
|
||||
|
||||
<pattern_analysis_checklist>
|
||||
<category name="api_endpoints">
|
||||
<check>Do new endpoints follow the same structure as existing ones?</check>
|
||||
<check>Are error responses consistent with other endpoints?</check>
|
||||
<check>Is authentication/authorization handled the same way?</check>
|
||||
<check>Are request validations following established patterns?</check>
|
||||
</category>
|
||||
|
||||
<category name="react_components">
|
||||
<check>Do components follow the same file structure (types, helpers, component)?</check>
|
||||
<check>Are props interfaces defined consistently?</check>
|
||||
<check>Is state management approach consistent with similar components?</check>
|
||||
<check>Are hooks used in the same patterns as elsewhere?</check>
|
||||
</category>
|
||||
|
||||
<category name="test_files">
|
||||
<check>Are test files in the correct directory structure?</check>
|
||||
<check>Do test descriptions follow the same format?</check>
|
||||
<check>Are mocking strategies consistent with other tests?</check>
|
||||
<check>Is test data generation following established patterns?</check>
|
||||
</category>
|
||||
|
||||
<category name="utility_functions">
|
||||
<check>Could this utility already exist elsewhere?</check>
|
||||
<check>Should this be added to an existing utility module?</check>
|
||||
<check>Does the naming convention match other utilities?</check>
|
||||
<check>Are similar transformations already implemented?</check>
|
||||
</category>
|
||||
</pattern_analysis_checklist>
|
||||
|
||||
<redundancy_detection>
|
||||
<search_strategies>
|
||||
<strategy name="functionality_search">
|
||||
<description>Search for similar functionality by behavior</description>
|
||||
<example>
|
||||
If PR adds a "formatDate" function, search for:
|
||||
- "date format"
|
||||
- "format.*date"
|
||||
- "dateFormat"
|
||||
- Existing date manipulation utilities
|
||||
</example>
|
||||
</strategy>
|
||||
|
||||
<strategy name="pattern_search">
|
||||
<description>Search for similar code patterns</description>
|
||||
<example>
|
||||
If PR adds error handling, search for:
|
||||
- try/catch patterns in similar contexts
|
||||
- Error boundary implementations
|
||||
- Existing error utilities
|
||||
</example>
|
||||
</strategy>
|
||||
|
||||
<strategy name="import_analysis">
|
||||
<description>Check what similar files import</description>
|
||||
<approach>
|
||||
Look at imports in files with similar purposes
|
||||
to discover existing utilities that could be reused
|
||||
</approach>
|
||||
</strategy>
|
||||
</search_strategies>
|
||||
|
||||
<common_redundancies>
|
||||
<type name="utility_duplication">
|
||||
<description>Reimplementing existing utilities</description>
|
||||
<examples>
|
||||
- String manipulation functions
|
||||
- Array transformations
|
||||
- Date formatting
|
||||
- API response transformations
|
||||
</examples>
|
||||
</type>
|
||||
|
||||
<type name="component_duplication">
|
||||
<description>Creating similar components</description>
|
||||
<examples>
|
||||
- Modal variations that could use a base modal
|
||||
- Form inputs that could extend existing inputs
|
||||
- List components with slight variations
|
||||
</examples>
|
||||
</type>
|
||||
|
||||
<type name="logic_duplication">
|
||||
<description>Repeating business logic</description>
|
||||
<examples>
|
||||
- Validation rules implemented multiple times
|
||||
- Permission checks duplicated across files
|
||||
- Data transformation logic repeated
|
||||
</examples>
|
||||
</type>
|
||||
</common_redundancies>
|
||||
</redundancy_detection>
|
||||
|
||||
<constructive_criticism_templates>
|
||||
<template name="pattern_deviation">
|
||||
<format>
|
||||
"I notice this [feature] implements [pattern X], but our existing
|
||||
[similar features] consistently use [pattern Y]. For example:
|
||||
- [Link to example 1]
|
||||
- [Link to example 2]
|
||||
|
||||
Consider aligning with the established pattern to maintain consistency.
|
||||
If there's a specific reason for the deviation, it would be helpful
|
||||
to document it."
|
||||
</format>
|
||||
</template>
|
||||
|
||||
<template name="redundancy_found">
|
||||
<format>
|
||||
"This functionality appears to overlap with existing code in
|
||||
[file/module]. Specifically, [existing function/component] already
|
||||
handles [similar use case].
|
||||
|
||||
Could we either:
|
||||
1. Reuse the existing implementation
|
||||
2. Extend it to cover this use case
|
||||
3. Extract a shared utility if both are needed"
|
||||
</format>
|
||||
</template>
|
||||
|
||||
<template name="organization_improvement">
|
||||
<format>
|
||||
"For better code organization, this [file/component/test] would
|
||||
fit better in [suggested location] alongside [similar items].
|
||||
This follows our pattern where [explanation of pattern]."
|
||||
</format>
|
||||
</template>
|
||||
|
||||
<template name="test_organization">
|
||||
<format>
|
||||
"I see the tests are in [current location], but our other
|
||||
[type] tests are organized in [correct location]. Moving them
|
||||
would make them easier to find and maintain consistency with
|
||||
tests like [example test files]."
|
||||
</format>
|
||||
</template>
|
||||
</constructive_criticism_templates>
|
||||
|
||||
<severity_guidelines>
|
||||
<level name="must_fix">
|
||||
<description>Issues that should block PR approval</description>
|
||||
<examples>
|
||||
- Security vulnerabilities
|
||||
- Breaking changes without migration path
|
||||
- Significant pattern violations that would confuse future developers
|
||||
- Major redundancy that adds maintenance burden
|
||||
</examples>
|
||||
</level>
|
||||
|
||||
<level name="should_fix">
|
||||
<description>Important issues that need addressing</description>
|
||||
<examples>
|
||||
- Test files in wrong location
|
||||
- Inconsistent error handling
|
||||
- Missing critical test cases
|
||||
- Code organization that violates module boundaries
|
||||
</examples>
|
||||
</level>
|
||||
|
||||
<level name="consider_fixing">
|
||||
<description>Improvements that would benefit the codebase</description>
|
||||
<examples>
|
||||
- Minor pattern inconsistencies
|
||||
- Opportunities for code reuse
|
||||
- Additional test coverage
|
||||
- Documentation improvements
|
||||
</examples>
|
||||
</level>
|
||||
</severity_guidelines>
|
||||
</critical_review_guidelines>
|
||||
|
|
@ -1,238 +0,0 @@
|
|||
<delegation_patterns>
|
||||
<overview>
|
||||
Patterns for effectively delegating analysis tasks to specialized modes
|
||||
while maintaining context and ensuring comprehensive review coverage.
|
||||
</overview>
|
||||
|
||||
<delegation_strategies>
|
||||
<strategy name="pattern_analysis_delegation">
|
||||
<when_to_delegate>
|
||||
When PR contains new features or significant code changes
|
||||
</when_to_delegate>
|
||||
<delegate_to>code</delegate_to>
|
||||
<task_template>
|
||||
Analyze the following changed files for pattern consistency:
|
||||
[List of changed files]
|
||||
|
||||
Please focus on:
|
||||
1. Finding similar existing implementations in the codebase
|
||||
2. Identifying established patterns for this type of feature
|
||||
3. Checking if the new code follows these patterns
|
||||
4. Looking for potential code redundancy
|
||||
5. Verifying proper file organization
|
||||
|
||||
Use codebase_search and search_files to find similar code.
|
||||
Document all findings with specific examples and file references.
|
||||
|
||||
Save your analysis to: .roo/temp/pr-[PR_NUMBER]/pattern-analysis.md
|
||||
|
||||
Format the output as:
|
||||
## Pattern Analysis for PR #[PR_NUMBER]
|
||||
### Similar Existing Implementations
|
||||
### Established Patterns
|
||||
### Pattern Deviations
|
||||
### Redundancy Findings
|
||||
### Organization Issues
|
||||
</task_template>
|
||||
</strategy>
|
||||
|
||||
<strategy name="architecture_review_delegation">
|
||||
<when_to_delegate>
|
||||
When PR modifies core modules, adds new modules, or changes dependencies
|
||||
</when_to_delegate>
|
||||
<delegate_to>architect</delegate_to>
|
||||
<task_template>
|
||||
Review the architectural implications of PR #[PR_NUMBER]:
|
||||
|
||||
Changed files:
|
||||
[List of changed files]
|
||||
|
||||
PR Description:
|
||||
[PR description]
|
||||
|
||||
Please analyze:
|
||||
1. Module boundary adherence
|
||||
2. Dependency management (new dependencies, circular dependencies)
|
||||
3. Separation of concerns
|
||||
4. Impact on system architecture
|
||||
5. Consistency with architectural patterns
|
||||
|
||||
Save your findings to: .roo/temp/pr-[PR_NUMBER]/architecture-review.md
|
||||
|
||||
Format as:
|
||||
## Architecture Review for PR #[PR_NUMBER]
|
||||
### Module Boundaries
|
||||
### Dependency Analysis
|
||||
### Architectural Concerns
|
||||
### Recommendations
|
||||
</task_template>
|
||||
</strategy>
|
||||
|
||||
<strategy name="test_analysis_delegation">
|
||||
<when_to_delegate>
|
||||
When PR adds or modifies test files
|
||||
</when_to_delegate>
|
||||
<delegate_to>test</delegate_to>
|
||||
<task_template>
|
||||
Analyze test changes in PR #[PR_NUMBER]:
|
||||
|
||||
Test files changed:
|
||||
[List of test files]
|
||||
|
||||
Please review:
|
||||
1. Test file organization and location
|
||||
2. Test naming conventions
|
||||
3. Coverage of edge cases
|
||||
4. Mock usage patterns
|
||||
5. Consistency with existing test patterns
|
||||
|
||||
Compare with similar existing tests in the codebase.
|
||||
|
||||
Save analysis to: .roo/temp/pr-[PR_NUMBER]/test-analysis.md
|
||||
|
||||
Format as:
|
||||
## Test Analysis for PR #[PR_NUMBER]
|
||||
### Test Organization
|
||||
### Coverage Assessment
|
||||
### Pattern Consistency
|
||||
### Recommendations
|
||||
</task_template>
|
||||
</strategy>
|
||||
|
||||
<strategy name="ui_review_delegation">
|
||||
<when_to_delegate>
|
||||
When PR modifies UI components or adds new ones
|
||||
</when_to_delegate>
|
||||
<delegate_to>design-engineer</delegate_to>
|
||||
<task_template>
|
||||
Review UI changes in PR #[PR_NUMBER]:
|
||||
|
||||
UI files changed:
|
||||
[List of UI files]
|
||||
|
||||
Please analyze:
|
||||
1. Component structure consistency
|
||||
2. Styling approach (Tailwind usage)
|
||||
3. Accessibility considerations
|
||||
4. i18n implementation
|
||||
5. Component reusability
|
||||
|
||||
Save findings to: .roo/temp/pr-[PR_NUMBER]/ui-review.md
|
||||
</task_template>
|
||||
</strategy>
|
||||
</delegation_strategies>
|
||||
|
||||
<context_preservation>
|
||||
<principle name="use_temp_files">
|
||||
<description>Always save delegation results to temp files</description>
|
||||
<pattern>.roo/temp/pr-[PR_NUMBER]/[analysis-type].md</pattern>
|
||||
</principle>
|
||||
|
||||
<principle name="structured_output">
|
||||
<description>Request structured markdown output from delegates</description>
|
||||
<benefits>
|
||||
- Easy to parse and combine
|
||||
- Consistent formatting
|
||||
- Clear section headers
|
||||
</benefits>
|
||||
</principle>
|
||||
|
||||
<principle name="pass_context_forward">
|
||||
<description>Include relevant context in delegation requests</description>
|
||||
<include>
|
||||
- PR number and description
|
||||
- List of changed files
|
||||
- Specific areas of concern
|
||||
- Output file location
|
||||
</include>
|
||||
</principle>
|
||||
</context_preservation>
|
||||
|
||||
<coordination_patterns>
|
||||
<pattern name="sequential_delegation">
|
||||
<description>Delegate tasks one at a time, using results to inform next delegation</description>
|
||||
<example>
|
||||
1. Pattern analysis first
|
||||
2. If patterns violated, delegate architecture review
|
||||
3. If tests affected, delegate test analysis
|
||||
</example>
|
||||
</pattern>
|
||||
|
||||
<pattern name="parallel_delegation">
|
||||
<description>Delegate multiple independent analyses simultaneously</description>
|
||||
<example>
|
||||
- Pattern analysis (code mode)
|
||||
- Test analysis (test mode)
|
||||
- UI review (design-engineer mode)
|
||||
</example>
|
||||
</pattern>
|
||||
|
||||
<pattern name="conditional_delegation">
|
||||
<description>Only delegate based on file types changed</description>
|
||||
<conditions>
|
||||
- If *.test.ts changed -> delegate to test mode
|
||||
- If src/components/* changed -> delegate to design-engineer
|
||||
- If package.json changed -> delegate to architect
|
||||
</conditions>
|
||||
</pattern>
|
||||
</coordination_patterns>
|
||||
|
||||
<result_synthesis>
|
||||
<step name="collect_results">
|
||||
<action>Read all analysis files from temp directory</action>
|
||||
<files>
|
||||
- pattern-analysis.md
|
||||
- architecture-review.md
|
||||
- test-analysis.md
|
||||
- ui-review.md
|
||||
</files>
|
||||
</step>
|
||||
|
||||
<step name="identify_themes">
|
||||
<action>Find common issues across analyses</action>
|
||||
<themes>
|
||||
- Pattern violations mentioned multiple times
|
||||
- Redundancy identified by different modes
|
||||
- Organizational issues
|
||||
</themes>
|
||||
</step>
|
||||
|
||||
<step name="prioritize_findings">
|
||||
<action>Categorize by severity</action>
|
||||
<categories>
|
||||
- Critical (blocks PR)
|
||||
- Important (should fix)
|
||||
- Suggestions (nice to have)
|
||||
</categories>
|
||||
</step>
|
||||
|
||||
<step name="create_unified_report">
|
||||
<action>Combine all findings into final review</action>
|
||||
<format>
|
||||
## PR Review Summary
|
||||
### Critical Issues
|
||||
### Pattern Inconsistencies
|
||||
### Architecture Concerns
|
||||
### Test Coverage
|
||||
### Suggestions
|
||||
</format>
|
||||
</step>
|
||||
</result_synthesis>
|
||||
|
||||
<fallback_strategies>
|
||||
<scenario name="delegation_fails">
|
||||
<action>Continue with available analyses</action>
|
||||
<note>Document which analyses couldn't be completed</note>
|
||||
</scenario>
|
||||
|
||||
<scenario name="mode_unavailable">
|
||||
<action>Perform basic analysis in orchestrator mode</action>
|
||||
<limitations>Note limitations in final report</limitations>
|
||||
</scenario>
|
||||
|
||||
<scenario name="timeout">
|
||||
<action>Use completed analyses</action>
|
||||
<timeout>Set reasonable time limits for delegations</timeout>
|
||||
</scenario>
|
||||
</fallback_strategies>
|
||||
</delegation_patterns>
|
||||
|
|
@ -1,224 +0,0 @@
|
|||
<github_operations>
|
||||
<overview>
|
||||
Guidelines for handling GitHub operations using the GitHub CLI (gh).
|
||||
This mode exclusively uses command-line operations for all GitHub interactions.
|
||||
</overview>
|
||||
|
||||
<prerequisites>
|
||||
<requirement name="github_cli">
|
||||
<description>GitHub CLI must be installed and authenticated</description>
|
||||
<check_command>gh auth status</check_command>
|
||||
<install_url>https://cli.github.com/</install_url>
|
||||
</requirement>
|
||||
<requirement name="authentication">
|
||||
<description>User must be authenticated with appropriate permissions</description>
|
||||
<setup_command>gh auth login</setup_command>
|
||||
</requirement>
|
||||
</prerequisites>
|
||||
|
||||
<operation_patterns>
|
||||
<operation name="fetch_pr_details">
|
||||
<description>Fetch comprehensive PR metadata</description>
|
||||
<command>gh pr view [PR_NUMBER] --repo [owner]/[repo] --json number,title,author,state,body,url,headRefName,baseRefName,files,additions,deletions,changedFiles</command>
|
||||
<output_format>JSON</output_format>
|
||||
<save_to>.roo/temp/pr-[PR_NUMBER]/pr-metadata.json</save_to>
|
||||
</operation>
|
||||
|
||||
<operation name="fetch_pr_diff">
|
||||
<description>Get the full diff of PR changes</description>
|
||||
<command>gh pr diff [PR_NUMBER] --repo [owner]/[repo]</command>
|
||||
<save_to>.roo/temp/pr-[PR_NUMBER]/pr.diff</save_to>
|
||||
</operation>
|
||||
|
||||
<operation name="fetch_pr_files">
|
||||
<description>List all files changed in the PR</description>
|
||||
<command>gh pr view [PR_NUMBER] --repo [owner]/[repo] --json files --jq '.files[].path'</command>
|
||||
<output_format>Line-separated file paths</output_format>
|
||||
</operation>
|
||||
|
||||
<operation name="fetch_comments">
|
||||
<description>Get all comments on the PR</description>
|
||||
<command>gh pr view [PR_NUMBER] --repo [owner]/[repo] --json comments --jq '.comments'</command>
|
||||
<output_format>JSON array of comments</output_format>
|
||||
</operation>
|
||||
|
||||
<operation name="fetch_reviews">
|
||||
<description>Get all reviews on the PR</description>
|
||||
<command>gh pr view [PR_NUMBER] --repo [owner]/[repo] --json reviews --jq '.reviews'</command>
|
||||
<output_format>JSON array of reviews</output_format>
|
||||
</operation>
|
||||
|
||||
<operation name="checkout_pr">
|
||||
<description>Check out PR branch locally for analysis</description>
|
||||
<command>gh pr checkout [PR_NUMBER] --repo [owner]/[repo]</command>
|
||||
<note>This switches the current branch to the PR branch</note>
|
||||
</operation>
|
||||
|
||||
<operation name="post_comment">
|
||||
<description>Post a comment on the PR</description>
|
||||
<command>gh pr comment [PR_NUMBER] --repo [owner]/[repo] --body-file [file_path]</command>
|
||||
<alternative>gh pr comment [PR_NUMBER] --repo [owner]/[repo] --body "[comment_text]"</alternative>
|
||||
</operation>
|
||||
|
||||
<operation name="create_review">
|
||||
<description>Create a PR review with comments</description>
|
||||
<command>gh pr review [PR_NUMBER] --repo [owner]/[repo] --comment --body-file [review_file]</command>
|
||||
<options>
|
||||
<option>--approve: Approve the PR</option>
|
||||
<option>--request-changes: Request changes</option>
|
||||
<option>--comment: Just comment without approval/rejection</option>
|
||||
</options>
|
||||
</operation>
|
||||
|
||||
<operation name="fetch_issue">
|
||||
<description>Get issue details (for linked issues)</description>
|
||||
<command>gh issue view [issue_number] --repo [owner]/[repo] --json number,title,body,author,state</command>
|
||||
<output_format>JSON</output_format>
|
||||
</operation>
|
||||
</operation_patterns>
|
||||
|
||||
<error_handling>
|
||||
<scenario name="authentication_failure">
|
||||
<detection>
|
||||
Error contains "authentication" or "not logged in"
|
||||
</detection>
|
||||
<action>
|
||||
1. Inform user about auth issue
|
||||
2. Suggest running: gh auth login
|
||||
3. Check status with: gh auth status
|
||||
</action>
|
||||
</scenario>
|
||||
|
||||
<scenario name="api_rate_limit">
|
||||
<detection>
|
||||
Error contains "rate limit" or "API rate limit exceeded"
|
||||
</detection>
|
||||
<action>
|
||||
1. Wait 30-60 seconds before retry
|
||||
2. Inform user about rate limiting
|
||||
3. Consider reducing API calls
|
||||
</action>
|
||||
</scenario>
|
||||
|
||||
<scenario name="pr_not_found">
|
||||
<detection>
|
||||
Error contains "not found" or "could not find pull request"
|
||||
</detection>
|
||||
<action>
|
||||
1. Verify PR number and repository format
|
||||
2. Check if repository is accessible
|
||||
3. Ensure correct owner/repo format
|
||||
</action>
|
||||
</scenario>
|
||||
|
||||
<scenario name="permission_denied">
|
||||
<detection>
|
||||
Error contains "permission denied" or "403"
|
||||
</detection>
|
||||
<action>
|
||||
1. Check repository permissions
|
||||
2. Verify authentication scope
|
||||
3. May need to re-authenticate with proper scopes
|
||||
</action>
|
||||
</scenario>
|
||||
</error_handling>
|
||||
|
||||
<data_handling>
|
||||
<principle name="save_everything">
|
||||
<description>Always save command outputs to temp files</description>
|
||||
<reason>Preserve data for analysis and recovery</reason>
|
||||
</principle>
|
||||
|
||||
<principle name="parse_json_safely">
|
||||
<description>Use jq for JSON parsing when available</description>
|
||||
<example>
|
||||
gh pr view --json files --jq '.files[].path'
|
||||
</example>
|
||||
</principle>
|
||||
|
||||
<principle name="handle_large_prs">
|
||||
<description>For PRs with many files, save outputs to files first</description>
|
||||
<threshold>More than 50 files</threshold>
|
||||
<approach>Save to file, then process in chunks</approach>
|
||||
</principle>
|
||||
|
||||
<principle name="validate_json">
|
||||
<description>Always validate JSON before parsing</description>
|
||||
<command>jq empty < file.json || echo "Invalid JSON"</command>
|
||||
</principle>
|
||||
</data_handling>
|
||||
|
||||
<cli_command_reference>
|
||||
<command_group name="pr_info">
|
||||
<base_command>gh pr view [number]</base_command>
|
||||
<options>
|
||||
<option>--repo [owner]/[repo]: Specify repository</option>
|
||||
<option>--json [fields]: Get JSON output</option>
|
||||
<option>--jq [expression]: Parse JSON with jq</option>
|
||||
</options>
|
||||
<json_fields>
|
||||
number, title, author, state, body, url,
|
||||
headRefName, baseRefName, files, additions,
|
||||
deletions, changedFiles, comments, reviews,
|
||||
isDraft, mergeable, mergeStateStatus
|
||||
</json_fields>
|
||||
</command_group>
|
||||
|
||||
<command_group name="pr_interaction">
|
||||
<commands>
|
||||
<command>gh pr checkout [number]: Check out PR locally</command>
|
||||
<command>gh pr diff [number]: View PR diff</command>
|
||||
<command>gh pr comment [number] --body "[text]": Add comment</command>
|
||||
<command>gh pr review [number]: Create review</command>
|
||||
<command>gh pr close [number]: Close PR</command>
|
||||
<command>gh pr reopen [number]: Reopen PR</command>
|
||||
</commands>
|
||||
</command_group>
|
||||
|
||||
<command_group name="issue_info">
|
||||
<base_command>gh issue view [number]</base_command>
|
||||
<json_fields>
|
||||
number, title, body, author, state,
|
||||
labels, assignees, milestone, comments
|
||||
</json_fields>
|
||||
</command_group>
|
||||
|
||||
<command_group name="repo_info">
|
||||
<commands>
|
||||
<command>gh repo view --json [fields]: Get repo info</command>
|
||||
<command>gh repo clone [owner]/[repo]: Clone repository</command>
|
||||
</commands>
|
||||
</command_group>
|
||||
</cli_command_reference>
|
||||
|
||||
<best_practices>
|
||||
<practice>Always specify --repo to avoid ambiguity</practice>
|
||||
<practice>Use --json for structured data that needs parsing</practice>
|
||||
<practice>Save command outputs to temp files for reliability</practice>
|
||||
<practice>Check gh auth status before starting operations</practice>
|
||||
<practice>Handle both personal repos and organization repos</practice>
|
||||
<practice>Use meaningful file names when saving outputs</practice>
|
||||
<practice>Include error handling for all commands</practice>
|
||||
<practice>Document the expected format of saved files</practice>
|
||||
</best_practices>
|
||||
|
||||
<example_workflows>
|
||||
<workflow name="complete_pr_fetch">
|
||||
<description>Fetch all PR data for analysis</description>
|
||||
<steps>
|
||||
<step>gh pr view 123 --repo owner/repo --json number,title,author,state,body,url,headRefName,baseRefName,files,additions,deletions,changedFiles > .roo/temp/pr-123/metadata.json</step>
|
||||
<step>gh pr view 123 --repo owner/repo --json comments > .roo/temp/pr-123/comments.json</step>
|
||||
<step>gh pr view 123 --repo owner/repo --json reviews > .roo/temp/pr-123/reviews.json</step>
|
||||
<step>gh pr diff 123 --repo owner/repo > .roo/temp/pr-123/pr.diff</step>
|
||||
</steps>
|
||||
</workflow>
|
||||
|
||||
<workflow name="post_review">
|
||||
<description>Post a comprehensive review</description>
|
||||
<steps>
|
||||
<step>Create review content in .roo/temp/pr-123/review.md</step>
|
||||
<step>gh pr review 123 --repo owner/repo --comment --body-file .roo/temp/pr-123/review.md</step>
|
||||
</steps>
|
||||
</workflow>
|
||||
</example_workflows>
|
||||
</github_operations>
|
||||
|
|
@ -1,356 +0,0 @@
|
|||
<context_management>
|
||||
<overview>
|
||||
Strategies for maintaining review context across delegated tasks and
|
||||
ensuring no information is lost during the orchestration process.
|
||||
</overview>
|
||||
|
||||
<context_files>
|
||||
<file name="review-context.json">
|
||||
<purpose>Central tracking file for the entire review process</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/review-context.json</location>
|
||||
<structure>
|
||||
{
|
||||
"prNumber": "string",
|
||||
"repository": "string",
|
||||
"reviewStartTime": "ISO timestamp",
|
||||
"calledByMode": "string or null",
|
||||
"prMetadata": {
|
||||
"title": "string",
|
||||
"author": "string",
|
||||
"state": "string",
|
||||
"baseRefName": "string",
|
||||
"headRefName": "string",
|
||||
"additions": "number",
|
||||
"deletions": "number",
|
||||
"changedFiles": "number"
|
||||
},
|
||||
"linkedIssue": {
|
||||
"number": "number",
|
||||
"title": "string",
|
||||
"body": "string"
|
||||
},
|
||||
"existingComments": [],
|
||||
"existingReviews": [],
|
||||
"filesChanged": [],
|
||||
"delegatedTasks": [
|
||||
{
|
||||
"mode": "string",
|
||||
"status": "pending|completed|failed",
|
||||
"outputFile": "string",
|
||||
"startTime": "ISO timestamp",
|
||||
"endTime": "ISO timestamp"
|
||||
}
|
||||
],
|
||||
"findings": {
|
||||
"critical": [],
|
||||
"patterns": [],
|
||||
"redundancy": [],
|
||||
"architecture": [],
|
||||
"tests": []
|
||||
},
|
||||
"reviewStatus": "initialized|analyzing|synthesizing|completed"
|
||||
}
|
||||
</structure>
|
||||
</file>
|
||||
|
||||
<file name="pr-metadata.json">
|
||||
<purpose>Raw PR data from GitHub</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/pr-metadata.json</location>
|
||||
</file>
|
||||
|
||||
<file name="existing-feedback.json">
|
||||
<purpose>All existing comments and reviews</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/existing-feedback.json</location>
|
||||
</file>
|
||||
|
||||
<file name="pattern-analysis.md">
|
||||
<purpose>Output from code mode delegation</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/pattern-analysis.md</location>
|
||||
</file>
|
||||
|
||||
<file name="architecture-review.md">
|
||||
<purpose>Output from architect mode delegation</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/architecture-review.md</location>
|
||||
</file>
|
||||
|
||||
<file name="test-analysis.md">
|
||||
<purpose>Output from test mode delegation</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/test-analysis.md</location>
|
||||
</file>
|
||||
|
||||
<file name="final-review.md">
|
||||
<purpose>Synthesized review ready for posting</purpose>
|
||||
<location>.roo/temp/pr-[PR_NUMBER]/final-review.md</location>
|
||||
</file>
|
||||
</context_files>
|
||||
|
||||
<update_patterns>
|
||||
<pattern name="after_github_fetch">
|
||||
<action>Update review-context.json with PR metadata</action>
|
||||
<example><![CDATA[
|
||||
<read_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
</read_file>
|
||||
|
||||
<!-- Parse and update the JSON -->
|
||||
|
||||
<write_to_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
<content>
|
||||
{
|
||||
...existing,
|
||||
"prMetadata": {
|
||||
"title": "Fix user authentication",
|
||||
"author": "developer123",
|
||||
...
|
||||
},
|
||||
"filesChanged": ["src/auth.ts", "tests/auth.test.ts"],
|
||||
"reviewStatus": "analyzing"
|
||||
}
|
||||
</content>
|
||||
</write_to_file>
|
||||
]]></example>
|
||||
</pattern>
|
||||
|
||||
<pattern name="after_delegation">
|
||||
<action>Update delegatedTasks array with task status</action>
|
||||
<fields>
|
||||
- mode: Which mode was delegated to
|
||||
- status: pending -> completed/failed
|
||||
- outputFile: Where results were saved
|
||||
- timestamps: Start and end times
|
||||
</fields>
|
||||
</pattern>
|
||||
|
||||
<pattern name="after_synthesis">
|
||||
<action>Update findings object with categorized issues</action>
|
||||
<categories>
|
||||
- critical: Must-fix issues
|
||||
- patterns: Pattern inconsistencies
|
||||
- redundancy: Duplicate code findings
|
||||
- architecture: Architectural concerns
|
||||
- tests: Test-related issues
|
||||
</categories>
|
||||
</pattern>
|
||||
</update_patterns>
|
||||
|
||||
<context_preservation_strategies>
|
||||
<strategy name="atomic_updates">
|
||||
<description>Always read-modify-write for JSON updates</description>
|
||||
<steps>
|
||||
1. Read current context file
|
||||
2. Parse JSON
|
||||
3. Update specific fields
|
||||
4. Write entire updated JSON
|
||||
</steps>
|
||||
</strategy>
|
||||
|
||||
<strategy name="backup_critical_data">
|
||||
<description>Save copies of important data</description>
|
||||
<files>
|
||||
- PR diff before analysis
|
||||
- Existing comments before review
|
||||
- Each delegation output
|
||||
</files>
|
||||
</strategy>
|
||||
|
||||
<strategy name="status_tracking">
|
||||
<description>Track review progress through status field</description>
|
||||
<states>
|
||||
- initialized: Just started
|
||||
- analyzing: Delegating tasks
|
||||
- synthesizing: Combining results
|
||||
- completed: Ready for user
|
||||
</states>
|
||||
</strategy>
|
||||
</context_preservation_strategies>
|
||||
|
||||
<recovery_procedures>
|
||||
<scenario name="partial_failure">
|
||||
<description>Some delegations failed</description>
|
||||
<action>
|
||||
1. Mark failed tasks in context
|
||||
2. Continue with available data
|
||||
3. Note limitations in final review
|
||||
</action>
|
||||
</scenario>
|
||||
|
||||
<scenario name="context_corruption">
|
||||
<description>JSON file becomes invalid</description>
|
||||
<action>
|
||||
1. Try to recover from backups
|
||||
2. Reconstruct from individual files
|
||||
3. Start fresh if necessary
|
||||
</action>
|
||||
</scenario>
|
||||
|
||||
<scenario name="interrupted_review">
|
||||
<description>Review process interrupted</description>
|
||||
<action>
|
||||
1. Check reviewStatus field
|
||||
2. Resume from last completed step
|
||||
3. Re-run failed delegations
|
||||
</action>
|
||||
</scenario>
|
||||
</recovery_procedures>
|
||||
|
||||
<best_practices>
|
||||
<practice name="always_update_status">
|
||||
Keep reviewStatus current to enable recovery
|
||||
</practice>
|
||||
|
||||
<practice name="timestamp_everything">
|
||||
Add timestamps to all operations for debugging
|
||||
</practice>
|
||||
|
||||
<practice name="validate_json">
|
||||
Ensure JSON is valid before writing
|
||||
</practice>
|
||||
|
||||
<practice name="use_descriptive_filenames">
|
||||
Make it clear what each file contains
|
||||
</practice>
|
||||
|
||||
<practice name="clean_up_old_reviews">
|
||||
Suggest cleaning .roo/temp/ periodically
|
||||
</practice>
|
||||
</best_practices>
|
||||
|
||||
<example_workflow>
|
||||
<step number="1">
|
||||
<action>Initialize context</action>
|
||||
<code><![CDATA[
|
||||
<execute_command>
|
||||
<command>New-Item -ItemType Directory -Force -Path ".roo/temp/pr-123"</command>
|
||||
</execute_command>
|
||||
|
||||
<write_to_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
<content>
|
||||
{
|
||||
"prNumber": "123",
|
||||
"repository": "RooCodeInc/Roo-Code",
|
||||
"reviewStartTime": "2025-01-04T18:00:00Z",
|
||||
"calledByMode": null,
|
||||
"prMetadata": {},
|
||||
"linkedIssue": {},
|
||||
"existingComments": [],
|
||||
"existingReviews": [],
|
||||
"filesChanged": [],
|
||||
"delegatedTasks": [],
|
||||
"findings": {
|
||||
"critical": [],
|
||||
"patterns": [],
|
||||
"redundancy": [],
|
||||
"architecture": [],
|
||||
"tests": []
|
||||
},
|
||||
"reviewStatus": "initialized"
|
||||
}
|
||||
</content>
|
||||
</write_to_file>
|
||||
]]></code>
|
||||
</step>
|
||||
|
||||
<step number="2">
|
||||
<action>Update after GitHub fetch</action>
|
||||
<code><![CDATA[
|
||||
<read_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
</read_file>
|
||||
|
||||
<!-- Update with PR data -->
|
||||
|
||||
<write_to_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
<content>
|
||||
{
|
||||
...existing,
|
||||
"prMetadata": {
|
||||
"title": "Fix user authentication",
|
||||
"author": "developer123",
|
||||
"state": "open",
|
||||
"baseRefName": "main",
|
||||
"headRefName": "fix-auth",
|
||||
"additions": 150,
|
||||
"deletions": 50,
|
||||
"changedFiles": 3
|
||||
},
|
||||
"filesChanged": ["src/auth.ts", "tests/auth.test.ts", "docs/auth.md"],
|
||||
"reviewStatus": "analyzing"
|
||||
}
|
||||
</content>
|
||||
</write_to_file>
|
||||
]]></code>
|
||||
</step>
|
||||
|
||||
<step number="3">
|
||||
<action>Track delegation</action>
|
||||
<code><![CDATA[
|
||||
<!-- Before delegation -->
|
||||
<read_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
</read_file>
|
||||
|
||||
<!-- Update to add pending task -->
|
||||
<write_to_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
<content>
|
||||
{
|
||||
...existing,
|
||||
"delegatedTasks": [
|
||||
...existing,
|
||||
{
|
||||
"mode": "code",
|
||||
"status": "pending",
|
||||
"outputFile": "pattern-analysis.md",
|
||||
"startTime": "2025-01-04T18:05:00Z",
|
||||
"endTime": null
|
||||
}
|
||||
]
|
||||
}
|
||||
</content>
|
||||
</write_to_file>
|
||||
|
||||
<!-- After delegation completes -->
|
||||
<!-- Update task status to completed -->
|
||||
]]></code>
|
||||
</step>
|
||||
|
||||
<step number="4">
|
||||
<action>Synthesize results</action>
|
||||
<code><![CDATA[
|
||||
<!-- Read all analysis files -->
|
||||
<read_file>
|
||||
<path>.roo/temp/pr-123/pattern-analysis.md</path>
|
||||
</read_file>
|
||||
|
||||
<read_file>
|
||||
<path>.roo/temp/pr-123/architecture-review.md</path>
|
||||
</read_file>
|
||||
|
||||
<read_file>
|
||||
<path>.roo/temp/pr-123/test-analysis.md</path>
|
||||
</read_file>
|
||||
|
||||
<!-- Update findings and status -->
|
||||
<write_to_file>
|
||||
<path>.roo/temp/pr-123/review-context.json</path>
|
||||
<content>
|
||||
{
|
||||
...existing,
|
||||
"findings": {
|
||||
"critical": ["Missing error handling in auth.ts"],
|
||||
"patterns": ["Inconsistent naming convention"],
|
||||
"redundancy": ["Duplicate validation logic"],
|
||||
"architecture": [],
|
||||
"tests": ["Missing test for edge case"]
|
||||
},
|
||||
"reviewStatus": "completed"
|
||||
}
|
||||
</content>
|
||||
</write_to_file>
|
||||
]]></code>
|
||||
</step>
|
||||
</example_workflow>
|
||||
</context_management>
|
||||
43
.roomodes
43
.roomodes
|
|
@ -164,35 +164,6 @@ customModes:
|
|||
- fileRegex: (apps/vscode-e2e/.*\.(ts|js)$|packages/types/.*\.ts$)
|
||||
description: E2E test files, test utilities, and API type definitions
|
||||
source: project
|
||||
- slug: pr-reviewer
|
||||
name: 🔍 PR Reviewer
|
||||
roleDefinition: |-
|
||||
You are Roo, a critical pull request review orchestrator specializing in code quality, architectural consistency, and codebase organization. Your expertise includes:
|
||||
- Orchestrating comprehensive PR reviews by delegating specialized analysis tasks
|
||||
- Analyzing pull request diffs with a critical eye for code organization and patterns
|
||||
- Evaluating whether changes follow established codebase patterns and conventions
|
||||
- Identifying redundant or duplicate code that already exists elsewhere
|
||||
- Ensuring tests are properly organized with other similar tests
|
||||
- Verifying that new features follow patterns established by similar existing features
|
||||
- Detecting code smells, technical debt, and architectural inconsistencies
|
||||
- Delegating deep codebase analysis to specialized modes when needed
|
||||
- Maintaining context through structured report files in .roo/temp/pr-[number]/
|
||||
- Ensuring proper internationalization (i18n) for UI changes
|
||||
- Providing direct, constructive feedback that improves code quality
|
||||
- Being appropriately critical to maintain high code standards
|
||||
- Using GitHub CLI when MCP tools are unavailable
|
||||
|
||||
You work primarily with the RooCodeInc/Roo-Code repository, creating context reports to track findings and delegating complex pattern analysis to specialized modes while maintaining overall review coordination. When called by other modes (Issue Fixer, PR Fixer), you focus only on analysis without commenting on the PR.
|
||||
whenToUse: Use this mode to critically review pull requests, focusing on code organization, pattern consistency, and identifying redundancy or architectural issues. This mode orchestrates complex analysis tasks while maintaining review context.
|
||||
description: Critically review pull requests.
|
||||
groups:
|
||||
- read
|
||||
- - edit
|
||||
- fileRegex: (\.md$|\.roo/temp/pr-.*\.(json|md|txt)$)
|
||||
description: Markdown files and PR review context files
|
||||
- mcp
|
||||
- command
|
||||
source: project
|
||||
- slug: docs-extractor
|
||||
name: 📚 Docs Extractor
|
||||
roleDefinition: You are Roo, a comprehensive documentation extraction specialist focused on analyzing and documenting all technical and non-technical information about features and components within codebases.
|
||||
|
|
@ -257,3 +228,17 @@ customModes:
|
|||
- command
|
||||
- mcp
|
||||
source: project
|
||||
- slug: pr-reviewer
|
||||
name: 🔍 PR Reviewer
|
||||
roleDefinition: |-
|
||||
You are Roo, a pull request reviewer specializing in code quality, structure, and translation consistency. Your expertise includes: - Analyzing pull request diffs and understanding code changes in context - Evaluating code quality, identifying code smells and technical debt - Ensuring structural consistency across the codebase - Verifying proper internationalization (i18n) for UI changes - Providing constructive feedback with a friendly, curious tone - Reviewing test coverage and quality without executing tests - Identifying opportunities for code improvements and refactoring
|
||||
You work primarily with the RooCodeInc/Roo-Code repository, using GitHub MCP tools to fetch and review pull requests. You check out PRs locally for better context understanding and focus on providing actionable, constructive feedback that helps improve code quality.
|
||||
whenToUse: Use this mode to review pull requests on the Roo-Code GitHub repository or any other repository if specified by the user.
|
||||
groups:
|
||||
- read
|
||||
- - edit
|
||||
- fileRegex: \.md$
|
||||
description: Markdown files only
|
||||
- mcp
|
||||
- command
|
||||
source: project
|
||||
|
|
|
|||
|
|
@ -349,12 +349,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -368,25 +371,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -246,12 +246,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -265,25 +268,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -349,12 +349,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -368,25 +371,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -398,12 +398,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -417,25 +420,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -354,12 +354,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -373,25 +376,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -349,12 +349,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -368,25 +371,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -402,12 +402,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -421,25 +424,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -349,12 +349,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -368,25 +371,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -437,12 +437,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -456,25 +459,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -349,12 +349,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -368,25 +371,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -402,12 +402,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -421,25 +424,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -398,12 +398,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -417,25 +420,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -349,12 +349,15 @@ Example: Requesting to switch to code mode
|
|||
</switch_mode>
|
||||
|
||||
## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -368,25 +371,35 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
|
||||
|
||||
## update_todo_list
|
||||
|
||||
|
|
|
|||
|
|
@ -2,12 +2,15 @@ import { ToolArgs } from "./types"
|
|||
|
||||
export function getNewTaskDescription(_args: ToolArgs): string {
|
||||
return `## new_task
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message.
|
||||
Description: This will let you create a new task instance in the chosen mode using your provided message. You can optionally provide a todo list to help organize and track the subtask's progress.
|
||||
|
||||
Parameters:
|
||||
- mode: (required) The slug of the mode to start the new task in (e.g., "code", "debug", "architect").
|
||||
- message: (required) The initial user message or instructions for this new task.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. Use the same format as update_todo_list.
|
||||
- todos: (optional) A markdown checklist of todo items to initialize the new task with. When creating subtasks for complex work, include todos to break down the work into manageable steps. Format each item as a markdown checkbox:
|
||||
- [ ] for pending tasks
|
||||
- [x] for completed tasks
|
||||
- [-] for in-progress tasks
|
||||
|
||||
Usage:
|
||||
<new_task>
|
||||
|
|
@ -21,23 +24,33 @@ Usage:
|
|||
</todos>
|
||||
</new_task>
|
||||
|
||||
Example:
|
||||
Example without todos:
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement a new feature for the application.</message>
|
||||
<message>Fix the typo in the README file</message>
|
||||
</new_task>
|
||||
|
||||
Example with todos:
|
||||
Example with todos (recommended for complex tasks):
|
||||
<new_task>
|
||||
<mode>code</mode>
|
||||
<message>Implement user authentication</message>
|
||||
<message>Implement user authentication system</message>
|
||||
<todos>
|
||||
[ ] Research authentication libraries
|
||||
[ ] Set up authentication middleware
|
||||
[ ] Create login endpoint
|
||||
[ ] Create logout endpoint
|
||||
[ ] Create user model and database schema
|
||||
[ ] Implement registration endpoint
|
||||
[ ] Implement login endpoint
|
||||
[ ] Implement logout endpoint
|
||||
[ ] Add password hashing
|
||||
[ ] Create JWT token generation
|
||||
[ ] Add session management
|
||||
[ ] Write tests for authentication
|
||||
[ ] Implement password reset functionality
|
||||
[ ] Write unit tests for auth endpoints
|
||||
[ ] Write integration tests
|
||||
[ ] Update API documentation
|
||||
</todos>
|
||||
</new_task>
|
||||
|
||||
IMPORTANT: When delegating complex work to a subtask, always consider including a todos list to help the subtask stay organized and track progress effectively.
|
||||
`
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue