v0.13.0 - The Open Standard
One tree, every harness
Codex CLI, OpenCode, Google Antigravity, and GitHub Copilot CLI all converged on the same open Agent Skills standard: workspace skills at .agents/skills/<name>/SKILL.md. This release meets them there with one build that serves them all - and any future harness on the standard works with zero repo changes.
The unified agent-skills build (#139, #141)
bash scripts/build.sh --platform agent-skills emits one spec-compliant tree: 43 command skills plus a shared obsidian-core engine skill (the Python toolkit, the AI-first write spec, and its uv project). Each skill is self-sufficient - vault-root resolution via $OBSIDIAN_VAULT_PATH (or the working directory) and the embedded write spec, so no session-start hook is needed. Install with npx skills add ./dist/agent-skills -a codex -a opencode -a antigravity or a plain cp -R.
Live-verified: skills.sh discovers exactly 44 skills; OpenCode's strict validator loads all 44 with zero warnings; the engine runs from the installed tree with dependencies resolving from the shipped pyproject. A new trigger-mode: proactive source key encodes the selection policy per skill (capture commands trigger proactively; everything else waits to be asked). Proposed and prototyped by @Litash.
GitHub Copilot CLI: covered without an adapter (#133)
Copilot CLI reads .agents/skills/ natively (per GitHub's docs), so the unified build already serves it - verified with a real npx skills add ... -a github-copilot install. The scope question closed with zero new maintenance surface. Thanks @CowboyPurest for the prototype and platform research.
Tavily as an optional research source (#97, #145)
When TAVILY_API_KEY is set, Tavily joins the /research free-mode pool as an extra web source; without it the pool stays fully key-less. Plain requests, Bearer auth, shared cache - no SDK dependency. Proposed by @manisrinivasan2k1.
Per-vault health-check excludes (#140, #142)
<vault>/.vault-config.json extends vault_health.py's exclude list (exclude-dirs + exclude-paths, strictly additive, malformed files ignored silently). On the reporter's 12k-note research vault: findings dropped 15,045 to 2,321 and scan time 5+ minutes to ~19 seconds. Proposed by @Rongles-World.
Also in this release
- Security: link triage can no longer write outside the vault (stub paths are contained to
wiki/stubs/). - Data safety: note rewrites are atomic - an interrupted write can never wipe a note.
- The PostCompact bg-agent survives large summaries on Windows (stdin, not argv), runs with
--strict-mcp-config(thanks @Facens), and logs per-run JSONL observability (thanks @sad85520). - The Hermes install story now matches how Hermes actually works - blueprints never arm on install (thanks @Litash).
- Slash commands run under the plugin install, not just the maintainer's clone; the skill installer registers the session-context hook.
vault_stats.pyhonorsOBSIDIAN_VAULT_PATH; Telegram journal writes to native folders on Obsidian-style vaults (thanks @yannick-opg).- Every discoverability surface now tells the same seven-platform story (Claude Code, Codex, Gemini CLI, OpenCode, Antigravity, Hermes, Pi), the SEO layer caught up two releases, and the banner got its seventh logo.
- Retrieval re-baselined on a live vault after a week of growth: stable, no regression.
- New README Contributors section - 18+ external contributors, and stalled proposals get reimplemented with the original author credited as co-author.
Full detail in CHANGELOG.md. Test suite: 177.