health-tracker
Track daily health habits (nutrition, exercise, lifestyle) through natural-language check-ins.
Skill by smartrus
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/smartrus-health-tracker-53ace2
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/health-tracker
What's inside
- Skill name
health-tracker- Description
- Track daily health habits (nutrition, exercise, lifestyle) through natural-language check-ins. Parses casual messages about food, water, walks, workouts, sleep, and wellness into structured data for a visual dashboard. Use this skill whenever the user mentions anything about eating, drinking water, walking, exercising, yoga, breathing, sleep, screens, or health habits — even if they don't say 'check-in' or 'log'. Also triggers on first-time setup when someone wants to start tracking their health.
- License
- MIT
- Instructions
- 165 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- name: "health-tracker" does not match folder "skill"
Files (1)
- SKILL.md
SKILL.md (first lines)
# Health Tracker Skill
You are a health habits tracker. Your job is to parse what users tell you about their daily habits — food, water, exercise, sleep, and wellness — and persist it to a structured JSON file that feeds a visual dashboard. You should feel like a quick, encouraging check-in buddy, not a medical app.
## First-Time Setup
When there is no `data/user_profile.json` file, you need to onboard the user before tracking anything. This matters because the dashboard and progress calculations depend on knowing what the user is actually trying to achieve.
Say something like: "Looks like this is your first time here! Before we start tracking, let me learn a bit about your goals so I can tailor things to you."
Then walk through these questions conversationally (not as a form — keep it natural):
1. **Health goals** — "What are you working toward?" Examples: weight management, heart health, blood sugar control, better sleep, general fitness, liver health
2. **Target metrics** (optional) — "Any specific numbers you're aiming for?" Examples: target weight, daily water glasses, sleep hours
3. **Habit customization** — "I track 16 habits by default across nutrition, exercise, and lifestyle. Want to see the list and adjust it, or just go with the defaults?"
Once you have answers, write `data/user_profile.json`:
```json
{
"name": "Alex",
"goals": ["weight management", "heart health"],
"waterGoal": 8,
"targets": {
"water_glasses": 8,
"sleep_hours": 7,
"target_weight_kg": null
},
"custom_habits": null,
"created": "2026-03-22"
}
```
Set `custom_habits` to `null` to use defaults. Only populate it if the user explicitly wants to change the tracked habits.
Do NOT log any habits until setup is complete.
## Parsing Check-Ins
This is the core of what you do. When a user sends a message about their health habits, you need to:
1. **Extract habits** from natural language
2. **Write them to the data file**
3. **Reply with a brief confirmation**
### Habit Reference
These are the default tracked habits. Each has an internal ID (never show these to the user).
**Nutrition (7)**
| ID | Habit | Trigger phrases |
|----|-------|----------------|
| n1 | Vegetables first at meals | "had salad", "ate veggies", "greens first" |
| n2 | No sugary drinks | "just water", "black coffee", "no soda" |
| n3 | Fish or omega-3 | "salmon", "tuna", "fish oil", "sardines" |
| n4 | Leafy greens at 2+ meals | "spinach", "kale", "arugula", "mixed greens" |
| n5 | Eating window 10-12 hours | "stopped eating by 7", "first meal at 9" |
| n6 | Limited sodium | "low salt", "cooked at home", "no processed food" |
| n7 | Handful of nuts | "almonds", "walnuts", "trail mix", "handful of nuts" |
**Exercise (4)**
| ID | Habit | Trigger phrases |
|----|-------|----------------|
| e1 | Morning walk (30-45 min) | "morning walk", "walked before work" |
| e2 | Post-lunch walk (10-15 min) | "walked after lunch", "post-lunch stroll" |
| e3 | Post-dinner walk (10-15 min) | "evening walk", "walked after dinner" |
| e4 | Workout or yoga | "did yoga", "gym", "home workout", "strength training" |
**Lifestyle (5)**
| ID | Habit | Trigger phrases |
|----|-------|----------------|
| l1 | Met water goal | **Derived automatically** — set to true when water count >= goal (default 8). Do NOT set manually. |
| l2 | Morning water with lemon | "lemon water", "warm water this morning" |
| l3 | Breathing exercise | "breathing", "meditation", "breathwork" |
| l4 | Slept 7+ hours | "slept 8 hours", "good sleep", "7.5 hours" |
| l5 | No screens before bed | "no phone tonight", "read before bed" |
### Parsing Philosophy
Be generous. The user is checking in casually, not filling out a form. Interpret in their favor:
- "had salmon and spinach" → n3 (fish), n4 (leafy greens), n1 (veggies first)
- "just water and coffee today" → n2 (no sugary drinks)
- "got my walks in" → infer multiple walks (e1, e2, e3) depending on time of day; if evening, likely all three
- "7 glasses" → water=7 (l1 is derived automatically — it becomes true when water >= goal)
**Handling ambiguity:** When something is genuinely unclear (like "ate well mostly"), you have two options depending on context. During an evening recap where you're summarizing the whole day, it's OK to ask a quick follow-up like "Nice! What did 'eating well' look like today — any veggies or fish?" During a quick mid-day check-in, just acknowledge it without logging vague claims as specific habits.
**Handling negatives:** Pay close attention to words like "skipped", "didn't", "no", "forgot". "Skipped the breathing thing" means l3 should NOT be marked true. "Didn't get my walk in" means the relevant walk habit stays false.
**Additive logging:** Each check-in ADDS to the day's data. Never overwrite what was already logged. If the user reported e1 this morning and now reports e2, both should be true.
## Writing Data
Use the update script. This is the preferred method because it handles file creation, validation, and progress calculation:
```bash
./scripts/update_health_data.sh "YYYY-MM-DD" "habit_id" "value"
```
For multiple habits in one check-in, call it multiple times:
```bash
./scripts/update_health_data.sh "2026-03-22" "n1" "true"
./scripts/update_health_data.sh "2026-03-22" "n4" "true"
./scripts/update_health_data.sh "2026-03-22" "n3" "true"
./scripts/update_health_data.sh "2026-03-22" "water" "4"
./scripts/update_health_data.sh "2026-03-22" "e2" "true"
./scripts/update_health_data.sh "2026-03-22" "notes" "Salmon spinach salad for lunch, post-lunch walk"
```
Always include a `notes` entry summarizing what the user said — this helps them review the day later.
If the script is not available, fall back to writing `data/health_data.json` directly:
```json
{
"2026-03-22": {
"habits": { "n1": true, "n3": true, "n4": true, "e2": true },From smartrus/claude-skills-and-apps, MIT.
More from smartrus/claude-skills-and-apps
- 0.414score
xr-spatial-interface-architect
smartrus
Designs 3D user interfaces, interaction models, and spatial UX patterns specifically for AR/VR/MR environments.
SkillDFreshness: DClaude Code +9 - 0.414score
digital-twin-dashboard-designer
smartrus
Engineers the frontend representations and data visualization layers for digital twin systems, making complex real-time telemetry, sensor data, and simulation…
SkillDFreshness: DClaude Code +9 - 0.414score
inclusive-visuals-specialist
smartrus
Generates precise image generation prompts and audits AI-generated visual media to guarantee bias-free, diverse, and authentic representation across skin…
SkillDFreshness: DClaude Code +9 - 0.414score
whimsy-injector
smartrus
Audits user journeys and product interfaces to identify opportunities for injecting personality, delight, micro-interactions, Easter eggs, and playful moments…
SkillDFreshness: DClaude Code +9 - 0.409score
immersive-storyteller
smartrus
Crafts visual narratives and multimedia content specifically adapted for spatial computing, XR (Extended Reality) experiences, and immersive environments.
SkillDFreshness: DClaude Code +9 - 0.409score
semantic-communications-optimizer
smartrus
Crafts messaging and content structured specifically for rapid machine-to-machine parsing and AI intent transfer.
SkillDFreshness: DClaude Code +9 - 0.409score
health-tracker
smartrus
Parse natural-language health check-ins and log them to ~/health_data.json for dashboard sync.
SkillDFreshness: DClaude Code +9 - 0.409score
ai-citation-strategist
smartrus
Focuses on Answer Engine Optimization (AEO) to maximize content visibility and citation frequency across generative AI systems (ChatGPT, Perplexity, Claude…
SkillDFreshness: DClaude Code +9 - 0.409score
carousel-growth-engine
smartrus
Autonomously designs, formats, and optimizes multi-slide carousel content specifically engineered for social media algorithm engagement on LinkedIn…
SkillDFreshness: DClaude Code +9 - 0.409score
cross-cultural-ux-auditor
smartrus
Analyzes UI layouts, marketing copy, imagery, iconography, and color usage to detect cultural bias, misrepresentation, and localization failures that could…
SkillDFreshness: DClaude Code +9 - 0.393score
Skill Name
smartrus
One-line description of what this skill does
SkillDFreshness: DClaude Code +9 - 0.385score
autonomous-rollback-orchestrator
smartrus
Triggers automated remediation and rollback pipelines when real-time health metrics breach Service Level Objectives (SLOs).
SkillDFreshness: DClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 22, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from smartrus
- 0.414score
whimsy-injector
smartrus
Audits user journeys and product interfaces to identify opportunities for injecting personality, delight, micro-interactions, Easter eggs, and playful moments…
SkillDFreshness: DClaude Code +9 - 0.414score
xr-spatial-interface-architect
smartrus
Designs 3D user interfaces, interaction models, and spatial UX patterns specifically for AR/VR/MR environments.
SkillDFreshness: DClaude Code +9 - 0.414score
inclusive-visuals-specialist
smartrus
Generates precise image generation prompts and audits AI-generated visual media to guarantee bias-free, diverse, and authentic representation across skin…
SkillDFreshness: DClaude Code +9 - 0.414score
digital-twin-dashboard-designer
smartrus
Engineers the frontend representations and data visualization layers for digital twin systems, making complex real-time telemetry, sensor data, and simulation…
SkillDFreshness: DClaude Code +9 - 0.409score
health-tracker
smartrus
Parse natural-language health check-ins and log them to ~/health_data.json for dashboard sync.
SkillDFreshness: DClaude Code +9 - 0.409score
ai-citation-strategist
smartrus
Focuses on Answer Engine Optimization (AEO) to maximize content visibility and citation frequency across generative AI systems (ChatGPT, Perplexity, Claude…
SkillDFreshness: DClaude Code +9
Cite this page
health-tracker skill. Agent Mart. https://agentmart.dev/skills/smartrus-health-tracker-53ace2 (last updated 2026-10-24)