feat: Obsidian integration via cli scripts

This commit is contained in:
2026-04-17 08:05:23 -06:00
parent 902e11c7d4
commit a2b667f497
35 changed files with 715 additions and 34 deletions

View File

@@ -126,11 +126,23 @@ Do not use Bases for raw inboxes, generated evidence, scripts, or runtime logs.
## CLI Wrappers
Use `scripts/obsidian/` for non-interactive Obsidian URI helpers:
Use `scripts/memory/` as the project-agnostic memory interface.
Use `scripts/obsidian/` only as the current Obsidian adapter:
- `cli.sh` runs the official Obsidian CLI from the configured vault directory.
- `uri.sh` generates encoded Obsidian URIs.
- `open.sh <vault-relative-path>` opens a note.
- `daily.sh` opens the configured daily note.
- `search.sh <query>` opens Obsidian search.
- `open.sh <vault-relative-path>` opens a note through Obsidian URI.
- `daily.sh` opens the configured daily note through Obsidian URI.
- `search.sh <query>` opens Obsidian search through Obsidian URI.
The wrappers default to `vault/` and can be overridden with `AIW_OBSIDIAN_VAULT_DIR` and `AIW_OBSIDIAN_VAULT_NAME`.
The memory interface can use Obsidian CLI when available and fall back to direct Markdown operations when it is not.
The agent should depend on `scripts/memory/memory.sh` for portable operations:
- `create <type> <slug> [title]`
- `search <query> [folder]`
- `base-query <base-name> [format]`
- `health`
This keeps Obsidian replaceable while still making the current vault easier to use.