eod
Skill0 starsChanged 15 days agoMITView on GitHub
End of Day routine for the Second Brain vault. Writes an executive summary to today's daily note, reconciles and rolls over tasks, and enforces Inbox Zero by routing 00 - Inbox/ captures, learnings, and ideas to their homes. Use when the user types /eod or asks to wrap up or close out their day.
- Commits and pushes
5 other projects use a version of this.
Adopted by
Most recently taken up by
- Nicolas-Rigaudy/cr-0wtheir own version, first seen Nov 8, 2026
- jcurbelo/agent-seedtheir own version, first seen Oct 17, 2026
- latuconsinafr/claude-code-configtheir own version, first seen Oct 13, 2026
- DINAKAR-S/company-ai-ostheir own version, first seen Aug 9, 2026
- DScardini91/agentic-ostheir own version, first seen Jun 26, 2026
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 5
- jcurbelo/agent-seed★ 8same name
- DINAKAR-S/company-ai-os★ 2same name
- DScardini91/agentic-os★ 2same name
- Nicolas-Rigaudy/cr-0w★ 1same name
- latuconsinafr/claude-code-config★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository15 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- freddie-implementSkill
- freddie-learnSkill
- freddie-orchestrateSkill
- freddie-planSkill
- freddie-researchSkill
- freddie-reviewSkill
- freddie-specSkill
- freddie-testSkill
- freddie-troubleshootSkill
- pauseSkill
- sodSkill
- tab-colorSkill
- toggle-dangerSkill
The file
We split this skill into the rules it gives an agent
10 rules. 0 are common, 4 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
Create 01 - Daily Chats/TODAY.md if it is missing (same skeleton /sod uses).
- Very specific: line 19
Completed: add ✅ TODAY to any - [x] task missing a done date.
- Distinctive: line 39
If an item's destination is ambiguous, ask.
- Distinctive: line 40
Before purging, list what went where so the user can see it (and so nothing is lost).
- Very specific: line 44
Add a ## 🔭 Tomorrow section to TODAY's note with 3–5 preliminary priorities (what /sod should lead with).
- Very specific: line 45
If 99 - System/memory/Working_Context.md holds a checkpoint that today's work resolved, clear it.
- Very specific: line 48
Run this last, so it captures everything above.
- Distinctive: line 51
Secret gate (fails closed): Run one scanner and check its exit status:
- Very specific: line 71
Run gh repo view <owner>/<repo> --json visibility -q .visibility.
- Distinctive: line 73
If the pull or push fails (conflict, offline, auth), leave the commit local and say so plainly.
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
EOD (End of Day and Inbox Zero)
Close the day so tomorrow starts clean. If a day's /eod is missed, the next /sod runs the Learnings harvest (§3) and the backup (§5) as a catch-up, so nothing waits more than a day. Run date +%F for TODAY and compute TOMORROW portably: date -v+1d +%F 2>/dev/null || date -d tomorrow +%F (BSD/macOS first, then GNU/Linux). Never guess dates.
1. Daily summary
- Gather evidence of today's work: this session's conversation,
01 - Daily Chats/TODAY.md, files changed today (git -C . log --since=midnight --statplusgit status --short), and tasks completed today. - Create
01 - Daily Chats/TODAY.mdif it is missing (same skeleton/soduses). - Under
## 🌙 EOD Summary, write 3 bullets: what shipped, which decisions were made, and what is blocked. Be concrete and link project dashboards with[[...]]. If the section already has content (a second/eodtoday), update it rather than duplicating it.
2. Task reconciliation
Grep open and done tasks across 10 - Projects/, 20 - Areas/, 00 - Inbox/.
- Completed: add
✅ TODAYto any- [x]task missing a done date. - Rollover candidates: open tasks with
📅≤ TODAY. Present them as one numbered list and propose a date for each (default TOMORROW; skip weekends for work projects). Ask once for confirmation or edits, then apply them. Do not silently re-date tasks, because the due date is signal. - Edit tasks where they live (SSOT). Never copy them into the daily note.
3. Inbox Zero
Process the capture files in 00 - Inbox/ (Raw_Captures.md, Ideas_Backlog.md, Learnings.md). Never touch 00 - Inbox/README.md.
| Source | Destination |
Raw_Captures.md | Project-specific items go to that project's _Dashboard.md under ## Staging / Raw Notes (actionable items become tasks under ## Active Tasks). Personal or area items go to the matching 20 - Areas/A-*.md. |
Ideas_Backlog.md | Project-specific ideas go to that project's _Dashboard.md under ## Staging / Raw Notes as a ### Tabled: <idea> block. Unmatched ideas go to 20 - Areas/A-Backlog.md (create it if needed). |
Learnings.md | Distill each entry into a one-line imperative rule and merge it into the matching group of AGENTS.md §7 (Learned Rules). Deduplicate against existing rules and sharpen an existing line rather than adding a near-duplicate. Drop entries that are already fixed or already covered (say so in the routing list). If a learning is specific to one skill, fold it into that skill's .agents/skills/<name>/SKILL.md; if it is specific to one project, move it to that project's Learnings.md. |
Learnings harvest, also scan (since the last harvest: the date of the most recent daily note with a ## 🌙 EOD Summary or a Caught up: line):
- Project learnings: each
10 - Projects/*/Learnings.md. Leave the entries in place. When one states a rule that holds beyond that project (shell, git, agent dispatch, how you like to work), add a distilled general version toAGENTS.md§7. - Harness memory: private memory such as Claude Code's
~/.claude/projects/<vault>/memory/feedback files. Your guidance about how agents should work belongs to every harness, so promote it intoAGENTS.md§7 (vault over harness storage). Keep personal details and one-project notes where they are.
Guard log: if ~/.claude/state/guard.log has override or error lines since the last /eod, summarize them by rule in the report. A rule overridden 3 or more times for the same reason becomes a proposed guard fix, logged as a #p3 task on the dashboard of the project where you keep harness work (or in 00 - Inbox/Ideas_Backlog.md if there is none). Then rotate the log to guard.log.1.
Rules:
- If an item's destination is ambiguous, ask. Don't guess, and don't drop it.
- Before purging, list what went where so the user can see it (and so nothing is lost).
- Purge only after routing succeeded: reset each capture file that you fully routed to its
# Headingline and any template comment block. Leave a file untouched if any of its items couldn't be routed. Never delete or emptyREADME.md.
4. Stage tomorrow
- Add a
## 🔭 Tomorrowsection to TODAY's note with 3–5 preliminary priorities (what/sodshould lead with). - If
99 - System/memory/Working_Context.mdholds a checkpoint that today's work resolved, clear it. If work is mid-flight, replace it with a fresh checkpoint (see/pause).
5. Backup (git, opt-in)
Run this last, so it captures everything above. Skip it unless both are true: the vault is a git repo, and 99 - System/memory/backup.md contains the line backup: enabled.
git status --short. If nothing changed, skip to the report.git add -A..gitignorekeeps local-only folders out (for example a confidential10 - Projects/P-Client_X/). Never force-add an ignored path, and never edit.gitignoreduring/eod.- Secret gate (fails closed). Run one scanner and check its exit status:
Commit only if the result is clean: gitleaks exits 0, or the fallback printsif command -v gitleaks >/dev/null; then gitleaks protect --staged --redact --no-banner # 0 = clean, 1 = leaks, other = error else set -o pipefail if hits="$(git diff --cached -U0 --no-color | awk ' /^\+\+\+ b\//{f=substr($0,7); next} /^@@/{split($3,a,/[+,]/); n=a[2]; next} /^\+/{ if ($0 ~ /["'\'']?(api[_-]?key|secret|token|passw(or)?d)["'\'']?[[:space:]]*[:=]|sk-[A-Za-z0-9]{20}|AKIA[0-9A-Z]{16}|gh[pousr]_[A-Za-z0-9]{20}|BEGIN [A-Z ]*PRIVATE KEY/) print f ":" n; n++ }')"; then echo "${hits:-clean}" else echo "SCANNER ERROR" fi ficlean. For hits, a scanner error, or any other exit code, rungit reset, report only thefile:linelocations (never the values), and stop until the user decides. This is a best-effort pattern check that can miss secrets. git commit -m "EOD TODAY: <one-line summary>"(plus the harness's commit attribution line, if one is configured).- Push only to a verified private GitHub repo.
- Get the push URLs with
git remote get-url --all --push origin. It must return exactly one URL. - Parse
<owner>/<repo>fromhttps://github.com/<owner>/<repo>(.git)orgit@github.com:<owner>/<repo>(.git). - Run
gh repo view <owner>/<repo> --json visibility -q .visibility. Only if it printsPRIVATE, rungit pull --rebase origin mainandgit push origin HEAD. - In every other case (no
origin, several push URLs, a non-GitHub or unparseable URL,ghmissing or failing, or any visibility other thanPRIVATE), keep the commit local and say which check failed. Never push daily notes to a public repo, and never force-push.
- Get the push URLs with
- If the pull or push fails (conflict, offline, auth), leave the commit local and say so plainly.
6. Report
Give a short confirmation in chat: the summary bullets, how many tasks were closed or rolled, the inbox routing table, any AGENTS.md rules that were added, and the backup result (commit hash and pushed, or why not).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

