Skip to content

Configuration

Rishap Gandhi edited this page Jun 3, 2026 · 2 revisions

Configuration

Config Files

File Purpose
~/.config/taskmind/config.yaml App settings (intervals, thresholds, dashboard port)
~/.config/taskmind/projects.yaml Project classification rules

Main Config (config.yaml)

general:
  tracking_interval_seconds: 10    # How often to sample active window
  idle_threshold_minutes: 5        # No input for this long = idle
  recap_time: "17:30"              # Daily recap notification time

timesheet:
  minimum_block_minutes: 5         # Ignore blocks shorter than this
  round_to_minutes: 15             # Round entries to nearest N minutes

tracking:
  blacklisted_apps: []             # Never track these (e.g. ["1password"])
  blacklisted_titles: []           # Ignore windows matching these

dashboard:
  host: "127.0.0.1"
  port: 7890

Project Rules (projects.yaml)

Projects are classified using matchers checked in order. First match wins.

Matcher Types

Type Matches Against
window_title Active window title text
app_name Application name (WM_CLASS instance)
git_branch Branch name visible in window title
directory Directory path in window title

Example

projects:
  - name: "Auth Module"
    matchers:
      - type: window_title
        contains: ["auth-module", "AUTH-"]
      - type: app_name
        equals: ["code"]
        window_title_contains: ["auth"]

  - name: "Meetings"
    matchers:
      - type: app_name
        equals: ["zoom", "teams"]

  - name: "Code Review"
    matchers:
      - type: window_title
        contains: ["Pull Request", "Merge Request"]

Tips

  • Put more specific rules first (they take priority)
  • Use window_title_contains with app_name for narrow matches
  • Check taskmind status to see how time is being classified

Easy Setup (No YAML Needed)

You don't need to edit YAML files manually. Use the CLI:

taskmind setup           # First-time wizard with presets
taskmind add-project     # Add one project interactively
taskmind remove-project  # Remove a project

The wizard offers common presets (Meetings, Communication, Email, Social Media, Code Review) and then lets you add custom projects by entering keywords that appear in your window titles.

Clone this wiki locally