graphifyy 0.3.3__tar.gz → 0.3.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. {graphifyy-0.3.3 → graphifyy-0.3.4}/PKG-INFO +1 -1
  2. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/__main__.py +16 -16
  3. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphifyy.egg-info/PKG-INFO +1 -1
  4. {graphifyy-0.3.3 → graphifyy-0.3.4}/pyproject.toml +1 -1
  5. {graphifyy-0.3.3 → graphifyy-0.3.4}/LICENSE +0 -0
  6. {graphifyy-0.3.3 → graphifyy-0.3.4}/README.md +0 -0
  7. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/__init__.py +0 -0
  8. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/analyze.py +0 -0
  9. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/benchmark.py +0 -0
  10. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/build.py +0 -0
  11. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/cache.py +0 -0
  12. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/cluster.py +0 -0
  13. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/detect.py +0 -0
  14. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/export.py +0 -0
  15. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/extract.py +0 -0
  16. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/hooks.py +0 -0
  17. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/ingest.py +0 -0
  18. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/manifest.py +0 -0
  19. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/report.py +0 -0
  20. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/security.py +0 -0
  21. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/serve.py +0 -0
  22. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/skill-claw.md +0 -0
  23. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/skill-codex.md +0 -0
  24. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/skill-opencode.md +0 -0
  25. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/skill-windows.md +0 -0
  26. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/skill.md +0 -0
  27. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/validate.py +0 -0
  28. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/watch.py +0 -0
  29. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphify/wiki.py +0 -0
  30. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphifyy.egg-info/SOURCES.txt +0 -0
  31. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphifyy.egg-info/dependency_links.txt +0 -0
  32. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphifyy.egg-info/entry_points.txt +0 -0
  33. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphifyy.egg-info/requires.txt +0 -0
  34. {graphifyy-0.3.3 → graphifyy-0.3.4}/graphifyy.egg-info/top_level.txt +0 -0
  35. {graphifyy-0.3.3 → graphifyy-0.3.4}/setup.cfg +0 -0
  36. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_analyze.py +0 -0
  37. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_benchmark.py +0 -0
  38. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_build.py +0 -0
  39. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_cache.py +0 -0
  40. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_claude_md.py +0 -0
  41. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_cluster.py +0 -0
  42. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_confidence.py +0 -0
  43. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_detect.py +0 -0
  44. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_export.py +0 -0
  45. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_extract.py +0 -0
  46. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_hooks.py +0 -0
  47. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_hypergraph.py +0 -0
  48. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_ingest.py +0 -0
  49. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_install.py +0 -0
  50. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_languages.py +0 -0
  51. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_multilang.py +0 -0
  52. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_pipeline.py +0 -0
  53. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_rationale.py +0 -0
  54. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_report.py +0 -0
  55. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_security.py +0 -0
  56. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_semantic_similarity.py +0 -0
  57. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_serve.py +0 -0
  58. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_validate.py +0 -0
  59. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_watch.py +0 -0
  60. {graphifyy-0.3.3 → graphifyy-0.3.4}/tests/test_wiki.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: graphifyy
3
- Version: 0.3.3
3
+ Version: 0.3.4
4
4
  Summary: AI coding assistant skill (Claude Code, Codex, OpenCode, OpenClaw) - turn any folder of code, docs, papers, or images into a queryable knowledge graph
5
5
  License: MIT License
6
6
 
@@ -87,15 +87,15 @@ def install(platform: str = "claude") -> None:
87
87
  # Register in ~/.claude/CLAUDE.md (Claude Code only)
88
88
  claude_md = Path.home() / ".claude" / "CLAUDE.md"
89
89
  if claude_md.exists():
90
- content = claude_md.read_text()
90
+ content = claude_md.read_text(encoding="utf-8")
91
91
  if "graphify" in content:
92
92
  print(f" CLAUDE.md → already registered (no change)")
93
93
  else:
94
- claude_md.write_text(content.rstrip() + _SKILL_REGISTRATION)
94
+ claude_md.write_text(content.rstrip() + _SKILL_REGISTRATION, encoding="utf-8")
95
95
  print(f" CLAUDE.md → skill registered in {claude_md}")
96
96
  else:
97
97
  claude_md.parent.mkdir(parents=True, exist_ok=True)
98
- claude_md.write_text(_SKILL_REGISTRATION.lstrip())
98
+ claude_md.write_text(_SKILL_REGISTRATION.lstrip(), encoding="utf-8")
99
99
  print(f" CLAUDE.md → created at {claude_md}")
100
100
 
101
101
  print()
@@ -139,7 +139,7 @@ def _agents_install(project_dir: Path, platform: str) -> None:
139
139
  target = (project_dir or Path(".")) / "AGENTS.md"
140
140
 
141
141
  if target.exists():
142
- content = target.read_text()
142
+ content = target.read_text(encoding="utf-8")
143
143
  if _AGENTS_MD_MARKER in content:
144
144
  print(f"graphify already configured in AGENTS.md")
145
145
  return
@@ -147,7 +147,7 @@ def _agents_install(project_dir: Path, platform: str) -> None:
147
147
  else:
148
148
  new_content = _AGENTS_MD_SECTION
149
149
 
150
- target.write_text(new_content)
150
+ target.write_text(new_content, encoding="utf-8")
151
151
  print(f"graphify section written to {target.resolve()}")
152
152
  print()
153
153
  print(f"{platform.capitalize()} will now check the knowledge graph before answering")
