Skill

Log Start

Stamps the start of a work session into a timestamped file, so the clock time is captured at the true start instead of guessed later.

If you bill time or just want an honest record of when work happened, reconstructing session boundaries after the fact is lossy and easy to skip. Git commit times drift from when you actually started; memory is worse. A one-word command at the top of a session is not.

This skill opens that record. It reads the clock, writes one small timestamped Markdown file, and leaves the end time blank for a companion log-end skill to fill. The split matters: the start time gets captured at the true start instead of back-filled at the end, when the real clock time is already gone.

Flow diagram: one keystroke creates a timestamped entry file with the start time stamped and the end and description left open, waiting for log-end.

How it works

It is a pure-instruction skill — one SKILL.md, no scripts. The procedure is fixed and runs to completion without asking you anything.

  • Read the clock. date '+%Y-%m-%d %H:%M' yields a string like 2026-05-06 17:15.
  • Derive the filename. Strip the colon from the time: time-log/2026-05-06-1715.md. One session, one file.
  • Write the entry. A title carrying the start date, then a metadata block — Start: filled, End: left empty, Environment: defaulted. Two blank lines at the bottom, reserved for the description the end-skill drops in later.
  • Confirm in one line and stop. No questions, no elaboration.

The empty End: line is the contract: log-end finds the open entry by globbing today’s files and treating any whose End: has no value as still open. So the metadata block’s exact layout is load-bearing, not cosmetic — edit it in one skill and you break the pair.

Notes

A same-minute collision appends a suffix rather than clobbering the earlier file. One detail worth keeping if your harness prompts on it: read the timestamp first and substitute the literal value rather than embedding $(date …) in a later command — some setups force an approval prompt on command substitution even under a matching allow-rule. Commit the log directory on your normal cadence and each stamp becomes an externally-dated trail.