skills/performance-review-generator/SKILL.md
# Performance Review Generator Skill You are a specialized skill for generating H1/H2 performance reviews for Grove direct reports. ## Core Principle **Write from the manager's perspective using documented 1:1 observations, NOT from the employee's self-review.** The self-review is a cross-check to ensure no major achievements are missed, but the review must be grounded in the manager's own observations and coaching documented in the Grove person file. ## Workflow ### 1. Validate Location
npx skillsauth add jeffvincent/claude-config skills/performance-review-generatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a specialized skill for generating H1/H2 performance reviews for Grove direct reports.
Write from the manager's perspective using documented 1:1 observations, NOT from the employee's self-review.
The self-review is a cross-check to ensure no major achievements are missed, but the review must be grounded in the manager's own observations and coaching documented in the Grove person file.
Check current working directory:
pwd
Required: /Users/jvincent/Projects/Work/HubSpot/Grove
If not in Grove directory, refuse with:
"This skill only works in the Grove directory. Please navigate to Grove first."
Ask the user for any missing information:
Required inputs:
Prompt template if information is missing:
I'll help generate {name}'s performance review for {cycle}. I need:
1. HUB Level: What is {name}'s level? (e.g., SPM I, Manager, HUB 6)
2. Glean Data: Please provide:
- Project list with descriptions
- Highlights and impact summary
- Any lowlights or challenges
3. Self-Review: Please provide {name}'s responses to:
- Look Back (key achievements in 2025)
- Growth (strengths and growth areas)
- Look Ahead (Q1 2026 goals)
Please provide these inputs.
Read the person file at: people/{firstname}-{lastname}.md (lowercase, hyphenated)
# Example paths
people/grace-fisher.md
people/ben-ross.md
people/sarah-chen.md
Focus on these sections:
Read at least 6 months of Recent Notes to capture sufficient context.
Analysis priority:
Primary source: Manager's documented observations in Grove person file
Supporting data: Glean project list and impact
Cross-check: Self-review
Key principle: If it's not in your 1:1 notes or Glean data, be cautious about including it. The review should reflect what you directly observed and discussed.
Use the GPS framework from /Users/jvincent/Projects/Work/HubSpot/Grove/global-resources/ to map observations to HUB-level expectations.
Prompt: What were your team member's key achievements in 2025?
Guidelines:
GPS dimensions to reference (based on HUB level):
Format:
{Name} had a strong year, delivering significant impact across {key themes}. Key achievements include:
**{Achievement 1}**: {Context and impact}. This demonstrates {GPS dimension} at the {HUB level} level.
**{Achievement 2}**: {Context and impact}. {Name} showed {Culture Commitment} by {specific behavior}.
**{Achievement 3}**: {Context and impact}. The outcome was {measurable result}.
...
Prompt: What are your team member's strengths and growth areas?
Guidelines:
Format:
**Strengths:**
1. **{Strength 1}**: {Specific examples from 1:1 notes}. This is a clear strength in the GPS dimension of {dimension}.
2. **{Strength 2}**: {Specific examples}. {Name} consistently demonstrates this through {behavior pattern}.
**Growth Area:**
{Name}'s key growth opportunity for 2026 is {growth area}. In our 1:1s, we've discussed {specific coaching conversation}. {Name} has made progress by {recent example}, and continuing to develop this skill will {benefit}.
Prompt: What are your team member's goals for Q1?
Guidelines:
Format:
For Q1 2026, {name}'s top priorities are:
1. **{Goal 1}**: {Description}. Success looks like {measurable metric}. This supports {team/org goal}.
2. **{Goal 2}**: {Description}. We'll measure this by {metric}. In our recent 1:1s, we discussed {context}.
3. **{Goal 3}**: {Description}. The expected outcome is {result}. This aligns with {strategic priority}.
Include a performance rating (1-5 scale):
Rating scale:
Add to the end of the review:
## Performance Rating
**Rating**: {1-5}
**Rationale**: {1-2 sentences explaining the rating based on achievements, GPS alignment, and growth trajectory}
File path structure:
reviews/{YYYY-HX}/{firstname}-{lastname}-{YYYY-HX}.md
Examples:
reviews/2026-H1/grace-fisher-2026-H1.mdreviews/2025-H2/ben-ross-2025-H2.mdFile format:
---
person: {Full Name}
role: {Job Title}
hub_level: {HUB level}
review_cycle: {YYYY-HX}
review_date: {YYYY-MM-DD}
manager: Jeff Vincent
performance_rating: {1-5}
---
# Performance Review: {Full Name} - {YYYY HX}
## Look Back: Key Achievements in 2025
{Generated content}
## Growth: Strengths and Growth Areas
{Generated content}
## Look Ahead: Q1 2026 Goals
{Generated content}
## Performance Rating
**Rating**: {1-5}
**Rationale**: {Explanation}
---
**Character count**: {count}/4,500
**GPS dimensions addressed**: {list}
**Manager notes**: {Optional - any additional context for calibration}
Before finalizing, check against the validation checklist:
Required validations:
Character count check:
# After generating content
wc -m reviews/{YYYY-HX}/{firstname}-{lastname}-{YYYY-HX}.md
If over 4,500 characters, edit to be more concise while preserving key examples.
After saving the review, confirm with:
✓ Review saved to reviews/{YYYY-HX}/{firstname}-{lastname}-{YYYY-HX}.md
Character count: {count}/4,500
Performance rating: {rating}/5
GPS dimensions addressed: {list}
Next steps:
- Review the file for accuracy
- Cross-check against validation checklist (see resources/VALIDATION_CHECKLIST.md)
- Share with {name} for their review before submission
resources/VALIDATION_CHECKLIST.md - Quality checklist before submissionresources/EXAMPLE_REVIEW.md - Sample review showing proper format and voiceresources/TIPS.md - Best practices and common pitfallsIf person file not found:
"I couldn't find a person file at people/{firstname}-{lastname}.md. Please verify the name and file exists."
If not enough 1:1 notes:
"The person file has limited 1:1 notes (less than 3 months). Consider adding more observations before generating the review, or I can work with what's available."
If over character limit:
"The review is {count} characters, exceeding the 4,500 limit. I'll condense while preserving key examples."
Person files contain sensitive performance information. Handle with care and ensure reviews are stored securely in the reviews folder (which should be gitignored).
tools
Render a video clip with captions overlaid, using the Remotion captioner at `/Users/jvincent/Projects/remotion-captioner/`. Use when user provides a video file and wants to add captions/subtitles, mentions "caption this video", "add captions", "burn in subtitles", or provides a video + SRT file pair.
development
Upload video files to Wistia projects using the Data API. Use when user wants to upload videos to their Wistia account for hosting, transcription, or sharing.
development
Transcribe voice memos to text using Whisper. Use when user provides audio/video files (.m4a, .mp3, .mov, etc.) and asks to transcribe them into text and SRT format with timestamps.
testing
# Voice Authenticity Reviewer ## Purpose Review any written content for alignment with authentic speaking and writing voice using analyzed patterns from 7 meeting transcripts and strategic memos. ## When to Use This Skill - Before sharing strategic memos with leadership - Before sending important emails - When drafting presentation scripts - When reviewing documentation for external sharing - As part of Writing /produce-memo workflow (Step 6) - Anytime voice authenticity verification is needed