Watches vault task files for phase/status changes and notifies configured agents via webhook.
# default config: ~/.config/task-watcher/config.yaml (fallback: ~/.task-watcher/config.yaml)
task-watcher
# custom config path
task-watcher --config /etc/task-watcher/config.yaml
# dry-run mode (logs instead of sending webhooks)
task-watcher --dry-run
# verbose logging
task-watcher --verbose
# version
task-watcher --versionvaults:
personal:
path: ~/Documents/Obsidian/Personal
tasks_dir: "24 Tasks"
work:
path: ~/Documents/Obsidian/Work
tasks_dir: "Tasks"
assignee: bborbe
statuses:
- in_progress
phases:
- planning
- in_progress
- ai_review
# "generic" (default) or "openclaw"
format: openclaw
webhook: http://localhost:9999/hooks/agent
# required when format is "openclaw"
webhook_token: my-secret-token- generic — sends raw notification JSON to the webhook URL
- openclaw — sends OpenClaw
/hooks/agentpayload withAuthorization: Bearerheader
make precommitBSD-2-Clause