What's new
New platform: Pi coding agent (#661)
graphify pi install/graphify pi uninstall— installs skill to~/.pi/agent/skills/graphify/SKILL.mdgraphify install --platform pialso supported
Bug fixes
- Windows skill (
skill-windows.md) — complete rewrite from PowerShell to bash. Claude Code on Windows uses git-bash, so PowerShell syntax (\$null,\$LASTEXITCODE,Select-Object,Remove-Item) caused exit code 49 failures. Now mirrorsskill.mdexactly, withpythonadded as fallback afterpython3for Windows Conda environments (#39) - Wiki stale clearing —
to_wiki()now clears old.mdfiles before regenerating, preventing orphan article accumulation across runs (#558) - Windows filenames in wiki —
_safe_filename()now strips all Windows-reserved characters (< > : " / \ | ? *) and caps length at 200 chars (#594) - Rationale node leakage — rationale nodes were leaking into cross-file INFERRED call resolution, inflating god_node rankings with spurious edges. Filtered in 3 places in
extract.py(#576) - Edge direction in exports —
callsandrationale_foredges were being flipped ingraph.jsonandgraph.htmldue to NetworkX undirected storage canonicalizing endpoint order. True direction now restored from_src/_tgtmetadata stashed bybuild.py(#576) skill-trae.mdSyntaxError — stray colon in--cluster-onlyblock caused install failures (#603)
Security fixes
- MD5 hash in
detect.pymarkedusedforsecurity=False(used for file change detection only, not cryptography) - SHA1 hash in
transcribe.pymarkedusedforsecurity=False(used for filename generation only)
Packaging fix
pyproject.toml: tightened wheel packaging to only include thegraphifypackage — wheel drops from 1.7MB to 285KB
New features
.graphifyincludehidden path allowlist — opt specific hidden files/dirs into traversal (e.g..hermes/plans/) (#583)--no-vizflag now works incluster-onlypath — removes stalegraph.htmlwhen passed (#565)GRAPHIFY_VIZ_NODE_LIMITenv var — override the 5000-node HTML threshold (set to0to disable viz entirely, useful for CI) (#565)
Skill updates
- INFERRED confidence score guidance changed to discrete rubric (0.55 / 0.65 / 0.75 / 0.85 / 0.95) — continuous ranges were collapsing to a bimodal distribution (>50% at 0.5, >40% at 0.85+) (#546)
--updateprune output now splits into drift-detected vs no-drift cases for clarity (#544)--updatemerge step now callssave_manifestto prevent deleted files reappearing as ghost nodes on subsequent runs (#545)
Install / upgrade
pip install graphifyy==0.6.6
# or
uv tool install graphifyy