github Graphify-Labs/graphify v0.9.14

5 hours ago

graphify turns any folder of code, docs, papers, images, or videos into a queryable knowledge graph. 0.9.14 is a correctness-focused release: eleven fixes across detection, the git hooks, extraction caching, query seeding, and export — most from community reports, several with their own PRs.

Highlights

  • Massive graph bloat from git worktrees is gone (#1810). Detection now honors .git/info/exclude — where git worktree add records nested worktree paths — so graphify no longer walks into worktree copies of the repo. One reporter's 5-worktree repo had ballooned from ~9,400 nodes / 10 MB to ~210,000 nodes / 311 MB, regenerated on every commit.
  • No more username leaks in committed graphs (#1789). Visual Studio solution-folder nodes were keyed off the absolute scan path, embedding the local username into graph.json. They're now relative.
  • graphify export graphml stopped crashing (#1831). Any dict/list-valued attribute (a node metadata dict, the graph-level hyperedges list) failed the entire export and left a 0-byte file; non-scalars are now JSON-serialized and the write is atomic.
  • The CLI no longer reports success as failure through a pipe (#1807). graphify query … | head used to exit 255 when the reader closed early, breaking CI wrappers and agent harnesses; an early-closing reader is now treated as success.

All fixes

  • Fix: Visual Studio solution-folder node ids no longer embed the absolute scan path / username (#1789, thanks @fremat79).
  • Fix: the CLI exits 0 (not 255) when a downstream reader closes the pipe early — head, Select-Object -First N, sed q (#1807 / #1811, thanks @varuntej07).
  • Fix: extract() writes its AST cache (and the stat-index) to CWD, never the analyzed source tree, with the cache location decoupled from the portable key/id anchor (#1774 / #1802, thanks @SimiSips).
  • Fix: graphify query deduplicates BFS seeds by label so homonymous generic symbols (many GET/POST handlers) no longer flood results (#1766 / #1832, thanks @devcool20).
  • Fix: semantic cache writes are scoped to each extraction batch's files, so a mis-attributed source_file can't clobber another file's cache — covering both the final write and the per-chunk checkpoint (#1757 / #1835, thanks @TPAteeq).
  • Fix: graphify export graphml coerces dict/list (and other non-scalar) attributes and writes atomically (#1831 / #1830, thanks @hofmockel).
  • Fix: .nox/ virtualenvs are skipped during detection alongside .tox/ (#1804, thanks @igorregoir-lgtm).
  • Fix: detection honors .git/info/exclude, ending git-worktree graph bloat (#1810, thanks @cdahl86-cyber).
  • Fix: the git hooks short-circuit inside linked worktrees, and GRAPHIFY_SKIP_HOOK now suppresses both post-commit and post-checkout (#1809, thanks @cdahl86-cyber; worktree guard co-developed with @Claude-Madera's #1806).

Install

pip install --upgrade graphifyy
# or
uv tool install graphifyy@0.9.14

Then graphify install to update the skill for your agent.

Don't miss a new graphify release

NewReleases is sending notifications on new releases.