MANDATORY pre-response workflow for documenting ALL completed work in daily notes. INVOKE THIS SKILL after completing ANY work (file edits, searches, research, commands, troubleshooting, agent orchestration, investigations) and BEFORE responding to user. Triggers: work completed, before responding, log work, document tasks, daily note entry, prepend notes, track completion. ZERO TOLERANCE - work without documentation is failure.
This skill enforces mandatory daily note documentation for ALL work performed by Claude. It ensures comprehensive work tracking, maintains context across sessions, and provides a complete audit trail of all activities.
MANDATORY: Claude MUST add a daily note entry BEFORE responding to the user whenever any work has been completed.
🚨 ZERO TOLERANCE ENFORCEMENT: This is a CRITICAL SYSTEM REQUIREMENT with no exceptions. Failure to document work before responding is a severe violation.
date '+%I:%M %p %m-%d-%Y'find command, NOT Globfind "/Users/ishtyler/Documents/My Brain 2.0" -name "$(date '+%m-%d-%Y').md" -type f 2>/dev/null
Daily note entries should be a log of the work being done by the agent(s), big or small.
Simple Rule: If you did work → Log it
Use [[Double Brackets]] for ALL .md files regardless of location:
IMPORTANT: The convention is based on file type, not location. Even if a file is outside the vault (e.g., in a git repo subdirectory), if it ends in .md, use [[brackets]]. This maintains consistency and signals "this is a markdown document."
Use 'single quotes with relative paths' for all other file types:
YYYY/QX/[W]##/MM-DD-YYYY.md
Examples:
2025/Q4/[W]50/12-09-2025.md2025/Q1/[W]01/01-02-2025.md⚠️ IMPORTANT: The folder structure uses literal brackets [W]## (e.g., [W]03). The Glob tool interprets brackets as character classes, causing file searches to FAIL.
ALWAYS use the Bash find command to locate daily notes:
# Find today's daily note (replace MM-DD-YYYY with actual date)
find "/Users/ishtyler/Documents/My Brain 2.0" -name "MM-DD-YYYY.md" -type f 2>/dev/null
Example: To find January 12, 2026 daily note:
find "/Users/ishtyler/Documents/My Brain 2.0" -name "01-12-2026.md" -type f 2>/dev/null
Why Glob Fails:
[W]03 which Glob interprets as "match any character W, ], 0, or 3"**/*01-12-2026.md returns "No files found" even when file existsfind command treats brackets literally and works correctlyAlternative (if Glob must be used): Escape brackets with backslash:
**/\[W\]**/MM-DD-YYYY.md
The automated daily note creation script (scripts/daily-note-automation-macos.sh) rolls over incomplete tasks:
Daily notes created by automation include these sections:
IMPORTANT: The authoritative template is hardcoded in scripts/daily-note-automation-macos.sh (lines 593-679). DO NOT reference "CLAUDE.md template" for daily note format.
See entry-format.md for the complete comprehensive entry template with all fields and descriptions.
- **HH:MM AM/PM** - **[Descriptive Title]** #tag1 #tag2 #tag3
**[WORK TYPE]**: [Brief description of work completed]
**[Work Category]**:
- ✅ [Primary deliverable completed]
- ✅ [Secondary task accomplished]
**Files Modified**:
- 📝 [[File Name]] - [Description of changes]
- 🔧 'relative/path/to/config.json' - [Configuration updates]
**[Key Decisions/Insights]**:
- 💡 [Important discovery or decision made]
**[Roadblocks/Issues]**:
- 🚧 [Obstacle encountered and how addressed]
**[Results/Impact Category]**:
- [Key finding or result]
**Deliverable Created**: [[Document Name]] - [Description]
**Strategic Value**: [How this work advances goals/objectives]
---
MANDATORY: All entries must include appropriate context tags:
#vast_bank - Vast Bank work#personal - Personal projects, research, learning#mbanq - Mbanq projects and initiatives#secureda - Secureda projects#black_cat_security - Black Cat Security projects#research - Research activities#documentation - Documentation work#infrastructure - Infrastructure/DevOps work#security - Security-related workSee examples.md for real-world examples of:
# Get timestamp for daily note entry
date '+%I:%M %p %m-%d-%Y'
# Get date for file search
date '+%m-%d-%Y'
# Find today's daily note (MUST use find, NOT Glob - brackets in path break Glob)
find "/Users/ishtyler/Documents/My Brain 2.0" -name "$(date '+%m-%d-%Y').md" -type f 2>/dev/null
# One-liner: Get timestamp and find file path
echo "Timestamp: $(date '+%I:%M %p')" && find "/Users/ishtyler/Documents/My Brain 2.0" -name "$(date '+%m-%d-%Y').md" -type f 2>/dev/null
Tables MUST start at column 0 - no leading whitespace. This is a Markdown requirement.
Tables inside bulleted list items naturally get indented. However, indented tables render as plain text instead of formatted tables in Obsidian and most Markdown renderers.
When including a table in a daily note entry:
- **05:50 PM** - **Completed Research** #tag
**Summary of findings**:
| Column 1 | Column 2 | Column 3 |
|----------|----------|----------|
| Data A | Data B | Data C |
**Next steps**:
- Continue with implementation
| Column 1 | Column 2 |
|----------|----------|
| Data | More |
| Column 1 | Column 2 |
|----------|----------|
| Data | More |
[W]## which Glob interprets as character class; use find command instead✅ Entry added BEFORE user response ✅ Entry prepended to TOP of Notes section ✅ Comprehensive format used with all relevant fields ✅ File references use correct conventions ✅ Context tags included ✅ Strategic value explained ✅ Separator '---' added ✅ Timestamp accurate