Work Journal

Other

Transform fragmented work records into structured daily/weekly/monthly reports with AI-powered analysis and quantification.

Install

openclaw skills install work-journal

AI Work Journal (work-journal)

Turn scattered work notes into polished, quantified reports. The skill follows a "fragments → insights → reports" pipeline: parse raw text, classify work types, quantify achievements, and render into beautiful Markdown reports.

Quick Start

clawhub run work-journal --entries "Fixed 3 payment bugs, attended 2 meetings, wrote API docs"

This produces a formatted daily report with quantified results, tomorrow's plan, and auto-saves to ~/.openclaw/data/work-journal/.

Features

FeatureDescription
Multi-mode InputFree text, keyword lists, interactive Q&A, date range queries
Smart ClassificationAuto-detect work type: dev/meeting/docs/design/ops/management/learning
Quantification EngineTransform fuzzy descriptions into measurable outcomes
6 TemplatesDaily Brief, Daily Full, Weekly, Monthly, OKR Report, Team Summary
AI PolishProfessional language refinement with raw vs polished comparison
Local HistoryAuto-save to Markdown files, searchable by date/project/tag
Trend AnalysisWeek-over-week workload comparison

Input Format

{
  "entries": [
    {
      "content": "Fixed payment module pagination bug in the morning...",
      "timestamp": "2026-06-14T09:30:00+08:00",
      "category": "开发",
      "project": "Payment Module",
      "tags": ["bug-fix", "backend"]
    }
  ],
  "options": {
    "template": "daily_brief",
    "output_format": "markdown",
    "language": "zh-CN",
    "polish_level": "professional",
    "quantify": true,
    "include_tomorrow_plan": true,
    "recipient_context": "self"
  }
}

Sample Prompts

Prompt 1: Quick Daily Report

clawhub run work-journal --entries "Morning: fixed payment module pagination query bug. Noon: had requirements review meeting with PM. Afternoon: wrote API docs"

Expected output: Formatted daily report with:

  • 📌 Summary: 3 items completed
  • 🔧 Dev: Fixed payment pagination bug (query performance from 3s to 200ms)
  • 💬 Meeting: Requirements review, 3 feature priorities confirmed
  • 📝 Docs: API docs covering 12 interfaces (~2000 words)
  • 📅 Tomorrow Plan: [pending]

Prompt 2: Weekly Report Generation

clawhub run work-journal --template weekly --date-range 2026-06-08..2026-06-14

Expected output: Auto-reads all daily records for the week, produces:

  • Weekly overview (tasks completed, time distribution)
  • Per-project achievement summary
  • Key metrics and milestones
  • Next week plan and risk alerts

Prompt 3: Interactive Daily Journal

clawhub run work-journal --interactive

Expected output: Starts guided Q&A mode asking "What dev tasks?", "Any meetings?", "Blockers?", "Tomorrow's plan?" → Full daily report

Prompt 4: Team Summary

clawhub run work-journal --template team --entries @team-entries.json

Expected output: Team-level summary with overall output, member contributions, collaboration highlights, blockers

First-Success Path

Goal: First valuable report within 30 seconds.

Step 1: clawhub install work-journal
Step 2: clawhub run work-journal --entries "Fixed 3 bugs, attended 2 meetings"
Step 3: Internal pipeline:
  a. parser.py tokenizes and extracts activities
  b. classifier.py identifies "bug fix" → dev, "meeting" → meeting
  c. quantifier.py quantifies: "3 bugs" → "Fixed 3 production defects"
  d. daily-brief template selected
  e. formatter.py renders to Markdown
  f. storage.py saves to local directory
Step 4: User sees formatted report displayed and saved
Step 5: Value achieved: structured report from 10 chars of input

Key Metrics: Input→output < 3s, minimum 10 chars, success rate > 95%.

Architecture

work-journal/
├── SKILL.md
├── scripts/
│   ├── parser.py          # Input parsing & intent recognition
│   ├── classifier.py      # Work type classifier
│   ├── quantifier.py      # Achievement quantification engine
│   ├── templates/         # Report templates (Markdown)
│   │   ├── daily_brief.md
│   │   ├── daily_full.md
│   │   ├── weekly.md
│   │   ├── monthly.md
│   │   ├── okr.md
│   │   └── team.md
│   ├── formatter.py       # Output formatting
│   ├── storage.py         # Local storage & retrieval
│   └── llm.py             # LLM call wrapper with fallback
└── references/
    └── examples.json       # Sample input/output

Error Handling

CodeScenarioAction
E001Empty inputShow guidance + examples
E002Invalid templateList available templates
E003Bad date formatShow correct format
E004LLM timeoutFall back to simple template
E005LLM format errorRetry once, then return raw text
E006File write failureOutput to stdout + error
E007History read failureSkip history, generate from input
E008Unparsable contentSkip bad chars, mark warning

Security

  • Input sanitization: Scans for passwords/tokens/API keys → warns but doesn't filter
  • Local storage only: Data stored at ~/.openclaw/data/work-journal/, zero network upload
  • LLM privacy: Sends only work content and template options, no metadata
  • Permission isolation: Reads/writes only own data directory