name: journal description: "Aggregate daily working journey across all repos and sessions into structured content material for the '100 days building AI Brain OS' series. Triggers on: journal, daily journey, what did I do today, extract journey, content material"
Vault Location
Vault path: Read from ${CLAUDE_PLUGIN_ROOT}/brain-os.config.md
/journal — Daily Journey Extraction
Aggregates everything from today (or a specified date) into structured content material ready for the ai-leaders-vietnam writing pipeline.
Data Sources
Scan ALL of these (skip any that don't exist):
Git logs across all repos:
for repo in ~/work/brain ~/work/brain-ops ~/work/brain-os-plugin ~/work/brain-os-marketplace; do echo "=== $(basename $repo) ===" git -C "$repo" log --oneline --since="YYYY-MM-DDT00:00" --until="YYYY-MM-DDT23:59" 2>/dev/null doneAha moments:
{vault}/daily/sessions/YYYY-MM-DD-aha.mdGrill sessions:
{vault}/daily/grill-sessions/YYYY-MM-DD-*.mdHandovers:
{vault}/daily/handovers/YYYY-MM-DD-*.mdEmail intelligence:
{vault}/business/intelligence/emails/YYYY-MM-DD-daily-summary.mdSession summaries:
{vault}/daily/sessions/YYYY-MM-DD-*.md(from Stop hook)
Output
Write to: {vault}/daily/journal/YYYY-MM-DD-journey.md
Format:
---
title: "Day N — [headline]"
created: YYYY-MM-DD
tags: [journal, 100-days, content-material]
zone: daily
---
# Day N — [Compelling headline that captures the day's theme]
## The Story (narrative arc)
[2-3 paragraphs telling what happened today as a story. Start with the problem/goal,
describe what was tried, what broke, what worked. Include turning points.
This is the HOOK for the Facebook post.]
## Key Decisions
| Decision | What I chose | Why | What I rejected |
|----------|-------------|-----|-----------------|
[From grill sessions, handovers, and aha moments]
## Aha Moments
[Direct from daily aha file — the best 3-5 moments with context]
## Real Examples
[Code diffs, before/after, exact commands — the Substack-worthy detail.
These are the implementation shortcuts people pay for.]
## Numbers
[Concrete metrics: files changed, tests passing, time saved, costs, etc.]
## What Broke
[Failures, wrong turns, bugs. This is the vulnerability content.]
## What I'd Do Differently
[Hindsight insights — the "lesson learned" angle]
## Content Angles
[3 potential post angles for the writer pipeline, each with:]
- **Hook:** [opening line]
- **Platform:** [Facebook short-form / Substack long-form / both]
- **Hormozi principle:** [which principle this leverages]
Default Mode: Backfill
When /journal is invoked without arguments (or with just "backfill"):
- Scan
{vault}/daily/journal/for existingYYYY-MM-DD-journey.mdfiles - Determine Day 1 from the earliest journal file's date
- Check every date from Day 1 through yesterday for missing journals
- List status of all days:
OK Day 1 — 2026-04-04 — Day 1 — I Taught an AI to Read a Book Better Than I Can MISSING Day 4 — 2026-04-07 OK Day 5 — 2026-04-08 — Day 5 — ... - For each missing day, create the journal using the full process above (data sources → output format)
- Skip days with no data — if a date has zero commits across all repos AND no session files, write a minimal journal noting it was a rest day
This means running /journal always catches up all missing days automatically.
Explicit date mode
When invoked with a specific date or day number (e.g., /journal day 3 or /journal 2026-04-06):
- Create only that specific day's journal
- Still determine the correct day number from the journal directory
Vault Knowledge Extraction (after writing journal)
After the journal is written, scan all daily sources for knowledge that should live in the vault:
Scan today's grill sessions, aha moments, handovers, session logs for:
- Decisions made — what was chosen and why
- Facts learned — new information about business, users, market
- Preferences stated — how user wants things done
- Context updated — strategy changes, goal shifts, process changes
For each item, find the right file by topic:
- Personal info/preferences →
personal/(about-me.md, preferences.md, goals.md, etc.) - Business project decisions →
business/projects/{project}/(business.md, strategy.md, icp.md) - New topic → create file in the natural location (personal/ or business/)
- Personal info/preferences →
Append to the target file (don't overwrite existing content)
Content ideas: If extraction finds a potential content idea (insight, problem solved, surprising result), append to
~/work/ai-leaders-vietnam/content-ideas.mdunder "Next Up" with a one-line description + link to source.Principles (P1-P4): If extraction finds a principle-related decision, update
thinking/principles/tracker.mdusage count. If a NEW principle is proposed, do NOT auto-add — flag it for user review.Report at the end of journal: "Extracted N items to vault: [list of context files updated]"
Rules
- Narrative over list — tell a story, don't just list commits
- Real examples are gold — include actual code, actual prompts, actual error messages
- Failures are content — "I tried X and it broke" is more valuable than "I did X"
- Hormozi lens: best stuff goes in the free Facebook post (the decision, the insight, the result). Implementation detail goes in paid Substack (the exact prompts, the code, the config).
- Don't fabricate — every claim must trace to a git commit, aha moment, or grill session
- Day numbering — check
{vault}/daily/journal/for the earliest file to determine Day 1, then count sequentially - Automated-only day = pass — if no human-session sources exist for the date (no session, aha, grill, or handover files) but journal was written from git logs + automated reports, log
result=pass. Logpartialonly when available sources were skipped.
Integration with ai-leaders-vietnam
The journey doc is INPUT for the writing pipeline:
/journal → journey doc → (copy to ai-leaders-vietnam) → context-collector or journey-extractor → writer → ai-checking → evaluator → deliver
The user copies the journey doc to ai-leaders-vietnam and runs the content pipeline there.
Outcome log
Follow skill-spec.md § 11. Append to {vault}/daily/skill-outcomes/journal.log:
{date} | journal | {action} | ~/work/brain-os-plugin | daily/journal/{date}-journey.md | commit:{hash} | {result}
action:journal(single day) orbackfill(catch-up)result:passif journal written covering all available sources faithfully (absent source files for that date are not penalized; absence of session/aha/grill/handover sources on automated-only days is not penalized; automated-only day with journal from git logs + automated reports =pass);partialif available sources were skipped, or output quality was poor despite human-session sources being present;failif no data found- Optional:
args="{date-or-day}",score={days_written}/{days_attempted}(for backfill)