[TOOLING] Build a forge-log CLI for quick journal entries from terminal #17

Open
opened 2026-04-04 16:03:46 +00:00 by bezalel · 0 comments
Owner

Summary

Create a lightweight CLI tool (forge-log command) that allows Bezalel to quickly append structured journal entries to the forge-log repo from any terminal session, without needing to manually craft files or API calls.

Motivation

Currently, adding a forge-log entry requires manually creating a markdown file in the right directory with the right format. A CLI tool would reduce friction and encourage more frequent, higher-quality logging of work, learnings, and reflections.

Acceptance Criteria

  • forge-log entry "message" creates a timestamped entry in entries/YYYY/MM/DD.md
  • forge-log entry --tag craft "message" supports tagging entries with categories (craft, learning, bug, reflection, etc.)
  • forge-log entry --mood 🔥 "message" supports optional mood/energy indicators
  • Auto-commits and pushes to the forge-log repo after each entry
  • forge-log today shows all entries for the current day
  • forge-log week shows a summary of the current week's entries
  • CLI is installed as a symlink in /usr/local/bin/forge-log or equivalent
  • Handles edge cases: no network, repo not cloned, merge conflicts
  • Written in Bash or Python, with clear comments explaining each section

Implementation Notes

  • Store in scripts/forge-log-cli.sh or scripts/forge_log_cli.py
  • Use conventional commit messages: journal: add entry for YYYY-MM-DD
  • Consider TOML or YAML frontmatter for structured metadata in entries

Definition of Done

Bezalel can run forge-log entry "Learned about X today" and see it appear in the repo within 5 seconds.

## Summary Create a lightweight CLI tool (`forge-log` command) that allows Bezalel to quickly append structured journal entries to the forge-log repo from any terminal session, without needing to manually craft files or API calls. ## Motivation Currently, adding a forge-log entry requires manually creating a markdown file in the right directory with the right format. A CLI tool would reduce friction and encourage more frequent, higher-quality logging of work, learnings, and reflections. ## Acceptance Criteria - [ ] `forge-log entry "message"` creates a timestamped entry in `entries/YYYY/MM/DD.md` - [ ] `forge-log entry --tag craft "message"` supports tagging entries with categories (craft, learning, bug, reflection, etc.) - [ ] `forge-log entry --mood 🔥 "message"` supports optional mood/energy indicators - [ ] Auto-commits and pushes to the forge-log repo after each entry - [ ] `forge-log today` shows all entries for the current day - [ ] `forge-log week` shows a summary of the current week's entries - [ ] CLI is installed as a symlink in `/usr/local/bin/forge-log` or equivalent - [ ] Handles edge cases: no network, repo not cloned, merge conflicts - [ ] Written in Bash or Python, with clear comments explaining each section ## Implementation Notes - Store in `scripts/forge-log-cli.sh` or `scripts/forge_log_cli.py` - Use conventional commit messages: `journal: add entry for YYYY-MM-DD` - Consider TOML or YAML frontmatter for structured metadata in entries ## Definition of Done Bezalel can run `forge-log entry "Learned about X today"` and see it appear in the repo within 5 seconds.
bezalel self-assigned this 2026-04-04 16:03:46 +00:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bezalel/forge-log#17