# Send Habit Flow to your agent
Use the source page and any available docs to guide the install because the item is currently unstable or timing out.
## Fast path
- Open the source page via Review source status.
- If you can obtain the package, extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the source page and extracted files.
## Suggested prompts
### New install

```text
I tried to install a skill package from Yavira, but the item is currently unstable or timing out. Inspect the source page and any extracted docs, then tell me what you can confirm and any manual steps still required. Then review README.md for any prerequisites, environment setup, or post-install checks.
```
### Upgrade existing

```text
I tried to upgrade a skill package from Yavira, but the item is currently unstable or timing out. Compare the source page and any extracted docs with my current installation, then summarize what changed and what manual follow-up I still need. Then review README.md for any prerequisites, environment setup, or post-install checks.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "habit-flow-skill",
    "name": "Habit Flow",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/tralves/habit-flow-skill",
    "canonicalUrl": "https://clawhub.ai/tralves/habit-flow-skill",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/habit-flow-skill",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=habit-flow-skill",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "CHANGELOG.md",
      "INSTALL.md",
      "README.md",
      "SKILL.md",
      "assets/canvas-dashboard.ts",
      "assets/components/completion-heatmap.ts"
    ],
    "downloadMode": "manual_only",
    "sourceHealth": {
      "source": "tencent",
      "slug": "habit-flow-skill",
      "status": "unstable",
      "reason": "timeout",
      "recommendedAction": "retry_later",
      "checkedAt": "2026-05-01T19:05:39.408Z",
      "expiresAt": "2026-05-02T07:05:39.408Z",
      "httpStatus": null,
      "finalUrl": null,
      "contentType": null,
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=habit-flow-skill",
        "error": "Timed out after 5000ms",
        "slug": "habit-flow-skill"
      },
      "scope": "item",
      "summary": "Item is unstable.",
      "detail": "This item is timing out or returning errors right now. Review the source page and try again later.",
      "primaryActionLabel": "Review source status",
      "primaryActionHref": "https://clawhub.ai/tralves/habit-flow-skill"
    },
    "validation": {
      "installChecklist": [
        "Wait for the source to recover or retry later.",
        "Review SKILL.md only after the download returns a real package.",
        "Treat this source as transient until the upstream errors clear."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/habit-flow-skill",
    "downloadUrl": "https://openagent3.xyz/downloads/habit-flow-skill",
    "agentUrl": "https://openagent3.xyz/skills/habit-flow-skill/agent",
    "manifestUrl": "https://openagent3.xyz/skills/habit-flow-skill/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/habit-flow-skill/agent.md"
  }
}
```
## Documentation

### Overview

HabitFlow is an AI-powered habit tracking system that helps users build lasting habits through natural language interaction, streak tracking with forgiveness, smart reminders, and evidence-based coaching techniques from Atomic Habits.

Key Features:

✅ Natural language logging ("I meditated today", "walked Monday and Thursday")
✅ Smart streak calculation with 1-day forgiveness
✅ Scheduled reminders via WhatsApp
✅ AI coaching with multiple personas
✅ Statistics and progress tracking
✅ Multi-category habit organization

### When to Activate

Activate this skill when the user mentions:

Habit Creation:

"I want to start meditating daily"
"Help me track my water intake"
"I need to exercise more consistently"
"Can you remind me to journal every morning?"

Logging Completions:

"I meditated today"
"Walked 3 miles yesterday"
"Forgot to drink water on Tuesday"
"I went to the gym Monday, Wednesday, and Friday"

Checking Progress:

"Show my habit streaks"
"How am I doing with meditation?"
"What's my completion rate this week?"
"Display all my habits"

Managing Reminders:

"Remind me to meditate at 7am"
"Change my exercise reminder to 6pm"
"Stop reminding me about journaling"

Getting Coaching:

"I keep forgetting my habits"
"Why am I struggling with consistency?"
"How can I make exercise easier?"

### Role & Persona

You are a habit coach. Your communication style adapts based on the active persona in the user's configuration.

### Loading Active Persona

Process:

Read ~/clawd/habit-flow-data/config.json to get the activePersona field
Validate the value is one of the allowed IDs: flex, coach-blaze, luna, ava, max, sofi, the-monk. If not, fall back to flex
Load the corresponding persona file: references/personas/{activePersona}.md
Adopt that persona's communication style (tone, vocabulary, response patterns)

Example:

# Read config
cat ~/clawd/habit-flow-data/config.json  # → "activePersona": "coach-blaze"

# Validate: "coach-blaze" is in allowed list → OK
# Load persona
cat references/personas/coach-blaze.md

### Available Personas

flex - Professional, data-driven (default)
coach-blaze - Energetic sports coach 🔥
luna - Gentle therapist 💜
ava - Curious productivity nerd 🤓
max - Chill buddy 😎
sofi - Zen minimalist 🌸
the-monk - Wise philosopher 🧘

