Skip to content

graphify

v0.7.18 Feature

This release adds 2 notable features for engineering teams evaluating rollout.

Published 21d RAG & Retrieval
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

antigravity claude-code codex gemini graphrag knowledge-graph
+5 more
leiden openclaw llm skills tree-sitter

ReleasePort's take

Light signal
editorial:auto 13d

`graphify update` is now idempotent, rewriting graph.json and GRAPH_REPORT.md only when content changes. This prevents unnecessary file updates in build pipelines.

Why it matters: Update graphify to v0.7.18 to eliminate spurious file changes in build systems. Idempotent updates reduce cache invalidation and rebuild overhead for automation-heavy workflows.

Summary

AI summary

Graph outputs are now idempotent and graphify update --no-cluster writes a consistent "links" key.

Changes in this release

Feature Medium

`graphify update` is now idempotent, rewriting graph.json and GRAPH_REPORT.md only when content actually changes.

`graphify update` is now idempotent, rewriting graph.json and GRAPH_REPORT.md only when content actually changes.

Source: llm_adapter@2026-05-21

Confidence: high

Feature Low

Stable community IDs across rebuilds using deterministic Leiden/Louvain inputs and fixed seed.

Stable community IDs across rebuilds using deterministic Leiden/Louvain inputs and fixed seed.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Feature Low

'graphify update --no-cluster' skips reclustering, writing raw AST graph only.

'graphify update --no-cluster' skips reclustering, writing raw AST graph only.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Bugfix Medium

Fixes schema inconsistency of '--no-cluster' mode to always write 'links' key.

Fixes schema inconsistency of '--no-cluster' mode to always write 'links' key.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Bugfix Medium

Corrected node ID format in skill.md to '{parent_dir}_{filename_stem}_{entity}' preventing ghost duplicates.

Corrected node ID format in skill.md to '{parent_dir}_{filename_stem}_{entity}' preventing ghost duplicates.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Bugfix Low

.graphify_labels.json no longer rewritten on no‑op rebuilds, reducing churn.

.graphify_labels.json no longer rewritten on no‑op rebuilds, reducing churn.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Bugfix Low

Serialization crashes prevented by using default=str for clustering sort keys on non‑JSON‑serializable edge attributes.

Serialization crashes prevented by using default=str for clustering sort keys on non‑JSON‑serializable edge attributes.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Refactor Low

Unified shrink‑check logic into a single _check_shrink() helper across code paths.

Unified shrink‑check logic into a single _check_shrink() helper across code paths.

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Other Low

feature

feature

Source: llm_adapter@2026-05-21

Confidence: low

Other Low

severity

severity

Source: llm_adapter@2026-05-21

Confidence: low

Other Low

32

32

Source: llm_adapter@2026-05-21

Confidence: low

Other Low

text

text

Source: llm_adapter@2026-05-21

Confidence: low

Other Low

affected_surface

affected_surface

Source: llm_adapter@2026-05-21

Confidence: low

Full changelog

What's new

  • graphify update is now idempotent — graph.json and GRAPH_REPORT.md only rewritten when content actually changes; topology comparison short-circuits clustering on unchanged graphs (#824)
  • Stable community IDs across rebuilds — deterministic Leiden/Louvain inputs (sorted + fixed seed); greedy overlap remapper preserves existing IDs so hand-edited labels don't drift (#824)
  • graphify update --no-cluster — skip reclustering, write raw AST graph only (mirrors graphify extract --no-cluster) (#824)
  • Fix --no-cluster schema — now writes "links" key consistent with the full clustered path; previously toggled to "edges" on every mode switch
  • Fix labels file churn.graphify_labels.json no longer rewritten on no-op rebuilds
  • Fix shrink-check duplication — unified into a single _check_shrink() helper across both code paths
  • Fix node ID format in skill.md — corrected to {parent_dir}_{filename_stem}_{entity}; the old filename-only format caused ghost-duplicate nodes when AST and semantic extractors disagreed; existing graphs with ghost duplicates can be cleaned with graphify extract --force
  • Fix serialization crashesdefault=str in clustering sort keys prevents crashes on non-JSON-serializable edge attributes
  • Docs — Prerequisites, optional extras table, env vars reference, troubleshooting, and dev setup added to README (#833)

Install / upgrade

pip install -U graphifyy
# or
uv tool install graphifyy

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track graphify

Get notified when new releases ship.

Sign up free

About graphify

AI coding assistant skill (Claude Code, Codex, OpenCode, Cursor, Gemini CLI, OpenClaw, Factory Droid, Trae). Turn any folder of code, docs, papers, images, videos, or YouTube links into a queryable knowledge graph

All releases →

Related context

Earlier breaking changes

  • v0.8.18 Breaks Java `extends` edges; they are renamed to `inherits`. Update queries filtering on `relation="extends"` for Java nodes.

Beta — feedback welcome: [email protected]