Close out your day — compares planned vs actual, logs contributions, moves unfinished items to tomorrow's note, captures quick notes, and runs a learning reflection. Writes an End of Day section to today's daily note.
Closes out the day. Reads today's daily note and vault state, writes an End of Day section, moves unfinished items forward, detects contributions, and runs a brief learning reflection. The daily note becomes the complete record of the day: sync snapshots at top, user edits in the middle, wrap-up at the bottom.
Read workspace.yaml:
vault.path + vault.subfoldertimezone → today's dateuser.role → determines contribution categoriesfeatures.contribution_detection → whether to run contribution detectionRead today's daily note: Journal/DailyNote-{YYYY-MM-DD}.md
If no daily note exists, create a minimal one (no sync snapshot) and proceed. The wrap-up section will note there was no morning sync.
Also read:
myna/ for - \[x\] with today's completion dateMeetings/ for files with today's date sectionJournal/contributions-{YYYY-MM-DD}.md (Monday date) — to check for existing entries before adding new onesFind the morning sync snapshot — the earliest "Sync — {time}" section in today's daily note (myna-sync prepends snapshots, so the morning snapshot will be the bottom-most one). Extract its Immediate Attention items — these are what was planned.
Compare against current state:
- [x], meetings with all checkboxes checked, delegations resolved[review-status:: pending] or meetings with some checkboxes checked and some notIf there was no morning sync snapshot, note it and skip the comparison. Still proceed with contribution detection and carry-forward.
For each "not started" and "partially done" item:
Journal/DailyNote-{tomorrow}.md) doesn't exist, create it with frontmatter and Morning Focus section only.## Immediate Attention section (add the section if it doesn't exist). Each item gets a carry-forward annotation:- {item} (carried from {today}) [Inferred]
- {item} (carried from {today}) [Inferred]
Do NOT remove or modify the items in today's note. The original remains as-is.
Only run if features.contribution_detection is enabled.
Scan for items from today that look like contributions worth tracking:
High-confidence sources ([Auto]):
- [x] today that have [project:: ...] set[!info] Decision blocks with today's date)Lower-confidence sources ([Inferred]):
[person:: ...] fields nearby)Genuinely uncertain → ReviewQueue/review-self.md:
Before writing any contribution, check the current week's Journal/contributions-{YYYY-MM-DD}.md for near-duplicates (same action + same entity). Skip if already logged.
Contribution entry format:
- [{YYYY-MM-DD} | wrap-up] **{category}:** {description} [{provenance}] ({source-type}, {source}, {date})
Categories by role (from user.role in workspace.yaml):
Append all [Auto] and [Inferred] contributions to Journal/contributions-{YYYY-MM-DD}.md (create file if it doesn't exist). Add review-self items to ReviewQueue/review-self.md.
If the user invoked wrap-up with a note — e.g., "wrap up — quick note: the auth migration decision was mine, not the team's" — capture it before closing out. Route it as a capture (append to appropriate project/people/contributions file). The note may produce multiple entries.
If invoked without a note, skip this step.
Append to today's daily note at the very bottom:
## End of Day — {HH:MM}
> Written by wrap-up skill.
### Planned vs Actual
- Completed: {list}
- Not started: {list}
- Partially done: {list}
### Contributions Detected
- {contribution} [{provenance}]
{If any went to review-self: "1 uncertain contribution added to review-self queue."}
{If contribution_detection disabled: omit this section entirely.}
### Carried to Tomorrow
- {item} (carried from {today}) [Inferred]
- {item} (carried from {today}) [Inferred]
{If nothing to carry: "(nothing to carry — clean day)"}
### Quick Notes
{User's quick note if provided. Omit this section if not provided.}
Print a concise summary:
✅ Wrap-up complete ({HH:MM}).
Completed: {N} items | Not started: {N} (carried to tomorrow) | Partially done: {N}
Contributions: {N} logged [{N} Auto, {N} Inferred], {N} in review-self
{If quick note captured: "Quick note captured."}
Today's note: {obsidian-uri}
Tomorrow's note: {obsidian-uri}
Then suggest:
User says: "wrap up"
Morning sync showed 3 Immediate Attention items: API spec review, follow-up with Alex, auth migration status update.
Current state:
- [x] → completed- [ ] → not startedContributions found:
[Auto] unblocking-others (Sarah's work unblocked)[Inferred] people-development (meeting attended)[Inferred] unblocking-othersOutput to daily note End of Day section, then:
✅ Wrap-up complete (6:02 PM).
Completed: 1 item | Not started: 1 (carried to tomorrow) | Partially done: 1
Contributions: 2 logged [1 Auto, 1 Inferred], 1 in review-self
Today's note: obsidian://open?...
Tomorrow's note: obsidian://open?...
User says: "wrap up — quick note: the cache decision in the auth migration review was mine, I drove it"
Quick note is explicit → routes as [User] contribution to Journal/contributions-{week}.md under decisions-and-influence category. Also appends a timeline entry to Projects/auth-migration.md under ## Timeline noting the decision.
Carry-forward and planned vs actual run as normal.
User says: "end of day"
Daily note exists but has no sync snapshot. Skip the planned vs actual comparison (nothing to compare against). Still:
- [ ] tasks to tomorrowNo tasks completed today: Planned vs Actual shows all items as "not started" or "partially done". No contributions detected. Carry everything forward.
contributions-{week}.md doesn't exist yet: Create it with frontmatter (week_start: {YYYY-MM-DD}) and #contributions tag, plus a ## Contributions — Week of {YYYY-MM-DD} section header. Append new entries.
User runs wrap-up twice: The End of Day section already exists. Read it for context. Append a new "End of Day — {HH:MM} (re-run)" section below the existing one, noting what changed. Do not overwrite the original.
Feature toggle contribution_detection off: Skip Steps 4 entirely. Omit Contributions Detected section from End of Day.
Tasks with no project: These are personal tasks in the daily note itself. Include them in completed/not-started tracking. For contribution detection, skip project-specific categorization — log as decisions-and-influence or unblocking-others based on task description.