usebridger 0.1.0__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 (438) hide show
  1. usebridger-0.1.0/.github/workflows/release.yml +92 -0
  2. usebridger-0.1.0/.gitignore +236 -0
  3. usebridger-0.1.0/LICENSE +194 -0
  4. usebridger-0.1.0/PKG-INFO +156 -0
  5. usebridger-0.1.0/README.md +97 -0
  6. usebridger-0.1.0/RELEASING.md +18 -0
  7. usebridger-0.1.0/THIRD_PARTY_NOTICES/Graphify/ATTRIBUTION.md +16 -0
  8. usebridger-0.1.0/THIRD_PARTY_NOTICES/Graphify/LICENSE +194 -0
  9. usebridger-0.1.0/THIRD_PARTY_NOTICES/Graphify/LICENSE-MIT +21 -0
  10. usebridger-0.1.0/THIRD_PARTY_NOTICES/Graphify/NOTICE +9 -0
  11. usebridger-0.1.0/pyproject.toml +104 -0
  12. usebridger-0.1.0/skills/bridger/SKILL.md +222 -0
  13. usebridger-0.1.0/skills/bridger-graph/SKILL.md +556 -0
  14. usebridger-0.1.0/skills/bridger-setup/SKILL.md +547 -0
  15. usebridger-0.1.0/skills-lock.json +41 -0
  16. usebridger-0.1.0/src/bridger/__init__.py +3 -0
  17. usebridger-0.1.0/src/bridger/_vendor/graphify/__init__.py +30 -0
  18. usebridger-0.1.0/src/bridger/_vendor/graphify/__main__.py +717 -0
  19. usebridger-0.1.0/src/bridger/_vendor/graphify/_minhash.py +107 -0
  20. usebridger-0.1.0/src/bridger/_vendor/graphify/affected.py +278 -0
  21. usebridger-0.1.0/src/bridger/_vendor/graphify/always_on/agents-md.md +12 -0
  22. usebridger-0.1.0/src/bridger/_vendor/graphify/always_on/antigravity-rules.md +14 -0
  23. usebridger-0.1.0/src/bridger/_vendor/graphify/always_on/claude-md.md +9 -0
  24. usebridger-0.1.0/src/bridger/_vendor/graphify/always_on/gemini-md.md +9 -0
  25. usebridger-0.1.0/src/bridger/_vendor/graphify/always_on/kiro-steering.md +5 -0
  26. usebridger-0.1.0/src/bridger/_vendor/graphify/always_on/vscode-instructions.md +17 -0
  27. usebridger-0.1.0/src/bridger/_vendor/graphify/analyze.py +749 -0
  28. usebridger-0.1.0/src/bridger/_vendor/graphify/benchmark.py +152 -0
  29. usebridger-0.1.0/src/bridger/_vendor/graphify/build.py +1643 -0
  30. usebridger-0.1.0/src/bridger/_vendor/graphify/cache.py +1370 -0
  31. usebridger-0.1.0/src/bridger/_vendor/graphify/callflow_html.py +2023 -0
  32. usebridger-0.1.0/src/bridger/_vendor/graphify/cargo_introspect.py +109 -0
  33. usebridger-0.1.0/src/bridger/_vendor/graphify/cli.py +3888 -0
  34. usebridger-0.1.0/src/bridger/_vendor/graphify/cluster.py +313 -0
  35. usebridger-0.1.0/src/bridger/_vendor/graphify/command-kilo.md +15 -0
  36. usebridger-0.1.0/src/bridger/_vendor/graphify/dedup.py +762 -0
  37. usebridger-0.1.0/src/bridger/_vendor/graphify/detect.py +1932 -0
  38. usebridger-0.1.0/src/bridger/_vendor/graphify/diagnostics.py +406 -0
  39. usebridger-0.1.0/src/bridger/_vendor/graphify/export.py +1099 -0
  40. usebridger-0.1.0/src/bridger/_vendor/graphify/exporters/__init__.py +1 -0
  41. usebridger-0.1.0/src/bridger/_vendor/graphify/exporters/base.py +14 -0
  42. usebridger-0.1.0/src/bridger/_vendor/graphify/exporters/graphdb.py +173 -0
  43. usebridger-0.1.0/src/bridger/_vendor/graphify/exporters/html.py +560 -0
  44. usebridger-0.1.0/src/bridger/_vendor/graphify/extract.py +5922 -0
  45. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/MIGRATION.md +107 -0
  46. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/__init__.py +64 -0
  47. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/apex.py +272 -0
  48. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/base.py +85 -0
  49. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/bash.py +462 -0
  50. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/blade.py +53 -0
  51. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/csharp.py +441 -0
  52. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/dart.py +629 -0
  53. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/dm.py +542 -0
  54. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/elixir.py +262 -0
  55. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/engine.py +5332 -0
  56. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/fortran.py +356 -0
  57. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/go.py +510 -0
  58. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/json_config.py +216 -0
  59. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/julia.py +384 -0
  60. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/markdown.py +194 -0
  61. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/models.py +121 -0
  62. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/objc.py +522 -0
  63. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/pascal.py +833 -0
  64. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/pascal_forms.py +196 -0
  65. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/powershell.py +575 -0
  66. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/razor.py +145 -0
  67. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/resolution.py +2727 -0
  68. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/rust.py +484 -0
  69. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/sln.py +92 -0
  70. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/sql.py +468 -0
  71. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/symbols.py +104 -0
  72. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/terraform.py +181 -0
  73. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/verilog.py +415 -0
  74. usebridger-0.1.0/src/bridger/_vendor/graphify/extractors/zig.py +226 -0
  75. usebridger-0.1.0/src/bridger/_vendor/graphify/file_slice.py +162 -0
  76. usebridger-0.1.0/src/bridger/_vendor/graphify/global_graph.py +184 -0
  77. usebridger-0.1.0/src/bridger/_vendor/graphify/google_workspace.py +237 -0
  78. usebridger-0.1.0/src/bridger/_vendor/graphify/hooks.py +718 -0
  79. usebridger-0.1.0/src/bridger/_vendor/graphify/ids.py +50 -0
  80. usebridger-0.1.0/src/bridger/_vendor/graphify/ingest.py +353 -0
  81. usebridger-0.1.0/src/bridger/_vendor/graphify/install.py +2288 -0
  82. usebridger-0.1.0/src/bridger/_vendor/graphify/llm.py +3115 -0
  83. usebridger-0.1.0/src/bridger/_vendor/graphify/manifest.py +4 -0
  84. usebridger-0.1.0/src/bridger/_vendor/graphify/manifest_ingest.py +247 -0
  85. usebridger-0.1.0/src/bridger/_vendor/graphify/mcp_ingest.py +386 -0
  86. usebridger-0.1.0/src/bridger/_vendor/graphify/multigraph_compat.py +212 -0
  87. usebridger-0.1.0/src/bridger/_vendor/graphify/pascal_resolution.py +129 -0
  88. usebridger-0.1.0/src/bridger/_vendor/graphify/paths.py +344 -0
  89. usebridger-0.1.0/src/bridger/_vendor/graphify/pg_introspect.py +157 -0
  90. usebridger-0.1.0/src/bridger/_vendor/graphify/prs.py +761 -0
  91. usebridger-0.1.0/src/bridger/_vendor/graphify/querylog.py +80 -0
  92. usebridger-0.1.0/src/bridger/_vendor/graphify/reflect.py +882 -0
  93. usebridger-0.1.0/src/bridger/_vendor/graphify/report.py +300 -0
  94. usebridger-0.1.0/src/bridger/_vendor/graphify/resolver_registry.py +85 -0
  95. usebridger-0.1.0/src/bridger/_vendor/graphify/ruby_resolution.py +215 -0
  96. usebridger-0.1.0/src/bridger/_vendor/graphify/scip_ingest.py +363 -0
  97. usebridger-0.1.0/src/bridger/_vendor/graphify/security.py +460 -0
  98. usebridger-0.1.0/src/bridger/_vendor/graphify/semantic_cleanup.py +336 -0
  99. usebridger-0.1.0/src/bridger/_vendor/graphify/serve.py +2300 -0
  100. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-agents.md +699 -0
  101. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-aider.md +1274 -0
  102. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-amp.md +699 -0
  103. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-claw.md +702 -0
  104. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-codex.md +699 -0
  105. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-copilot.md +702 -0
  106. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-devin.md +1401 -0
  107. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-droid.md +699 -0
  108. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-kilo.md +711 -0
  109. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-kiro.md +702 -0
  110. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-opencode.md +694 -0
  111. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-pi.md +702 -0
  112. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-trae.md +700 -0
  113. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-vscode.md +698 -0
  114. usebridger-0.1.0/src/bridger/_vendor/graphify/skill-windows.md +737 -0
  115. usebridger-0.1.0/src/bridger/_vendor/graphify/skill.md +702 -0
  116. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/add-watch.md +56 -0
  117. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/exports.md +87 -0
  118. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/extraction-spec.md +70 -0
  119. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/github-and-merge.md +46 -0
  120. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/hooks.md +33 -0
  121. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/query.md +311 -0
  122. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/transcribe.md +52 -0
  123. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/agents/references/update.md +210 -0
  124. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/add-watch.md +56 -0
  125. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/exports.md +87 -0
  126. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/extraction-spec.md +70 -0
  127. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/github-and-merge.md +46 -0
  128. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/hooks.md +33 -0
  129. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/query.md +311 -0
  130. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/transcribe.md +52 -0
  131. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/amp/references/update.md +210 -0
  132. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/add-watch.md +56 -0
  133. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/exports.md +87 -0
  134. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/extraction-spec.md +70 -0
  135. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/github-and-merge.md +46 -0
  136. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/hooks.md +33 -0
  137. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/query.md +311 -0
  138. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/transcribe.md +52 -0
  139. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claude/references/update.md +210 -0
  140. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/add-watch.md +56 -0
  141. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/exports.md +87 -0
  142. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/extraction-spec.md +31 -0
  143. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/github-and-merge.md +46 -0
  144. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/hooks.md +33 -0
  145. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/query.md +311 -0
  146. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/transcribe.md +52 -0
  147. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/claw/references/update.md +210 -0
  148. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/add-watch.md +56 -0
  149. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/exports.md +87 -0
  150. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/extraction-spec.md +31 -0
  151. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/github-and-merge.md +46 -0
  152. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/hooks.md +33 -0
  153. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/query.md +311 -0
  154. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/transcribe.md +52 -0
  155. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/codex/references/update.md +210 -0
  156. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/add-watch.md +56 -0
  157. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/exports.md +87 -0
  158. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/extraction-spec.md +70 -0
  159. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/github-and-merge.md +46 -0
  160. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/hooks.md +33 -0
  161. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/query.md +311 -0
  162. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/transcribe.md +52 -0
  163. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/copilot/references/update.md +210 -0
  164. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/add-watch.md +56 -0
  165. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/exports.md +87 -0
  166. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/extraction-spec.md +70 -0
  167. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/github-and-merge.md +46 -0
  168. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/hooks.md +33 -0
  169. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/query.md +311 -0
  170. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/transcribe.md +52 -0
  171. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/droid/references/update.md +210 -0
  172. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/add-watch.md +56 -0
  173. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/exports.md +87 -0
  174. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/extraction-spec.md +70 -0
  175. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/github-and-merge.md +46 -0
  176. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/hooks.md +33 -0
  177. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/query.md +311 -0
  178. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/transcribe.md +52 -0
  179. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kilo/references/update.md +210 -0
  180. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/add-watch.md +56 -0
  181. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/exports.md +87 -0
  182. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/extraction-spec.md +31 -0
  183. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/github-and-merge.md +46 -0
  184. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/hooks.md +33 -0
  185. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/query.md +311 -0
  186. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/transcribe.md +52 -0
  187. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/kiro/references/update.md +210 -0
  188. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/add-watch.md +56 -0
  189. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/exports.md +87 -0
  190. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/extraction-spec.md +70 -0
  191. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/github-and-merge.md +46 -0
  192. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/hooks.md +33 -0
  193. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/query.md +311 -0
  194. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/transcribe.md +52 -0
  195. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/opencode/references/update.md +210 -0
  196. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/add-watch.md +56 -0
  197. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/exports.md +87 -0
  198. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/extraction-spec.md +31 -0
  199. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/github-and-merge.md +46 -0
  200. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/hooks.md +33 -0
  201. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/query.md +311 -0
  202. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/transcribe.md +52 -0
  203. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/pi/references/update.md +210 -0
  204. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/add-watch.md +56 -0
  205. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/exports.md +87 -0
  206. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/extraction-spec.md +70 -0
  207. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/github-and-merge.md +46 -0
  208. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/hooks.md +35 -0
  209. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/query.md +311 -0
  210. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/transcribe.md +52 -0
  211. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/trae/references/update.md +210 -0
  212. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/add-watch.md +56 -0
  213. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/exports.md +87 -0
  214. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/extraction-spec.md +70 -0
  215. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/github-and-merge.md +46 -0
  216. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/hooks.md +33 -0
  217. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/query.md +311 -0
  218. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/transcribe.md +52 -0
  219. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/vscode/references/update.md +210 -0
  220. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/add-watch.md +56 -0
  221. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/exports.md +87 -0
  222. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/extraction-spec.md +70 -0
  223. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/github-and-merge.md +46 -0
  224. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/hooks.md +33 -0
  225. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/query.md +311 -0
  226. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/transcribe.md +52 -0
  227. usebridger-0.1.0/src/bridger/_vendor/graphify/skills/windows/references/update.md +210 -0
  228. usebridger-0.1.0/src/bridger/_vendor/graphify/symbol_resolution.py +554 -0
  229. usebridger-0.1.0/src/bridger/_vendor/graphify/transcribe.py +186 -0
  230. usebridger-0.1.0/src/bridger/_vendor/graphify/tree_html.py +585 -0
  231. usebridger-0.1.0/src/bridger/_vendor/graphify/validate.py +95 -0
  232. usebridger-0.1.0/src/bridger/_vendor/graphify/watch.py +1682 -0
  233. usebridger-0.1.0/src/bridger/_vendor/graphify/wiki.py +337 -0
  234. usebridger-0.1.0/src/bridger/artifacts/__init__.py +3 -0
  235. usebridger-0.1.0/src/bridger/artifacts/writer.py +43 -0
  236. usebridger-0.1.0/src/bridger/auth_cli.py +78 -0
  237. usebridger-0.1.0/src/bridger/cli.py +227 -0
  238. usebridger-0.1.0/src/bridger/cli_console.py +6 -0
  239. usebridger-0.1.0/src/bridger/cli_progress.py +708 -0
  240. usebridger-0.1.0/src/bridger/cli_selector.py +67 -0
  241. usebridger-0.1.0/src/bridger/config_cli.py +67 -0
  242. usebridger-0.1.0/src/bridger/contracts/__init__.py +296 -0
  243. usebridger-0.1.0/src/bridger/contracts/consumption.py +253 -0
  244. usebridger-0.1.0/src/bridger/contracts/enrichment.py +195 -0
  245. usebridger-0.1.0/src/bridger/contracts/extraction.py +35 -0
  246. usebridger-0.1.0/src/bridger/contracts/files.py +215 -0
  247. usebridger-0.1.0/src/bridger/contracts/graph.py +94 -0
  248. usebridger-0.1.0/src/bridger/contracts/memory/__init__.py +0 -0
  249. usebridger-0.1.0/src/bridger/contracts/memory/acceptance.py +36 -0
  250. usebridger-0.1.0/src/bridger/contracts/memory/core.py +437 -0
  251. usebridger-0.1.0/src/bridger/contracts/memory/fleet_acceptance.py +39 -0
  252. usebridger-0.1.0/src/bridger/contracts/memory/fleet_review.py +164 -0
  253. usebridger-0.1.0/src/bridger/contracts/memory/fleet_validation.py +76 -0
  254. usebridger-0.1.0/src/bridger/contracts/memory/hydration.py +379 -0
  255. usebridger-0.1.0/src/bridger/contracts/memory/persistence.py +109 -0
  256. usebridger-0.1.0/src/bridger/contracts/memory/review.py +193 -0
  257. usebridger-0.1.0/src/bridger/contracts/memory/validation.py +73 -0
  258. usebridger-0.1.0/src/bridger/contracts/memory/worker_cycle.py +128 -0
  259. usebridger-0.1.0/src/bridger/contracts/navigation.py +115 -0
  260. usebridger-0.1.0/src/bridger/contracts/repository.py +35 -0
  261. usebridger-0.1.0/src/bridger/contracts/repository_brain.py +41 -0
  262. usebridger-0.1.0/src/bridger/contracts/runtime_metrics.py +157 -0
  263. usebridger-0.1.0/src/bridger/contracts/symbols.py +141 -0
  264. usebridger-0.1.0/src/bridger/contracts/token_usage.py +128 -0
  265. usebridger-0.1.0/src/bridger/extraction/__init__.py +15 -0
  266. usebridger-0.1.0/src/bridger/extraction/graphify.py +63 -0
  267. usebridger-0.1.0/src/bridger/extraction/service.py +69 -0
  268. usebridger-0.1.0/src/bridger/extraction/symbol_index.py +192 -0
  269. usebridger-0.1.0/src/bridger/graph/__init__.py +66 -0
  270. usebridger-0.1.0/src/bridger/graph/enrichment/__init__.py +43 -0
  271. usebridger-0.1.0/src/bridger/graph/enrichment/errors.py +8 -0
  272. usebridger-0.1.0/src/bridger/graph/enrichment/evidence.py +295 -0
  273. usebridger-0.1.0/src/bridger/graph/enrichment/execution.py +148 -0
  274. usebridger-0.1.0/src/bridger/graph/enrichment/fingerprint.py +125 -0
  275. usebridger-0.1.0/src/bridger/graph/enrichment/naming.py +76 -0
  276. usebridger-0.1.0/src/bridger/graph/enrichment/persistence.py +92 -0
  277. usebridger-0.1.0/src/bridger/graph/enrichment/records.py +35 -0
  278. usebridger-0.1.0/src/bridger/graph/enrichment/service.py +281 -0
  279. usebridger-0.1.0/src/bridger/graph/enrichment/validation.py +216 -0
  280. usebridger-0.1.0/src/bridger/graph/errors.py +9 -0
  281. usebridger-0.1.0/src/bridger/graph/intelligence.py +195 -0
  282. usebridger-0.1.0/src/bridger/graph/lifecycle.py +837 -0
  283. usebridger-0.1.0/src/bridger/graph/validation.py +242 -0
  284. usebridger-0.1.0/src/bridger/init_pipeline.py +596 -0
  285. usebridger-0.1.0/src/bridger/llm/__init__.py +69 -0
  286. usebridger-0.1.0/src/bridger/llm/client.py +33 -0
  287. usebridger-0.1.0/src/bridger/llm/errors.py +89 -0
  288. usebridger-0.1.0/src/bridger/llm/factory.py +26 -0
  289. usebridger-0.1.0/src/bridger/llm/models.py +362 -0
  290. usebridger-0.1.0/src/bridger/llm/profiles.py +75 -0
  291. usebridger-0.1.0/src/bridger/llm/providers/__init__.py +1 -0
  292. usebridger-0.1.0/src/bridger/llm/providers/openai.py +1149 -0
  293. usebridger-0.1.0/src/bridger/llm/retry.py +32 -0
  294. usebridger-0.1.0/src/bridger/llm/testing/__init__.py +3 -0
  295. usebridger-0.1.0/src/bridger/llm/testing/dummy.py +88 -0
  296. usebridger-0.1.0/src/bridger/llm/tools.py +176 -0
  297. usebridger-0.1.0/src/bridger/mcp_server.py +279 -0
  298. usebridger-0.1.0/src/bridger/memory/__init__.py +209 -0
  299. usebridger-0.1.0/src/bridger/memory/default-targets/catalog.yaml +25 -0
  300. usebridger-0.1.0/src/bridger/memory/default-targets/targets/architecture.yaml +147 -0
  301. usebridger-0.1.0/src/bridger/memory/default-targets/targets/business-logic.yaml +97 -0
  302. usebridger-0.1.0/src/bridger/memory/default-targets/targets/conventions.yaml +111 -0
  303. usebridger-0.1.0/src/bridger/memory/default-targets/targets/data-and-state.yaml +133 -0
  304. usebridger-0.1.0/src/bridger/memory/default-targets/targets/design.yaml +128 -0
  305. usebridger-0.1.0/src/bridger/memory/default-targets/targets/interfaces-and-integrations.yaml +118 -0
  306. usebridger-0.1.0/src/bridger/memory/default-targets/targets/operations.yaml +142 -0
  307. usebridger-0.1.0/src/bridger/memory/default-targets/targets/repository.yaml +108 -0
  308. usebridger-0.1.0/src/bridger/memory/default-targets/targets/testing.yaml +123 -0
  309. usebridger-0.1.0/src/bridger/memory/errors.py +123 -0
  310. usebridger-0.1.0/src/bridger/memory/evaluation/__init__.py +0 -0
  311. usebridger-0.1.0/src/bridger/memory/evaluation/acceptance.py +425 -0
  312. usebridger-0.1.0/src/bridger/memory/evaluation/fleet_acceptance.py +346 -0
  313. usebridger-0.1.0/src/bridger/memory/evaluation/fleet_review.py +1056 -0
  314. usebridger-0.1.0/src/bridger/memory/evaluation/fleet_validation.py +958 -0
  315. usebridger-0.1.0/src/bridger/memory/evaluation/review.py +926 -0
  316. usebridger-0.1.0/src/bridger/memory/evaluation/validation.py +858 -0
  317. usebridger-0.1.0/src/bridger/memory/persistence/__init__.py +0 -0
  318. usebridger-0.1.0/src/bridger/memory/persistence/durability.py +1654 -0
  319. usebridger-0.1.0/src/bridger/memory/persistence/recovery.py +1455 -0
  320. usebridger-0.1.0/src/bridger/memory/persistence/store.py +170 -0
  321. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/reconciliation.md +277 -0
  322. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/system.md +200 -0
  323. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/architecture.md +56 -0
  324. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/business-logic.md +49 -0
  325. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/conventions.md +51 -0
  326. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/data-and-state.md +53 -0
  327. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/design.md +77 -0
  328. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/interfaces-and-integrations.md +52 -0
  329. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/operations.md +65 -0
  330. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/repository.md +36 -0
  331. usebridger-0.1.0/src/bridger/memory/prompts/reviewer/targets/testing.md +57 -0
  332. usebridger-0.1.0/src/bridger/memory/prompts/worker/system.md +391 -0
  333. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/architecture.md +104 -0
  334. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/business-logic.md +114 -0
  335. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/conventions.md +107 -0
  336. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/data-and-state.md +104 -0
  337. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/design.md +161 -0
  338. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/interfaces-and-integrations.md +108 -0
  339. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/operations.md +106 -0
  340. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/repository.md +77 -0
  341. usebridger-0.1.0/src/bridger/memory/prompts/worker/targets/testing.md +89 -0
  342. usebridger-0.1.0/src/bridger/memory/runtime/__init__.py +0 -0
  343. usebridger-0.1.0/src/bridger/memory/runtime/context_window.py +130 -0
  344. usebridger-0.1.0/src/bridger/memory/runtime/coordinator.py +343 -0
  345. usebridger-0.1.0/src/bridger/memory/runtime/finalization.py +177 -0
  346. usebridger-0.1.0/src/bridger/memory/runtime/hydration.py +1285 -0
  347. usebridger-0.1.0/src/bridger/memory/runtime/initialization.py +282 -0
  348. usebridger-0.1.0/src/bridger/memory/runtime/provider_recovery.py +68 -0
  349. usebridger-0.1.0/src/bridger/memory/runtime/scheduling.py +399 -0
  350. usebridger-0.1.0/src/bridger/memory/runtime/stage_zero.py +223 -0
  351. usebridger-0.1.0/src/bridger/memory/runtime/trace.py +312 -0
  352. usebridger-0.1.0/src/bridger/memory/runtime/worker_cycle.py +2392 -0
  353. usebridger-0.1.0/src/bridger/memory/runtime/worker_navigation_tools.py +640 -0
  354. usebridger-0.1.0/src/bridger/memory/runtime/worker_tools.py +1114 -0
  355. usebridger-0.1.0/src/bridger/memory/targets.py +134 -0
  356. usebridger-0.1.0/src/bridger/memory/test-targets/catalog.yaml +15 -0
  357. usebridger-0.1.0/src/bridger/memory/test-targets/targets/architecture.yaml +40 -0
  358. usebridger-0.1.0/src/bridger/memory/test-targets/targets/business-logic.yaml +41 -0
  359. usebridger-0.1.0/src/bridger/memory/test-targets/targets/repository.yaml +41 -0
  360. usebridger-0.1.0/src/bridger/memory/test-targets/targets/testing.yaml +40 -0
  361. usebridger-0.1.0/src/bridger/navigation/__init__.py +48 -0
  362. usebridger-0.1.0/src/bridger/navigation/bootstrap.py +89 -0
  363. usebridger-0.1.0/src/bridger/navigation/brain.py +598 -0
  364. usebridger-0.1.0/src/bridger/navigation/bridger.py +192 -0
  365. usebridger-0.1.0/src/bridger/navigation/graphify_adapter.py +54 -0
  366. usebridger-0.1.0/src/bridger/navigation/navigator.py +1813 -0
  367. usebridger-0.1.0/src/bridger/navigation/tools.py +510 -0
  368. usebridger-0.1.0/src/bridger/presentation/__init__.py +6 -0
  369. usebridger-0.1.0/src/bridger/presentation/json.py +17 -0
  370. usebridger-0.1.0/src/bridger/presentation/markdown.py +213 -0
  371. usebridger-0.1.0/src/bridger/progress.py +137 -0
  372. usebridger-0.1.0/src/bridger/repository/__init__.py +14 -0
  373. usebridger-0.1.0/src/bridger/repository/errors.py +24 -0
  374. usebridger-0.1.0/src/bridger/repository/file_index.py +94 -0
  375. usebridger-0.1.0/src/bridger/repository/git.py +60 -0
  376. usebridger-0.1.0/src/bridger/repository/policy.py +182 -0
  377. usebridger-0.1.0/src/bridger/repository/reader.py +127 -0
  378. usebridger-0.1.0/src/bridger/repository/revisions.py +47 -0
  379. usebridger-0.1.0/src/bridger/repository/service.py +86 -0
  380. usebridger-0.1.0/src/bridger/repository_brain/__init__.py +21 -0
  381. usebridger-0.1.0/src/bridger/repository_brain/embeddings.py +225 -0
  382. usebridger-0.1.0/src/bridger/repository_brain/harness.py +1135 -0
  383. usebridger-0.1.0/src/bridger/repository_brain/index.py +664 -0
  384. usebridger-0.1.0/src/bridger/repository_brain/loader.py +185 -0
  385. usebridger-0.1.0/src/bridger/repository_brain/publication.py +244 -0
  386. usebridger-0.1.0/src/bridger/repository_brain/runtime_metrics.py +444 -0
  387. usebridger-0.1.0/src/bridger/repository_brain/token_usage.py +122 -0
  388. usebridger-0.1.0/src/bridger/runtime_timing.py +142 -0
  389. usebridger-0.1.0/src/bridger/settings/__init__.py +1 -0
  390. usebridger-0.1.0/src/bridger/settings/config.py +123 -0
  391. usebridger-0.1.0/src/bridger/settings/config.toml +5 -0
  392. usebridger-0.1.0/src/bridger/settings/credentials.py +89 -0
  393. usebridger-0.1.0/tests/consumption/test_contracts.py +310 -0
  394. usebridger-0.1.0/tests/consumption/test_presentation.py +386 -0
  395. usebridger-0.1.0/tests/extraction/test_extraction.py +465 -0
  396. usebridger-0.1.0/tests/graph/test_enrichment.py +531 -0
  397. usebridger-0.1.0/tests/graph/test_enrichment_execution.py +729 -0
  398. usebridger-0.1.0/tests/graph/test_graph.py +188 -0
  399. usebridger-0.1.0/tests/graph/test_lifecycle.py +416 -0
  400. usebridger-0.1.0/tests/memory/test_acceptance.py +432 -0
  401. usebridger-0.1.0/tests/memory/test_fleet_review_acceptance.py +451 -0
  402. usebridger-0.1.0/tests/memory/test_fleet_review_recovery.py +497 -0
  403. usebridger-0.1.0/tests/memory/test_fleet_validation.py +629 -0
  404. usebridger-0.1.0/tests/memory/test_hydration.py +992 -0
  405. usebridger-0.1.0/tests/memory/test_initialization.py +938 -0
  406. usebridger-0.1.0/tests/memory/test_persistence.py +1175 -0
  407. usebridger-0.1.0/tests/memory/test_repair.py +514 -0
  408. usebridger-0.1.0/tests/memory/test_review.py +713 -0
  409. usebridger-0.1.0/tests/memory/test_scheduling.py +488 -0
  410. usebridger-0.1.0/tests/memory/test_trace_observability.py +203 -0
  411. usebridger-0.1.0/tests/memory/test_validation.py +673 -0
  412. usebridger-0.1.0/tests/memory/test_worker_cycle.py +2594 -0
  413. usebridger-0.1.0/tests/navigation/test_bootstrap.py +313 -0
  414. usebridger-0.1.0/tests/navigation/test_brain_navigator.py +646 -0
  415. usebridger-0.1.0/tests/navigation/test_bridger_navigator.py +492 -0
  416. usebridger-0.1.0/tests/navigation/test_mcp_graph_tools.py +452 -0
  417. usebridger-0.1.0/tests/navigation/test_mcp_server.py +279 -0
  418. usebridger-0.1.0/tests/navigation/test_navigation.py +1680 -0
  419. usebridger-0.1.0/tests/repository/test_repository.py +148 -0
  420. usebridger-0.1.0/tests/settings/test_config.py +77 -0
  421. usebridger-0.1.0/tests/settings/test_credentials.py +103 -0
  422. usebridger-0.1.0/tests/test_auth_cli.py +127 -0
  423. usebridger-0.1.0/tests/test_cli_consumption.py +227 -0
  424. usebridger-0.1.0/tests/test_cli_init.py +1041 -0
  425. usebridger-0.1.0/tests/test_cli_progress.py +494 -0
  426. usebridger-0.1.0/tests/test_config_cli.py +197 -0
  427. usebridger-0.1.0/tests/test_incremental_init.py +763 -0
  428. usebridger-0.1.0/tests/test_llm_client.py +28 -0
  429. usebridger-0.1.0/tests/test_packaging.py +79 -0
  430. usebridger-0.1.0/tests/test_repository_brain_embeddings.py +267 -0
  431. usebridger-0.1.0/tests/test_repository_brain_harness.py +938 -0
  432. usebridger-0.1.0/tests/test_repository_brain_index.py +463 -0
  433. usebridger-0.1.0/tests/test_repository_brain_loader.py +318 -0
  434. usebridger-0.1.0/tests/test_repository_brain_publication.py +218 -0
  435. usebridger-0.1.0/tests/test_repository_brain_recovery.py +695 -0
  436. usebridger-0.1.0/tests/test_runtime_metrics.py +358 -0
  437. usebridger-0.1.0/tests/test_token_usage.py +192 -0
  438. usebridger-0.1.0/tests/test_user_settings_integration.py +105 -0