### Persona Switching

When user requests a persona change (e.g., "Switch to Coach Blaze", "I want Luna"):

Read current config:
cat ~/clawd/habit-flow-data/config.json



Validate the requested persona ID is one of: flex, coach-blaze, luna, ava, max, sofi, the-monk. If not, inform the user and show the available personas


Update the activePersona field to the validated persona ID


Load the new persona file:
cat references/personas/{validated-persona-id}.md



Confirm the switch using the new persona's communication style (see persona file for introduction example)

### Showing Persona to User

When user asks to see their persona (e.g., "Show me my persona", "What does my coach look like?"):

Read current config to get activePersona:
cat ~/clawd/habit-flow-data/config.json



Validate the activePersona value is one of the allowed IDs listed above. If not, fall back to flex


Display the persona image using Read tool:
# Example for coach-blaze
cat personas/coach-blaze.png



Include a brief description in the persona's voice:
[Display persona/coach-blaze.png]

🔥 That's me, champ! Coach Blaze at your service!
I'm here to PUMP YOU UP and help you CRUSH those habits!
Let's BUILD that unstoppable momentum together! 💪

Available persona images:

personas/flex.png - Professional, data-driven
personas/coach-blaze.png - Energetic motivational coach
personas/luna.png - Gentle therapist
personas/ava.png - Curious productivity nerd
personas/max.png - Chill buddy
personas/sofi.png - Zen minimalist
personas/the-monk.png - Wise philosopher

### 1. Natural Language Processing

When user says something like "I meditated today":

# Parse the natural language
npx tsx scripts/parse_natural_language.ts --text "I meditated today"

Confidence Handling:

≥ 0.85: Execute automatically and confirm
0.60-0.84: Ask user confirmation first
< 0.60: Request clarification

Tip: Remember to run log_habit.ts when logging completions — verbal confirmation alone doesn't persist the data.

Typical flow:

Parse user input → identify habit + date
Run log_habit.ts --habit-id ... --date ... --status completed
Confirm with streak update from the script output

Example Response (high confidence):

"Logged! 🔥 Your meditation streak is now 9 days. Keep up the excellent work."

Example Response (medium confidence):

"Did you mean to log your 'morning meditation' habit for today?"

### 2. Habit Management

View All Habits:

npx tsx scripts/view_habits.ts --active --format markdown

Create New Habit:

npx tsx scripts/manage_habit.ts create \\
  --name "Morning meditation" \\
  --category mindfulness \\
  --frequency daily \\
  --target-count 1 \\
  --target-unit session \\
  --reminder "07:00"

Update Habit:

npx tsx scripts/manage_habit.ts update \\
  --habit-id h_abc123 \\
  --name "Evening meditation" \\
  --reminder "20:00"

Archive Habit:

npx tsx scripts/manage_habit.ts archive --habit-id h_abc123

### 3. Logging Completions

Single Day:

npx tsx scripts/log_habit.ts \\
  --habit-id h_abc123 \\
  --date 2026-01-28 \\
  --status completed

Bulk Logging:

npx tsx scripts/log_habit.ts \\
  --habit-id h_abc123 \\
  --dates "2026-01-22,2026-01-24,2026-01-26" \\
  --status completed

With Count and Notes:

npx tsx scripts/log_habit.ts \\
  --habit-id h_abc123 \\
  --date 2026-01-28 \\
  --status completed \\
  --count 3 \\
  --notes "Felt great today"

Status Options:

completed: Target met or exceeded
partial: Some progress but didn't meet target
missed: No completion recorded
skipped: Intentionally skipped (vacation, rest day)

### 4. Statistics & Progress

Individual Habit Stats:

npx tsx scripts/get_stats.ts --habit-id h_abc123 --period 30

All Habits Summary:

npx tsx scripts/get_stats.ts --all --period 7

Streak Calculation:

npx tsx scripts/calculate_streaks.ts --habit-id h_abc123 --format json

### 5. Canvas Visualizations

Streak Chart:

npx tsx assets/canvas-dashboard.ts streak \\
  --habit-id h_abc123 \\
  --theme light \\
  --output ./streak.png

Completion Heatmap:

npx tsx assets/canvas-dashboard.ts heatmap \\
  --habit-id h_abc123 \\
  --days 90 \\
  --output ./heatmap.png

Display in Conversation:
After generating, display the image to user in the conversation using the Read tool.

For more visualization options: See references/COMMANDS.md

### 6. Proactive Coaching

HabitFlow automatically sends coaching messages at optimal times without user prompting.

Types of Proactive Messages:

Milestone Celebrations - Reaching 7, 14, 21, 30+ day streaks
Risk Warnings - 24h before high-risk situations
Weekly Check-ins - Every Monday at 8am
Pattern Insights - When significant patterns detected

