InTouch Hub · Blue Isle Software

timesheet-collector

Collect employee work hours via any messaging channel. Extract hours per day, project/task notes, and overtime. Validate totals, flag anomalies, and generate weekly summaries for managers.

Timesheet Collector Skill

Collect employee work hours via any messaging channel. Employees send hours in natural language — "Mon-Thu 8hrs, Fri 6hrs" or "40 hours, took Friday afternoon off" — and the AI extracts, validates, and confirms. Managers get weekly summaries.

The Problem

Every Friday, someone chases 15 people for their hours. Employees forget, submit late, or send inconsistent formats. Someone manually types everything into a spreadsheet. It takes hours and everyone hates it.

How It Solves It

  1. InTouch sends a scheduled reminder Friday at 3pm: "Submit your hours for this week"
  2. Employee replies on WhatsApp/Slack/email in whatever format is natural
  3. AI extracts hours per day, project notes, and validates the total
  4. Employee gets instant confirmation with structured summary
  5. Manager gets a team summary Monday morning — who submitted, who didn't, any flags

Setup

1. Enable Inbound Messaging

Enable at least one channel your team uses. Common choices:

2. Create Contact Profiles

For each employee:

Also create a contact or group for the manager who receives summaries.

3. Configure AI Assistant

4. Create the Friday Reminder Job

Create a YAML job or use the UI to build a job with:

Example YAML job:

name: timesheet-reminder
description: Weekly reminder to submit hours

tasks:
  - name: remind
    tool: message
    properties:
      subject: "Timesheet Reminder"
      body: "Please submit your hours for this week. Reply with your hours — e.g., Mon-Thu 8hrs, Fri 6hrs. Prefix with @timesheet-collector"
      subscriberGroupName: "all-employees"

5. Install the Skill

Pre-installed at INTOUCH_HOME/skills/timesheet-collector/SKILL.md. If missing:

Usage

Employee Submits Hours

From any channel:

@timesheet-collector Mon-Thu 8hrs, Fri 6hrs, worked on the website redesign

Or more casually:

@timesheet-collector 40 hours this week. Spent Monday and Tuesday on client site, rest in office.

Or minimal:

@timesheet-collector 8/8/8/8/6

All formats work. The AI normalizes and confirms.

Employee Checks Status

@timesheet-collector status

Employee Corrects Hours

@timesheet-collector correct Wednesday to 9 hours, had the client meeting

Manager Requests Summary

@timesheet-collector team summary

Validation Rules

Rule Trigger Action
Missing days Weekday without hours Asks about missing days
Low week Under 35 hours Flagged
High week Over 50 hours Flagged — overtime reason required
Long day Over 12 hours Flagged — verification requested
Weekend Saturday/Sunday reported Noted
Zero day 0 hours on a weekday Asks: PTO, sick, or holiday?

Customization

Edit SKILL.md to change:

Cost

Pairing with a Database

For persistent tracking across weeks, pair this skill with a YAML job that:

  1. Runs the timesheet-collector skill
  2. Parses the structured output
  3. Inserts into a database table via the sql tool

This gives you historical reporting, export to payroll, and year-end summaries.

Limitations