6bdb802f01
- Add all claude skills (brainstorming, commit, debugging, TDD, etc.) - Add claude hooks (pre-commit-guard, post-edit-quality) - Add research templates (experiment plan, research brief, etc.) - Add claude tools (arxiv/semantic_scholar/openalex fetch, wiki, exa) - Add TRM4 reference implementation as algorithm fidelity baseline - Add research-wiki content (plans, index, graph, query_pack) - Update .gitignore to exclude .graphify_version runtime state
47 lines
2.1 KiB
Markdown
47 lines
2.1 KiB
Markdown
# graphify reference: GitHub clone and cross-repo merge
|
|
|
|
Load this when the user passed one or more `https://github.com/...` URLs, or named several local subfolders to merge into one graph.
|
|
|
|
### Step 0 - Clone GitHub repo(s) (only if a GitHub URL was given)
|
|
|
|
**Single repo:**
|
|
```bash
|
|
LOCAL_PATH=$(graphify clone <github-url> [--branch <branch>])
|
|
# Use LOCAL_PATH as the target for all subsequent steps
|
|
```
|
|
|
|
**Multiple repos (cross-repo graph):**
|
|
```bash
|
|
# Clone each repo, run the full pipeline on each, then merge
|
|
graphify clone <url1> # → ~/.graphify/repos/<owner1>/<repo1>
|
|
graphify clone <url2> # → ~/.graphify/repos/<owner2>/<repo2>
|
|
# Run /graphify on each local path to produce their graph.json files
|
|
# Then merge:
|
|
graphify merge-graphs \
|
|
~/.graphify/repos/<owner1>/<repo1>/graphify-out/graph.json \
|
|
~/.graphify/repos/<owner2>/<repo2>/graphify-out/graph.json \
|
|
--out graphify-out/cross-repo-graph.json
|
|
```
|
|
|
|
Graphify clones into `~/.graphify/repos/<owner>/<repo>` and reuses existing clones on repeat runs. Each node in the merged graph carries a `repo` attribute so you can filter by origin.
|
|
|
|
**Multiple local subfolders (monorepo or multi-service layout):**
|
|
|
|
The skill pipeline writes all intermediate and final outputs to `graphify-out/` in the current working directory. Running the skill on each subfolder separately will clobber the same output dir. Instead, use the CLI directly for each subfolder — it places `graphify-out/` *inside* the scanned path:
|
|
|
|
```bash
|
|
graphify extract ./core/ # → ./core/graphify-out/graph.json
|
|
graphify extract ./service/ # → ./service/graphify-out/graph.json
|
|
graphify extract ./platform/ # → ./platform/graphify-out/graph.json
|
|
# Add --backend gemini|kimi|openai|deepseek|claude-cli depending on which API key you have set
|
|
|
|
# Then merge at the project root:
|
|
graphify merge-graphs \
|
|
./core/graphify-out/graph.json \
|
|
./service/graphify-out/graph.json \
|
|
./platform/graphify-out/graph.json \
|
|
--out graphify-out/graph.json
|
|
```
|
|
|
|
Once `graphify-out/graph.json` exists, the fast path above takes over: any codebase question runs `graphify query` directly on the merged graph — no re-extraction, no size gate.
|