Skip to main content

obsidian-log-commits

Fetches today's GitHub commits across personal and org repos, filters noise, and appends a summary as bullets into the ## Log section of today's daily note. Use when asked to log what was worked on today, check today's commits, or update the daily note with dev activity.

Jump to install

Source facts

Repository
nweii/agent-stuff
Last source activity
May 7, 2026 at 15:08
Detected SKILL.md language
English
Stars
9
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions ยท Read-only preview
name
obsidian-log-commits
description
Fetches today's GitHub commits across personal and org repos, filters noise, and appends a summary as bullets into the ## Log section of today's daily note. Use when asked to log what was worked on today, check today's commits, or update the daily note with dev activity.
argument-hint
[date YYYY-MM-DD โ€” defaults to today]
compatibility
Requires gh CLI or GitHub MCP. Designed for the Brain Obsidian vault.
disable-model-invocation
true
metadata
{"author":"nweii","version":"1.0.0","internal":true}
Fetches GitHub commits for the target date, filters to meaningful work, and inserts bullets into the `## Log` section of the corresponding daily note. ## 1. Determine target date - If `$ARGUMENTS` provides a date (`YYYY-MM-DD`), use it. - Otherwise default to today. - Identify the corresponding daily note path: `01-Days/YYYY-MM-DD-ShortDayName.md` (e.g. `01-Days/2026-04-02-Thu.md`). ## 2. Discover repos to check Use the GitHub CLI or API to discover repos dynamically rather than relying on a hardcoded list: 1. List personal repos: `gh repo list <username> --limit 50` 2. List orgs: `gh api /user/orgs` โ†’ for each org, list repos: `gh repo list <org> --limit 50` Check all discovered repos for commits on the target date. Run in parallel where possible. ## 3. Filter commits Keep only commits that represent real intentional work. Discard: - Automated or scheduled commits โ€” messages matching patterns like `vault backup:`, `daily config backup`, `chore: daily`, `Merge pull request` (unless the PR merge message itself is meaningful) - Dependency bumps with no context (e.g. bare `chore(deps): bump X`) Group remaining commits by repo. ## 4. Synthesize log bullets For each repo with meaningful commits, write one bullet summarizing the day's work in that repo. Do not list every commit message verbatim โ€” synthesize into a brief, readable description. Format: `- [wikilinks if applicable] โ€” [description]` **Wikilinks:** If you can identify a project note in the vault that corresponds to this repo (from CLAUDE.md context, STATUS.md, or note titles), include it as a wikilink. If the repo maps to multiple project notes, include both. If you can't identify a match, omit wikilinks and just describe the work. Example: ``` - [[Project Alpha]] / [[Work notes]] โ€” routing architecture refactor, component extraction, form modularization - [[My side project]] โ€” added new skill ``` ## 5. Insert into the daily note Read the daily note. Locate the `## Log - [DayName]` section. Insert the bullets at the **end of that section**, immediately before the next `##` heading (or before EOF if no subsequent heading exists). Do not append to the end of the file. If the `## Log` section already has content, add the new bullets after existing content in that section. If the daily note does not exist, create it using the daily note template before inserting. ## 6. Confirm Report which repos were checked, which had meaningful commits, and what was appended. ## Important - **Synthesize, don't transcribe.** One bullet per repo, not one bullet per commit. - **Wikilinks from context only.** Don't guess project note names โ€” only link notes you can verify exist. - **Section placement is critical.** Bullets go inside `## Log`, not at EOF. - **Skip noise silently.** Don't mention filtered-out commits in the confirmation unless nothing meaningful was found.
View on GitHub