# Apple Notes To Journal

> Append Apple Notes to daily journal files as Thino Memo entries in the Obsidian vault. Use when the user wants to "把 Apple Notes 加到 journal", "process Apple Notes", "sync Apple Notes to journals", or run the apple_notes_to_journal script.

- Skill: `goodluckz/apple-notes-to-journal` (Agent Skill)
- Install (CLI): `npx skillmds@latest add goodluckz/apple-notes-to-journal`
- Raw SKILL.md: https://api.skillmd.com/api/skills/goodluckz/apple-notes-to-journal/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: goodluckz (https://skillmd.com/u/goodluckz)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/goodluckz/apple-notes-to-journal

---


# Apple Notes → Journal Thino Memo

Process notes in `Apple Notes/` directory and append their content to the corresponding daily journal files (`journals/YYYY-MM-DD.md`) in Thino Memo format.

## Script Location

```
/Users/zhaoliang/LocalDocuments/vaults/vault/resources/scripts/apple_notes_to_journal.py
```

## How It Works

For each `.md` file in `Apple Notes/` (excluding the `exported to obsidian/` subdirectory):

1. Reads the file's **birthtime** (creation time) via `os.stat().st_birthtime` — Apple Notes have no frontmatter, so file creation time is the source of truth for date/time
2. Strips the `# ` heading prefix from the first line if present
3. Groups notes by date and sorts within each date by time
4. Appends to `journals/YYYY-MM-DD.md` using the Thino Memo format:
   - Single line: `- HH:MM YYYYMMDD content`
   - Multi-line: `- HH:MM\n\tYYYYMMDD line1\n\tline2`
5. Skips entries already present in the target journal (dedup by `time + first 30 chars`)

## Default Workflow

1. **Always preview first** with `--dry-run` and review the summary count
2. Run with `--apply` to actually write changes
3. Original Apple Notes files are **not** modified or moved

## Commands

### Preview all changes

```bash
python3 /Users/zhaoliang/LocalDocuments/vaults/vault/resources/scripts/apple_notes_to_journal.py --dry-run
```

### Apply all changes

```bash
python3 /Users/zhaoliang/LocalDocuments/vaults/vault/resources/scripts/apple_notes_to_journal.py --apply
```

### Filter by date

```bash
python3 /Users/zhaoliang/LocalDocuments/vaults/vault/resources/scripts/apple_notes_to_journal.py --apply --date 2026-04-30
```

### Custom vault path (rare)

```bash
python3 .../apple_notes_to_journal.py --apply --vault-path /path/to/other/vault
```

## Behavior Guarantees

- **Idempotent**: Re-running won't duplicate entries — dedup uses `HH:MM + first 30 chars of content` as signature
- **Non-destructive to existing journals**: New entries are appended at the end of the file. Existing Thino Memos are preserved unchanged.
- **Non-destructive to Apple Notes**: Original notes stay in place

## When to Run

- After exporting new notes from Apple Notes to the Obsidian vault
- When the `Apple Notes/` directory has untracked `.md` files (`git status` shows `??`)
- When user explicitly asks to sync notes to journals

## After Running

Report to the user:
- How many notes were processed
- How many journals were updated
- How many duplicates were skipped (if any)

Do NOT auto-commit the changes — let the user review and commit themselves.