@@ -165,7 +165,7 @@ def _agents_uninstall(project_dir: Path) -> None:
165
165
  print("No AGENTS.md found in current directory - nothing to do")
166
166
  return
167
167
 
168
- content = target.read_text()
168
+ content = target.read_text(encoding="utf-8")
169
169
  if _AGENTS_MD_MARKER not in content:
170
170
  print("graphify section not found in AGENTS.md - nothing to do")
171
171
  return
@@ -177,7 +177,7 @@ def _agents_uninstall(project_dir: Path) -> None:
177
177
  flags=re.DOTALL,
178
178
  ).rstrip()
179
179
  if cleaned:
180
- target.write_text(cleaned + "\n")
180
+ target.write_text(cleaned + "\n", encoding="utf-8")
181
181
  print(f"graphify section removed from {target.resolve()}")
182
182
  else:
183
183
  target.unlink()
@@ -189,7 +189,7 @@ def claude_install(project_dir: Path | None = None) -> None:
189
189
  target = (project_dir or Path(".")) / "CLAUDE.md"
190
190
 
191
191
  if target.exists():
192
- content = target.read_text()
192
+ content = target.read_text(encoding="utf-8")
193
193
  if _CLAUDE_MD_MARKER in content:
194
194
  print("graphify already configured in CLAUDE.md")
195
195
  return
@@ -197,7 +197,7 @@ def claude_install(project_dir: Path | None = None) -> None:
197
197
  else:
198
198
  new_content = _CLAUDE_MD_SECTION
199
199
 
200
- target.write_text(new_content)
200
+ target.write_text(new_content, encoding="utf-8")
201
201
  print(f"graphify section written to {target.resolve()}")
202
202
 
203
203
  # Also write Claude Code PreToolUse hook to .claude/settings.json
@@ -215,7 +215,7 @@ def _install_claude_hook(project_dir: Path) -> None:
215
215
 
216
216
  if settings_path.exists():
217
217
  try:
218
- settings = json.loads(settings_path.read_text())
218
+ settings = json.loads(settings_path.read_text(encoding="utf-8"))
219
219
  except json.JSONDecodeError:
220
220
  settings = {}
221
221
  else:
@@ -230,7 +230,7 @@ def _install_claude_hook(project_dir: Path) -> None:
230
230
  return
231
231
 
232
232
  pre_tool.append(_SETTINGS_HOOK)
233
- settings_path.write_text(json.dumps(settings, indent=2))
233
+ settings_path.write_text(json.dumps(settings, indent=2), encoding="utf-8")
234
234
  print(f" .claude/settings.json → PreToolUse hook registered")
235
235
 
236
236
 
@@ -240,7 +240,7 @@ def _uninstall_claude_hook(project_dir: Path) -> None:
240
240
  if not settings_path.exists():
241
241
  return
242
242
  try:
243
- settings = json.loads(settings_path.read_text())
243
+ settings = json.loads(settings_path.read_text(encoding="utf-8"))
244
244
  except json.JSONDecodeError:
245
245
  return
246
246
  pre_tool = settings.get("hooks", {}).get("PreToolUse", [])
@@ -248,7 +248,7 @@ def _uninstall_claude_hook(project_dir: Path) -> None:
248
248
  if len(filtered) == len(pre_tool):
249
249
  return
250
250
  settings["hooks"]["PreToolUse"] = filtered
251
- settings_path.write_text(json.dumps(settings, indent=2))
251
+ settings_path.write_text(json.dumps(settings, indent=2), encoding="utf-8")
252
252
  print(f" .claude/settings.json → PreToolUse hook removed")
253
253
 
254
254
 
@@ -260,7 +260,7 @@ def claude_uninstall(project_dir: Path | None = None) -> None:
260
260
  print("No CLAUDE.md found in current directory - nothing to do")
261
261
  return
262
262
 
263
- content = target.read_text()
263
+ content = target.read_text(encoding="utf-8")
264
264
  if _CLAUDE_MD_MARKER not in content:
265
265
  print("graphify section not found in CLAUDE.md - nothing to do")
266
266
  return
@@ -273,7 +273,7 @@ def claude_uninstall(project_dir: Path | None = None) -> None:
273
273
  flags=re.DOTALL,
274
274
  ).rstrip()
275
275
  if cleaned:
276
- target.write_text(cleaned + "\n")
276
+ target.write_text(cleaned + "\n", encoding="utf-8")
277
277
  print(f"graphify section removed from {target.resolve()}")
278
278
  else:
279
279
  target.unlink()
@@ -360,7 +360,7 @@ def main() -> None:
360
360
  detect_path = Path(".graphify_detect.json")
361
361
  if detect_path.exists():
362
362
  try:
363
- detect_data = json.loads(detect_path.read_text())
363
+ detect_data = json.loads(detect_path.read_text(encoding="utf-8"))
364
364
  corpus_words = detect_data.get("total_words")
365
365
  except Exception:
366
366
  pass
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: graphifyy
3
- Version: 0.3.3
3
+ Version: 0.3.4
4
4
  Summary: AI coding assistant skill (Claude Code, Codex, OpenCode, OpenClaw) - turn any folder of code, docs, papers, or images into a queryable knowledge graph
5
5
  License: MIT License
6
6
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "graphifyy"
7
- version = "0.3.3"
7
+ version = "0.3.4"
8
8
  description = "AI coding assistant skill (Claude Code, Codex, OpenCode, OpenClaw) - turn any folder of code, docs, papers, or images into a queryable knowledge graph"
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes