Skip to content

Add Graphify integration#197

Merged
aquarion merged 6 commits into
mainfrom
fix/graphify
Jul 11, 2026
Merged

Add Graphify integration#197
aquarion merged 6 commits into
mainfrom
fix/graphify

Conversation

@aquarion

Copy link
Copy Markdown
Owner

Integrate Graphify into the codebase, enabling knowledge graph capabilities and enhancing project documentation and analysis features. This addition includes necessary configurations, scripts, and documentation for effective usage.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a Graphify-based “knowledge graph” artifact set and companion workflow/docs so contributors can query cross-file relationships and keep the graph updated over time.

Changes:

  • Adds committed Graphify outputs (graphify-out/GRAPH_REPORT.md, graphify-out/manifest.json) plus ignore rules to avoid committing other generated artifacts.
  • Adds a Graphify usage section to CLAUDE.md and a new .claude/skills/graphify/ skill with reference docs.
  • Updates local tooling configuration (pre-commit + detect-secrets) to accommodate Graphify output files.

Reviewed changes

Copilot reviewed 19 out of 21 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
graphify-out/manifest.json Adds a generated manifest of scanned files + hashes.
graphify-out/GRAPH_REPORT.md Adds a generated high-level architecture/community report.
CLAUDE.md Documents how to use Graphify for codebase questions and refreshing the graph.
.secrets.baseline Excludes graphify-out/ from detect-secrets scanning.
.pre-commit-config.yaml Reformats config and excludes graphify-out/graph.json from large-file hook.
.graphifyignore Excludes vendor/, storage/, and docs/ from graph generation.
.gitignore Ignores some Graphify-generated artifacts (cache, html, dotfiles, etc.).
.claudeignore Prevents Claude tooling from reading graphify-out/ and graph.json.
.claude/skills/graphify/SKILL.md Adds an in-repo skill/runbook for building/querying Graphify graphs.
.claude/skills/graphify/references/update.md Adds incremental update / cluster-only guidance.
.claude/skills/graphify/references/transcribe.md Adds audio/video transcription guidance for ingestion.
.claude/skills/graphify/references/query.md Adds query/path/explain guidance + fallback traversal steps.
.claude/skills/graphify/references/hooks.md Adds post-commit hook + CLAUDE integration guidance.
.claude/skills/graphify/references/github-and-merge.md Adds GitHub clone + cross-repo merge guidance.
.claude/skills/graphify/references/extraction-spec.md Defines the semantic extraction subagent JSON schema + rules.
.claude/skills/graphify/references/exports.md Adds optional export/benchmark/MCP server guidance.
.claude/skills/graphify/references/add-watch.md Adds add and --watch guidance.
.claude/skills/graphify/.graphify_version Records the intended Graphify skill version.
.claude/settings.json Adds Claude hooks intended to guard reads/searches via Graphify.
.claude/CLAUDE.md Adds a short note telling Claude sessions how to use the Graphify skill.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .claude/settings.json
Comment thread .claude/settings.json
Comment thread CLAUDE.md
Comment on lines +221 to +223
- If graphify-out/wiki/index.md exists, use it for broad navigation instead of raw source browsing.
- Read graphify-out/GRAPH_REPORT.md only for broad architecture review or when query/path/explain do not surface enough context.
- After modifying code, run `graphify update .` to keep the graph current (AST-only, no API cost).
Base automatically changed from fix/react-doctor to main July 11, 2026 21:57
aquarion and others added 6 commits July 11, 2026 23:00
The raw post-commit hook rebuilt the graph in a detached background
process after the commit landed, so graphify-out/* drifted from what
was actually committed (and diverged again on any CI rebuild). Moving
the rebuild into .pre-commit-config.yaml runs it synchronously before
the commit, in an isolated venv pinned to graphifyy==0.9.12 (no more
fragile system-Python interpreter probing), so the graph is always in
sync with what gets committed.

Uninstalled the old post-commit/post-checkout git hooks via
`graphify hook uninstall`.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
.claude/settings.json's PreToolUse hooks hardcoded
/home/aquarion/.local/bin/graphify, which only exists on this machine
- would break for any other contributor and in CI. graphify is on
PATH after a normal install, so drop the absolute path.

Left the "AST-only, no API cost" CLAUDE.md note as-is after checking
graphify/cli.py: `graphify update .` calls _rebuild_code exclusively
and explicitly defers doc/image changes to a separate /graphify
--update step, so the claim is accurate as scoped ("after modifying
code").

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Bare "graphify" resolves via $PATH, but vendor/bin (composer-writable)
sits ahead of ~/.local/bin on this system's PATH. Since this hook
fires automatically on every Bash/Read/Glob tool call with no
confirmation prompt, a malicious graphify binary dropped into
vendor/bin (e.g. via a compromised composer package) would silently
execute instead of the real one.

$HOME/.local/bin/graphify is a fixed path - immune to PATH-order
shadowing - while still resolving correctly per contributor, so it
keeps the portability fix without reopening the hijack risk.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Rebasing onto main's squashed react-doctor merge (18 deleted files,
pnpm hardening, pre-commit fixes) changed the codebase composition, so
the graph needed a rebuild to reflect current state.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@aquarion aquarion merged commit 9af7434 into main Jul 11, 2026
7 checks passed
@aquarion aquarion deleted the fix/graphify branch July 11, 2026 23:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants