← Back to Skills Marketplace
995
Downloads
2
Stars
2
Active Installs
21
Versions
Install in OpenClaw
/install water-coach
Description
Hydration tracking and coaching skill. Use when user wants to track water intake, get reminders to drink water, log body metrics (weight, body fat, muscle %,...
Usage Guidance
What to consider before installing:
- Privacy: The skill reads session transcript files to auto-fill a message_id for each log and can read message content for audits when you enable audit_auto_capture; leave audit_auto_capture disabled if you do not want the skill to read transcripts.
- Data storage: Your water logs and config are stored in the agent workspace (memory/data/water_log.csv, water_config.json, body_metrics.csv). Back up or inspect those files if you want control over retention.
- No external network or credentials are requested by the skill (no API keys, no installers), but review the get_message_context/get_current_message_id code if you want to confirm exactly which session files are accessed.
- If you have strict privacy requirements, consider running the skill in a separate workspace or disabling the audit/context features; otherwise the behavior is consistent with the stated purpose.
Capability Analysis
Type: OpenClaw Skill
Name: water-coach
Version: 1.7.0
The 'water-coach' skill itself appears benign, implementing hydration tracking and an opt-in conversation audit feature with documented privacy considerations. However, the presence of the 'mcporter' skill bundle within the analyzed files elevates the classification to suspicious. The 'mcporter' skill's design explicitly allows for arbitrary command execution via its `--stdio` argument (e.g., `mcporter call --stdio "bun run ./server.ts"`) and arbitrary HTTP requests to external URLs (e.g., `mcporter call https://api.example.com/mcp.fetch`). These capabilities, while potentially legitimate for the tool's intended use, present significant prompt-injection vulnerabilities, enabling potential Remote Code Execution (RCE) and data exfiltration if an AI agent is prompted to misuse them. This is a high-risk capability without clear evidence of intentional self-exploitation, thus classifying it as suspicious.
Capability Assessment
Purpose & Capability
Name/description (hydration tracking, reminders, body metrics) match the included code and CLI. The code implements logging, analytics, scheduling, and body-metrics features described in SKILL.md. Reading session transcripts to capture a message_id and providing an audit trail is coherent with the stated 'proof / audit' capability.
Instruction Scope
SKILL.md instructs the agent to run the included CLI and to store data in the agent workspace. The instructions and code also read the agent session transcript files to auto-fill message_id and — when configured — to return message context for audits. That transcript access is documented in the SKILL.md (audit auto-capture default: false), but it is privacy-sensitive and worth noting: message_id is auto-captured on log operations by scanning session jsonl files, and full message context is only read when audit_auto_capture is enabled or when water audit is run with permission.
Install Mechanism
Instruction-only plus Python scripts: there is no install spec, no external downloads, and no package manager installs. The skill writes files to the agent workspace when run, which is expected for a local CLI-based tracker.
Credentials
The skill does not request environment variables, binaries, or credentials. It uses the PWD env var (falling back to a default workspace path) to locate the agent workspace and session files — this is functional but relies on environment/path assumptions. The main privacy-sensitive access is reading session transcript files (workspace/.openclaw/agents/main/sessions) to obtain message IDs and optional message context; while relevant to the audit feature, users should be aware this grants the skill access to conversation transcripts.
Persistence & Privilege
The skill stores data under the agent workspace (memory/data/*.csv and water_config.json). always is false and the skill does not request system-wide or other-skill configuration modifications. Creating/reading its own files in the agent workspace is expected behaviour for this kind of skill.
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install water-coach - After installation, invoke the skill by name or use
/water-coach - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.7.0
water-coach 1.7.0
- Fixed: The `water dynamic` command now correctly resets the hourly notification counter when the hour changes, preventing missed notifications at hour boundaries.
- Fixed: Weekly and monthly analytics now sum water intake per day using the correct CSV column (`ml_drank`), resolving errors from missing `cumulative_ml`.
- Documentation updated to clarify bug fixes and reference correct analytics usage.
- No database, config, or CLI changes to user experience expected outside these bug fixes.
v1.6.3
Added clear documentation: user data is stored in agent workspace /memory/data, not in skill folder.
v1.6.2
Fixed log_water to auto-populate message_id. Improved get_current_message_id to search recursively through recent sessions.
v1.6.1
Removed hardcoded 9am schedule - user configures their own. Removed no_log skip logic - notifications always send. Updated first-time setup to ask user about notification preferences.
v1.5.9
Updated morning notification to send even if no water logged yet - the notification stimulates user to drink
v1.0.2
Updated morning notification to send even if no water logged yet - the notification stimulates user to drink
v1.0.1
Added 9am morning notification rule - send even if no water logged yet
v1.5.8
Water Coach 1.5.8
- Clarified and simplified first-time setup instructions; made weight/goal the only initial questions.
- Updated instructions for other agents: reinforced that only water intake and weight/goal should be asked on setup.
- Added sample data files: water_config.json and water_log.csv for configuration and hydration logs.
- Minor documentation updates and adjustments in tests.
v1.5.7
water-coach 1.5.7
- Minor update to scripts/water.py.
- No user-facing changes or updates to documentation.
- All functionality and CLI remain the same.
v1.5.6
water-coach 1.5.6
- Internal update to scripts/water_coach.py — minor changes only.
- No changes to user-facing features, commands, or documented behavior.
v1.5.5
- Added explicit water setup status check via water setup command for better detection of first-time vs. returning users.
- Updated SKILL.md instructions: agents should use water setup to determine user config presence instead of water config.
- Clarified setup logic and behavior for initial user interaction in the documentation.
- No changes to CLI, data format, or daily commands—documentation improvements only.
v1.5.4
water-coach 1.5.4
- Added guidance for agent developers: clarify detection of first-time vs returning users.
- Now instructs agents to ask only for weight on first use and auto-create config with sensible defaults.
- Agents should no longer ask about reminder schedules or preferences unless users request.
- No changes to CLI or user-facing commands.
v1.5.3
water-coach 1.5.3
- Updated core hydration tracking logic in scripts/water.py.
- No user-facing command or documentation changes.
v1.5.2
- Removed the version field from skill metadata in SKILL.md.
- No changes to logic, features, or commands—documentation only.
v0.4.1
- Clarified the audit trail feature: audit now only reads conversation transcripts when you explicitly run water audit <message_id>.
- Updated privacy notice to specify that audit_auto_capture is off by default and audit logging always saves the message_id.
- Described the exact effect of the audit_auto_capture setting on what information is displayed during audits.
- Simplified user guidance on why to enable or disable audit context capture.
v1.5.1
Security: Audit auto-capture now opt-in (default false). Privacy warning added to SKILL.md.
v1.6.0
# Changelog - Water Coach
All notable changes to this skill will be documented in this file.
---
## [1.5.0] - 2026-02-18
### 🚀 Major Features
#### New CLI Architecture (Option C)
- Unified CLI: `water_coach.py <namespace> <command>`
- Namespaces: `water`, `body`, `analytics`
- Better agent clarity on available commands
#### Audit Trail System
- **Two timestamps**: `logged_at` (when user told you) + `drank_at` (when user actually drank)
- **Message ID**: Auto-captures conversation message ID for proof
- **Audit function**: `water audit <message_id>` - retrieves entry + conversation context
- **Cumulative calculated at query time** - not stored (prevents data corruption on edits)
#### Dynamic Scheduling (Coach Mode)
- Per-hour limits instead of per-day (max 2/hour)
- Aggressiveness curve: easier to trigger near cutoff time
- Can re-trigger multiple times per day
### ✨ Improvements
#### Flexible Paths
- No hardcoded paths (e.g., `/home/oriel/`)
- Uses environment variables and relative paths
- Works on any machine with OpenClaw
#### Body Metrics Integration
- `water set_body_weight` logs to both config AND body_metrics.csv
- Auto-calculates BMI
#### User Choice for Goals
- weight × 35 = default suggestion only
- Agent MUST confirm goal with user at setup
- Agent asks to update goal when weight changes
### 📋 Commands Added
```bash
# Water
water status # Current progress (calculated)
water log <ml> # Log intake
water log <ml> --drank-at=<ISO> # Log with past time
water dynamic # Check if extra notification needed
water threshold # Get expected % for current hour
water set_body_weight <kg> # Update weight + logs to body_metrics
water audit <message_id> # Get entry + conversation context
# Body
body log --weight=80 --height=1.75
body latest
body history 30
# Analytics
analytics week
analytics month
```
### 🔧 Technical Changes
- 21 unit tests (was ~13)
- CSV format: `logged_at,drank_at,date,slot,ml_drank,goal_at_time,message_id`
- Auto-captures message_id from session transcript
- `.gitignore` in data folder to protect user data
---
## [1.2.0] - 2026-02-16
### Initial Release
- Basic water tracking
- Daily cron reminders
- Unit conversion (L, ml, oz, glasses)
- Body metrics logging
- Dynamic scheduling (basic)
v1.5.0
# Changelog - Water Coach
All notable changes to this skill will be documented in this file.
---
## [1.5.0] - 2026-02-18
### 🚀 Major Features
#### New CLI Architecture (Option C)
- Unified CLI: `water_coach.py <namespace> <command>`
- Namespaces: `water`, `body`, `analytics`
- Better agent clarity on available commands
#### Audit Trail System
- **Two timestamps**: `logged_at` (when user told you) + `drank_at` (when user actually drank)
- **Message ID**: Auto-captures conversation message ID for proof
- **Audit function**: `water audit <message_id>` - retrieves entry + conversation context
- **Cumulative calculated at query time** - not stored (prevents data corruption on edits)
#### Dynamic Scheduling (Coach Mode)
- Per-hour limits instead of per-day (max 2/hour)
- Aggressiveness curve: easier to trigger near cutoff time
- Can re-trigger multiple times per day
### ✨ Improvements
#### Flexible Paths
- No hardcoded paths (e.g., `/home/oriel/`)
- Uses environment variables and relative paths
- Works on any machine with OpenClaw
#### Body Metrics Integration
- `water set_body_weight` logs to both config AND body_metrics.csv
- Auto-calculates BMI
#### User Choice for Goals
- weight × 35 = default suggestion only
- Agent MUST confirm goal with user at setup
- Agent asks to update goal when weight changes
### 📋 Commands Added
```bash
# Water
water status # Current progress (calculated)
water log <ml> # Log intake
water log <ml> --drank-at=<ISO> # Log with past time
water dynamic # Check if extra notification needed
water threshold # Get expected % for current hour
water set_body_weight <kg> # Update weight + logs to body_metrics
water audit <message_id> # Get entry + conversation context
# Body
body log --weight=80 --height=1.75
body latest
body history 30
# Analytics
analytics week
analytics month
```
### 🔧 Technical Changes
- 21 unit tests (was ~13)
- CSV format: `logged_at,drank_at,date,slot,ml_drank,goal_at_time,message_id`
- Auto-captures message_id from session transcript
- `.gitignore` in data folder to protect user data
---
## [1.2.0] - 2026-02-16
### Initial Release
- Basic water tracking
- Daily cron reminders
- Unit conversion (L, ml, oz, glasses)
- Body metrics logging
- Dynamic scheduling (basic)
v1.2.0
Added: Quick Start (minimal questions), Skip Days, Adjust Goal, Snooze - all with natural language intent detection
v1.1.0
Added auto-detect for metric/imperial units from user input
Metadata
Frequently Asked Questions
What is Water Coach?
Hydration tracking and coaching skill. Use when user wants to track water intake, get reminders to drink water, log body metrics (weight, body fat, muscle %,... It is an AI Agent Skill for Claude Code / OpenClaw, with 995 downloads so far.
How do I install Water Coach?
Run "/install water-coach" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Water Coach free?
Yes, Water Coach is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Water Coach support?
Water Coach is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Water Coach?
It is built and maintained by oristides (@oristides); the current version is v1.7.0.
More Skills