You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"Thoughts on each plan and what's better or worse about each plan, leading up to which plan is the best choice.",
45
+
'Analysis of each plan and reasoning for which is the best choice',
46
46
},
47
47
selectedPlanId: {
48
48
type: 'string',
49
-
description: 'The ID of the chosen plan.',
49
+
description: 'The ID of the chosen plan',
50
50
},
51
51
},
52
52
required: ['reasoning','selectedPlanId'],
53
53
},
54
+
inheritParentSystemPrompt: true,
54
55
includeMessageHistory: true,
55
-
systemPrompt: `You are an expert plan evaluator with deep experience in software engineering, architecture, and project management.
56
+
instructionsPrompt: `For reference, here is the original user request:
57
+
<user_message>
58
+
${PLACEHOLDER.USER_INPUT_PROMPT}
59
+
</user_message>
56
60
57
-
We're interested in the simplest solution that will accomplish the task correctly! You got this!
61
+
You are evaluating multiple high-level plans generated by the generate-plan agent. Each plan has already been carefully crafted (generate-plan creates 5 alternatives internally and picks the best), so your job is to select the absolute best among these already-good plans.
58
62
59
-
${PLACEHOLDER.KNOWLEDGE_FILES_CONTENTS}`,
63
+
Analyze each plan based on:
60
64
61
-
instructionsPrompt: `Analyze all the provided implementations and select the best one based on:
65
+
1. **Simplicity** - Which plan is the cleanest and most straightforward? Avoid over-engineering.
66
+
2. **Correctness** - Which plan most accurately addresses all user requirements without adding unnecessary features?
67
+
3. **Minimal scope** - Which plan touches the fewest files and has the least complexity?
68
+
4. **Clarity** - Which plan is easiest to understand and follow?
69
+
5. **Maintainability** - Which approach will be easiest to maintain and extend?
70
+
6. **Best practices** - Which plan best follows existing codebase patterns?
71
+
7. **User intent** - Which plan best addresses the user's intent and would surprise them the least?
62
72
63
-
1. **Simplicity** - How clean and easy to understand is the implementation? Is the code overcomplicated or over-engineered?
64
-
2. **Correctness** - Does the implementation correctly address the requirements?
65
-
3. **Quality** - How well does it work? How clear is the implementation?
66
-
4. **Efficiency** - How minimal and focused are the changes? Were more files changed than necessary? Is the code verbose?
67
-
5. **Maintainability** - How well will this approach work long-term?
68
-
6. **Does what the user expects** - Make sure the implementation addresses all the requirements in the user's request, and does not do other stuff that the user did not ask for.
73
+
Key principles:
74
+
- Satisfying the user expectations is important
75
+
- Simpler is better - we want the most straightforward solution that works
76
+
- Fewer file changes is better
77
+
- Reusing existing code is better than writing new code
78
+
- Matching existing patterns and conventions is important
69
79
70
-
More on **Simplicity**:
71
-
- We don't want an over-engineered solution.
72
-
- We're not interested in endless safety and correctness checks.
73
-
- Modifying fewer files is better.
74
-
- Reusing existing code is better than writing new code.
75
-
- It's good to match existing patterns and conventions in the codebase, including naming conventions, code style, and architecture.
76
-
77
-
For each implementation, evaluate:
78
-
- Strengths and weaknesses
79
-
- Implementation complexity
80
-
- Alignment with the original task
81
-
82
-
Use the set_output tool to return your selection.`,
80
+
For each plan, briefly evaluate strengths and weaknesses. Then use set_output to return your selection with:
81
+
- reasoning: Your analysis and why you chose the winner
0 commit comments