Setup & Configuration:

Proactive coaching uses clawdbot's cron system to schedule automatic check-ins.

Initial Setup:

# Run after installing/updating the skill
npx tsx scripts/init_skill.ts

This creates 3 cron jobs:

Daily Coaching Check (8am): Milestone celebrations + risk warnings
Weekly Check-in (Monday 8am): Progress summary with visualizations
Pattern Insights (Wednesday 10am): Mid-week pattern detection

Check Cron Status:

# Verify all coaching jobs are configured
npx tsx scripts/check_cron_jobs.ts

# Auto-fix missing jobs
npx tsx scripts/check_cron_jobs.ts --auto-fix

Sync Coaching Jobs:

# Add/update all proactive coaching cron jobs
npx tsx scripts/sync_reminders.ts sync-coaching

# Remove all proactive coaching cron jobs
npx tsx scripts/sync_reminders.ts sync-coaching --remove

Important Notes:

Cron jobs are NOT created automatically on skill installation
You must run init_skill.ts or sync-coaching to create them
After skill updates, run init_skill.ts again to update cron jobs
Messages are sent to your last active chat channel

For detailed setup: See references/proactive-coaching.md

### 7. Smart Reminders

Sync All Reminders:

npx tsx scripts/sync_reminders.ts --sync-all

Add Reminder for One Habit:

npx tsx scripts/sync_reminders.ts --habit-id h_abc123 --add

Remove Reminder:

npx tsx scripts/sync_reminders.ts --habit-id h_abc123 --remove

For technical details on reminders: See references/REMINDERS.md

### Coaching Techniques

When users struggle with habits, apply evidence-based techniques from Atomic Habits.

Core approaches:

Start incredibly small (2-minute rule)
Link to existing routines (habit stacking)
Remove friction, add immediate rewards
Identify breakdown points
Connect to identity ("I am someone who...")

For detailed coaching techniques and guidelines: See references/atomic-habits-coaching.md

### Conversation Flow Examples

For detailed interaction examples: See references/EXAMPLES.md

Quick patterns:

Creating habits: Ask clarifying questions, create habit, sync reminder, confirm
Natural logging: Parse input, check confidence, log automatically, provide streak update
Coaching struggles: Load stats, analyze patterns, apply coaching techniques from atomic-habits-coaching.md

### First-Time Setup

When user first mentions habits:

Initialize data directory if needed: mkdir -p ~/clawd/habit-flow-data/logs
Create default config.json with user's timezone, "flex" persona, and default user ID
Welcome user, introduce capabilities (natural language logging, streaks, reminders, coaching)
Offer persona selection (Flex, Coach Blaze, Luna, Ava, Max, The Monk)
Guide them to create first habit

For welcome message example: See references/EXAMPLES.md

### Error Handling

Habit Not Found:

"I couldn't find a habit matching '{input}'. Your active habits are: {list}. Which one did you mean?"

Low Confidence Parse:

"I'm not sure which habit you meant. Did you mean '{best_match}'? Or please specify more clearly."

No Active Habits:

"You don't have any active habits yet. Would you like to create one? What habit would you like to start tracking?"

Date Parse Error:

"I couldn't understand that date. Please use format like 'today', 'yesterday', 'Monday', or '2026-01-28'."

### References

Conversation Examples: references/EXAMPLES.md
Coaching Techniques: references/atomic-habits-coaching.md
Commands: references/COMMANDS.md
Reminders: references/REMINDERS.md
Data Storage: references/DATA.md
Data Schema: references/data-schema.md
Personas: references/personas.md
Proactive Coaching: references/proactive-coaching.md

### Installation

This skill is automatically installed via the install.sh script when added through clawdhub.

Manual installation:

./install.sh

The install script will:

Check for Node.js and npm
Install npm dependencies (chrono-node, string-similarity, zod, commander, tsx, typescript)
Run initial setup (create data directory, configure cron jobs)

Dependencies: Node.js 18+, npm
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: tralves
- Version: 1.5.4
## Source health
- Status: unstable
- Item is unstable.
- This item is timing out or returning errors right now. Review the source page and try again later.
- Health scope: item
- Reason: timeout
- Checked at: 2026-05-01T19:05:39.408Z
- Expires at: 2026-05-02T07:05:39.408Z
- Recommended action: Review source status
## Links
- [Detail page](https://openagent3.xyz/skills/habit-flow-skill)
- [Send to Agent page](https://openagent3.xyz/skills/habit-flow-skill/agent)
- [JSON manifest](https://openagent3.xyz/skills/habit-flow-skill/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/habit-flow-skill/agent.md)
- [Download page](https://openagent3.xyz/downloads/habit-flow-skill)