worklog
/worklog
Add structured JSON entries to track work, decisions, and learnings.
Usage
/worklog yourbench YB-2 "Added login button to header"
/worklog yourbench YB-2 --decision "Using Clerk for auth"
/worklog yourbench YB-2 --gotcha "Token refresh needs cleanup"
/worklog coordinatr 003 --handoff code-reviewer "Ready for review"
/worklog yourbench YB-2 --state # Show current state
/worklog yourbench YB-2 --migrate # Migrate from WORKLOG.md
Directory Structure
ideas/yourbench/issues/YB-2-auth/
├── TASK.md
├── PLAN.md
└── worklog/
├── _state.json # Current state (quick context load)
├── 001-phase-init.json # Entry files
└── 002-handoff-review.json
Entry Types
| Type | Flag | Use Case |
|---|---|---|
| Manual | (default) | General progress update |
| Decision | --decision |
Document architectural choice |
| Gotcha | --gotcha |
Capture lesson learned |
| Handoff | --handoff TO |
Agent transition |
| Phase | --phase NUM |
Phase completion |
| Blocker | --blocker |
Record impediment |
| Resolution | --resolve ID |
Resolve blocker |
Execution Flow
1. Parse Arguments
/worklog PROJECT ISSUE_ID [--type] "message"
2. Locate Worklog Directory
ideas/[project]/issues/[issue_id]-*/worklog/
mkdir -p [path] if missing
3. Get Next Sequence Number
ls worklog/*.json | grep -v _state | wc -l
# Next = count + 1
4. Create Entry File
Filename: {sequence:03d}-{type}-{slug}.json
Required fields:
$schema: "worklog-entry-v1"id: "ISSUE-SEQ"sequence: numbertimestamp: ISO 8601type: entry typeauthor: { agent: string | null, human: string | null }summary: description
5. Update _state.json
After every entry:
- Update
last_entry - Update
last_updated - Increment
entries_count - Add to
key_decisionsif decision - Update
blockersif blocker/resolution
Viewing State
/worklog yourbench YB-2 --state
Outputs:
Issue: YB-2 - Initialize Next.js project
Status: in_progress (Phase 3)
Progress: 5/5 phases complete
Key Decisions: ...
Blockers: none
Schema Reference
See references/schema.md for full JSON schema specification.
Best Practices
- Be specific: Include enough context for future AI
- Tag consistently: Use established tag taxonomy
- Capture gotchas immediately: Don't wait until end
- Handoff explicitly: Create handoff entry when switching agents
- Update state:
_state.jsonshould always reflect current reality
More from taylorhuston/local-life-manager
daily-review
Complete daily journal review. Use at end of day or next morning to fill in journal sections, review highlights, and plan tomorrow. Triggers on "daily review", "end of day", "journal review", "what did I do today".
48weekly-review
Weekly review and planning session. Use at end of week or weekend to review progress, plan next week, and set priorities. Triggers on "weekly review", "plan my week", "what did I do this week", "Sunday planning".
25daily-journal
Daily journal management for the my-vault Obsidian vault. Use for morning routines, daily reviews, quick journal updates, checking yesterday's entry, or setting today's highlight. Triggers on "good morning", "daily review", "journal", "what did I do", "highlight".
23life-planning
Cross-repo life and project planning. Use when user wants to plan their week, prioritize projects, review progress across all areas, or make decisions about what to focus on. Triggers on "plan my week", "what should I work on", "prioritize", "weekly review", "life planning".
23flashcards
Generate spaced repetition flashcards from notes or topics. Use when user wants to create flashcards, make review cards, prepare for spaced repetition, or convert notes to quiz format. Triggers on "flashcards", "make cards", "spaced repetition", "review cards".
21video-summarize
Summarize a single YouTube video and create a note. Use when user shares a video URL or asks to summarize a specific video. Triggers on "summarize this video", "video summary", YouTube URLs.
17