Identify Burnout Risk
If the CSV path was not already provided, ask the user for it.
Common sources: time tracking tools (Harvest, Toggl, Clockify), HRIS exports, project tools.
Establish for the subtask:
- Output path:
Manager Analytics Session Data
- Column types to detect: employee name/ID, date, hours, project/category (optional)
Validate the data before analysis. Check for:
- Missing values: Scan for rows with empty employee names or hours. Report how many rows are affected.
- Invalid hours: Hours must be positive numbers. Flag any non-numeric, negative, or zero values.
- Impossible values: Hours > 168/week are impossible (24x7). Hours > 100/week are suspicious—note them.
- Sample size: Count unique employees and weeks of data.
If issues found, report them clearly:
- "⚠️ X rows skipped due to missing [column]"
- "⚠️ Suspicious value: [Name] shows [X] hours in [week] - please verify"
If < 4 weeks of data or < 3 people, note limited confidence per the Data Confidence section.
If data is too incomplete to analyze (>50% invalid), stop and ask user to provide cleaner data.
Proceed with valid rows only.
Analyze the hours data for burnout risk signals:
For each person, calculate:
- Average weekly hours over the period
- Trend (increasing, stable, decreasing)
- Peak hours (highest week)
- Weekend hours (if date/day info available)
- Consecutive high-hour weeks
Flag individuals based on:
- 🔴 High risk: 50+ hrs for 2+ consecutive weeks, OR 45+ with increasing trend
- 🟡 Moderate risk: 45+ hrs for 2+ weeks, OR any 50+ hr week
- 🟢 Healthy: Consistently under 45 hrs
Team-level analysis:
- Average hours across team
- Distribution (is everyone overworked or just some?)
- Trend (is it getting better or worse?)
Present results following the Burnout Risk Assessment template from the guide.
Include specific names and numbers—this is for the manager's use, not public sharing.
Provide actionable recommendations:
For high-risk individuals:
- Suggest specific 1:1 conversation starters
- Recommend workload review
- Consider PTO encouragement
For team-wide patterns:
- Staffing conversations to have
- Process improvements to consider
- Prioritization discussions needed
Remind: This is directional data. Have conversations to understand context before taking action.
To run this task you must have the following required information:
> CSV with hours data including employee names/IDs, dates, and hours worked
If you don't have all of this information, exit here and respond asking for any extra information you require, and instructions to run this task again with ALL required information.
---
You MUST use a todo list to complete these steps in order. Never move on to one step if you haven't completed the previous step. If you have multiple read steps in a row, read them all at once (in parallel).
Add all steps to your todo list now and begin executing.
## Steps
1. If the CSV path was not already provided, ask the user for it.
Common sources: time tracking tools (Harvest, Toggl, Clockify), HRIS exports, project tools.
Establish for the subtask:
- Output path: `./documents/tmp/manager-analysis-data.json`
- Column types to detect: employee name/ID, date, hours, project/category (optional)
2. [Gather Requirements for Parse and Interpret CSV] The next step has the following requirements: "CSV file path to parse. Column type hints (e.g., "scores, customers, dates, categories"). Output file path for the interpreted data.". Search the user's data for this information or ask them directly if needed. Do not proceed until you have this information.
3. [Execute Parse and Interpret CSV Task]: Spawn a subagent and provide it with the requirements gathered above and instructions to read `./skills/sauna/[skill_id]/references/recipes/stdlib.csv.interpret.md` for its task list
4. [Read Manager Analytics Session Data]: Read the file at `./documents/tmp/manager-analysis-data.json` and analyze its contents (Load the parsed and interpreted CSV data)
5. [Read Manager Diagnostics Guide]: Read the documentation in: `./skills/sauna/[skill_id]/references/manager.diagnostics.guide.md` (Reference burnout risk thresholds, validation rules, and output format)
6. **Validate the data before analysis.** Check for:
1. **Missing values:** Scan for rows with empty employee names or hours. Report how many rows are affected.
2. **Invalid hours:** Hours must be positive numbers. Flag any non-numeric, negative, or zero values.
3. **Impossible values:** Hours > 168/week are impossible (24x7). Hours > 100/week are suspicious—note them.
4. **Sample size:** Count unique employees and weeks of data.
If issues found, report them clearly:
- "⚠️ X rows skipped due to missing [column]"
- "⚠️ Suspicious value: [Name] shows [X] hours in [week] - please verify"
If < 4 weeks of data or < 3 people, note limited confidence per the Data Confidence section.
If data is too incomplete to analyze (>50% invalid), stop and ask user to provide cleaner data.
Proceed with valid rows only.
7. Analyze the hours data for burnout risk signals:
**For each person, calculate:**
1. Average weekly hours over the period
2. Trend (increasing, stable, decreasing)
3. Peak hours (highest week)
4. Weekend hours (if date/day info available)
5. Consecutive high-hour weeks
**Flag individuals based on:**
- 🔴 High risk: 50+ hrs for 2+ consecutive weeks, OR 45+ with increasing trend
- 🟡 Moderate risk: 45+ hrs for 2+ weeks, OR any 50+ hr week
- 🟢 Healthy: Consistently under 45 hrs
**Team-level analysis:**
- Average hours across team
- Distribution (is everyone overworked or just some?)
- Trend (is it getting better or worse?)
Present results following the Burnout Risk Assessment template from the guide.
Include specific names and numbers—this is for the manager's use, not public sharing.
8. Provide actionable recommendations:
**For high-risk individuals:**
- Suggest specific 1:1 conversation starters
- Recommend workload review
- Consider PTO encouragement
**For team-wide patterns:**
- Staffing conversations to have
- Process improvements to consider
- Prioritization discussions needed
Remind: This is directional data. Have conversations to understand context before taking action.