Releases: devwhodevs/engraph
v1.7.2
Patch release — wikilink graph fix.
Fix
- Escaped-pipe wikilinks in tables (#40) — Obsidian escapes the alias pipe as
\|inside markdown tables (e.g.[[Page Name\|Page]]).extract_wikilink_targetssplit on|without unescaping, capturingPage Name\as a phantom target — so valid table-aliased wikilinks stayed permanently unresolved, dropping their graph edges and inflatingunresolved_links. Now unescapes\|→|before splitting.
Upgrade
brew upgrade engraph
engraph index --rebuild # re-resolves table-aliased wikilinksFull changelog: v1.7.1...v1.7.2
v1.7.1
Maintenance release resolving two open issues.
Fixes
- Model downloads now trust the system certificate store (#27). The downloader (
ureq) previously trusted only the bundled webpki roots, so model downloads failed behind corporate TLS-inspecting proxies that use a custom CA. It now loads the OS trust store (macOS Keychain / Linux/etc/ssl) via ureq'snative-certsfeature — standard roots plus any enterprise CA.
Features
- Optional
.gitignorebypass when indexing (#23). Newrespect_gitignoreconfig option (defaulttrue— unchanged behavior) and anengraph index --no-gitignoreflag to index files that.gitignore/.ignorewould otherwise exclude. Hidden entries (.git/, dotfiles) and explicitexcludepatterns are still skipped.
Install / upgrade
brew upgrade engraphFull changelog: v1.7.0...v1.7.1
v1.7.0
Bug fixes
- Wikilink graph edges are now directional (#37, closes #36). Each
[[link]]writes a singleA → Bedge; the reverse edge exists only when the target genuinely links back. Fixes inflated outgoing-edge queries and makes asymmetric-link detection work. Graph search expansion now follows links in both directions (outgoing links and backlinks), so search recall is preserved on the corrected store. - Broken wikilinks are now recorded in the
unresolved_linkstable during indexing (#37, closes #35) — previously it stayed empty regardless of vault state. edit_frontmatterMCP tool schema is now strictly typed (#38, closes #32). Fixes the tool being rejected at registration by OpenAI / Codex strict function-calling validators (operations.itemsis now a proper object schema). Wire format is unchanged.
Features & docs
- engraph agent skill + Claude plugin marketplace (#33) — install via
claude plugin marketplace add devwhodevs/engraphornpx skills add devwhodevs/engraph.
⚠️ Upgrade note
Existing indexes still hold the old (incorrect) bidirectional edges and an empty unresolved_links. After upgrading, run:
engraph index --rebuildto re-derive correct directional edges and record broken wikilinks. Search keeps working without it — the rebuild just corrects the graph data.
Install / upgrade
brew upgrade engraph # or: brew install devwhodevs/tap/engraphThanks to @jdubdevs, @brndnblck, and @jsynowiec for the contributions.
Full changelog: v1.6.1...v1.7.0
v1.6.1
chore(release): v1.6.1 Patch release bundling three post-v1.6.0 fixes: - UTF-8 panic in temporal search (#24, thanks @majkelooo) - Rust 1.95 clippy CI breakage (#29) - rmcp 1.4 -> 1.5 for MCP protocol 2025-11-25, unblocks Claude Desktop Cowork / Code-in-Desktop tool surfacing (#20, #30)
v1.6.0
Merge pull request #22 from devwhodevs/feat/v1.6-onboarding-identity v1.6.0: Onboarding + Identity
v1.5.5
Merge pull request #21 from devwhodevs/feat/v1.5.5-housekeeping v1.5.5: rmcp 1.4, auto_link parameter, reindex_file tool
v1.5.4
chore: bump version to v1.5.4
v1.5.3
Write Pipeline Fixes
- Auto-link resolver: skip code blocks, inline code, frontmatter, filenames with extensions, and bare date patterns (YYYY-MM-DD)
- Frontmatter merge: user-provided FM fields merged into auto-generated block (no more duplicate FM sections)
- Title extraction: reads
titlefield from frontmatter, skips FM delimiters - Link application:
create_noteusesapply_links()with protected regions
Concurrency
- WAL mode: SQLite WAL journal + 5s busy_timeout — concurrent MCP + CLI access now works
- mtime sync: stored mtime updated after edit/rewrite to prevent false conflict errors
Read-Only Mode
engraph serve --read-onlydisables all write MCP and HTTP tools while keeping search/read/context accessible
Stats
450 tests (up from 426), all passing. 8 files changed, +1011 lines.
v1.5.2
Fix: add empty components.schemas object to OpenAPI spec — required by ChatGPT Actions import.
v1.5.1
v1.5.1
Hotfix: CORS configuration crash when using specific origins (e.g., https://chat.openai.com).
tower-http does not allow allow_credentials(true) combined with allow_headers(Any). Fixed by listing explicit allowed headers (Authorization, Content-Type, Accept) instead of wildcard.
This was blocking engraph serve --http from starting when CORS origins were configured for ChatGPT Actions.