Install
openclaw skills install work-journalTransform fragmented work records into structured daily/weekly/monthly reports with AI-powered analysis and quantification.
openclaw skills install work-journalTurn 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.
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/.
| Feature | Description |
|---|---|
| Multi-mode Input | Free text, keyword lists, interactive Q&A, date range queries |
| Smart Classification | Auto-detect work type: dev/meeting/docs/design/ops/management/learning |
| Quantification Engine | Transform fuzzy descriptions into measurable outcomes |
| 6 Templates | Daily Brief, Daily Full, Weekly, Monthly, OKR Report, Team Summary |
| AI Polish | Professional language refinement with raw vs polished comparison |
| Local History | Auto-save to Markdown files, searchable by date/project/tag |
| Trend Analysis | Week-over-week workload comparison |
{
"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"
}
}
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:
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:
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
clawhub run work-journal --template team --entries @team-entries.json
Expected output: Team-level summary with overall output, member contributions, collaboration highlights, blockers
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%.
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
| Code | Scenario | Action |
|---|---|---|
| E001 | Empty input | Show guidance + examples |
| E002 | Invalid template | List available templates |
| E003 | Bad date format | Show correct format |
| E004 | LLM timeout | Fall back to simple template |
| E005 | LLM format error | Retry once, then return raw text |
| E006 | File write failure | Output to stdout + error |
| E007 | History read failure | Skip history, generate from input |
| E008 | Unparsable content | Skip bad chars, mark warning |
~/.openclaw/data/work-journal/, zero network upload