Files
memex/projects/org-agent-memex/org-agent-memex-zettlekasten

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:

  1. Move openclaw-scribe-skill.org into your $MEMEX_SYSTEM/skills/ folder.
  2. Ask your OpenClaw orchestrator/assistant to schedule the Scribe Agent using the cron tool, referencing the prompt defined in $MEMEX_SYSTEM/skills/Scribe-Agent.org or your renamed skill file.
  3. Configure the cron job to use the model specified in CURRENT_TEXT_MANIPULATION_MODEL within your .env file (e.g., google-gemini-cli/gemini-3.1-flash). You can update this .env variable 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 a Source: backlink using an Org-ID reference (id:) to the original daily file.