Agent skill

Daily Journal

by ravila4 in ravila4/claude-adhd-skills

Draft, organize, or update development journal entries. An agent skill from ravila4/claude-adhd-skills.

MITAuto-check passedProductivity & Automation

Install Daily Journal

skills CLI
$ npx skills add ravila4/claude-adhd-skills --skill daily-journal -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ravila4/claude-adhd-skills daily-journal --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ravila4/claude-adhd-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/daily-journal .claude/skills/daily-journal && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
daily-journal
GitHub stars
158
Token cost
~2.5k tokens
SKILL.md length
841 words
Files
12 (incl. scripts, references)
Skills in repo
4
Repo updated
First seen
Licence
MIT

At a glance

Draft, organize, or update development journal entries. An agent skill from ravila4/claude-adhd-skills.

  • Works in 8 steps: Philosophy → Flow Diagram → Time-Aware Interaction → …
  • User requests daily journal generation
  • SKILL.md covers Table of Contents, Philosophy, Flow Diagram and Time-Aware Interaction, plus 8 more sections
  • Runs Python scripts from its folder; calls uv

What it does

Daily Journal is an agent skill from ravila4/claude-adhd-skills. Draft, organize, or update development journal entries. Use when user requests daily journal generation, work review, standup preparation, or asks "what did I work on today/this week?"

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 14 other files, including scripts and reference files (for example `references/callout-conventions.md`, `references/high-signal-patterns.md` and `references/limitations-caveats.md`).

It sits in Productivity & Automation, covering Journaling and reflection, Meeting notes and agendas and Accounting and bookkeeping. It works with Obsidian. The repository describes itself as: Claude Code skills and hooks for staying organized with AI agents. The licence is MIT.

When your agent uses it

  • User requests daily journal generation
  • Standup preparation
  • Asks what did I work on today/this week?

Example prompts

  • “what did I work on today/this week?”
  • “/daily-journal”

Requirements

  • Python 3

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. Philosophy
  2. Flow Diagram
  3. Time-Aware Interaction
  4. The Conversation
  5. Using Data as Memory Aid
  6. Markdown Conventions
  7. Template Structure
  8. CLI Reference

What it can do on your machine

Read from SKILL.md and the folder at commit f99e0a3. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Daily Journal loads about 2.5k tokens when it runs, and up to ~14k if it reads all its reference files. Until then it costs about 50 tokens; SKILL.md has 841 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~50
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~14k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from ravila4/claude-adhd-skills at commit f99e0a3, republished under its MIT licence (© ravila4). 841 words, ~2,544 tokens.

