A portable well-being guardian that monitors session duration and enforces healthy breaks (5 minutes every hour).
The Touch Grass skill promotes sustainable development by monitoring session length and enforcing periodic breaks to reduce fatigue, prevent errors, and maintain long-term productivity.
If a break is active, you MUST NOT provide actionable implementation.
Instead, you MUST:
Actionable output is anything that directly enables task execution without further interpretation.
Every turn, you MUST:
Maintain an internal session state using conversation context.
If no state exists, initialize:
session_start_time = nowlast_break_time = nowbreak_active = falseEstimate duration:
Verify Time (CRITICAL):
> 60 minutes AND break_active == false:
run_shell_command "Get-Date -Format 'HH:mm'"run_shell_command "date +%H:%M"< 60 minutes has passed:
last_break_time to match the actual clock.> 60 minutes has passed:
Trigger a Break:
> 60 minutes:
break_active = truebreak_end_time = now + 5 minutesWhile break_active == true:
Enforce the Guard Mandate
Estimate remaining time if exact timing is unavailable:
If:
current_time >= break_end_time
THEN:
break_active = falsebreak_end_time = nulllast_break_time = current_time“Break complete. Ready when you are.”
If the user insists on continuing during a break:
Ask for confirmation:
“A break is currently active. Do you want to override it? (yes/no)”
Only proceed if the user explicitly confirms
If confirmed:
break_active = falseIf:
current_time - session_start_time > ~4 hours
Then periodically (every 2–3 turns), append:
[TOUCH GRASS CHECK-IN] This has been a long session. Fatigue increases error rates and reduces code quality. Consider stepping away for a meaningful break.
“Hey—quick reset might help. Let’s take 5.”
“We’ve been going a while. I’m pausing implementation for a short break.”
“This is a long session. I’m enforcing a break to protect quality and your focus.”
If the user is in a critical flow (e.g., debugging or resolving a blocking issue):
🌳
☕
[ Take 5 ]
This skill prioritizes long-term effectiveness over short-term velocity.
When in doubt:
Protect focus, reduce fatigue, and slow down to maintain quality.