@@ -0,0 +1,92 @@
1
+ name: Publish release to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ permissions:
8
+ contents: read
9
+
10
+ jobs:
11
+ build:
12
+ if: github.event.release.prerelease == false && startsWith(github.event.release.tag_name, 'v')
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - name: Check out release commit
16
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
17
+ with:
18
+ ref: ${{ github.sha }}
19
+ persist-credentials: false
20
+
21
+ - name: Set up Python
22
+ uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
23
+ with:
24
+ python-version: "3.11"
25
+
26
+ - name: Install uv
27
+ uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
28
+ with:
29
+ version: "0.12.19"
30
+ enable-cache: false
31
+
32
+ - name: Check release tag matches project version
33
+ env:
34
+ RELEASE_TAG: ${{ github.event.release.tag_name }}
35
+ run: |
36
+ python - <<'PY'
37
+ import os
38
+ import re
39
+ import tomllib
40
+ from pathlib import Path
41
+
42
+ version = tomllib.loads(Path("pyproject.toml").read_text())["project"]["version"]
43
+ tag = os.environ["RELEASE_TAG"]
44
+ if not re.fullmatch(r"v\d+\.\d+\.\d+", tag) or tag != f"v{version}":
45
+ raise SystemExit(f"release tag {tag!r} does not match project version {version!r}")
46
+ PY
47
+
48
+ - name: Verify skill directories
49
+ run: |
50
+ for skill in bridger bridger-graph bridger-setup; do
51
+ test -d "skills/$skill"
52
+ test -f "skills/$skill/SKILL.md"
53
+ done
54
+
55
+ - name: Validate skills
56
+ run: gh skill publish --dry-run
57
+
58
+ - name: Run packaging regression test
59
+ run: uv run --no-project --with pytest pytest -q tests/test_packaging.py
60
+
61
+ - name: Build distributions
62
+ run: uv build --no-sources
63
+
64
+ - name: Upload distributions
65
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
66
+ with:
67
+ name: dist
68
+ path: dist/
69
+ if-no-files-found: error
70
+
71
+ publish:
72
+ needs: build
73
+ runs-on: ubuntu-latest
74
+ environment:
75
+ name: pypi
76
+ permissions:
77
+ id-token: write
78
+ steps:
79
+ - name: Install uv
80
+ uses: astral-sh/setup-uv@bec219d24cd3e171d82865faccec33120bb574f4 # v10.1.0
81
+ with:
82
+ version: "0.12.19"
83
+ enable-cache: false
84
+
85
+ - name: Download built distributions
86
+ uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
87
+ with:
88
+ name: dist
89
+ path: dist/
90
+
91
+ - name: Publish to PyPI
92
+ run: uv publish
@@ -0,0 +1,236 @@
1
+ # dependencies
2
+ /node_modules
3
+ /.pnp
4
+ .pnp.*
5
+ .yarn/*
6
+ !.yarn/patches
7
+ !.yarn/plugins
8
+ !.yarn/releases
9
+ !.yarn/versions
10
+
11
+ # testing
12
+ /coverage
13
+ .pytest_cache/
14
+ .mypy_cache/
15
+ .ruff_cache/
16
+
17
+ # next.js
18
+ /.next/
19
+ /out/
20
+
21
+ # production
22
+ /build
23
+ /dist
24
+
25
+ # python
26
+ __pycache__/
27
+ *.py[cod]
28
+ .venv/
29
+
30
+ # misc
31
+ .DS_Store
32
+ *.pem
33
+
34
+ # debug
35
+ npm-debug.log*
36
+ yarn-debug.log*
37
+ yarn-error.log*
38
+ .pnpm-debug.log*
39
+
40
+ # env files (can opt-in for committing if needed)
41
+ .env*
42
+
43
+ # vercel
44
+ .vercel
45
+
46
+ # legacy typescript
47
+ *.tsbuildinfo
48
+ next-env.d.ts
49
+
50
+ .agents/
51
+ .stitch/
52
+ work-plan/
53
+
54
+ # Byte-compiled / optimized / DLL files
55
+ __pycache__/
56
+ *.py[codz]
57
+ *$py.class
58
+
59
+ # C extensions
60
+ *.so
61
+
62
+ # Distribution / packaging
63
+ .Python
64
+ build/
65
+ develop-eggs/
66
+ dist/
67
+ downloads/
68
+ eggs/
69
+ .eggs/
70
+ lib/
71
+ lib64/
72
+ parts/
73
+ sdist/
74
+ var/
75
+ wheels/
76
+ share/python-wheels/
77
+ *.egg-info/
78
+ .installed.cfg
79
+ *.egg
80
+ MANIFEST
81
+
82
+ # PyInstaller
83
+ # Usually these files are written by a python script from a template
84
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
85
+ *.manifest
86
+ *.spec
87
+
88
+ # Installer logs
89
+ pip-log.txt
90
+ pip-delete-this-directory.txt
91
+
92
+ # Unit test / coverage reports
93
+ htmlcov/
94
+ .tox/
95
+ .nox/
96
+ .coverage
97
+ .coverage.*
98
+ .cache
99
+ nosetests.xml
100
+ coverage.xml
101
+ *.cover
102
+ *.py.cover
103
+ .hypothesis/
104
+ .pytest_cache/
105
+ cover/
106
+
107
+ # Translations
108
+ *.mo
109
+ *.pot
110
+
111
+ # Django stuff:
112
+ *.log
113
+ local_settings.py
114
+ db.sqlite3
115
+ db.sqlite3-journal
116
+
117
+ # Flask stuff:
118
+ instance/
119
+ .webassets-cache
120
+
121
+ # Scrapy stuff:
122
+ .scrapy
123
+
124
+ # Sphinx documentation
125
+ docs/_build/
126
+
127
+ # PyBuilder
128
+ .pybuilder/
129
+ target/
130
+
131
+ # Jupyter Notebook
132
+ .ipynb_checkpoints
133
+
134
+ # IPython
135
+ profile_default/
136
+ ipython_config.py
137
+
138
+ # pyenv
139
+ .python-version
140
+
141
+ # pipenv
142
+ Pipfile.lock
143
+
144
+ # UV
145
+ uv.lock
146
+
147
+ # pdm
148
+ pdm.lock
149
+ pdm.toml
150
+ .pdm-python
151
+ .pdm-build/
152
+
153
+
154
+
155
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
156
+ __pypackages__/
157
+
158
+ # Celery stuff
159
+ celerybeat-schedule
160
+ celerybeat.pid
161
+
162
+ # SageMath parsed files
163
+ *.sage.py
164
+
165
+ # Environments
166
+ .env
167
+ .envrc
168
+ .venv
169
+ env/
170
+ venv/
171
+ ENV/
172
+ env.bak/
173
+ venv.bak/
174
+
175
+ # Spyder project settings
176
+ .spyderproject
177
+ .spyproject
178
+
179
+ # Rope project settings
180
+ .ropeproject
181
+
182
+ # mkdocs documentation
183
+ /site
184
+
185
+ # mypy
186
+ .mypy_cache/
187
+ .dmypy.json
188
+ dmypy.json
189
+
190
+ # Pyre type checker
191
+ .pyre/
192
+
193
+ # pytype static type analyzer
194
+ .pytype/
195
+
196
+ # Cython debug symbols
197
+ cython_debug/
198
+
199
+ # Ruff stuff:
200
+ .ruff_cache/
201
+
202
+ # PyPI configuration file
203
+ .pypirc
204
+
205
+
206
+ # Marimo
207
+ marimo/_static/
208
+ marimo/_lsp/
209
+ __marimo__/
210
+
211
+
212
+ dockerfile
213
+ docker-compose.yaml
214
+
215
+ src/scripts/
216
+ src/infra/db/schemas/SCHEMAS.md
217
+
218
+ */.DS_Store
219
+ .DS_Store
220
+ .vscode/
221
+ src/apps/calls/ws/ws_local_client.py
222
+ debug.json
223
+ data/prompts/baseline.md
224
+ data/prompts/greeting.md
225
+ data/prompts/v1-tools.md
226
+ data/prompts/baseline-with-refer.md
227
+ .agents/
228
+ AGENTS.md
229
+ */ENDPOINTS.md
230
+
231
+ docs/
232
+ docs/bridger/
233
+ docs/instructions/
234
+ docs/knowledge/
235
+
236
+ .bridger/
@@ -0,0 +1,194 @@
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+ "Legal Entity" shall mean the union of the acting entity and all
15
+ other entities that control, are controlled by, or are under common
16
+ control with that entity. For the purposes of this definition,
17
+ "control" means (i) the power, direct or indirect, to cause the
18
+ direction or management of such entity, whether by contract or
19
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
20
+ outstanding shares, or (iii) beneficial ownership of such entity.
21
+ "You" (or "Your") shall mean an individual or Legal Entity
22
+ exercising permissions granted by this License.
23
+
24
+ "Source" form shall mean the preferred form for making modifications,
25
+ including but not limited to software source code, documentation
26
+ source, and configuration files.
27
+ "Object" form shall mean any form resulting from mechanical
28
+ transformation or translation of a Source form, including but
29
+ not limited to compiled object code, generated documentation,
30
+ and conversions to other media types.
31
+
32
+ "Work" shall mean the work of authorship, whether in Source or
33
+ Object form, made available under the License, as indicated by a
34
+ copyright notice that is included in or attached to the work
35
+ (an example is provided in the Appendix below).
36
+ "Derivative Works" shall mean any work, whether in Source or Object
37
+ form, that is based on (or derived from) the Work and for which the
38
+ editorial revisions, annotations, elaborations, or other modifications
39
+ represent, as a whole, an original work of authorship. For the purposes
40
+ of this License, Derivative Works shall not include works that remain
41
+ separable from, or merely link (or bind by name) to the interfaces of,
42
+ the Work and Derivative Works thereof.
43
+ "Contribution" shall mean any work of authorship, including
44
+ the original version of the Work and any modifications or additions
45
+ to that Work or Derivative Works thereof, that is intentionally
46
+ submitted to Licensor for inclusion in the Work by the copyright owner
47
+ or by an individual or Legal Entity authorized to submit on behalf of
48
+ the copyright owner. For the purposes of this definition, "submitted"
49
+ means any form of electronic, verbal, or written communication sent
50
+ to the Licensor or its representatives, including but not limited to
51
+ communication on electronic mailing lists, source code control systems,
52
+ and issue tracking systems that are managed by, or on behalf of
53
+ the Licensor for the purpose of discussing and improving the Work, but
54
+ excluding communication that is conspicuously marked or otherwise
55
+ designated in writing by the copyright owner as "Not a Contribution."
56
+ "Contributor" shall mean Licensor and any individual or Legal Entity
57
+ on behalf of whom a Contribution has been received by Licensor and
58
+ subsequently incorporated within the Work.
59
+
60
+ 2. Grant of Copyright License. Subject to the terms and conditions of
61
+ this License, each Contributor hereby grants to You a perpetual,
62
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
63
+ copyright license to reproduce, prepare Derivative Works of,
64
+ publicly display, publicly perform, sublicense, and distribute the
65
+ Work and such Derivative Works in Source or Object form.
66
+
67
+ 3. Grant of Patent License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ (except as stated in this section) patent license to make, have made,
71
+ use, offer to sell, sell, import, and otherwise transfer the Work,
72
+ where such license applies only to those patent claims licensable
73
+ by such Contributor that are necessarily infringed by their
74
+ Contribution(s) alone or by combination of their Contribution(s)
75
+ with the Work to which such Contribution(s) was submitted. If You
76
+ institute patent litigation against any entity (including a
77
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
78
+ or a Contribution incorporated within the Work constitutes direct
79
+ or contributory patent infringement, then any patent licenses
80
+ granted to You under this License for that Work shall terminate
81
+ as of the date such litigation is filed.
82
+
83
+ 4. Redistribution. You may reproduce and distribute copies of the
84
+ Work or Derivative Works thereof in any medium, with or without
85
+ modifications, and in Source or Object form, provided that You
86
+ meet the following conditions:
87
+
88
+ (a) You must give any other recipients of the Work or
89
+ Derivative Works a copy of this License; and
90
+
91
+ (b) You must cause any modified files to carry prominent notices
92
+ stating that You changed the files; and
93
+
94
+ (c) You must retain, in the Source form of any Derivative Works
95
+ that You distribute, all copyright, patent, trademark, and
96
+ attribution notices from the Source form of the Work,
97
+ excluding those notices that do not pertain to any part of
98
+ the Derivative Works; and
99
+
100
+ (d) If the Work includes a "NOTICE" text file as part of its
101
+ distribution, then any Derivative Works that You distribute must
102
+ include a readable copy of the attribution notices contained
103
+ within such NOTICE file, excluding those notices that do not
104
+ pertain to any part of the Derivative Works, in at least one
105
+ of the following places: within a NOTICE text file distributed
106
+ as part of the Derivative Works; within the Source form or
107
+ documentation, if provided along with the Derivative Works; or,
108
+ within a display generated by the Derivative Works, if and
109
+ wherever such third-party notices normally appear. The contents
110
+ of the NOTICE file are for informational purposes only and
111
+ do not modify the License. You may add Your own attribution
112
+ notices within Derivative Works that You distribute, alongside
113
+ or as an addendum to the NOTICE text from the Work, provided
114
+ that such additional attribution notices cannot be construed
115
+ as modifying the License.
116
+ You may add Your own copyright statement to Your modifications and
117
+ may provide additional or different license terms and conditions
118
+ for use, reproduction, or distribution of Your modifications, or
119
+ for any such Derivative Works as a whole, provided Your use,
120
+ reproduction, and distribution of the Work otherwise complies with
121
+ the conditions stated in this License.
122
+
123
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
124
+ any Contribution intentionally submitted for inclusion in the Work
125
+ by You to the Licensor shall be under the terms and conditions of
126
+ this License, without any additional terms or conditions.
127
+ Notwithstanding the above, nothing herein shall supersede or modify
128
+ the terms of any separate license agreement you may have executed
129
+ with Licensor regarding such Contributions.
130
+
131
+ 6. Trademarks. This License does not grant permission to use the trade
132
+ names, trademarks, service marks, or product names of the Licensor,
133
+ except as required for reasonable and customary use in describing the
134
+ origin of the Work and reproducing the content of the NOTICE file.
135
+
136
+ 7. Disclaimer of Warranty. Unless required by applicable law or
137
+ agreed to in writing, Licensor provides the Work (and each
138
+ Contributor provides its Contributions) on an "AS IS" BASIS,
139
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
140
+ implied, including, without limitation, any warranties or conditions
141
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
142
+ PARTICULAR PURPOSE. You are solely responsible for determining the
143
+ appropriateness of using or redistributing the Work and assume any
144
+ risks associated with Your exercise of permissions under this License.
145
+
146
+ 8. Limitation of Liability. In no event and under no legal theory,
147
+ whether in tort (including negligence), contract, or otherwise,
148
+ unless required by applicable law (such as deliberate and grossly
149
+ negligent acts) or agreed to in writing, shall any Contributor be
150
+ liable to You for damages, including any direct, indirect, special,
151
+ incidental, or consequential damages of any character arising as a
152
+ result of this License or out of the use or inability to use the
153
+ Work (including but not limited to damages for loss of goodwill,
154
+ work stoppage, computer failure or malfunction, or any and all
155
+ other commercial damages or losses), even if such Contributor
156
+ has been advised of the possibility of such damages.
157
+
158
+ 9. Accepting Warranty or Additional Liability. While redistributing
159
+ the Work or Derivative Works thereof, You may choose to offer,
160
+ and charge a fee for, acceptance of support, warranty, indemnity,
161
+ or other liability obligations and/or rights consistent with this
162
+ License. However, in accepting such obligations, You may act only
163
+ on Your own behalf and on Your sole responsibility, not on behalf
164
+ of any other Contributor, and only if You agree to indemnify,
165
+ defend, and hold each Contributor harmless for any liability
166
+ incurred by, or claims asserted against, such Contributor by reason
167
+ of your accepting any such warranty or additional liability.
168
+
169
+ END OF TERMS AND CONDITIONS
170
+
171
+ APPENDIX: How to apply the Apache License to your work.
172
+
173
+ To apply the Apache License to your work, attach the following
174
+ boilerplate notice, with the fields enclosed by brackets "[]"
175
+ replaced with your own identifying information. (Don't include
176
+ the brackets!) The text should be enclosed in the appropriate
177
+ comment syntax for the file format. We also recommend that a
178
+ file or class name and description of purpose be included on the
179
+ same "printed page" as the copyright notice for easier
180
+ identification within third-party archives.
181
+
182
+ Copyright [yyyy] [name of copyright owner]
183
+
184
+ Licensed under the Apache License, Version 2.0 (the "License");
185
+ you may not use this file except in compliance with the License.
186
+ You may obtain a copy of the License at
187
+
188
+ http://www.apache.org/licenses/LICENSE-2.0
189
+
190
+ Unless required by applicable law or agreed to in writing, software
191
+ distributed under the License is distributed on an "AS IS" BASIS,
192
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
193
+ See the License for the specific language governing permissions and
194
+ limitations under the License.
@@ -0,0 +1,156 @@
1
+ Metadata-Version: 2.5
2
+ Name: usebridger
3
+ Version: 0.1.0
4
+ Summary: Repository intelligence and knowledge system for AI coding agents
5
+ Project-URL: Homepage, https://github.com/thpnt/bridger
6
+ Project-URL: Repository, https://github.com/thpnt/bridger
7
+ Project-URL: Issues, https://github.com/thpnt/bridger/issues
8
+ License-Expression: Apache-2.0
9
+ License-File: LICENSE
10
+ License-File: THIRD_PARTY_NOTICES/Graphify/ATTRIBUTION.md
11
+ License-File: THIRD_PARTY_NOTICES/Graphify/LICENSE
12
+ License-File: THIRD_PARTY_NOTICES/Graphify/LICENSE-MIT
13
+ License-File: THIRD_PARTY_NOTICES/Graphify/NOTICE
14
+ Requires-Python: >=3.11
15
+ Requires-Dist: graspologic<4,>=3.4
16
+ Requires-Dist: huggingface-hub>=0.34
17
+ Requires-Dist: keyring>=25.0
18
+ Requires-Dist: mcp<3,>=2
19
+ Requires-Dist: networkx>=3.4
20
+ Requires-Dist: numpy<2.5,>=1.21
21
+ Requires-Dist: openai>=2.43.0
22
+ Requires-Dist: orjson>=3.10
23
+ Requires-Dist: platformdirs>=4.0
24
+ Requires-Dist: pydantic>=2.10
25
+ Requires-Dist: pyyaml>=6.0.3
26
+ Requires-Dist: rapidfuzz>=3.0
27
+ Requires-Dist: readchar>=4.2
28
+ Requires-Dist: rich>=13.0
29
+ Requires-Dist: sentence-transformers>=5.0.0
30
+ Requires-Dist: tiktoken>=0.14.0
31
+ Requires-Dist: tree-sitter-bash<0.27,>=0.23
32
+ Requires-Dist: tree-sitter-c-sharp<0.25,>=0.23
33
+ Requires-Dist: tree-sitter-c<0.25,>=0.23
34
+ Requires-Dist: tree-sitter-cpp<0.25,>=0.23
35
+ Requires-Dist: tree-sitter-elixir<0.5,>=0.3
36
+ Requires-Dist: tree-sitter-fortran<0.8,>=0.6
37
+ Requires-Dist: tree-sitter-go<0.26,>=0.23
38
+ Requires-Dist: tree-sitter-groovy<0.3,>=0.1
39
+ Requires-Dist: tree-sitter-java<0.25,>=0.23
40
+ Requires-Dist: tree-sitter-javascript<0.26,>=0.23
41
+ Requires-Dist: tree-sitter-json<0.26,>=0.23
42
+ Requires-Dist: tree-sitter-julia<0.25,>=0.23
43
+ Requires-Dist: tree-sitter-kotlin<2.0,>=1.0
44
+ Requires-Dist: tree-sitter-lua<0.6,>=0.2
45
+ Requires-Dist: tree-sitter-objc<4.0,>=3.0
46
+ Requires-Dist: tree-sitter-php<0.25,>=0.23
47
+ Requires-Dist: tree-sitter-powershell<0.28,>=0.26
48
+ Requires-Dist: tree-sitter-python<0.26,>=0.23
49
+ Requires-Dist: tree-sitter-ruby<0.25,>=0.23
50
+ Requires-Dist: tree-sitter-rust<0.25,>=0.23
51
+ Requires-Dist: tree-sitter-scala<0.27,>=0.23
52
+ Requires-Dist: tree-sitter-swift<0.9,>=0.7
53
+ Requires-Dist: tree-sitter-typescript<0.25,>=0.23
54
+ Requires-Dist: tree-sitter-verilog<2.0,>=1.0
55
+ Requires-Dist: tree-sitter-zig<2.0,>=1.0
56
+ Requires-Dist: tree-sitter<0.26,>=0.23.0
57
+ Requires-Dist: typer>=0.15
58
+ Description-Content-Type: text/markdown
59
+
60
+ # Bridger
61
+
62
+ Bridger is a repository intelligence and knowledge system for AI coding agents.
63
+ The design is documented in [`docs/bridger`](docs/bridger).
64
+
65
+ ## Local development
66
+
67
+ ```shell
68
+ uv sync
69
+ uv run pytest
70
+ uv run ruff check .
71
+ uv run ruff format .
72
+ uv run mypy src
73
+ ```
74
+
75
+ ## Install and connect a coding agent
76
+
77
+ Install Bridger once, then initialize each repository you want it to serve:
78
+
79
+ ```shell
80
+ uv tool install usebridger
81
+ bridger auth set-key
82
+ cd ~/my-project
83
+ bridger init --reasoning low
84
+ ```
85
+
86
+ `bridger auth set-key` prompts for a hidden OpenAI API key and stores it in the
87
+ system credential store. Use `bridger auth status` to check the active source or
88
+ `bridger auth remove` to delete the stored key. For CI or a temporary override,
89
+ set `OPENAI_API_KEY` instead. It takes precedence over the stored credential.
90
+ Bridger does not store API keys in the repository, `.bridger/`, or `config.toml`.
91
+
92
+ Successful `bridger auth set-key` setup creates an editable, non-secret
93
+ `config.toml` in the platform-specific Bridger user config directory if one
94
+ does not exist. Its initial contents come from Bridger's bundled `config.toml`:
95
+
96
+ ```toml
97
+ schema_version = 1
98
+
99
+ [openai]
100
+ model = "gpt-6-sol"
101
+ reasoning = "xhigh"
102
+ ```
103
+
104
+ `--reasoning` overrides the configured reasoning value. Existing
105
+ `BRIDGER_OPENAI_MODEL` environment settings continue to override the configured
106
+ model. Without a user config file, Bridger reads the bundled defaults and does
107
+ not create files in the home directory.
108
+
109
+ Register a local stdio MCP server in your coding agent. For Codex, a minimal
110
+ configuration is:
111
+
112
+ ```toml
113
+ [mcp_servers.bridger]
114
+ command = "bridger"
115
+ args = ["mcp"]
116
+ ```
117
+
118
+ For a project-local Cursor configuration, pass the workspace explicitly:
119
+
120
+ ```json
121
+ {
122
+ "mcpServers": {
123
+ "bridger": {
124
+ "type": "stdio",
125
+ "command": "bridger",
126
+ "args": ["mcp", "--repository", "${workspaceFolder}"]
127
+ }
128
+ }
129
+ }
130
+ ```
131
+
132
+ `bridger mcp` uses the coding agent's subprocess working directory by default.
133
+ It resolves nested directories to the Git repository root. Use
134
+ `bridger mcp --repository /path/to/repository` when the host starts the process
135
+ elsewhere. Each server process serves one repository and stops with its host
136
+ session. It exposes understand, impact, query_graph, search_repository,
137
+ get_graph_entity, get_graph_neighbors, get_graph_subgraph, get_graph_path,
138
+ list_graph_communities, and get_graph_community.
139
+
140
+ ## CLI commands
141
+
142
+ ```shell
143
+ uv run bridger init
144
+ uv run bridger understand "How does repository initialization work?"
145
+ uv run bridger impact RepositoryLoader
146
+ uv run bridger understand "How does repository initialization work?" --json
147
+ ```
148
+
149
+ Run consumption commands from inside an initialized repository. UNDERSTAND
150
+ combines Repository Brain knowledge with structural context. IMPACT accepts
151
+ exact repository symbols and reports potential structural impact. Use `--json`
152
+ for the canonical machine-readable result.
153
+
154
+ Bridger is licensed under Apache-2.0. Vendored Graphify remains third-party
155
+ code; its license and attribution notices are in
156
+ [THIRD_PARTY_NOTICES/Graphify](THIRD_PARTY_NOTICES/Graphify).