All memory-backed workflows in this repository resolve under this exact path:
${HOME}/Documents/Programming/agentic-workflow/memory
This is the only authoritative location for memory reads and writes.
Do not create alternate memory roots. Do not write memory data elsewhere.
This repository uses symlinks (or junctions on Windows) for daily use:
| Source (edit here) | Mirrored to (do NOT edit here) |
|---|---|
memory/ |
~/.config/opencode/memory |
memory/ |
~/.codex/memory |
configs/opencode/ |
~/.config/opencode/ |
skills/ |
~/.codex/skills/ |
skills/ |
~/.config/opencode/skills/ (when SYNC_OPENCODE=true) |
Always edit files in this repository's working tree.
Changes made in mirrored/linked target locations will be overwritten or lost.
- Python 3.8+ on all platforms (for
scripts/sync_environment.py) - just command runner (cross-platform)
just sync-environmentThis is the canonical command and syncs:
memory/->%USERPROFILE%\.config\opencode\memoryand%USERPROFILE%\.codex\memoryconfigs/opencode/*->%USERPROFILE%\.config\opencode/skills/->%USERPROFILE%\.codex\skills/(and optionally OpenCode)configs/nvim/->%LOCALAPPDATA%\nvim
just sync-opencodeThis links configs\opencode\opencode.jsonc and configs\opencode\AGENTS.md into %USERPROFILE%\.config\opencode\.
If you want to open the config after linking, run:
just opencode-configjust sync-memoryThis symlinks memory\ into:
%USERPROFILE%\.config\opencode\memory%USERPROFILE%\.codex\memory
If you want OpenCode skill mirroring, copy .skills.env.example to .skills.env and set:
SYNC_OPENCODE=trueThen run:
just sync-skillsjust sync-skills bootstraps skills\ into %USERPROFILE%\.codex\skills\. If SYNC_OPENCODE=true, it also mirrors into %USERPROFILE%\.config\opencode\skills.
just sync-nvimThis links %LOCALAPPDATA%\nvim to configs\nvim\ (repo is source of truth).
just sync-environmentThis is the canonical command and syncs memory, OpenCode config, skills, and Neovim.
just sync-opencodeThis symlinks configs/opencode/opencode.jsonc and configs/opencode/AGENTS.md into ~/.config/opencode/.
just sync-memoryThis symlinks memory/ into:
~/.config/opencode/memory~/.codex/memory
just sync-skillsThis symlinks each skills/<name>/ folder into ~/.codex/skills/ (skipping folders with .codex-hidden).
To also mirror into OpenCode, copy .skills.env.example to .skills.env and set:
SYNC_OPENCODE=trueThen run just sync-skills again.
just sync-nvimThis links ~/.config/nvim to configs/nvim/ (repo is source of truth).
- Put each new skill in
skills/<skill-name>/. - Run
just sync-skillsto sync new skill folders. - Run
just sync-environmentto sync everything at once.
- If a sync command says a path already exists as a real file or directory, the script backs it up with a timestamp and creates the symlink.
- On Windows, if symlink creation fails, the script falls back to junctions (directories) or hard links (files). Enable Windows Developer Mode for true symlinks.
- On macOS/Linux, symlinks are created directly.
- If
pythonis not on your PATH, install Python 3.8+ or use your package manager. - On Linux, Homebrew may install
python3without apythonsymlink. Fix with:ln -s /home/linuxbrew/.linuxbrew/bin/python3 /home/linuxbrew/.linuxbrew/bin/python