check_grass_conditions
Retrieve current outdoor context including approximate location, weather conditions, temperature, minutes until sunset, golden-hour flag, and streak state to determine if an outdoor break is appropriate.
Instructions
Read-only. Returns the user's current outdoor context: approximate city/region (IP-based, cached 24h), weather code + temperature, minutes until sunset, golden-hour flag, and current streak state.
Data freshness: location is cached for 24h on disk; weather, temperature, and sunset are fetched live on every call (no caching, ~200–600ms latency depending on region). Streak fields reflect the on-disk state at call time. No permissions required beyond outbound HTTPS and read access to ~/.touch-grass/state.json.
Side effects: makes outbound HTTPS calls to ip-api.com (location, cached to ~/.touch-grass/state.json for 24h) and open-meteo.com (weather + sunset, no key, no rate limit at typical use). Reads ~/.touch-grass/state.json. No writes to streak state. No auth required.
When to use: once per session before deciding whether to nudge the user toward an outdoor break. The Claude Code plugin's SessionStart hook already injects this context, so prefer reading that injected block over calling this tool again.
When NOT to use: don't poll repeatedly within a single conversation — conditions change on the order of minutes, not seconds. If you only need streak data without a network call, use get_stats instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||