Download SKILL.mdSave it as .claude/skills/daily-journal/SKILL.md (or your agent's skills folder). This skill also uses 11 other files; get the full folder from GitHub.
name
daily-journal
description
Draft, organize, or update development journal entries. Use when user requests daily journal generation, work review, standup preparation, or asks "what did I work on today/this week?"
argumentHint
[--date YYYY-MM-DD] [--quick]
userInvocable
true

Daily Journal

An interactive, conversational skill for creating meaningful daily journal entries. Conversation first, data second.

Table of Contents

  1. Philosophy
  2. Flow Diagram
  3. Time-Aware Interaction
  4. The Conversation
  5. Using Data as Memory Aid
  6. Markdown Conventions
  7. Template Structure
  8. CLI Reference

Philosophy

Commits are not what matters. They're often mechanical, LLM-generated, or busywork. A journal should capture:

  • What you actually focused on
  • How you felt about the work
  • What's still open in your mind
  • The human experience of the day

Conversation first, data second. Ask the user about their day. Use collected data (git, sessions) only as a memory jogger for days when they can't remember what they did.

Context matters. Weekends are different from workdays. Mornings are different from evenings. Hobby projects are valid. Tooling optimization is valid.

Flow Diagram

mermaid
flowchart TD
    Start([/daily-journal]) --> CheckTime{What time is it?}

    CheckTime -->|Morning| MorningFlow
    CheckTime -->|Afternoon/Evening| EveningFlow

    subgraph MorningFlow[Morning: Planning Mode]
        M1[Read yesterday's entry] --> M2[Show yesterday's open questions]
        M2 --> M3{Ask: What's your focus today?}
        M3 --> M4{Ask: Any carryover from yesterday?}
        M4 --> M5[Create/update today's entry with intentions]
    end

    subgraph EveningFlow[Afternoon/Evening: Reflection Mode]
        E1{Ask: What did you work on?} --> E2{Ask: How did it go?}
        E2 --> E3{Ask: What's still open?}
        E3 --> E4[Offer data as memory aid]
        E4 --> E5{Anything else to add?}
        E5 --> E6[Synthesize journal from conversation]
    end

    subgraph DataAid[Data as Memory Aid]
        D1[Run collect_day_data.py] --> D2[Show: I see activity in X...]
        D2 --> D3{Worth mentioning?}
        D3 -->|Yes| D4[User describes in their words]
        D3 -->|No| D5[Skip]
    end

    E4 --> DataAid
    DataAid --> E5

    MorningFlow --> Save
    EveningFlow --> Save

    Save[Save to Obsidian] --> End([Done])

    style MorningFlow fill:#e8f4e8
    style EveningFlow fill:#e8e8f4
    style DataAid fill:#f4f4e8

Time-Aware Interaction

Check the current time before starting. Different times trigger different modes:

TimeModePrimary Questions
Before noonPlanningWhat's your focus? Carryover from yesterday?
Afternoon (12-5pm)Mid-day checkHow's the day going? Stuck on anything?
Evening (after 5pm)ReflectionWhat did you work on? How did it go?
WeekendLighter touchWhat did you tinker with? Any hobby wins?

How to check:

bash
# Get current time
date "+%H:%M %A"  # e.g., "14:32 Saturday"

Use this to:

  1. Determine mode (morning/afternoon/evening)
  2. Check if weekend (Saturday/Sunday) - add weekend tag, lighter expectations
  3. Frame questions appropriately

The Conversation

Morning Mode (Planning)
  1. Read yesterday's entry if it exists
  2. Show yesterday's "Tomorrow's focus", "Open questions"
  3. Ask:
    • "What's your main focus for today?"
    • "Any carryover from yesterday you want to tackle?"
    • "Anything blocking you?"
  4. Create entry with intentions (can be updated in evening)
Evening Mode (Reflection)
  1. Start with open questions - don't assume anything from data:

    • "What did you work on today?"
    • "How did it go? What felt good or frustrating?"
    • "Any wins? Any blockers?"
    • "What's still on your mind?"
  2. Offer data as memory aid (only after user has shared):

    • "I see you also had activity in [project] - worth mentioning?"
    • "Looks like you touched [files] - anything notable there?"
    • User can say "no, that was just mechanical" and it gets skipped
  3. Ask about tomorrow:

    • "What's your focus for tomorrow?"
    • "Any open questions to sleep on?"
Weekend Mode
  • Lighter expectations, different framing
  • "What did you tinker with today?"
  • "Any hobby wins?"
  • "Did you rest?" (rest is valid!)
  • Add weekend tag automatically

Using Data as Memory Aid

The collect_day_data.py script is a secondary tool, not the primary input.

When to use it:

  • User says "I can't remember what I did"
  • After user has shared, to jog memory for forgotten items
  • Never as the source of truth for what mattered

How to present it:

I see some activity that might jog your memory:
- 3 commits in my-project
- 45 sessions in data-pipeline
- Files touched in config skill

Any of these worth mentioning in your own words?

Running the script:

bash
uv run ~/.claude/skills/daily-journal/scripts/collect_day_data.py [--date YYYY-MM-DD] [--skip-sessions]

Markdown Conventions

Clearly differentiate personal voice from LLM context using Obsidian-compatible markdown:

Personal Reflections (User's Voice)

Use blockquotes for the user's own words and feelings:

markdown
> Spent most of the morning yak-shaving on my dev tools again.
> It felt productive in the moment but I'm not sure it was the best use of time.
> The API debugging is getting frustrating - every fix reveals another issue.
Context/Background (LLM-Provided)

Use regular text or callouts for factual context:

markdown
> [!info] Context
> Continued from [[2026-01-23]] - API authentication debugging.
> Related to the data pipeline project.
Technical Notes (If Needed)

Use collapsible sections for technical details that shouldn't dominate:

markdown
<details>
<summary>Technical: Auth token fix</summary>

The issue was that refresh tokens were expiring before the batch job completed.
Fixed with: token rotation middleware.

</details>
Show full SKILL.md (353 more words)Show less
Callout Types (Obsidian)
CalloutRoleExample titles
[!info]Context, continuity, collapsible references"Context", "Reference URLs"
[!success]Wins, milestones, progress"Win", "Big day", "Progress"
[!warning]Concerns, friction, blockers"Blocker", "Growing Pain"
[!question]Open loops, things still thinking about"Still thinking about..."
[!bug]Bugs discovered"Script Bug Found"
[!note]Observations, non-actionable insights"Observation: ..."

Use the collapsible variant ([!info]-) for bulky reference material (URLs, log snippets).

See callout-conventions.md for detailed examples and placement guidance.

Template Structure

The final journal should feel personal, not mechanical:

markdown
---
date: {date}
tags:
  - daily-log
  - {weekend if applicable}
  - {project tags from conversation}
---

## {date} - {day of week}

> {User's summary of the day in their own words - from conversation}

### What I Worked On

> {User's description of their focus, in their voice}

> [!info] Context
> {Any relevant background - continued from yesterday, etc.}

### How It Went

> {User's reflection on the experience - what felt good, what was frustrating}

### Open Loops

> [!question] Still thinking about...
> - {Open questions from conversation}
> - {Blockers mentioned}

### Tomorrow

> {User's stated intentions for tomorrow}

---

*{Day character} - {One-line takeaway}*

## Related

- [[{relevant links}]]

CLI Reference

FlagDescription
--date YYYY-MM-DDTarget date (default: today)
--quickSkip interactive questions, just use data (not recommended)

Editing Past Entries

Never delete historical context. Journal entries are a record of thinking over time - even wrong thinking has value.

  • Cross out outdated items with strikethrough: ~~Outdated info~~
  • Add a brief explanation when crossing out: ~~Thought X caused the bug~~ Turned out to be a race condition
  • Only delete if something is factually incorrect (e.g., wrong date, wrong project name)
  • Completed items, debunked theories, abandoned plans, tasks no longer relevant -> strike through, don't delete

Examples:

markdown
### Open Loops

> [!question] Still thinking about...
> - ~~Should I re-run step 1 after the config change?~~ No, step 2 handles it
> - ~~Investigate flaky test in pipeline~~ Was a CI caching issue, fixed 2026-01-25
> - New question that replaced the old one

Every entry ends with a footer: a horizontal rule followed by an italicized one-liner that captures the overall character of the day. This goes after the last content section and before the Related links.

Format: *{Day character} - {One-line takeaway}*

The "day character" is a brief descriptor of the day's shape -- how long, what kind of energy. The takeaway summarizes the arc.

markdown
---

*Full day - Auth system working, merged feature branches, but blocked on deploy permissions for live testing*

Guidelines:

  • Always include when closing off an entry at end of day
  • Day character can mention: duration (short/full/long), time of day (morning/evening/overnight), energy (productive/scattered/chill)
  • Takeaway should be conversational, not a formal summary
  • Keep it to one line

Anti-Patterns

Don't:

  • Lead with commits or session counts
  • Generate a "report" from data
  • Assume commits = what mattered
  • Write in third person about the user
  • Fill in feelings or reflections without asking
  • Delete outdated entries, completed items, or debunked theories (strike them out instead)

Do:

  • Ask open questions first
  • Let user describe in their own words
  • Use data only as memory jogger
  • Preserve the user's voice in the final output
  • Respect that rest and hobby time are valid

© ravila4, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 11 other files (scripts, references) in skills/daily-journal of ravila4/claude-adhd-skills.

  • SKILL.md
  • references/callout-conventions.md
  • references/high-signal-patterns.md
  • references/limitations-caveats.md
  • references/log-formats.md
  • references/modes_and_workflows.md
  • references/section_guide.md
  • references/session-patterns.md
  • references/workflow_examples.md
  • scripts/collect_day_data.py
  • templates/daily-log.md
  • templates/writing-guidelines.md

Open the folder on GitHubat commit f99e0a3

Compare with similar skills

Daily Journal next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Daily Journal compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Daily Journal this skillravila4/claude-adhd-skills158—~2.5kAutomated safety check: PassMIT
Vaultmeain/dotfiles285—~1.3kAutomated safety check: PassMIT
GranolaArtemXTech/claude-code-obsidian-starter225—~905Automated safety check: PassNone
Daily UpdateAr9av/obsidian-wiki3.5k—~2.4kAutomated safety check: NotesMIT
Summarize Meetingsharperreed/dotfiles334—~3.3kAutomated safety check: PassNone
Obsidian Research Logbrycewang-stanford/Auto-Empirical-Research-Skills4.6k—~378Automated safety check: PassCustom licence

Similar skills

  • Vault

    meain/dotfiles

    Manage the Obsidian vault at ~/.local/share/sbdb -- backlog tasks, meeting notes, journal entries, task notes, and general vault lookups.

    285 GitHub stars~1.3k tokensUpdated 2 days ago
    Productivity & AutomationAuto-check passed
  • Granola

    ArtemXTech/claude-code-obsidian-starter

    Query and sync Granola meetings to Obsidian vault. An agent skill from ArtemXTech/claude-code-obsidian-starter.

    225 GitHub stars~905 tokensUpdated 4 days ago
    Productivity & AutomationAuto-check passed
  • Daily Update

    Ar9av/obsidian-wiki

    Run or configure the daily wiki maintenance cycle: check source freshness, refresh the index and hot.md, and manage its scheduled 9 AM launchd/systemd/cron reminder.

    3.5k GitHub stars~2.4k tokensUpdated yesterday
    Productivity & AutomationAuto-check: notes
  • Summarize Meetings

    harperreed/dotfiles

    A skill your agent uses when processing, summarizing, or extracting insights from meeting notes in the Obsidian vault.

    334 GitHub stars~3.3k tokensUpdated 7 days ago
    Productivity & AutomationAuto-check passed
  • Obsidian Research Log

    brycewang-stanford/Auto-Empirical-Research-Skills

    A skill your agent uses when the user is discussing daily research work, TODOs, plans, standups, meetings, milestones, or general project progress that should be reflected in Obsidian daily notes…

    4.6k GitHub stars~378 tokensUpdated 4 days ago
    Productivity & AutomationAuto-check passed
  • Agent Chronicle

    LeoYeAI/openclaw-master-skills

    AI-powered diary generation for agents - creates rich, reflective journal entries (400-600 words) with Quote Hall of Fame, Curiosity Backlog, Decision Archaeology, Relationship Evolution, mood…

    2.2k GitHub stars~6.3k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed

More from ravila4/claude-adhd-skills

  • Obsidian Vault

    ravila4/claude-adhd-skills

    Manage Obsidian vault operations. An agent skill from ravila4/claude-adhd-skills.

    158 GitHub stars~2.3k tokensUpdated 7 mo ago
    Auto-check passed
  • Test Driven Development

    ravila4/claude-adhd-skills

    (TDD) Use when implementing any feature or bugfix. An agent skill from ravila4/claude-adhd-skills.

    158 GitHub stars~1.2k tokensUpdated 7 mo ago
    Auto-check passed
  • Nudge

    ravila4/claude-adhd-skills

    Nudge the user with time-based reminders (stopping times, meetings, break suggestions).

    158 GitHub stars~680 tokensUpdated 7 mo ago
    Auto-check passed

Works with

Questions about Daily Journal

What does Daily Journal do?

Draft, organize, or update development journal entries. An agent skill from ravila4/claude-adhd-skills. Daily Journal is an agent skill from ravila4/claude-adhd-skills. Draft, organize, or update development journal entries.

When should I use Daily Journal?

Daily Journal fits situations like: user requests daily journal generation; standup preparation; asks what did I work on today/this week?.

How do I install Daily Journal in Claude Code?

Run `npx skills add ravila4/claude-adhd-skills --skill daily-journal -a claude-code`. Or copy the skill folder (skills/daily-journal in ravila4/claude-adhd-skills) into .claude/skills/daily-journal in your project. Claude Code loads it when a task matches its description.

How do I install Daily Journal in Codex?

Run `npx skills add ravila4/claude-adhd-skills --skill daily-journal -a codex`. Or copy the skill folder (skills/daily-journal in ravila4/claude-adhd-skills) into .agents/skills/daily-journal in your project. Codex loads it when a task matches its description.

Can I use Daily Journal in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ravila4/claude-adhd-skills --skill daily-journal -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/daily-journal, .gemini/skills/daily-journal, .github/skills/daily-journal and .opencode/skills/daily-journal in your project.

What does Daily Journal need to run?

Going by SKILL.md and its folder, Daily Journal needs Python for the scripts in its folder and the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does Daily Journal access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Daily Journal safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Daily Journal use?

Daily Journal is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Daily Journal use?

About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 11k tokens, read only when the agent opens those files.

What are the alternatives to Daily Journal?

Skills that share tags, products or a category with Daily Journal: Vault (meain/dotfiles, 285 stars), Granola (ArtemXTech/claude-code-obsidian-starter, 225 stars), Daily Update (Ar9av/obsidian-wiki, 3.5k stars) and Summarize Meetings (harperreed/dotfiles, 334 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Daily Journal?

ravila4 (a GitHub user) maintains it in ravila4/claude-adhd-skills, which has 158 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on March 1, 2026.

Source: ravila4/claude-adhd-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.