Atomic Notes (Atomic Notes (Zettelkasten)) & GTD Automation (org-agent-memex-zettlekasten)
This system uses a hybrid approach to Personal Knowledge Management (PKM). It leverages Emacs Org-mode for low-friction, structured capture into daily logs, and an OpenClaw AI Sub-Agent ("The Scribe") to nightly distill these raw thoughts into an evergreen, atomic Atomic Notes (Atomic Notes (Zettelkasten)).
1. Environment Configuration (.env)
To ensure Emacs, OpenClaw, and the Scribe Agent all agree on where files live, we use a single .env file at the root of the workspace.
Action:
Copy .env.example to .env and adjust the paths to match your preferred directory structure.
2. Emacs Org-Capture Setup
All captures route to the current day's log (e.g. $MEMEX_DAILY/YYYY-MM-DD.org), preserving the raw chronological context.
Action:
Add the Emacs Lisp snippet from init-atomic-notes.el to your init.el or config.el to set up your capture templates dynamically using the .env variables.
3. The Distillation State Tracker
The Scribe Agent uses a JSON file to remember the last Git commit it processed, preventing it from distilling the same notes twice or modifying the daily logs directly.
Action:
Run ./install.sh to initialize the directory structure and create the state file ($MEMEX_SYSTEM/distillation-state.json) automatically.
4. OpenClaw Cron Job (The Scribe Agent)
The final piece is the scheduled automation. We create a cron job in OpenClaw that runs every night, reads the diffs, and creates atomic notes.
Action:
- Move
openclaw-scribe-skill.orginto your$MEMEX_SYSTEM/skills/folder. - Ask your OpenClaw orchestrator/assistant to schedule the Scribe Agent using the
crontool, referencing the prompt defined in$MEMEX_SYSTEM/skills/Scribe-Agent.orgor your renamed skill file. - Configure the cron job to use the model specified in
CURRENT_TEXT_MANIPULATION_MODELwithin your.envfile (e.g.,google-gemini-cli/gemini-3.1-flash). You can update this.envvariable periodically to stay on the most cost-effective text manipulation model.
Architecture Rules:
- Dailies are Immutable: The Scribe reads
$MEMEX_DAILY/but NEVER writes to it. - Evergreen Notes: The Scribe extracts concepts, generates descriptive snake_case filenames (no dates), and writes them to
$MEMEX_NOTES/with aSource:backlink using an Org-ID reference (id:) to the original daily file.