Skip to content

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.

Terminal window
kasl report [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
Terminal window
# Generate and display today's report
kasl report
# Generate report for yesterday
kasl report --last
# Generate and send today's report
kasl report --send
Terminal window
# Submit monthly summary report
kasl report --month
# Generate yesterday's report and send it
kasl report --last --send
Terminal window
# Review today's work without sending
kasl report
# Check yesterday's productivity
kasl report --last

The daily report includes:

  1. Work Session Summary

    • Start and end times
    • Total work duration
    • Productivity percentage
    • Break periods
  2. Task Completion

    • List of completed tasks
    • Task completion percentages
    • Task descriptions and comments
  3. Productivity Metrics

    • Net working time vs. gross time
    • Break analysis
    • Efficiency calculations
  4. Time Intervals

    • Detailed work periods (short intervals automatically filtered out)
    • Break periods
    • Activity patterns
    • Information about filtered short intervals

Monthly reports include:

  1. Aggregate Statistics

    • Total work hours for the month
    • Average daily hours
    • Overall productivity percentage
  2. Daily Breakdown

    • Each workday with hours and productivity
    • Rest days with default hours
    • Missing days identification
  3. Trend Analysis

    • Productivity trends
    • Work pattern analysis
    • Performance insights

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.

  1. Automatic Detection: Work intervals are analyzed based on the min_work_interval configuration setting
  2. Display Filtering: Short intervals are filtered at display time - no database modifications are made
  3. Consistent Application: Same filtering logic applies to both local display (kasl report) and API submission (kasl report --send)
  4. User Notification: When short intervals are filtered, users receive information about how many were filtered and their total duration

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.

  • 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
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)
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% |
+------------+----------+-------------+
Terminal window
# Review today's work at end of day
kasl report
# Submit report to organization
kasl report --send
Terminal window
# Review yesterday's work before planning today
kasl report --last
Terminal window
# Generate monthly summary for management
kasl report --month

The report command works with other kasl commands:

  • watch: Uses data collected by activity monitoring
  • task: Includes task completion data in reports
  • pauses: Manual pauses are reflected in report intervals
  • pauses: Integrates pause data for comprehensive reporting
  1. Review at end of day: Generate report to review productivity
  2. Submit promptly: Send reports to maintain compliance
  3. Monitor filtering: Check filtered interval notifications for data quality
  4. Monitor trends: Track productivity patterns over time
  1. Verify data accuracy: Check reports for unusual patterns
  2. Review filtering: Note filtered short intervals for context
  3. Document absences: Record any absence the monitor missed
  4. Review completeness: Ensure all work is properly recorded
  1. Configure API settings: Set up proper integration with reporting systems
  2. Test submissions: Verify report delivery before relying on automation
  3. Monitor compliance: Ensure reports meet organizational requirements
  4. Backup locally: Keep local copies of submitted reports
  • watch - Monitor activity for report data
  • task - Manage tasks included in reports
  • pauses - Record absences reflected in reports
  • pauses - View breaks included in reports
  • sum - Generate monthly summaries