report
The report command generates comprehensive daily work reports with detailed information about work sessions, breaks, productivity metrics, and completed tasks. It also supports automatic report submission to external systems and monthly summary generation.
kasl report [OPTIONS]Options
Section titled “Options”-
--send: Submit the generated daily report to configured API- Automatically submits the report to the configured reporting service (typically SiServer)
- Enables integration with organizational time tracking systems
- Useful for compliance and organizational reporting requirements
-
--last,-l: Generate report for the previous day instead of today- Useful for submitting yesterday’s report in the morning
- Reviewing completed work sessions
- Batch processing of historical reports
-
--month: Submit monthly summary report to configured API- Generates and submits an aggregate monthly report
- Contains summary statistics and total work hours
- Typically used for organizational reporting requirements at month-end
Examples
Section titled “Examples”Basic Report Generation
Section titled “Basic Report Generation”# Generate and display today's reportkasl report
# Generate report for yesterdaykasl report --last
# Generate and send today's reportkasl report --sendAdvanced Reporting
Section titled “Advanced Reporting”# Submit monthly summary reportkasl report --month
# Generate yesterday's report and send itkasl report --last --sendReport Analysis
Section titled “Report Analysis”# Review today's work without sendingkasl report
# Check yesterday's productivitykasl report --lastReport Components
Section titled “Report Components”Daily Report Structure
Section titled “Daily Report Structure”The daily report includes:
-
Work Session Summary
- Start and end times
- Total work duration
- Productivity percentage
- Break periods
-
Task Completion
- List of completed tasks
- Task completion percentages
- Task descriptions and comments
-
Productivity Metrics
- Net working time vs. gross time
- Break analysis
- Efficiency calculations
-
Time Intervals
- Detailed work periods (short intervals automatically filtered out)
- Break periods
- Activity patterns
- Information about filtered short intervals
Monthly Report Structure
Section titled “Monthly Report Structure”Monthly reports include:
-
Aggregate Statistics
- Total work hours for the month
- Average daily hours
- Overall productivity percentage
-
Daily Breakdown
- Each workday with hours and productivity
- Rest days with default hours
- Missing days identification
-
Trend Analysis
- Productivity trends
- Work pattern analysis
- Performance insights
Short Interval Filtering
Section titled “Short Interval Filtering”The report command automatically filters out work intervals that are shorter than the configured min_work_interval threshold. This filtering provides cleaner, more meaningful reports by removing brief interruptions that don’t represent significant work periods.
How It Works
Section titled “How It Works”- Automatic Detection: Work intervals are analyzed based on the
min_work_intervalconfiguration setting - Display Filtering: Short intervals are filtered at display time - no database modifications are made
- Consistent Application: Same filtering logic applies to both local display (
kasl report) and API submission (kasl report --send) - User Notification: When short intervals are filtered, users receive information about how many were filtered and their total duration
Configuration
Section titled “Configuration”The filtering threshold is controlled by the min_work_interval setting in your configuration:
{ "monitor": { "min_work_interval": 30 }}This setting defines the minimum duration (in minutes) for intervals to be included in reports.
Benefits
Section titled “Benefits”- Cleaner Reports: Eliminates noise from brief interruptions
- Better Analytics: Focus on meaningful work periods
- Preserved Data: Original data remains intact in the database
- Consistent Behavior: Same filtering for display and API submission
Sample Output
Section titled “Sample Output”Daily Report
Section titled “Daily Report”December 15, 2024
+--------------+-------+-------+----------+| ID | START | END | DURATION |+--------------+-------+-------+----------+| 1 | 09:00 | 12:00 | 03:00 || 2 | 13:00 | 15:30 | 02:30 || 3 | 15:45 | 17:30 | 01:45 || | | | || TOTAL | | | 07:15 || PRODUCTIVITY | | | 92.0% |+--------------+-------+-------+----------+
Tasks
+---+----+----------+------------------+------------------+-------------+------------------+| # | ID | TASK ID | NAME | COMMENT | COMPLETENESS| TAGS |+---+----+----------+------------------+------------------+-------------+------------------+| 1 | 1 | 0 | Daily standup | Team sync | 100% | meeting || 2 | 2 | 0 | Code review | Review PR #123 | 100% | urgent || 3 | 3 | 0 | Bug fix | Fix login issue | 75% | bug, urgent || 4 | 4 | 0 | Documentation | Update API docs | 25% | docs |+---+----+----------+------------------+------------------+-------------+------------------+
Filtered out 2 short intervals (total: 0:15)Monthly Report
Section titled “Monthly Report”December 2024
+------------+----------+-------------+| DATE | DURATION | PRODUCTIVITY|+------------+----------+-------------+| 2024-12-02 | 08:15 | 92.0% || 2024-12-03 | 07:45 | 88.0% || 2024-12-04 | 08:30 | 95.0% || 2024-12-05 | 07:20 | 85.0% || 2024-12-06 | 08:00 | 90.0% || | | || TOTAL | 39:50 | 90.0% |+------------+----------+-------------+Use Cases
Section titled “Use Cases”Daily Work Review
Section titled “Daily Work Review”# Review today's work at end of daykasl report
# Submit report to organizationkasl report --sendWeekly Planning
Section titled “Weekly Planning”# Review yesterday's work before planning todaykasl report --lastMonthly Reporting
Section titled “Monthly Reporting”# Generate monthly summary for managementkasl report --monthIntegration with Other Commands
Section titled “Integration with Other Commands”The report command works with other kasl commands:
watch: Uses data collected by activity monitoringtask: Includes task completion data in reportspauses: Manual pauses are reflected in report intervalspauses: Integrates pause data for comprehensive reporting
Best Practices
Section titled “Best Practices”Daily Workflow
Section titled “Daily Workflow”- Review at end of day: Generate report to review productivity
- Submit promptly: Send reports to maintain compliance
- Monitor filtering: Check filtered interval notifications for data quality
- Monitor trends: Track productivity patterns over time
Report Quality
Section titled “Report Quality”- Verify data accuracy: Check reports for unusual patterns
- Review filtering: Note filtered short intervals for context
- Document absences: Record any absence the monitor missed
- Review completeness: Ensure all work is properly recorded
Organizational Integration
Section titled “Organizational Integration”- Configure API settings: Set up proper integration with reporting systems
- Test submissions: Verify report delivery before relying on automation
- Monitor compliance: Ensure reports meet organizational requirements
- Backup locally: Keep local copies of submitted reports