codenib 0.2.0__tar.gz → 0.2.2__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 (880) hide show
  1. codenib-0.2.2/CHANGELOG.md +202 -0
  2. codenib-0.2.2/MANIFEST.in +14 -0
  3. codenib-0.2.2/PKG-INFO +446 -0
  4. codenib-0.2.2/README.md +337 -0
  5. codenib-0.2.2/codenib/__init__.py +88 -0
  6. codenib-0.2.2/codenib/_atomic_directory.py +6728 -0
  7. codenib-0.2.2/codenib/_bounded_json.py +758 -0
  8. codenib-0.2.2/codenib/_captured_directory.py +4319 -0
  9. codenib-0.2.2/codenib/_contained_source.py +2421 -0
  10. codenib-0.2.2/codenib/_local_workspace_provider.py +218 -0
  11. codenib-0.2.2/codenib/_optional_entrypoints.py +171 -0
  12. codenib-0.2.2/codenib/_owned_file_publication.py +2391 -0
  13. codenib-0.2.2/codenib/_secret_fields.py +197 -0
  14. codenib-0.2.2/codenib/_windows_fs_authority.py +1471 -0
  15. codenib-0.2.2/codenib/_workspace_owner.py +433 -0
  16. codenib-0.2.2/codenib/_workspace_provider.py +836 -0
  17. codenib-0.2.2/codenib/agent/lsp_graph.py +977 -0
  18. codenib-0.2.2/codenib/agent/lsp_provider.py +873 -0
  19. codenib-0.2.2/codenib/agent/rerank_agent.py +508 -0
  20. codenib-0.2.2/codenib/agent/runner.py +2181 -0
  21. codenib-0.2.2/codenib/agent/skills/lsp_route/executor.py +32 -0
  22. codenib-0.2.2/codenib/agent/skills/repository_search/executor.py +433 -0
  23. codenib-0.2.2/codenib/agent/tools/defaults.py +1425 -0
  24. codenib-0.2.2/codenib/agent/tools/grep_worker.py +27 -0
  25. codenib-0.2.2/codenib/artifacts/__init__.py +82 -0
  26. codenib-0.2.2/codenib/artifacts/archive.py +938 -0
  27. codenib-0.2.2/codenib/artifacts/context.py +537 -0
  28. codenib-0.2.2/codenib/artifacts/mcp_config.py +91 -0
  29. codenib-0.2.2/codenib/artifacts/portable_views.py +3289 -0
  30. codenib-0.2.2/codenib/artifacts/runtime.py +1302 -0
  31. codenib-0.2.2/codenib/artifacts/security.py +515 -0
  32. codenib-0.2.2/codenib/artifacts/strict_bm25.py +1664 -0
  33. codenib-0.2.2/codenib/artifacts/strict_context.py +1191 -0
  34. codenib-0.2.2/codenib/cli.py +4901 -0
  35. codenib-0.2.2/codenib/clients/__init__.py +5 -0
  36. codenib-0.2.2/codenib/clients/_manifest.py +141 -0
  37. codenib-0.2.2/codenib/clients/agentless_agent.py +576 -0
  38. codenib-0.2.2/codenib/clients/claude_agent.py +625 -0
  39. codenib-0.2.2/codenib/clients/codex_agent.py +326 -0
  40. codenib-0.2.2/codenib/clients/cosil_agent.py +751 -0
  41. codenib-0.2.2/codenib/clients/execution/__init__.py +61 -0
  42. codenib-0.2.2/codenib/clients/execution/codex.py +322 -0
  43. codenib-0.2.2/codenib/clients/execution/process.py +214 -0
  44. codenib-0.2.2/codenib/clients/execution/protocol.py +21 -0
  45. codenib-0.2.2/codenib/clients/execution/sandbox.py +138 -0
  46. codenib-0.2.2/codenib/clients/execution/types.py +234 -0
  47. codenib-0.2.2/codenib/clients/guardian/__init__.py +78 -0
  48. codenib-0.2.2/codenib/clients/guardian/agent.py +475 -0
  49. codenib-0.2.2/codenib/clients/guardian/aggregation.py +367 -0
  50. codenib-0.2.2/codenib/clients/guardian/artifacts.py +359 -0
  51. codenib-0.2.2/codenib/clients/guardian/contribution.py +264 -0
  52. codenib-0.2.2/codenib/clients/guardian/discovery.py +259 -0
  53. codenib-0.2.2/codenib/clients/guardian/distillation.py +78 -0
  54. codenib-0.2.2/codenib/clients/guardian/evidence.py +311 -0
  55. codenib-0.2.2/codenib/clients/guardian/exchange.py +200 -0
  56. codenib-0.2.2/codenib/clients/guardian/frontier.py +63 -0
  57. codenib-0.2.2/codenib/clients/guardian/interaction.py +158 -0
  58. codenib-0.2.2/codenib/clients/guardian/memory.py +423 -0
  59. codenib-0.2.2/codenib/clients/guardian/normalization.py +519 -0
  60. codenib-0.2.2/codenib/clients/guardian/patch_check.py +900 -0
  61. codenib-0.2.2/codenib/clients/guardian/planning.py +94 -0
  62. codenib-0.2.2/codenib/clients/guardian/prompts.py +605 -0
  63. codenib-0.2.2/codenib/clients/guardian/provenance.py +69 -0
  64. codenib-0.2.2/codenib/clients/guardian/types.py +666 -0
  65. codenib-0.2.2/codenib/clients/locagent_agent.py +585 -0
  66. codenib-0.2.2/codenib/clients/orcaloca_agent.py +288 -0
  67. codenib-0.2.2/codenib/code_chunker.py +881 -0
  68. codenib-0.2.2/codenib/code_chunking/base.py +621 -0
  69. codenib-0.2.2/codenib/code_chunking/python_chunker.py +495 -0
  70. codenib-0.2.2/codenib/codegraph_onboarding.py +644 -0
  71. codenib-0.2.2/codenib/compiler/__init__.py +234 -0
  72. codenib-0.2.2/codenib/compiler/artifact_fingerprints.py +280 -0
  73. codenib-0.2.2/codenib/compiler/artifact_quality.py +886 -0
  74. codenib-0.2.2/codenib/compiler/cache_import.py +838 -0
  75. codenib-0.2.2/codenib/compiler/cache_lock.py +1237 -0
  76. codenib-0.2.2/codenib/compiler/checkout_identity.py +80 -0
  77. codenib-0.2.2/codenib/compiler/graph_artifact.py +305 -0
  78. codenib-0.2.2/codenib/compiler/index_builders.py +2290 -0
  79. codenib-0.2.2/codenib/compiler/index_compiler.py +737 -0
  80. codenib-0.2.2/codenib/compiler/manifest.py +742 -0
  81. codenib-0.2.2/codenib/compiler/manifest_export.py +2031 -0
  82. codenib-0.2.2/codenib/compiler/manifest_import.py +1523 -0
  83. codenib-0.2.2/codenib/compiler/manifest_materialization.py +2195 -0
  84. codenib-0.2.2/codenib/compiler/manifest_source.py +160 -0
  85. codenib-0.2.2/codenib/compiler/manifest_storage.py +2728 -0
  86. codenib-0.2.2/codenib/compiler/retained_manifest_contract.py +56 -0
  87. codenib-0.2.2/codenib/compiler/retained_snapshot.py +353 -0
  88. codenib-0.2.2/codenib/compiler/skill_context.py +972 -0
  89. codenib-0.2.2/codenib/compiler/zoekt_artifact.py +436 -0
  90. codenib-0.2.2/codenib/context_delivery.py +255 -0
  91. codenib-0.2.2/codenib/dataset/codenib_base.py +367 -0
  92. codenib-0.2.2/codenib/dataset_ids.py +8 -0
  93. codenib-0.2.2/codenib/eval/agent_runner/__init__.py +240 -0
  94. codenib-0.2.2/codenib/eval/agent_runner/contexts.py +135 -0
  95. codenib-0.2.2/codenib/eval/agent_runner/loc_baseline.py +356 -0
  96. codenib-0.2.2/codenib/eval/agent_runner/sweep_config.py +161 -0
  97. codenib-0.2.2/codenib/eval/benchmarks/deepswe/__init__.py +44 -0
  98. codenib-0.2.2/codenib/eval/benchmarks/deepswe/metrics.py +155 -0
  99. codenib-0.2.2/codenib/eval/benchmarks/deepswe/reports.py +334 -0
  100. codenib-0.2.2/codenib/eval/benchmarks/deepswe/results.py +75 -0
  101. codenib-0.2.2/codenib/eval/experiments/lsp_agent_study_policy.py +57 -0
  102. codenib-0.2.2/codenib/eval/retrieval_eval.py +591 -0
  103. codenib-0.2.2/codenib/facts/__init__.py +168 -0
  104. codenib-0.2.2/codenib/facts/adapters.py +311 -0
  105. codenib-0.2.2/codenib/facts/clangd.py +593 -0
  106. codenib-0.2.2/codenib/facts/convergence.py +196 -0
  107. codenib-0.2.2/codenib/facts/generation.py +738 -0
  108. codenib-0.2.2/codenib/facts/model.py +666 -0
  109. codenib-0.2.2/codenib/facts/resolver.py +529 -0
  110. codenib-0.2.2/codenib/facts/storage.py +440 -0
  111. codenib-0.2.2/codenib/graph/code_graph.py +1304 -0
  112. codenib-0.2.2/codenib/graph/dependency.py +319 -0
  113. codenib-0.2.2/codenib/graph/hierarchy.py +865 -0
  114. codenib-0.2.2/codenib/graph/incremental/__init__.py +41 -0
  115. codenib-0.2.2/codenib/graph/incremental/patcher_cpp.py +791 -0
  116. codenib-0.2.2/codenib/graph/setup.py +715 -0
  117. codenib-0.2.2/codenib/graph/source_coverage.py +249 -0
  118. codenib-0.2.2/codenib/graph/traverse_graph.py +306 -0
  119. codenib-0.2.2/codenib/index/embedding/_lifecycle.py +56 -0
  120. codenib-0.2.2/codenib/index/embedding/artifact_integrity.py +683 -0
  121. codenib-0.2.2/codenib/index/embedding/builders.py +689 -0
  122. codenib-0.2.2/codenib/index/embedding/model_policy.py +215 -0
  123. codenib-0.2.2/codenib/index/embedding/text_policy.py +27 -0
  124. codenib-0.2.2/codenib/index/embedding/vector_store.py +2510 -0
  125. codenib-0.2.2/codenib/index/incremental/embeddings_cache.py +282 -0
  126. codenib-0.2.2/codenib/index/incremental/index_updater.py +305 -0
  127. codenib-0.2.2/codenib/index/regex_idx/__init__.py +7 -0
  128. codenib-0.2.2/codenib/index/regex_idx/regex_idx.py +257 -0
  129. codenib-0.2.2/codenib/index/rerank/cross_encoder.py +449 -0
  130. codenib-0.2.2/codenib/index/sparse_idx/bm25_index.py +1191 -0
  131. codenib-0.2.2/codenib/index/trigram/zoekt_searcher.py +481 -0
  132. codenib-0.2.2/codenib/integrations/reponavigator.py +694 -0
  133. codenib-0.2.2/codenib/llm/litellm_chat.py +479 -0
  134. codenib-0.2.2/codenib/log_utils.py +342 -0
  135. codenib-0.2.2/codenib/ls_index/__init__.py +18 -0
  136. codenib-0.2.2/codenib/ls_index/clangd_contract.py +66 -0
  137. codenib-0.2.2/codenib/ls_index/clangd_decode.py +1845 -0
  138. codenib-0.2.2/codenib/ls_index/clangd_indexer.py +1467 -0
  139. codenib-0.2.2/codenib/ls_router.py +657 -0
  140. codenib-0.2.2/codenib/mcp/context.py +1051 -0
  141. codenib-0.2.2/codenib/mcp/explore_bounds.py +820 -0
  142. codenib-0.2.2/codenib/mcp/explore_session.py +461 -0
  143. codenib-0.2.2/codenib/mcp/prompts.py +150 -0
  144. codenib-0.2.2/codenib/mcp/server.py +1020 -0
  145. codenib-0.2.2/codenib/mcp/tool_surface.py +89 -0
  146. codenib-0.2.2/codenib/mcp/tools/_validation.py +62 -0
  147. codenib-0.2.2/codenib/mcp/tools/dependency.py +97 -0
  148. codenib-0.2.2/codenib/mcp/tools/explore.py +625 -0
  149. codenib-0.2.2/codenib/mcp/tools/lsp.py +233 -0
  150. codenib-0.2.2/codenib/mcp/tools/search.py +419 -0
  151. codenib-0.2.2/codenib/mcp/tools/source.py +159 -0
  152. codenib-0.2.2/codenib/model/embedding_retrieve_pipeline.py +179 -0
  153. codenib-0.2.2/codenib/model/graph_retrieve_pipeline.py +278 -0
  154. codenib-0.2.2/codenib/model/hybrid_retrieve_pipeline.py +267 -0
  155. codenib-0.2.2/codenib/model/retrieve_rerank_pipeline.py +1033 -0
  156. codenib-0.2.2/codenib/native_index_authorization.py +323 -0
  157. codenib-0.2.2/codenib/ops/rerank.py +254 -0
  158. codenib-0.2.2/codenib/repository_filters.py +143 -0
  159. codenib-0.2.2/codenib/repository_source_selection.py +235 -0
  160. codenib-0.2.2/codenib/repository_summary.py +181 -0
  161. codenib-0.2.2/codenib/sandbox/docker.py +2298 -0
  162. codenib-0.2.2/codenib/sandbox/types.py +428 -0
  163. codenib-0.2.2/codenib/scip_interface/fact_batch_buffer.py +813 -0
  164. codenib-0.2.2/codenib/scip_interface/lsp_occurrence_index.py +339 -0
  165. codenib-0.2.2/codenib/scip_interface/query_surface.py +140 -0
  166. codenib-0.2.2/codenib/scip_interface/rust_analyzer.py +39 -0
  167. codenib-0.2.2/codenib/scip_interface/scip_decode_core.py +416 -0
  168. codenib-0.2.2/codenib/scip_interface/scip_filter.py +89 -0
  169. codenib-0.2.2/codenib/scip_interface/scip_indexer_base.py +731 -0
  170. codenib-0.2.2/codenib/scip_interface/scip_indexer_go.py +156 -0
  171. codenib-0.2.2/codenib/scip_interface/scip_indexer_ruby.py +382 -0
  172. codenib-0.2.2/codenib/scip_interface/scip_indexer_rust.py +255 -0
  173. codenib-0.2.2/codenib/scip_interface/scip_indexer_ts.py +736 -0
  174. codenib-0.2.2/codenib/scip_interface/scip_query.py +1823 -0
  175. codenib-0.2.2/codenib/scip_interface/scip_query_provider.py +680 -0
  176. codenib-0.2.2/codenib/scip_interface/typescript_semantics.py +314 -0
  177. codenib-0.2.2/codenib/search.py +403 -0
  178. codenib-0.2.2/codenib/serving/__init__.py +28 -0
  179. codenib-0.2.2/codenib/serving/drafter/__init__.py +44 -0
  180. codenib-0.2.2/codenib/serving/drafter/base.py +45 -0
  181. codenib-0.2.2/codenib/serving/drafter/copy.py +98 -0
  182. codenib-0.2.2/codenib/serving/drafter/fusion.py +74 -0
  183. codenib-0.2.2/codenib/serving/drafter/retrieval.py +573 -0
  184. codenib-0.2.2/codenib/serving/drafter/suffix_automaton.py +198 -0
  185. codenib-0.2.2/codenib/serving/server/__init__.py +29 -0
  186. codenib-0.2.2/codenib/serving/server/api.py +830 -0
  187. codenib-0.2.2/codenib/serving/server/hf_engine.py +293 -0
  188. codenib-0.2.2/codenib/serving/server/real_model.py +307 -0
  189. codenib-0.2.2/codenib/serving/server/schemas.py +145 -0
  190. codenib-0.2.2/codenib/serving/server/sglang.py +268 -0
  191. codenib-0.2.2/codenib/serving/server/tokenization.py +101 -0
  192. codenib-0.2.2/codenib/serving/server/worker.py +269 -0
  193. codenib-0.2.2/codenib/serving/types.py +85 -0
  194. codenib-0.2.2/codenib/source_fingerprint.py +3451 -0
  195. codenib-0.2.2/codenib/storage/__init__.py +154 -0
  196. codenib-0.2.2/codenib/storage/cas.py +1929 -0
  197. codenib-0.2.2/codenib/storage/models.py +1164 -0
  198. codenib-0.2.2/codenib/storage/protocols.py +470 -0
  199. codenib-0.2.2/codenib/storage/sqlite_catalog.py +3785 -0
  200. codenib-0.2.2/codenib/storage/view_bundle.py +4870 -0
  201. codenib-0.2.2/codenib/toolchains.py +544 -0
  202. codenib-0.2.2/codenib/web/app.py +858 -0
  203. codenib-0.2.2/codenib/web/codemap.py +1315 -0
  204. codenib-0.2.2/codenib/web/commit_window.py +318 -0
  205. codenib-0.2.2/codenib/web/config.py +442 -0
  206. codenib-0.2.2/codenib/web/entrypoints.py +425 -0
  207. codenib-0.2.2/codenib/web/launcher.py +257 -0
  208. codenib-0.2.2/codenib/web/limits.py +8 -0
  209. codenib-0.2.2/codenib/web/local.py +215 -0
  210. codenib-0.2.2/codenib/web/modulemap.py +687 -0
  211. codenib-0.2.2/codenib/web/native_authority.py +208 -0
  212. codenib-0.2.2/codenib/web/ports.py +54 -0
  213. codenib-0.2.2/codenib/web/repo_registry.py +1037 -0
  214. codenib-0.2.2/codenib/web/repository_files.py +274 -0
  215. codenib-0.2.2/codenib/web/request_limits.py +105 -0
  216. codenib-0.2.2/codenib/web/schemas.py +486 -0
  217. codenib-0.2.2/codenib/web/static_export.py +1129 -0
  218. codenib-0.2.2/codenib/web/static_server.py +280 -0
  219. codenib-0.2.2/codenib/wiki/agent_wiki.py +5855 -0
  220. codenib-0.2.2/codenib/wiki/builder.py +993 -0
  221. codenib-0.2.2/codenib/wiki/cache_audit.py +309 -0
  222. codenib-0.2.2/codenib/wiki/evidence.py +1100 -0
  223. codenib-0.2.2/codenib/wiki/media_generation.py +886 -0
  224. codenib-0.2.2/codenib/wiki/multimodal.py +147 -0
  225. codenib-0.2.2/codenib/wiki/outline.py +1450 -0
  226. codenib-0.2.2/codenib/wiki/prewarm.py +316 -0
  227. codenib-0.2.2/codenib/wiki/quality.py +1137 -0
  228. codenib-0.2.2/codenib.egg-info/PKG-INFO +446 -0
  229. codenib-0.2.2/codenib.egg-info/SOURCES.txt +664 -0
  230. codenib-0.2.2/codenib.egg-info/entry_points.txt +16 -0
  231. codenib-0.2.2/codenib.egg-info/requires.txt +95 -0
  232. codenib-0.2.2/native/workspace_owner.c +3881 -0
  233. codenib-0.2.2/pyproject.toml +229 -0
  234. codenib-0.2.2/server.json +45 -0
  235. codenib-0.2.2/setup.py +46 -0
  236. codenib-0.2.2/test/test_atomic_directory.py +10300 -0
  237. codenib-0.2.2/test/test_bounded_json.py +459 -0
  238. codenib-0.2.2/test/test_captured_directory.py +3086 -0
  239. codenib-0.2.2/test/test_ci_policy.py +481 -0
  240. codenib-0.2.2/test/test_cli.py +4010 -0
  241. codenib-0.2.2/test/test_cli_entrypoints.py +280 -0
  242. codenib-0.2.2/test/test_codegraph_onboarding.py +1011 -0
  243. codenib-0.2.2/test/test_context_delivery.py +111 -0
  244. codenib-0.2.2/test/test_lazy_imports.py +150 -0
  245. codenib-0.2.2/test/test_local_workspace_provider.py +771 -0
  246. codenib-0.2.2/test/test_log_utils.py +109 -0
  247. codenib-0.2.2/test/test_ls_router_registry.py +629 -0
  248. codenib-0.2.2/test/test_mcp_registry.py +72 -0
  249. codenib-0.2.2/test/test_namespace.py +99 -0
  250. codenib-0.2.2/test/test_namespace_contract.py +90 -0
  251. codenib-0.2.2/test/test_native_index_authorization.py +190 -0
  252. codenib-0.2.2/test/test_owned_file_publication.py +2744 -0
  253. codenib-0.2.2/test/test_release_artifacts.py +730 -0
  254. codenib-0.2.2/test/test_repository_source_selection.py +321 -0
  255. codenib-0.2.2/test/test_repository_source_selection_cli.py +114 -0
  256. codenib-0.2.2/test/test_search.py +143 -0
  257. codenib-0.2.2/test/test_source_fingerprint.py +4973 -0
  258. codenib-0.2.2/test/test_toolchains.py +199 -0
  259. codenib-0.2.2/test/test_vector_pre_model_authorization.py +391 -0
  260. codenib-0.2.2/test/test_workspace_owner.py +1098 -0
  261. codenib-0.2.2/test/test_workspace_provider.py +1594 -0
  262. codenib-0.2.2/web/app/[repoId]/ask/page.tsx +329 -0
  263. codenib-0.2.2/web/app/[repoId]/page.tsx +1025 -0
  264. codenib-0.2.2/web/app/globals.css +4355 -0
  265. codenib-0.2.2/web/components/CodeGraph.tsx +1917 -0
  266. codenib-0.2.2/web/components/CodePanel.tsx +317 -0
  267. codenib-0.2.2/web/components/GraphView.tsx +396 -0
  268. codenib-0.2.2/web/components/HierarchyMap.test.tsx +246 -0
  269. codenib-0.2.2/web/components/HierarchyMap.tsx +368 -0
  270. codenib-0.2.2/web/components/SystemMap.test.tsx +99 -0
  271. codenib-0.2.2/web/components/SystemMap.tsx +470 -0
  272. codenib-0.2.2/web/dist/assets/AskBar-DiJdVsAg.js +31 -0
  273. codenib-0.2.2/web/dist/assets/CodeGraph-C6T8Ji-q.js +3 -0
  274. codenib-0.2.2/web/dist/assets/CodePanel-CuNH_lmV.js +1 -0
  275. codenib-0.2.2/web/dist/assets/Codemap-EuNd3aNn.js +2 -0
  276. codenib-0.2.2/web/dist/assets/GraphView-DbU4s7e6.js +2 -0
  277. codenib-0.2.2/web/dist/assets/Header-DTpu1R8d.js +1 -0
  278. codenib-0.2.2/web/dist/assets/HighlightedBlock-AnsqcW7n.js +1 -0
  279. codenib-0.2.2/web/dist/assets/HighlightedCode-16YOPh7P.js +2 -0
  280. codenib-0.2.2/web/dist/assets/Mermaid-DoTBXSj1.js +308 -0
  281. codenib-0.2.2/web/dist/assets/abnfDiagram-N423BO3Z-DPNUHc2-.js +1 -0
  282. codenib-0.2.2/web/dist/assets/api-CPMHldTq.js +1 -0
  283. codenib-0.2.2/web/dist/assets/arc-CgMW27ju.js +1 -0
  284. codenib-0.2.2/web/dist/assets/architectureDiagram-T3A2C74G-DPG84uEH.js +36 -0
  285. codenib-0.2.2/web/dist/assets/blockDiagram-VBNYF7ZC-gY-9wuCs.js +132 -0
  286. codenib-0.2.2/web/dist/assets/c4Diagram-5PPSVZJV-Cvw3QJKZ.js +10 -0
  287. codenib-0.2.2/web/dist/assets/channel-DQAgHv6Q.js +1 -0
  288. codenib-0.2.2/web/dist/assets/chunk-2GRJ4B5K-Bd8b6s66.js +1 -0
  289. codenib-0.2.2/web/dist/assets/chunk-2Q5K7J3B-D1oWLBG7.js +1 -0
  290. codenib-0.2.2/web/dist/assets/chunk-5RXB4S5H-C3AxE2jy.js +231 -0
  291. codenib-0.2.2/web/dist/assets/chunk-5VM5RSS4-D6XhP-jw.js +15 -0
  292. codenib-0.2.2/web/dist/assets/chunk-6Q2QTUOP-BqxoWlKq.js +88 -0
  293. codenib-0.2.2/web/dist/assets/chunk-GF5L2VYU-tU5u_HPV.js +206 -0
  294. codenib-0.2.2/web/dist/assets/chunk-JWPE2WC7-Ca5gQvfo.js +1 -0
  295. codenib-0.2.2/web/dist/assets/chunk-KBJHAD2P-CJGP4tzF.js +1 -0
  296. codenib-0.2.2/web/dist/assets/chunk-RYQCIY6F-CccM70iZ.js +1 -0
  297. codenib-0.2.2/web/dist/assets/chunk-XXDRQBXY-CkQOD8ED.js +1 -0
  298. codenib-0.2.2/web/dist/assets/classDiagram-JCYQIIEL-Mm3oXoXv.js +1 -0
  299. codenib-0.2.2/web/dist/assets/classDiagram-v2-OCEON4UE-Mm3oXoXv.js +1 -0
  300. codenib-0.2.2/web/dist/assets/cose-bilkent-JH36ORCC-Dm9rOwqG.js +1 -0
  301. codenib-0.2.2/web/dist/assets/cynefin-VYW2F7L2-DHHQO_Nd.js +166 -0
  302. codenib-0.2.2/web/dist/assets/cynefinDiagram-MW4NZA55-ByewwyBe.js +62 -0
  303. codenib-0.2.2/web/dist/assets/dagre-VZM6K2ZE-DtWG4zrD.js +4 -0
  304. codenib-0.2.2/web/dist/assets/diagram-7IWD3JNH-l6R1Fs0x.js +30 -0
  305. codenib-0.2.2/web/dist/assets/diagram-B4RE2ZJO-DBSH3eXP.js +3 -0
  306. codenib-0.2.2/web/dist/assets/diagram-LBJQPF4R-qrueljZv.js +24 -0
  307. codenib-0.2.2/web/dist/assets/diagram-Q27KOJAE-4wm74SS3.js +24 -0
  308. codenib-0.2.2/web/dist/assets/diagram-UB23O5K3-cd8PNmv-.js +41 -0
  309. codenib-0.2.2/web/dist/assets/ebnfDiagram-BXEA7PRR-B4idecbY.js +1 -0
  310. codenib-0.2.2/web/dist/assets/erDiagram-JOGREHBK-mTJVh6E5.js +85 -0
  311. codenib-0.2.2/web/dist/assets/flowDiagram-UKHOOZJN-CkrFSLB5.js +156 -0
  312. codenib-0.2.2/web/dist/assets/ganttDiagram-PKOTCBZU-hrhdmpWn.js +292 -0
  313. codenib-0.2.2/web/dist/assets/gitGraphDiagram-DS77QQ5N-C1V8kJt8.js +106 -0
  314. codenib-0.2.2/web/dist/assets/graph-DOmOIIwC.js +1 -0
  315. codenib-0.2.2/web/dist/assets/highlight-BMMw0pcp.js +5 -0
  316. codenib-0.2.2/web/dist/assets/index-DH1ed8RR.js +9 -0
  317. codenib-0.2.2/web/dist/assets/index-cFUY6sEV.css +1 -0
  318. codenib-0.2.2/web/dist/assets/infoDiagram-6WML65LV-BtARLp8i.js +2 -0
  319. codenib-0.2.2/web/dist/assets/ishikawaDiagram-WSZJBQD7-Da2YryI-.js +70 -0
  320. codenib-0.2.2/web/dist/assets/journeyDiagram-NVQOT4AX-CxuMFRtK.js +139 -0
  321. codenib-0.2.2/web/dist/assets/kanban-definition-27J2QSJJ-DP3K-G4t.js +89 -0
  322. codenib-0.2.2/web/dist/assets/layout-D-LzfAck.js +1 -0
  323. codenib-0.2.2/web/dist/assets/linear-CkOnLbQM.js +1 -0
  324. codenib-0.2.2/web/dist/assets/map-DxJ2ADlA.js +1 -0
  325. codenib-0.2.2/web/dist/assets/mindmap-definition-FAOFIHXS-CtUOHHmE.js +96 -0
  326. codenib-0.2.2/web/dist/assets/page-CNtLIuD3.js +1 -0
  327. codenib-0.2.2/web/dist/assets/page-DcOA6uct.js +6 -0
  328. codenib-0.2.2/web/dist/assets/page-Qn3AJhlw.js +2 -0
  329. codenib-0.2.2/web/dist/assets/page-a28I-7Gb.js +1 -0
  330. codenib-0.2.2/web/dist/assets/pegDiagram-VL7TDLO6-CCD_MUJb.js +1 -0
  331. codenib-0.2.2/web/dist/assets/pieDiagram-7S7Q4E2Y-BGxAmmsz.js +39 -0
  332. codenib-0.2.2/web/dist/assets/quadrantDiagram-CIZ2JOQS-Ba7_9Wax.js +7 -0
  333. codenib-0.2.2/web/dist/assets/railroadDiagram-AXF67PYL-Da5bAMQ3.js +1 -0
  334. codenib-0.2.2/web/dist/assets/requirementDiagram-LRYGKXZP-DPG4aOUi.js +84 -0
  335. codenib-0.2.2/web/dist/assets/sankeyDiagram-W5VNT64P-Wzo-1gO4.js +40 -0
  336. codenib-0.2.2/web/dist/assets/sequenceDiagram-SI44F4Z6-CMyW1qkg.js +162 -0
  337. codenib-0.2.2/web/dist/assets/sizeCapture-X5ZJPWSS-CznbH2Pl.js +1 -0
  338. codenib-0.2.2/web/dist/assets/stateDiagram-OKZ733FA-C6TxOIOY.js +1 -0
  339. codenib-0.2.2/web/dist/assets/stateDiagram-v2-UEYNNEHI-DvtHOaBR.js +1 -0
  340. codenib-0.2.2/web/dist/assets/swimlanes-SLNWSIFB-SpEJSmLX.js +2 -0
  341. codenib-0.2.2/web/dist/assets/swimlanesDiagram-ULZ7WXOC-oYfpSIrb.js +8 -0
  342. codenib-0.2.2/web/dist/assets/timeline-definition-Z64GVDOM-Dzws7tk8.js +120 -0
  343. codenib-0.2.2/web/dist/assets/vennDiagram-T6HMQDX7-Bz8ACBBt.js +34 -0
  344. codenib-0.2.2/web/dist/assets/wardleyDiagram-T6FBY63Y-Dba4Uv1N.js +78 -0
  345. codenib-0.2.2/web/dist/assets/xychartDiagram-ELKLHX3M-BQVriCQJ.js +7 -0
  346. codenib-0.2.2/web/dist/index.html +37 -0
  347. codenib-0.2.2/web/index.html +36 -0
  348. codenib-0.2.2/web/lib/api.test.ts +341 -0
  349. codenib-0.2.2/web/lib/api.ts +694 -0
  350. codenib-0.2.2/web/lib/citations.test.ts +88 -0
  351. codenib-0.2.2/web/lib/citations.ts +103 -0
  352. codenib-0.2.2/web/lib/relatedWiki.test.ts +127 -0
  353. codenib-0.2.2/web/lib/relatedWiki.ts +164 -0
  354. codenib-0.2.2/web/lib/runtime.test.ts +81 -0
  355. codenib-0.2.2/web/lib/runtime.ts +108 -0
  356. codenib-0.2.2/web/lib/sourceNavigation.test.ts +24 -0
  357. codenib-0.2.2/web/lib/sourceNavigation.ts +24 -0
  358. codenib-0.2.2/web/package-lock.json +5713 -0
  359. codenib-0.2.2/web/package.json +44 -0
  360. codenib-0.2.2/web/src/main.tsx +62 -0
  361. codenib-0.2.2/web/vite.config.test.ts +27 -0
  362. codenib-0.2.2/web/vite.config.ts +36 -0
  363. codenib-0.2.0/CHANGELOG.md +0 -139
  364. codenib-0.2.0/MANIFEST.in +0 -13
  365. codenib-0.2.0/PKG-INFO +0 -393
  366. codenib-0.2.0/README.md +0 -291
  367. codenib-0.2.0/codenib/__init__.py +0 -76
  368. codenib-0.2.0/codenib/agent/lsp_graph.py +0 -897
  369. codenib-0.2.0/codenib/agent/lsp_provider.py +0 -484
  370. codenib-0.2.0/codenib/agent/rerank_agent.py +0 -419
  371. codenib-0.2.0/codenib/agent/runner.py +0 -2119
  372. codenib-0.2.0/codenib/agent/skills/lsp_route/executor.py +0 -34
  373. codenib-0.2.0/codenib/agent/skills/repository_search/executor.py +0 -512
  374. codenib-0.2.0/codenib/agent/tools/defaults.py +0 -1046
  375. codenib-0.2.0/codenib/artifacts/__init__.py +0 -46
  376. codenib-0.2.0/codenib/artifacts/archive.py +0 -216
  377. codenib-0.2.0/codenib/artifacts/context.py +0 -452
  378. codenib-0.2.0/codenib/artifacts/mcp_config.py +0 -91
  379. codenib-0.2.0/codenib/artifacts/runtime.py +0 -608
  380. codenib-0.2.0/codenib/artifacts/security.py +0 -173
  381. codenib-0.2.0/codenib/cli.py +0 -2057
  382. codenib-0.2.0/codenib/clients/__init__.py +0 -5
  383. codenib-0.2.0/codenib/clients/_manifest.py +0 -147
  384. codenib-0.2.0/codenib/clients/agentless_agent.py +0 -575
  385. codenib-0.2.0/codenib/clients/claude_agent.py +0 -534
  386. codenib-0.2.0/codenib/clients/codex_agent.py +0 -314
  387. codenib-0.2.0/codenib/clients/cosil_agent.py +0 -750
  388. codenib-0.2.0/codenib/clients/locagent_agent.py +0 -584
  389. codenib-0.2.0/codenib/clients/orcaloca_agent.py +0 -287
  390. codenib-0.2.0/codenib/code_chunker.py +0 -760
  391. codenib-0.2.0/codenib/code_chunking/base.py +0 -613
  392. codenib-0.2.0/codenib/code_chunking/python_chunker.py +0 -267
  393. codenib-0.2.0/codenib/compiler/__init__.py +0 -110
  394. codenib-0.2.0/codenib/compiler/artifact_fingerprints.py +0 -62
  395. codenib-0.2.0/codenib/compiler/artifact_quality.py +0 -505
  396. codenib-0.2.0/codenib/compiler/checkout_identity.py +0 -63
  397. codenib-0.2.0/codenib/compiler/index_builders.py +0 -1066
  398. codenib-0.2.0/codenib/compiler/index_compiler.py +0 -488
  399. codenib-0.2.0/codenib/compiler/manifest.py +0 -221
  400. codenib-0.2.0/codenib/compiler/skill_context.py +0 -631
  401. codenib-0.2.0/codenib/dataset/codenib_base.py +0 -366
  402. codenib-0.2.0/codenib/eval/agent_runner/__init__.py +0 -296
  403. codenib-0.2.0/codenib/eval/agent_runner/contexts.py +0 -135
  404. codenib-0.2.0/codenib/eval/agent_runner/loc_baseline.py +0 -355
  405. codenib-0.2.0/codenib/eval/agent_runner/sweep_config.py +0 -160
  406. codenib-0.2.0/codenib/eval/experiments/lsp_agent_study_policy.py +0 -55
  407. codenib-0.2.0/codenib/eval/retrieval_eval.py +0 -557
  408. codenib-0.2.0/codenib/graph/code_graph.py +0 -1253
  409. codenib-0.2.0/codenib/graph/dependency.py +0 -233
  410. codenib-0.2.0/codenib/graph/hierarchy.py +0 -828
  411. codenib-0.2.0/codenib/graph/incremental/__init__.py +0 -16
  412. codenib-0.2.0/codenib/graph/incremental/patcher_cpp.py +0 -796
  413. codenib-0.2.0/codenib/graph/setup.py +0 -701
  414. codenib-0.2.0/codenib/graph/source_coverage.py +0 -239
  415. codenib-0.2.0/codenib/graph/traverse_graph.py +0 -256
  416. codenib-0.2.0/codenib/index/embedding/builders.py +0 -225
  417. codenib-0.2.0/codenib/index/embedding/model_policy.py +0 -62
  418. codenib-0.2.0/codenib/index/embedding/vector_store.py +0 -1545
  419. codenib-0.2.0/codenib/index/incremental/embeddings_cache.py +0 -196
  420. codenib-0.2.0/codenib/index/incremental/index_updater.py +0 -283
  421. codenib-0.2.0/codenib/index/regex_idx/__init__.py +0 -7
  422. codenib-0.2.0/codenib/index/regex_idx/regex_idx.py +0 -150
  423. codenib-0.2.0/codenib/index/rerank/cross_encoder.py +0 -356
  424. codenib-0.2.0/codenib/index/sparse_idx/bm25_index.py +0 -722
  425. codenib-0.2.0/codenib/index/trigram/zoekt_searcher.py +0 -371
  426. codenib-0.2.0/codenib/llm/litellm_chat.py +0 -422
  427. codenib-0.2.0/codenib/log_utils.py +0 -301
  428. codenib-0.2.0/codenib/ls_index/__init__.py +0 -17
  429. codenib-0.2.0/codenib/ls_index/clangd_decode.py +0 -912
  430. codenib-0.2.0/codenib/ls_index/clangd_indexer.py +0 -1400
  431. codenib-0.2.0/codenib/ls_router.py +0 -543
  432. codenib-0.2.0/codenib/mcp/context.py +0 -403
  433. codenib-0.2.0/codenib/mcp/prompts.py +0 -89
  434. codenib-0.2.0/codenib/mcp/server.py +0 -559
  435. codenib-0.2.0/codenib/mcp/tools/dependency.py +0 -56
  436. codenib-0.2.0/codenib/mcp/tools/lsp.py +0 -119
  437. codenib-0.2.0/codenib/mcp/tools/search.py +0 -351
  438. codenib-0.2.0/codenib/model/embedding_retrieve_pipeline.py +0 -152
  439. codenib-0.2.0/codenib/model/graph_retrieve_pipeline.py +0 -259
  440. codenib-0.2.0/codenib/model/hybrid_retrieve_pipeline.py +0 -256
  441. codenib-0.2.0/codenib/model/retrieve_rerank_pipeline.py +0 -949
  442. codenib-0.2.0/codenib/ops/rerank.py +0 -246
  443. codenib-0.2.0/codenib/repository_filters.py +0 -104
  444. codenib-0.2.0/codenib/repository_summary.py +0 -161
  445. codenib-0.2.0/codenib/sandbox/docker.py +0 -2086
  446. codenib-0.2.0/codenib/sandbox/types.py +0 -416
  447. codenib-0.2.0/codenib/scip_interface/lsp_occurrence_index.py +0 -327
  448. codenib-0.2.0/codenib/scip_interface/rust_analyzer.py +0 -31
  449. codenib-0.2.0/codenib/scip_interface/scip_decode_core.py +0 -204
  450. codenib-0.2.0/codenib/scip_interface/scip_indexer_base.py +0 -728
  451. codenib-0.2.0/codenib/scip_interface/scip_indexer_go.py +0 -164
  452. codenib-0.2.0/codenib/scip_interface/scip_indexer_ruby.py +0 -369
  453. codenib-0.2.0/codenib/scip_interface/scip_indexer_rust.py +0 -183
  454. codenib-0.2.0/codenib/scip_interface/scip_indexer_ts.py +0 -616
  455. codenib-0.2.0/codenib/scip_interface/typescript_semantics.py +0 -269
  456. codenib-0.2.0/codenib/search.py +0 -371
  457. codenib-0.2.0/codenib/source_fingerprint.py +0 -198
  458. codenib-0.2.0/codenib/toolchains.py +0 -538
  459. codenib-0.2.0/codenib/web/app.py +0 -595
  460. codenib-0.2.0/codenib/web/codemap.py +0 -1040
  461. codenib-0.2.0/codenib/web/commit_window.py +0 -311
  462. codenib-0.2.0/codenib/web/config.py +0 -332
  463. codenib-0.2.0/codenib/web/entrypoints.py +0 -384
  464. codenib-0.2.0/codenib/web/launcher.py +0 -252
  465. codenib-0.2.0/codenib/web/local.py +0 -162
  466. codenib-0.2.0/codenib/web/modulemap.py +0 -611
  467. codenib-0.2.0/codenib/web/repo_registry.py +0 -558
  468. codenib-0.2.0/codenib/web/repository_files.py +0 -216
  469. codenib-0.2.0/codenib/web/schemas.py +0 -330
  470. codenib-0.2.0/codenib/web/static_export.py +0 -629
  471. codenib-0.2.0/codenib/web/static_server.py +0 -213
  472. codenib-0.2.0/codenib/wiki/agent_wiki.py +0 -4665
  473. codenib-0.2.0/codenib/wiki/builder.py +0 -849
  474. codenib-0.2.0/codenib/wiki/evidence.py +0 -905
  475. codenib-0.2.0/codenib/wiki/outline.py +0 -1432
  476. codenib-0.2.0/codenib/wiki/quality.py +0 -932
  477. codenib-0.2.0/codenib.egg-info/PKG-INFO +0 -393
  478. codenib-0.2.0/codenib.egg-info/SOURCES.txt +0 -516
  479. codenib-0.2.0/codenib.egg-info/entry_points.txt +0 -15
  480. codenib-0.2.0/codenib.egg-info/requires.txt +0 -87
  481. codenib-0.2.0/pyproject.toml +0 -213
  482. codenib-0.2.0/server.json +0 -45
  483. codenib-0.2.0/setup.py +0 -33
  484. codenib-0.2.0/test/test_cli.py +0 -1239
  485. codenib-0.2.0/test/test_cli_entrypoints.py +0 -78
  486. codenib-0.2.0/test/test_lazy_imports.py +0 -124
  487. codenib-0.2.0/test/test_log_utils.py +0 -11
  488. codenib-0.2.0/test/test_ls_router_registry.py +0 -573
  489. codenib-0.2.0/test/test_mcp_registry.py +0 -72
  490. codenib-0.2.0/test/test_namespace.py +0 -99
  491. codenib-0.2.0/test/test_namespace_contract.py +0 -87
  492. codenib-0.2.0/test/test_release_artifacts.py +0 -258
  493. codenib-0.2.0/test/test_source_fingerprint.py +0 -100
  494. codenib-0.2.0/test/test_toolchains.py +0 -168
  495. codenib-0.2.0/web/app/[repoId]/ask/page.tsx +0 -254
  496. codenib-0.2.0/web/app/[repoId]/page.tsx +0 -753
  497. codenib-0.2.0/web/app/globals.css +0 -3845
  498. codenib-0.2.0/web/components/CodeGraph.tsx +0 -1899
  499. codenib-0.2.0/web/components/CodePanel.tsx +0 -188
  500. codenib-0.2.0/web/components/GraphView.tsx +0 -338
  501. codenib-0.2.0/web/components/HierarchyMap.tsx +0 -257
  502. codenib-0.2.0/web/components/SystemMap.tsx +0 -460
  503. codenib-0.2.0/web/dist/assets/AskBar-C4Hds1pN.js +0 -31
  504. codenib-0.2.0/web/dist/assets/CodeGraph-Bk050lPY.js +0 -3
  505. codenib-0.2.0/web/dist/assets/CodePanel-RRVgM80m.js +0 -1
  506. codenib-0.2.0/web/dist/assets/Codemap-_J-N39hJ.js +0 -2
  507. codenib-0.2.0/web/dist/assets/GraphView-DlJFx6EE.js +0 -2
  508. codenib-0.2.0/web/dist/assets/Header-D-408zC3.js +0 -1
  509. codenib-0.2.0/web/dist/assets/HighlightedBlock-CBrRJKKg.js +0 -1
  510. codenib-0.2.0/web/dist/assets/HighlightedCode-D7iVacoh.js +0 -2
  511. codenib-0.2.0/web/dist/assets/Mermaid-qxXKfOC2.js +0 -303
  512. codenib-0.2.0/web/dist/assets/api-BJqIDhrh.js +0 -1
  513. codenib-0.2.0/web/dist/assets/arc-YQRjQ4G1.js +0 -1
  514. codenib-0.2.0/web/dist/assets/architectureDiagram-3BPJPVTR-CTgs6C8r.js +0 -36
  515. codenib-0.2.0/web/dist/assets/blockDiagram-GPEHLZMM-ytEBsL_7.js +0 -132
  516. codenib-0.2.0/web/dist/assets/c4Diagram-AAUBKEIU-B45D0ZGi.js +0 -10
  517. codenib-0.2.0/web/dist/assets/channel-DX20L555.js +0 -1
  518. codenib-0.2.0/web/dist/assets/chunk-2J33WTMH-B04lsti9.js +0 -1
  519. codenib-0.2.0/web/dist/assets/chunk-4BX2VUAB-CJ8ZXPQi.js +0 -1
  520. codenib-0.2.0/web/dist/assets/chunk-55IACEB6-YUQCcuMJ.js +0 -1
  521. codenib-0.2.0/web/dist/assets/chunk-727SXJPM-hJyIaPef.js +0 -206
  522. codenib-0.2.0/web/dist/assets/chunk-AQP2D5EJ-DFQNP1HU.js +0 -231
  523. codenib-0.2.0/web/dist/assets/chunk-FMBD7UC4-BkPDOFmf.js +0 -15
  524. codenib-0.2.0/web/dist/assets/chunk-ND2GUHAM-BiqC6wmT.js +0 -1
  525. codenib-0.2.0/web/dist/assets/chunk-QZHKN3VN-BpBZ3f6B.js +0 -1
  526. codenib-0.2.0/web/dist/assets/classDiagram-4FO5ZUOK-v3NNLEdL.js +0 -1
  527. codenib-0.2.0/web/dist/assets/classDiagram-v2-Q7XG4LA2-v3NNLEdL.js +0 -1
  528. codenib-0.2.0/web/dist/assets/cose-bilkent-S5V4N54A-DVXw00pQ.js +0 -1
  529. codenib-0.2.0/web/dist/assets/dagre-BM42HDAG-BsDZYKyf.js +0 -4
  530. codenib-0.2.0/web/dist/assets/diagram-2AECGRRQ-rVanclvL.js +0 -43
  531. codenib-0.2.0/web/dist/assets/diagram-5GNKFQAL-D2eMLi2U.js +0 -10
  532. codenib-0.2.0/web/dist/assets/diagram-KO2AKTUF-V1R9ziws.js +0 -3
  533. codenib-0.2.0/web/dist/assets/diagram-LMA3HP47-n07PTGPC.js +0 -24
  534. codenib-0.2.0/web/dist/assets/diagram-OG6HWLK6-ByIKwzRo.js +0 -24
  535. codenib-0.2.0/web/dist/assets/erDiagram-TEJ5UH35-Bb3txhdx.js +0 -85
  536. codenib-0.2.0/web/dist/assets/flowDiagram-I6XJVG4X-CFpn7_ps.js +0 -162
  537. codenib-0.2.0/web/dist/assets/ganttDiagram-6RSMTGT7-DtyzYIE6.js +0 -292
  538. codenib-0.2.0/web/dist/assets/gitGraphDiagram-PVQCEYII-CfyINP6P.js +0 -106
  539. codenib-0.2.0/web/dist/assets/graph--OzhPTMs.js +0 -1
  540. codenib-0.2.0/web/dist/assets/highlight-BbEP82OQ.js +0 -5
  541. codenib-0.2.0/web/dist/assets/index-CNAnkkDJ.css +0 -1
  542. codenib-0.2.0/web/dist/assets/index-CYsCZOcK.js +0 -9
  543. codenib-0.2.0/web/dist/assets/infoDiagram-5YYISTIA-DTDOCLms.js +0 -2
  544. codenib-0.2.0/web/dist/assets/ishikawaDiagram-YF4QCWOH-Dnh2FYja.js +0 -70
  545. codenib-0.2.0/web/dist/assets/journeyDiagram-JHISSGLW-BI6YNViV.js +0 -139
  546. codenib-0.2.0/web/dist/assets/kanban-definition-UN3LZRKU-1L_RvDZF.js +0 -89
  547. codenib-0.2.0/web/dist/assets/layout-SsrduOYp.js +0 -1
  548. codenib-0.2.0/web/dist/assets/linear-bADcV-70.js +0 -1
  549. codenib-0.2.0/web/dist/assets/mindmap-definition-RKZ34NQL-BjpfBFFt.js +0 -96
  550. codenib-0.2.0/web/dist/assets/page-BUGawK95.js +0 -2
  551. codenib-0.2.0/web/dist/assets/page-CbAUHri9.js +0 -1
  552. codenib-0.2.0/web/dist/assets/page-Cq0WVyIV.js +0 -6
  553. codenib-0.2.0/web/dist/assets/page-CtwkwCsy.js +0 -1
  554. codenib-0.2.0/web/dist/assets/pieDiagram-4H26LBE5-Bl85cHMU.js +0 -30
  555. codenib-0.2.0/web/dist/assets/quadrantDiagram-W4KKPZXB-CiaQ52Nw.js +0 -7
  556. codenib-0.2.0/web/dist/assets/requirementDiagram-4Y6WPE33-ZJQBDOGk.js +0 -84
  557. codenib-0.2.0/web/dist/assets/sankeyDiagram-5OEKKPKP-Cv6-FogF.js +0 -40
  558. codenib-0.2.0/web/dist/assets/sequenceDiagram-3UESZ5HK-D5DF60sA.js +0 -162
  559. codenib-0.2.0/web/dist/assets/stateDiagram-AJRCARHV-Dx0aACtB.js +0 -1
  560. codenib-0.2.0/web/dist/assets/stateDiagram-v2-BHNVJYJU-tuKRNeTN.js +0 -1
  561. codenib-0.2.0/web/dist/assets/timeline-definition-PNZ67QCA-C5A64rUG.js +0 -120
  562. codenib-0.2.0/web/dist/assets/vennDiagram-CIIHVFJN-C5KNt3I-.js +0 -34
  563. codenib-0.2.0/web/dist/assets/wardley-L42UT6IY-BvkhpSoT.js +0 -161
  564. codenib-0.2.0/web/dist/assets/wardleyDiagram-YWT4CUSO-D4euDcE7.js +0 -78
  565. codenib-0.2.0/web/dist/assets/xychartDiagram-2RQKCTM6-BOEne5J8.js +0 -7
  566. codenib-0.2.0/web/dist/index.html +0 -29
  567. codenib-0.2.0/web/index.html +0 -28
  568. codenib-0.2.0/web/lib/api.ts +0 -542
  569. codenib-0.2.0/web/lib/citations.test.ts +0 -73
  570. codenib-0.2.0/web/lib/citations.ts +0 -96
  571. codenib-0.2.0/web/lib/runtime.test.ts +0 -65
  572. codenib-0.2.0/web/lib/runtime.ts +0 -88
  573. codenib-0.2.0/web/package-lock.json +0 -5713
  574. codenib-0.2.0/web/package.json +0 -44
  575. codenib-0.2.0/web/src/main.tsx +0 -55
  576. codenib-0.2.0/web/vite.config.ts +0 -28
  577. {codenib-0.2.0 → codenib-0.2.2}/CONTRIBUTING.md +0 -0
  578. {codenib-0.2.0 → codenib-0.2.2}/LICENSE +0 -0
  579. {codenib-0.2.0 → codenib-0.2.2}/codenib/__main__.py +0 -0
  580. {codenib-0.2.0 → codenib-0.2.2}/codenib/_lazy.py +0 -0
  581. {codenib-0.2.0 → codenib-0.2.2}/codenib/_version.py +0 -0
  582. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/__init__.py +0 -0
  583. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/agent_types.py +0 -0
  584. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/boundary.py +0 -0
  585. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/compile.py +0 -0
  586. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/extract_agent.py +0 -0
  587. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/harness.py +0 -0
  588. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/history.py +0 -0
  589. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/resource_guard.py +0 -0
  590. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/route_context.py +0 -0
  591. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/runtime/__init__.py +0 -0
  592. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/runtime/context.py +0 -0
  593. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/runtime/explorer.py +0 -0
  594. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/runtime/trace.py +0 -0
  595. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/__init__.py +0 -0
  596. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/_graphnav.py +0 -0
  597. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/bm25_search/__init__.py +0 -0
  598. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/bm25_search/config.yaml +0 -0
  599. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/bm25_search/executor.py +0 -0
  600. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/bm25_search/skill.md +0 -0
  601. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/code_to_query/__init__.py +0 -0
  602. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/code_to_query/config.yaml +0 -0
  603. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/code_to_query/executor.py +0 -0
  604. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/code_to_query/skill.md +0 -0
  605. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/codenib_context/__init__.py +0 -0
  606. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/codenib_context/config.yaml +0 -0
  607. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/codenib_context/executor.py +0 -0
  608. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/codenib_context/skill.md +0 -0
  609. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/context.py +0 -0
  610. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/core.py +0 -0
  611. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/__init__.py +0 -0
  612. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/config.yaml +0 -0
  613. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/executor.py +0 -0
  614. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/skill.md +0 -0
  615. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/embedding_search/__init__.py +0 -0
  616. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/embedding_search/config.yaml +0 -0
  617. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/embedding_search/executor.py +0 -0
  618. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/embedding_search/skill.md +0 -0
  619. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callees/__init__.py +0 -0
  620. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callees/config.yaml +0 -0
  621. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callees/executor.py +0 -0
  622. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callees/skill.md +0 -0
  623. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callers/__init__.py +0 -0
  624. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callers/config.yaml +0 -0
  625. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callers/executor.py +0 -0
  626. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/find_callers/skill.md +0 -0
  627. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/__init__.py +0 -0
  628. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/config.yaml +0 -0
  629. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/executor.py +0 -0
  630. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/skill.md +0 -0
  631. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/__init__.py +0 -0
  632. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/config.yaml +0 -0
  633. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/executor.py +0 -0
  634. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/skill.md +0 -0
  635. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/loader.py +0 -0
  636. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_definition/config.yaml +0 -0
  637. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_definition/executor.py +0 -0
  638. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_definition/skill.md +0 -0
  639. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_references/config.yaml +0 -0
  640. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_references/executor.py +0 -0
  641. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_references/skill.md +0 -0
  642. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_route/config.yaml +0 -0
  643. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/lsp_route/skill.md +0 -0
  644. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/registry.py +0 -0
  645. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/repository_search/config.yaml +0 -0
  646. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/repository_search/skill.md +0 -0
  647. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/trace/__init__.py +0 -0
  648. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/trace/config.yaml +0 -0
  649. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/trace/executor.py +0 -0
  650. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/trace/skill.md +0 -0
  651. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/skills/typecheck.py +0 -0
  652. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/tool_schema.py +0 -0
  653. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/tools/__init__.py +0 -0
  654. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/tools/sandbox.py +0 -0
  655. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/tools/spec.py +0 -0
  656. {codenib-0.2.0 → codenib-0.2.2}/codenib/agent/utils.py +0 -0
  657. {codenib-0.2.0 → codenib-0.2.2}/codenib/artifacts/github.py +0 -0
  658. {codenib-0.2.0 → codenib-0.2.2}/codenib/clients/agentless_protocol.py +0 -0
  659. {codenib-0.2.0 → codenib-0.2.2}/codenib/clients/cosil_protocol.py +0 -0
  660. {codenib-0.2.0 → codenib-0.2.2}/codenib/clients/locagent_protocol.py +0 -0
  661. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/__init__.py +0 -0
  662. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/cpp_chunker.py +0 -0
  663. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/csharp_chunker.py +0 -0
  664. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/go_chunker.py +0 -0
  665. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/java_chunker.py +0 -0
  666. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/js_chunker.py +0 -0
  667. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/kotlin_chunker.py +0 -0
  668. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/lua_chunker.py +0 -0
  669. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/php_chunker.py +0 -0
  670. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/ruby_chunker.py +0 -0
  671. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/rust_chunker.py +0 -0
  672. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/scala_chunker.py +0 -0
  673. {codenib-0.2.0 → codenib-0.2.2}/codenib/code_chunking/swift_chunker.py +0 -0
  674. {codenib-0.2.0 → codenib-0.2.2}/codenib/compat_pickle.py +0 -0
  675. {codenib-0.2.0 → codenib-0.2.2}/codenib/compiler/params.py +0 -0
  676. {codenib-0.2.0 → codenib-0.2.2}/codenib/compiler/resources.py +0 -0
  677. {codenib-0.2.0 → codenib-0.2.2}/codenib/compiler/snapshot_store.py +0 -0
  678. {codenib-0.2.0 → codenib-0.2.2}/codenib/compiler/verification.py +0 -0
  679. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/__init__.py +0 -0
  680. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/base.py +0 -0
  681. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/codenib_synthesis.py +0 -0
  682. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/collect/difficulty_classifier.py +0 -0
  683. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/collect/swebench_sample.py +0 -0
  684. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/gt_locate.py +0 -0
  685. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/local_json.py +0 -0
  686. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/locbench.py +0 -0
  687. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/swebench.py +0 -0
  688. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/swebench_multilingual.py +0 -0
  689. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/__init__.py +0 -0
  690. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/_agent.py +0 -0
  691. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/_types.py +0 -0
  692. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/context_loader.py +0 -0
  693. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/query_curator.py +0 -0
  694. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/query_synthesizer.py +0 -0
  695. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/verifier.py +0 -0
  696. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/synthesize/vocab_guard.py +0 -0
  697. {codenib-0.2.0 → codenib-0.2.2}/codenib/dataset/utils.py +0 -0
  698. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/__init__.py +0 -0
  699. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/baseline.py +0 -0
  700. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/batch.py +0 -0
  701. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/feedback.py +0 -0
  702. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/feedback_summary.py +0 -0
  703. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/format_diagnostics.py +0 -0
  704. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/live_lsp_provider.py +0 -0
  705. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_ab.py +0 -0
  706. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study.py +0 -0
  707. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_analysis.py +0 -0
  708. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_artifacts.py +0 -0
  709. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_manifest.py +0 -0
  710. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_runner.py +0 -0
  711. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_baseline.py +0 -0
  712. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_latency.py +0 -0
  713. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_provider_cli.py +0 -0
  714. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_provider_validation.py +0 -0
  715. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_readiness.py +0 -0
  716. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_replay_benchmark.py +0 -0
  717. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/metrics.py +0 -0
  718. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/orchestrator.py +0 -0
  719. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/pareto.py +0 -0
  720. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/prebuilt.py +0 -0
  721. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/preload.py +0 -0
  722. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/promotion.py +0 -0
  723. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/query_sweep.py +0 -0
  724. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/results.py +0 -0
  725. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/scoring.py +0 -0
  726. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/sweep.py +0 -0
  727. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/symbols.py +0 -0
  728. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/trace_summary.py +0 -0
  729. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/agent_runner/verify_expand.py +0 -0
  730. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/artifact_bundle.py +0 -0
  731. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/artifact_integrity.py +0 -0
  732. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/artifact_manifest.py +0 -0
  733. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/baseline.py +0 -0
  734. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/__init__.py +0 -0
  735. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/agentless.py +0 -0
  736. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/cosil.py +0 -0
  737. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/locagent.py +0 -0
  738. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/orcaloca.py +0 -0
  739. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/policy_benchmark.py +0 -0
  740. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/policy_compat.py +0 -0
  741. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/swe_explore.py +0 -0
  742. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/swe_explore_runner.py +0 -0
  743. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/benchmarks/swebench_policy_cases.py +0 -0
  744. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/experiments/__init__.py +0 -0
  745. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/loc_agent_runner.py +0 -0
  746. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/pricing/anthropic-direct-2026-08-04.json +0 -0
  747. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/reports/__init__.py +0 -0
  748. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/reports/cost_arm_report.py +0 -0
  749. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/reports/pricing.py +0 -0
  750. {codenib-0.2.0 → codenib-0.2.2}/codenib/eval/reports/quality_cost.py +0 -0
  751. {codenib-0.2.0 → codenib-0.2.2}/codenib/git_snapshot.py +0 -0
  752. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/__init__.py +0 -0
  753. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/backend_alignment.py +0 -0
  754. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/change_mgr.py +0 -0
  755. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/graph_patcher.py +0 -0
  756. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/lsp_client.py +0 -0
  757. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/patcher_base.py +0 -0
  758. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/patcher_go.py +0 -0
  759. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/patcher_python.py +0 -0
  760. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/patcher_rust.py +0 -0
  761. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/patcher_ts.py +0 -0
  762. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/incremental/subgraph_mgr.py +0 -0
  763. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/layers.py +0 -0
  764. {codenib-0.2.0 → codenib-0.2.2}/codenib/graph/roi_subgraph.py +0 -0
  765. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/__init__.py +0 -0
  766. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/embedding/__init__.py +0 -0
  767. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/embedding/prompt_registry.py +0 -0
  768. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/incremental/__init__.py +0 -0
  769. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/incremental/chunk_store.py +0 -0
  770. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/incremental/git_diff.py +0 -0
  771. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/incremental/state.py +0 -0
  772. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/rerank/__init__.py +0 -0
  773. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/sparse_idx/__init__.py +0 -0
  774. {codenib-0.2.0 → codenib-0.2.2}/codenib/index/trigram/__init__.py +0 -0
  775. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/__init__.py +0 -0
  776. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/_orcaloca_python.py +0 -0
  777. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/_repository.py +0 -0
  778. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/agentless.py +0 -0
  779. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/cosil.py +0 -0
  780. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/locagent.py +0 -0
  781. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/orcaloca.py +0 -0
  782. {codenib-0.2.0 → codenib-0.2.2}/codenib/integrations/swe_explore.py +0 -0
  783. {codenib-0.2.0 → codenib-0.2.2}/codenib/languages.py +0 -0
  784. {codenib-0.2.0 → codenib-0.2.2}/codenib/llm/__init__.py +0 -0
  785. {codenib-0.2.0 → codenib-0.2.2}/codenib/llm/diagnostics.py +0 -0
  786. {codenib-0.2.0 → codenib-0.2.2}/codenib/llm/options.py +0 -0
  787. {codenib-0.2.0 → codenib-0.2.2}/codenib/llm/usage.py +0 -0
  788. {codenib-0.2.0 → codenib-0.2.2}/codenib/ls_index/index_quality.py +0 -0
  789. {codenib-0.2.0 → codenib-0.2.2}/codenib/ls_index/lsp_graph_decode.py +0 -0
  790. {codenib-0.2.0 → codenib-0.2.2}/codenib/ls_index/lsp_indexer.py +0 -0
  791. {codenib-0.2.0 → codenib-0.2.2}/codenib/mcp/__init__.py +0 -0
  792. {codenib-0.2.0 → codenib-0.2.2}/codenib/mcp/__main__.py +0 -0
  793. {codenib-0.2.0 → codenib-0.2.2}/codenib/mcp/tools/__init__.py +0 -0
  794. {codenib-0.2.0 → codenib-0.2.2}/codenib/model/__init__.py +0 -0
  795. {codenib-0.2.0 → codenib-0.2.2}/codenib/model/agentless_pipeline.py +0 -0
  796. {codenib-0.2.0 → codenib-0.2.2}/codenib/model/bm25_retrieve_pipeline.py +0 -0
  797. {codenib-0.2.0 → codenib-0.2.2}/codenib/model/dense_graph_expand_rerank_pipeline.py +0 -0
  798. {codenib-0.2.0 → codenib-0.2.2}/codenib/model/graph_augmented_rerank_pipeline.py +0 -0
  799. {codenib-0.2.0 → codenib-0.2.2}/codenib/model/retrieval_planner.py +0 -0
  800. {codenib-0.2.0 → codenib-0.2.2}/codenib/ops/__init__.py +0 -0
  801. {codenib-0.2.0 → codenib-0.2.2}/codenib/ops/expand.py +0 -0
  802. {codenib-0.2.0 → codenib-0.2.2}/codenib/ops/filter.py +0 -0
  803. {codenib-0.2.0 → codenib-0.2.2}/codenib/ops/retrieve.py +0 -0
  804. {codenib-0.2.0 → codenib-0.2.2}/codenib/ops/transform.py +0 -0
  805. {codenib-0.2.0 → codenib-0.2.2}/codenib/paths.py +0 -0
  806. {codenib-0.2.0 → codenib-0.2.2}/codenib/profiler.py +0 -0
  807. {codenib-0.2.0 → codenib-0.2.2}/codenib/provider_routes.py +0 -0
  808. {codenib-0.2.0 → codenib-0.2.2}/codenib/sandbox/__init__.py +0 -0
  809. {codenib-0.2.0 → codenib-0.2.2}/codenib/sandbox/protocol.py +0 -0
  810. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/__init__.py +0 -0
  811. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip-environment.yml +0 -0
  812. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip.proto +0 -0
  813. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_csharp.py +0 -0
  814. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_go.py +0 -0
  815. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_java.py +0 -0
  816. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_php.py +0 -0
  817. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_python.py +0 -0
  818. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_ruby.py +0 -0
  819. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_rust.py +0 -0
  820. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_ts.py +0 -0
  821. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_decode_utils.py +0 -0
  822. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_csharp.py +0 -0
  823. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_java.py +0 -0
  824. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_php.py +0 -0
  825. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_python.py +0 -0
  826. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_install.sh +0 -0
  827. {codenib-0.2.0 → codenib-0.2.2}/codenib/scip_interface/scip_pb2.py +0 -0
  828. {codenib-0.2.0 → codenib-0.2.2}/codenib/types.py +0 -0
  829. {codenib-0.2.0 → codenib-0.2.2}/codenib/utils.py +0 -0
  830. {codenib-0.2.0 → codenib-0.2.2}/codenib/web/__init__.py +0 -0
  831. {codenib-0.2.0 → codenib-0.2.2}/codenib/web/edge_label.py +0 -0
  832. {codenib-0.2.0 → codenib-0.2.2}/codenib/wiki/__init__.py +0 -0
  833. {codenib-0.2.0 → codenib-0.2.2}/codenib/wiki/narrator.py +0 -0
  834. {codenib-0.2.0 → codenib-0.2.2}/codenib.egg-info/dependency_links.txt +0 -0
  835. {codenib-0.2.0 → codenib-0.2.2}/codenib.egg-info/top_level.txt +0 -0
  836. {codenib-0.2.0 → codenib-0.2.2}/setup.cfg +0 -0
  837. {codenib-0.2.0 → codenib-0.2.2}/test/test_cli_remote_embeddings.py +0 -0
  838. {codenib-0.2.0 → codenib-0.2.2}/test/test_compat_pickle.py +0 -0
  839. {codenib-0.2.0 → codenib-0.2.2}/test/test_git_snapshot.py +0 -0
  840. {codenib-0.2.0 → codenib-0.2.2}/test/test_language_capability_matrix.py +0 -0
  841. {codenib-0.2.0 → codenib-0.2.2}/test/test_languages.py +0 -0
  842. {codenib-0.2.0 → codenib-0.2.2}/test/test_paths.py +0 -0
  843. {codenib-0.2.0 → codenib-0.2.2}/test/test_provider_routes.py +0 -0
  844. {codenib-0.2.0 → codenib-0.2.2}/test/test_release_metadata.py +0 -0
  845. {codenib-0.2.0 → codenib-0.2.2}/test/test_repository_summary.py +0 -0
  846. {codenib-0.2.0 → codenib-0.2.2}/test/test_source_classification.py +0 -0
  847. {codenib-0.2.0 → codenib-0.2.2}/web/app/add-repo/page.tsx +0 -0
  848. {codenib-0.2.0 → codenib-0.2.2}/web/app/page.tsx +0 -0
  849. {codenib-0.2.0 → codenib-0.2.2}/web/components/AskBar.tsx +0 -0
  850. {codenib-0.2.0 → codenib-0.2.2}/web/components/AskPanel.tsx +0 -0
  851. {codenib-0.2.0 → codenib-0.2.2}/web/components/CitationItem.tsx +0 -0
  852. {codenib-0.2.0 → codenib-0.2.2}/web/components/Codemap.tsx +0 -0
  853. {codenib-0.2.0 → codenib-0.2.2}/web/components/Header.tsx +0 -0
  854. {codenib-0.2.0 → codenib-0.2.2}/web/components/HighlightedBlock.tsx +0 -0
  855. {codenib-0.2.0 → codenib-0.2.2}/web/components/HighlightedCode.tsx +0 -0
  856. {codenib-0.2.0 → codenib-0.2.2}/web/components/Markdown.test.tsx +0 -0
  857. {codenib-0.2.0 → codenib-0.2.2}/web/components/Markdown.tsx +0 -0
  858. {codenib-0.2.0 → codenib-0.2.2}/web/components/Mermaid.tsx +0 -0
  859. {codenib-0.2.0 → codenib-0.2.2}/web/dist/assets/cytoscape.esm-CkSuTymj.js +0 -0
  860. {codenib-0.2.0 → codenib-0.2.2}/web/dist/assets/defaultLocale-DX6XiGOO.js +0 -0
  861. {codenib-0.2.0 → codenib-0.2.2}/web/dist/assets/highlight-CDab0zVI.css +0 -0
  862. {codenib-0.2.0 → codenib-0.2.2}/web/dist/assets/init-Gi6I4Gst.js +0 -0
  863. {codenib-0.2.0 → codenib-0.2.2}/web/dist/assets/katex-HP8lGamR.js +0 -0
  864. {codenib-0.2.0 → codenib-0.2.2}/web/dist/assets/ordinal-Cboi1Yqb.js +0 -0
  865. {codenib-0.2.0 → codenib-0.2.2}/web/dist/codenib-icon.svg +0 -0
  866. {codenib-0.2.0 → codenib-0.2.2}/web/dist/runtime-config.js +0 -0
  867. {codenib-0.2.0 → codenib-0.2.2}/web/lib/filesLayout.test.ts +0 -0
  868. {codenib-0.2.0 → codenib-0.2.2}/web/lib/filesLayout.ts +0 -0
  869. {codenib-0.2.0 → codenib-0.2.2}/web/lib/highlight.test.ts +0 -0
  870. {codenib-0.2.0 → codenib-0.2.2}/web/lib/highlight.ts +0 -0
  871. {codenib-0.2.0 → codenib-0.2.2}/web/lib/router.tsx +0 -0
  872. {codenib-0.2.0 → codenib-0.2.2}/web/loopshot.mjs +0 -0
  873. {codenib-0.2.0 → codenib-0.2.2}/web/modules_verify.mjs +0 -0
  874. {codenib-0.2.0 → codenib-0.2.2}/web/public/codenib-icon.svg +0 -0
  875. {codenib-0.2.0 → codenib-0.2.2}/web/public/runtime-config.js +0 -0
  876. {codenib-0.2.0 → codenib-0.2.2}/web/qa_verify.mjs +0 -0
  877. {codenib-0.2.0 → codenib-0.2.2}/web/tsconfig.json +0 -0
  878. {codenib-0.2.0 → codenib-0.2.2}/web/types/cytoscape-dagre.d.ts +0 -0
  879. {codenib-0.2.0 → codenib-0.2.2}/web/types/cytoscape-fcose.d.ts +0 -0
  880. {codenib-0.2.0 → codenib-0.2.2}/web/verify.mjs +0 -0
@@ -0,0 +1,202 @@
1
+ <!--
2
+ SPDX-FileCopyrightText: 2025-2026 CodeNib Contributors
3
+
4
+ SPDX-License-Identifier: Apache-2.0
5
+ -->
6
+
7
+ # Changelog
8
+
9
+ All notable user-facing changes are recorded here. CodeNib follows
10
+ [Semantic Versioning](https://semver.org/).
11
+
12
+ ## [Unreleased]
13
+
14
+ ## [0.2.2] - 2026-08-21
15
+
16
+ ### Added
17
+
18
+ - Persistent, exact repository-relative source exclusions through
19
+ `--exclude-dir` and `--clear-exclude-dirs`, with one recorded policy reused
20
+ by CodeGraph, indexing, MCP, Wiki, Web, and public compiler entry points.
21
+ - Manifest 1.2 source-selection identities and builder receipts, while retaining
22
+ strict read compatibility for manifest 1.1 artifacts.
23
+ - Authenticated optional SCIP occurrence-sidecar receipts bound to the same
24
+ owned symbol-graph generation as `graph.pkl`.
25
+
26
+ ### Changed
27
+
28
+ - Authenticated indexing now accepts absolute symbolic links only when their
29
+ lexical target remains inside the same pinned repository authority. Expo,
30
+ CocoaPods, and pnpm-style contained link layouts no longer require a broad
31
+ default-ignore rule.
32
+ - CodeGraph status reports the effective source selection, and Wiki, publish,
33
+ doctor, and toolchain flows reuse it instead of silently widening the source
34
+ surface.
35
+ - Manifest-bound C and C++ queries temporarily use the verified persisted
36
+ symbol graph instead of consuming project-local clangd postings directly.
37
+
38
+ ### Security
39
+
40
+ - Source paths, graph artifacts, native query routes, and retained manifests
41
+ are checked against the same authenticated source selection before they can
42
+ be published or served. Unproven native routes fail closed to the persisted
43
+ graph.
44
+ - Zoekt builds use a fixed commit-tree contract, private generation
45
+ publication, and an authenticated shard-tree receipt; custom exclusions are
46
+ rejected until the backend can prove that narrower surface end to end.
47
+ - Authenticated MCP `search_zoekt` serving uses a retained Linux `/proc`
48
+ descriptor snapshot. Other platforms fail closed until they have an
49
+ equivalent immutable runtime handoff.
50
+
51
+ ## [0.2.1] - 2026-08-14
52
+
53
+ ### Added
54
+
55
+ - A one-command `codenib codegraph init` path that installs repository-aware
56
+ graph providers, builds BM25 and symbol-graph views, and configures installed
57
+ Codex and Claude Code clients through their native MCP CLIs.
58
+ - Machine-readable CodeGraph status, idempotent client receipts, safe uninstall,
59
+ and a no-write dry run.
60
+ - Installed-wheel black-box coverage for `explore_context`,
61
+ `dependency_subgraph`, both client contracts, repeat initialization, and
62
+ checkout cleanliness.
63
+
64
+ ### Changed
65
+
66
+ - The primary agent quickstart now leads with the local, model-free CodeGraph;
67
+ the Wiki and semantic routes remain available as independent product paths.
68
+
69
+ ### Security
70
+
71
+ - Client setup refuses unmanaged name collisions and drifted managed
72
+ registrations. Uninstall removes only receipt-owned entries and preserves
73
+ repository indexes.
74
+
75
+ ## [0.2.0] - 2026-08-05
76
+
77
+ ### Added
78
+
79
+ - A build-once distribution path that publishes a static Wiki and a verified,
80
+ commit-addressed context artifact for local or MCP reuse.
81
+ - Capability-aware `search_context` serving through the official
82
+ `ai.codenib/codenib` MCP package, plus managed package-level SCIP and LSP
83
+ providers selected from repository languages.
84
+ - Native repository-exploration adapters and quality-constrained token and
85
+ cost reports for supported agent localization policies.
86
+
87
+ ### Changed
88
+
89
+ - Hybrid BM25+dense retrieval is the recommended installed default when the
90
+ semantic extra is present; the base package retains an explicit no-model
91
+ BM25 path.
92
+ - Repository filtering, graph definition provenance, and TypeScript/TSX import
93
+ edges use updated builder contracts. Incompatible 0.1 views rebuild once;
94
+ compatible 0.2 views remain reusable.
95
+
96
+ ### Security
97
+
98
+ - Downloaded context artifacts are inventory-checked, source-bound, and reject
99
+ unsafe archive members before any view is loaded.
100
+
101
+ ## [0.2.0a2] - 2026-08-05
102
+
103
+ ### Added
104
+
105
+ - A capability-aware `search_context` MCP tool and version-matched metadata for
106
+ publishing the local stdio server as `ai.codenib/codenib` in the official MCP
107
+ Registry.
108
+ - A repository-aware `codenib toolchain` command that detects graph and LSP
109
+ providers from the language registry, installs pinned package-managed tools
110
+ under `~/.codenib/toolchains`, and reports system or project prerequisites
111
+ without invoking `sudo` or mutating the target checkout.
112
+
113
+ ### Changed
114
+
115
+ - Local `index` and `wiki` commands now select semantic hybrid retrieval when
116
+ the semantic extra is installed and explicitly report the no-model BM25
117
+ fallback otherwise. The reusable Pages workflow selects semantic retrieval
118
+ by default and caches its pinned local embedding model; `fast` remains an
119
+ explicit no-model route.
120
+ - CodeNib processes automatically prefer the managed tool directory, removing
121
+ the shell `PATH` export previously required after source-checkout installs.
122
+ - The public quickstart recommends BM25+dense serving and uses a normal,
123
+ version-pinned PyPI command instead of exposing a TestPyPI wheel URL.
124
+
125
+ ## [0.2.0a1] - 2026-08-05
126
+
127
+ ### Added
128
+
129
+ - A reusable GitHub Pages workflow and composite Action that build a no-model
130
+ static Wiki plus a commit-addressed BM25 context artifact. Semantic builds
131
+ can use a pinned local CodeRankEmbed model or an explicit OpenAI-compatible
132
+ embedding endpoint.
133
+ - Portable context artifacts with complete file inventories, source identity,
134
+ capability metadata, and an artifact-backed MCP path that reuses BM25 and
135
+ vector views without rebuilding the repository.
136
+ - Secret-free inference route identities for local and remote embeddings,
137
+ compatibility fingerprints, provider-aware diagnostics, and fail-closed
138
+ handling of the retired GitHub Models service.
139
+ - A native repository explorer with selective view loading and revision-pinned
140
+ compatibility layers for SWE-Explore, Agentless, CoSIL, LocAgent, and
141
+ OrcaLoca SearchAgent contracts.
142
+ - Quality-constrained cost reports that pair localization success with token,
143
+ USD, and amortized build cost rather than reporting cost without a quality
144
+ denominator.
145
+ - Graph schema 5 records semantic symbol kinds, explicit definition
146
+ provenance, and anchored TypeScript/TSX import and re-export edges.
147
+
148
+ ### Changed
149
+
150
+ - Static Wiki exports now preserve mount paths, source citations, generated
151
+ pages, and dependency data while keeping query engines in the local or MCP
152
+ runtime.
153
+ - Pull requests build and inspect distributions once; the complete
154
+ cross-version and installed-service release matrix runs on `main`, release
155
+ tags, and explicit TestPyPI dispatches.
156
+ - Static navigation and source adapters no longer treat reference-only symbol
157
+ provenance as a definition location. Existing schema 4 graph artifacts need
158
+ a one-time `codenib index <repo> --preset graph --rebuild`.
159
+
160
+ ### Security
161
+
162
+ - Downloaded context artifacts reject pickle payloads, unsafe archive paths,
163
+ symbolic and special files, unbounded expansion, inventory mismatches, and
164
+ source checkouts that do not match the recorded commit and fingerprint.
165
+ - GitHub artifact downloads verify the API digest and never forward the GitHub
166
+ bearer token to redirects. Pages publication scans outputs for configured
167
+ credentials and rejects secret-bearing fork execution paths.
168
+
169
+ ## [0.1.0] - 2026-07-26
170
+
171
+ ### Added
172
+
173
+ - A unified `codenib` CLI with `index`, `wiki`, `mcp`, and `doctor` commands.
174
+ - A two-command local Wiki path with automatic language detection and reusable
175
+ repository manifests.
176
+ - Fast, semantic, and full indexing presets with explicit optional
177
+ dependencies.
178
+ - A deterministic static Wiki that requires no LLM credentials.
179
+ - A source-linked MCP server for retrieval, graph, and static navigation tools.
180
+ - Multi-view incremental maintenance and evaluation infrastructure.
181
+
182
+ ### Changed
183
+
184
+ - Renamed the maintained package, command, state, and protocol namespace to
185
+ CodeNib.
186
+ - Reduced the default installation to the BM25 and Wiki runtime; model, graph,
187
+ dataset, MCP, and agent dependencies now use named extras.
188
+ - Made public package imports lazy so CLI startup does not initialize model or
189
+ graph runtimes.
190
+
191
+ ### Security
192
+
193
+ - Prepared secretless PyPI publishing through a dedicated GitHub Actions OIDC
194
+ workflow.
195
+
196
+ [Unreleased]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.2...HEAD
197
+ [0.2.2]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.1...v0.2.2
198
+ [0.2.1]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.0...v0.2.1
199
+ [0.2.0]: https://github.com/sysevol-ai/CodeNib/compare/v0.1.0...v0.2.0
200
+ [0.2.0a2]: https://github.com/sysevol-ai/CodeNib/compare/620a82d...78e12ac
201
+ [0.2.0a1]: https://github.com/sysevol-ai/CodeNib/tree/620a82d
202
+ [0.1.0]: https://github.com/sysevol-ai/CodeNib/releases/tag/v0.1.0
@@ -0,0 +1,14 @@
1
+ # SPDX-FileCopyrightText: 2025-2026 CodeNib Contributors
2
+ #
3
+ # SPDX-License-Identifier: Apache-2.0
4
+
5
+ graft web
6
+ include native/workspace_owner.c
7
+ include CHANGELOG.md
8
+ include CONTRIBUTING.md
9
+ include server.json
10
+ prune web/.next
11
+ prune web/node_modules
12
+ prune web/playwright-report
13
+ prune web/test-results
14
+ global-exclude *.py[cod]
codenib-0.2.2/PKG-INFO ADDED
@@ -0,0 +1,446 @@
1
+ Metadata-Version: 2.4
2
+ Name: codenib
3
+ Version: 0.2.2
4
+ Summary: A multi-view data system for serving repository context to coding agents
5
+ Author-email: Zhongming Yu <zhy025@ucsd.edu>
6
+ License-Expression: Apache-2.0
7
+ Project-URL: Documentation, https://docs.codenib.ai/
8
+ Project-URL: Homepage, https://codenib.ai
9
+ Project-URL: Issues, https://github.com/sysevol-ai/CodeNib/issues
10
+ Project-URL: Repository, https://github.com/sysevol-ai/CodeNib.git
11
+ Keywords: code-search,coding-agents,model-context-protocol,repository-context,static-analysis
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Programming Language :: Python :: 3.13
20
+ Classifier: Programming Language :: Python :: 3.14
21
+ Classifier: Operating System :: OS Independent
22
+ Classifier: Topic :: Software Development
23
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
24
+ Requires-Python: >=3.10
25
+ Description-Content-Type: text/markdown
26
+ License-File: LICENSE
27
+ Requires-Dist: fastapi>=0.100.0
28
+ Requires-Dist: filelock>=3.0.0
29
+ Requires-Dist: pydantic>=2.0.0
30
+ Requires-Dist: pyyaml>=6.0
31
+ Requires-Dist: rank_bm25>=0.2.2
32
+ Requires-Dist: regex>=2024.11.6
33
+ Requires-Dist: rich>=14.0.0
34
+ Requires-Dist: tree-sitter>=0.25.2
35
+ Requires-Dist: tree-sitter-language-pack<1.9.0,>=1.8.1
36
+ Requires-Dist: uvicorn>=0.20.0
37
+ Provides-Extra: agent
38
+ Requires-Dist: litellm>=1.93.0; extra == "agent"
39
+ Requires-Dist: openai>=1.0.0; extra == "agent"
40
+ Provides-Extra: datasets
41
+ Requires-Dist: datasets>=4.0.0; extra == "datasets"
42
+ Provides-Extra: graph
43
+ Requires-Dist: igraph>=0.11.6; extra == "graph"
44
+ Requires-Dist: protobuf>=3.20.0; extra == "graph"
45
+ Provides-Extra: mcp
46
+ Requires-Dist: mcp<3,>=2.0.0; extra == "mcp"
47
+ Provides-Extra: semantic
48
+ Requires-Dist: einops>=0.8.0; extra == "semantic"
49
+ Requires-Dist: faiss-cpu>=1.7.0; extra == "semantic"
50
+ Requires-Dist: numpy>=1.24.0; extra == "semantic"
51
+ Requires-Dist: openai>=1.0.0; extra == "semantic"
52
+ Requires-Dist: sentence-transformers>=2.3.0; extra == "semantic"
53
+ Provides-Extra: semantic-remote
54
+ Requires-Dist: faiss-cpu>=1.7.0; extra == "semantic-remote"
55
+ Requires-Dist: numpy>=1.24.0; extra == "semantic-remote"
56
+ Requires-Dist: openai>=1.0.0; extra == "semantic-remote"
57
+ Provides-Extra: serving
58
+ Requires-Dist: numpy>=1.24.0; extra == "serving"
59
+ Requires-Dist: sse-starlette>=2.0.0; extra == "serving"
60
+ Requires-Dist: torch>=2.2.0; extra == "serving"
61
+ Requires-Dist: transformers>=5.15.0; extra == "serving"
62
+ Provides-Extra: vertex
63
+ Requires-Dist: litellm[google]>=1.93.0; extra == "vertex"
64
+ Provides-Extra: zoekt
65
+ Requires-Dist: requests>=2.25.0; extra == "zoekt"
66
+ Provides-Extra: full
67
+ Requires-Dist: datasets>=4.0.0; extra == "full"
68
+ Requires-Dist: einops>=0.8.0; extra == "full"
69
+ Requires-Dist: faiss-cpu>=1.7.0; extra == "full"
70
+ Requires-Dist: igraph>=0.11.6; extra == "full"
71
+ Requires-Dist: litellm[google]>=1.93.0; extra == "full"
72
+ Requires-Dist: mcp<3,>=2.0.0; extra == "full"
73
+ Requires-Dist: numpy>=1.24.0; extra == "full"
74
+ Requires-Dist: openai>=1.0.0; extra == "full"
75
+ Requires-Dist: protobuf>=3.20.0; extra == "full"
76
+ Requires-Dist: requests>=2.25.0; extra == "full"
77
+ Requires-Dist: sentence-transformers>=2.3.0; extra == "full"
78
+ Provides-Extra: dev
79
+ Requires-Dist: black>=22.3.0; extra == "dev"
80
+ Requires-Dist: build>=1.2.0; extra == "dev"
81
+ Requires-Dist: isort>=5.10.1; extra == "dev"
82
+ Requires-Dist: mypy>=0.950; extra == "dev"
83
+ Requires-Dist: flake8>=4.0.1; extra == "dev"
84
+ Requires-Dist: flake8-bugbear>=24.4.0; extra == "dev"
85
+ Requires-Dist: mkdocs<2.0.0; extra == "dev"
86
+ Requires-Dist: mkdocs-material>=9.5.0; extra == "dev"
87
+ Requires-Dist: mkdocstrings-python>=2.0.0; extra == "dev"
88
+ Requires-Dist: mkdocs-api-autonav>=0.4.0; extra == "dev"
89
+ Provides-Extra: test
90
+ Requires-Dist: datasets>=4.0.0; extra == "test"
91
+ Requires-Dist: einops>=0.8.0; extra == "test"
92
+ Requires-Dist: faiss-cpu>=1.7.0; extra == "test"
93
+ Requires-Dist: igraph>=0.11.6; extra == "test"
94
+ Requires-Dist: litellm>=1.93.0; extra == "test"
95
+ Requires-Dist: matplotlib>=3.4.0; extra == "test"
96
+ Requires-Dist: mcp<3,>=2.0.0; extra == "test"
97
+ Requires-Dist: numpy>=1.24.0; extra == "test"
98
+ Requires-Dist: openai>=1.0.0; extra == "test"
99
+ Requires-Dist: protobuf>=3.20.0; extra == "test"
100
+ Requires-Dist: pytest>=6.0.0; extra == "test"
101
+ Requires-Dist: pytest-cov>=3.0.0; extra == "test"
102
+ Requires-Dist: pytest-timeout>=2.1.0; extra == "test"
103
+ Requires-Dist: pytest-xdist>=3.0.0; extra == "test"
104
+ Requires-Dist: requests>=2.25.0; extra == "test"
105
+ Requires-Dist: sentence-transformers>=2.3.0; extra == "test"
106
+ Requires-Dist: sse-starlette>=2.0.0; extra == "test"
107
+ Requires-Dist: tomli>=1.1.0; python_version < "3.11" and extra == "test"
108
+ Dynamic: license-file
109
+
110
+ <!--
111
+ SPDX-FileCopyrightText: 2025-2026 CodeNib Contributors
112
+
113
+ SPDX-License-Identifier: Apache-2.0
114
+ -->
115
+ <!-- mcp-name: ai.codenib/codenib -->
116
+
117
+ <div align="center">
118
+ <img src="https://raw.githubusercontent.com/sysevol-ai/CodeNib/main/assets/codenib_logo.svg" alt="CodeNib" width="560">
119
+ <h1>Searchable codebase wikis and context for coding agents</h1>
120
+ <p>
121
+ Point it at any repo, get a searchable Wiki and an MCP server for your coding agent.
122
+ </p>
123
+ <p>
124
+ <a href="https://arxiv.org/abs/2607.25431"><img src="https://img.shields.io/badge/arXiv-2607.25431-b31b1b.svg?logo=arxiv&amp;logoColor=white" alt="arXiv 2607.25431"></a>
125
+ <a href="https://huggingface.co/papers/2607.25431"><img src="https://img.shields.io/badge/Hugging_Face-%232_Paper_of_the_Day-FFD21E.svg?logo=huggingface&amp;logoColor=black" alt="Hugging Face: #2 Paper of the Day"></a>
126
+ </p>
127
+ <p>
128
+ <a href="#quickstart">Quickstart</a>
129
+ &nbsp;&middot;&nbsp;
130
+ <a href="https://codenib.ai">Website</a>
131
+ &nbsp;&middot;&nbsp;
132
+ <a href="https://discord.gg/ySer6CGn4">Discord</a>
133
+ &nbsp;&middot;&nbsp;
134
+ <a href="https://docs.codenib.ai/">Documentation</a>
135
+ &nbsp;&middot;&nbsp;
136
+ <a href="https://docs.codenib.ai/codegraph/">CodeGraph</a>
137
+ &nbsp;&middot;&nbsp;
138
+ <a href="https://docs.codenib.ai/mcp/">MCP</a>
139
+ &nbsp;&middot;&nbsp;
140
+ <a href="https://docs.codenib.ai/agent_integrations/">Agent Integrations</a>
141
+ &nbsp;&middot;&nbsp;
142
+ <a href="https://docs.codenib.ai/language_capabilities/">Languages</a>
143
+ </p>
144
+ <p>
145
+ <a href="https://github.com/sysevol-ai/CodeNib/actions/workflows/ci-full.yml"><img src="https://github.com/sysevol-ai/CodeNib/actions/workflows/ci-full.yml/badge.svg" alt="CI"></a>
146
+ <a href="https://pypi.org/project/codenib/"><img src="https://img.shields.io/pypi/v/codenib.svg?cacheSeconds=300" alt="PyPI version"></a>
147
+ <a href="https://docs.codenib.ai/codegraph/#one-command-setup"><img src="https://img.shields.io/badge/Claude_Code-D97757?logo=claude&amp;logoColor=fff" alt="Claude Code supported"></a>
148
+ <a href="https://docs.codenib.ai/codegraph/#one-command-setup"><img src="https://img.shields.io/badge/Codex-000?logo=openai&amp;logoColor=fff" alt="Codex supported"></a>
149
+ <a href="https://github.com/sysevol-ai/CodeNib/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License: Apache 2.0"></a>
150
+ <a href="https://github.com/sysevol-ai/CodeNib/blob/main/pyproject.toml"><img src="https://img.shields.io/badge/Python-3.10%2B-3776AB.svg" alt="Python 3.10+"></a>
151
+ <img src="https://img.shields.io/badge/Release-0.2.2-2563EB.svg" alt="CodeNib 0.2.2">
152
+ </p>
153
+ </div>
154
+
155
+ ```bash
156
+ python -m pip install "codenib[graph,mcp]==0.2.2"
157
+ codenib codegraph init /path/to/your/repo
158
+ ```
159
+
160
+ That one command detects the repository languages, installs the pinned
161
+ package-level graph providers it can manage, builds BM25 plus a source-linked
162
+ symbol graph, and registers the resulting MCP server with installed Codex and
163
+ Claude Code clients. It is local, open source, requires no model or cloud, and
164
+ does not write configuration or indexes into the target repository.
165
+
166
+ ## News
167
+
168
+ - **2026-08-21 — CodeNib 0.2.2 repository source authority.** Authenticated
169
+ indexing now admits absolute symlinks only when they resolve inside the same
170
+ pinned checkout, and exact root-relative exclusions persist across indexing,
171
+ CodeGraph, MCP, Wiki, and Web runtimes.
172
+ [Release notes](https://docs.codenib.ai/releases/0.2.2/)
173
+ - **2026-08-13 — CodeNib 0.2.1 CodeGraph onboarding.** One command prepares a
174
+ repository graph and connects it to Codex and Claude Code, with idempotent
175
+ status, safe uninstall, and installed-wheel MCP graph verification.
176
+ [CodeGraph guide](https://docs.codenib.ai/codegraph/)
177
+ - **2026-08-08 — RepoNavigator Jump adapter.** The published single-tool
178
+ [RepoNavigator](https://arxiv.org/abs/2512.20957v6) contract now resolves
179
+ symbol definitions through a persisted SCIP occurrence or injected LSP
180
+ signal, with graph-only resolution disclosed as a degraded fallback.
181
+ [Support boundary](https://docs.codenib.ai/agent_integrations/#reponavigator)
182
+ - **2026-08-05 — CodeNib 0.2.0.** Build a static Wiki and reusable context
183
+ artifact once, then serve it through Pages or the official MCP package.
184
+ Hybrid retrieval and managed SCIP/LSP providers ship in the same CLI.
185
+ [Release notes](https://docs.codenib.ai/releases/0.2.0/)
186
+ - **2026-08-05 — SweRank recipe.** Run
187
+ [SweRank](https://github.com/SalesforceAIResearch/SweRank) retrieval and
188
+ reranking over a local checkout. [Example](examples/swerank_retrieve_rerank.py)
189
+ - **2026-08-04 — Native repository explorer.** CodeNib's planner now targets
190
+ the [SWE-Explore](https://github.com/Qiushao-E/SWE-Explore-Bench)
191
+ source-region protocol.
192
+ [Validation](docs/evaluation/swe_explore.md)
193
+ - **2026-08-03 — Native LocAgent policy.**
194
+ [LocAgent](https://github.com/gersteinlab/LocAgent) runs directly on CodeNib
195
+ views without LocAgent, LiteLLM, or LlamaIndex dependencies.
196
+ [Support matrix](https://docs.codenib.ai/agent_integrations/)
197
+ - **2026-08-02 — OrcaLoca SearchAgent.**
198
+ [OrcaLoca](https://github.com/fishmingyu/OrcaLoca)'s six-tool search loop
199
+ now reuses CodeNib's symbol graph.
200
+ [Support matrix](https://docs.codenib.ai/agent_integrations/)
201
+
202
+ ## System Architecture
203
+
204
+ | Layer | Responsibility |
205
+ |---|---|
206
+ | View compiler | Chunk source and materialize BM25, dense, graph, and navigation views; reuse current artifacts and atomically rebuild affected views |
207
+ | View manifest | Record repository identity, source fingerprint, builder profile, capabilities, status, and artifact location independently for each view |
208
+ | Context serving | Execute lexical, semantic, hybrid, reranked, and structural query plans while preserving repository-relative source locations |
209
+ | Agent runtime | Expose capability-aware MCP and LSP-shaped tools, assemble bounded evidence, and return citations that agents and humans can inspect |
210
+
211
+ ```text
212
+ repository change
213
+ -> reuse current views or rebuild affected views
214
+ -> publish a capability-bearing manifest
215
+ -> plan repository queries
216
+ -> deliver bounded, source-linked context
217
+ ```
218
+
219
+ On a later commit, CodeNib reuses views whose source and builder identities are
220
+ still current. A requested view affected by source or policy changes currently
221
+ rebuilds in an isolated generation; file- and symbol-level delta repair remains
222
+ disabled until it can use the same pinned source authority.
223
+
224
+ ## Quickstart
225
+
226
+ Requires Python 3.10+ and Git. For an agent-ready CodeGraph with no model or API
227
+ key, install the graph and MCP extras and run one command:
228
+
229
+ ```bash
230
+ python -m pip install "codenib[graph,mcp]==0.2.2"
231
+ codenib codegraph init /path/to/repository
232
+ ```
233
+
234
+ `codegraph init` detects Codex and Claude Code, installs only the detected
235
+ languages' package-managed providers, builds reusable `bm25` and
236
+ `symbol_graph` views, and asks each native client CLI to own its configuration.
237
+ Run `codenib codegraph status /path/to/repository` to diagnose the complete
238
+ path or `codenib codegraph uninstall /path/to/repository` to remove only the
239
+ managed client registrations. The index remains reusable.
240
+
241
+ Repositories can persist exact root-relative subtree exclusions when generated
242
+ or vendored content should not be indexed:
243
+
244
+ ```bash
245
+ codenib codegraph init /path/to/repository \
246
+ --exclude-dir ios/Pods \
247
+ --exclude-dir generated/api
248
+ ```
249
+
250
+ Paths use repository-relative POSIX spelling (`/`) and name exact subtrees,
251
+ not globs. Repeat `--exclude-dir` to replace the complete custom exclusion set. Later
252
+ `init` and `index` runs reuse that policy from the manifest; use
253
+ `--clear-exclude-dirs` to return to the default source surface. CodeNib does not
254
+ implicitly treat `.gitignore` as an indexing policy, because tracked and local
255
+ ignored source can still be intentional input.
256
+
257
+ Zoekt supports the default source policy only when its fixed commit tree
258
+ exactly matches the authenticated checkout and contains no tracked path that
259
+ the default policy excludes. It does not currently support a non-empty custom
260
+ exclusion set. A command that explicitly requests the `zoekt` view, including
261
+ `--preset full`, fails closed when either condition is unmet; use the
262
+ CodeGraph, `fast`, or semantic paths instead.
263
+ In 0.2.2 the authenticated MCP `search_zoekt` runtime requires Linux `/proc`
264
+ so the child process can inherit the exact retained shard generation; other
265
+ platforms fail closed instead of reopening a mutable shard path.
266
+
267
+ For a browser Wiki with hybrid BM25+dense retrieval, install the semantic extra:
268
+
269
+ ```bash
270
+ python -m pip install "codenib[semantic]==0.2.2"
271
+ codenib wiki /path/to/repository
272
+ ```
273
+
274
+ Both paths keep reusable state under `~/.codenib/repositories` and leave the
275
+ target checkout unchanged. Set `CODENIB_HOME` to relocate state. The
276
+ [0.2.2 release notes](https://docs.codenib.ai/releases/0.2.2/) record the
277
+ upgrade boundary and installed-product evidence.
278
+
279
+ Preview the CodeGraph operations without installing, indexing, or configuring
280
+ an agent:
281
+
282
+ ```bash
283
+ codenib codegraph init /path/to/repository --dry-run
284
+ ```
285
+
286
+ For a structural view, CodeNib detects the repository languages and manages
287
+ only their package-level providers; operating-system and project prerequisites
288
+ remain explicit:
289
+
290
+ ```bash
291
+ python -m pip install "codenib[graph]==0.2.2"
292
+ codenib toolchain install /path/to/repository --scope graph
293
+ codenib doctor /path/to/repository --require graph
294
+ ```
295
+
296
+ Export that indexed commit as a serverless Wiki when a live Ask backend is not
297
+ needed:
298
+
299
+ ```bash
300
+ codenib export /path/to/repository --output /tmp/repository-wiki
301
+ ```
302
+
303
+ The export contains a versioned provenance manifest, precomputed Wiki pages,
304
+ source citations, and available page-level dependency data. It contains no
305
+ provider credential; interactive Ask and runtime graph exploration remain on
306
+ the local or MCP serving path.
307
+
308
+ For a repository-hosted Wiki, CodeNib also ships a reusable GitHub workflow
309
+ that builds or reuses the same manifest, deploys the static site to Pages,
310
+ and uploads the matching commit-addressed context artifact. Its default
311
+ `semantic` route builds BM25 and vector views with a cached local Hugging Face
312
+ model and needs no API key. An explicit `fast` route avoids the model download;
313
+ a BYO OpenAI-compatible endpoint can replace local embedding. Query-time search
314
+ remains in the local or MCP runtime. See
315
+ [GitHub Pages](https://docs.codenib.ai/github_pages/).
316
+ The published BM25/vector artifact can then be verified against an exact local
317
+ checkout and served through MCP without rebuilding the repository views.
318
+
319
+ See the
320
+ [Quickstart](https://docs.codenib.ai/quickstart/)
321
+ for ports, advanced indexing, and troubleshooting.
322
+
323
+ <p align="center">
324
+ <img src="https://raw.githubusercontent.com/sysevol-ai/CodeNib/main/assets/codenib_wiki.png" alt="CodeNib Wiki showing the source-linked reverse proxy guide for Caddy" width="100%">
325
+ </p>
326
+
327
+ ## Serve An Agent
328
+
329
+ The recommended path configures installed Codex and Claude Code clients through
330
+ their native CLIs:
331
+
332
+ ```bash
333
+ python -m pip install "codenib[graph,mcp]==0.2.2"
334
+ codenib codegraph init /path/to/repository
335
+ ```
336
+
337
+ Ask the agent to start with `explore_context` for bounded, source-verified
338
+ repository context and use `dependency_subgraph` for caller impact or callee
339
+ dependencies. The MCP server also exposes ranked BM25, regex, definition,
340
+ reference, route, and bounded source-read tools. See the
341
+ [CodeGraph guide](https://docs.codenib.ai/codegraph/) for client scopes,
342
+ diagnostics, uninstall behavior, and language prerequisites, and the
343
+ [MCP Server](https://docs.codenib.ai/mcp/) for the complete tool contract.
344
+
345
+ The same planner is available directly to Python agents:
346
+
347
+ ```python
348
+ from codenib.agent import RepositoryContextExplorer
349
+
350
+ with RepositoryContextExplorer.from_repository(
351
+ "/path/to/repository", policy="auto"
352
+ ) as explorer:
353
+ result = explorer.explore("where is request retry behavior implemented?", top_k=10)
354
+ ```
355
+
356
+ Each result includes source-validated evidence plus the selected plan,
357
+ capabilities, loaded views, fusion, graph, and reranking trace.
358
+
359
+ ## What CodeNib Provides
360
+
361
+ | Surface | Purpose |
362
+ |---|---|
363
+ | View compiler | Build independently managed views, reuse current generations, and atomically rebuild changed views under one source identity |
364
+ | Agent context runtime | Plan capability-aware retrieval and navigation, then assemble bounded source-linked evidence |
365
+ | Retrieval | BM25, dense-vector, regex/trigram, Zoekt, fusion, and reranking paths; see the [validated model matrix](https://docs.codenib.ai/rag_ops/#validated-models) |
366
+ | Structural context | SCIP/LSP-backed symbol graphs with source locations and typed edges |
367
+ | MCP and LSP-shaped tools | Serve one manifest to coding agents without tying the runtime to one agent framework |
368
+ | Agent compatibility | Reuse one manifest across revision-pinned [LocAgent](https://github.com/gersteinlab/LocAgent), [Agentless](https://github.com/OpenAutoCoder/Agentless), [CoSIL](https://github.com/ZhonghaoJiang/CoSIL), and [OrcaLoca](https://github.com/fishmingyu/OrcaLoca) contracts, plus the published [RepoNavigator](https://arxiv.org/abs/2512.20957v6) `jump` contract over SCIP/LSP definition signals; see the [support matrix](https://docs.codenib.ai/agent_integrations/) |
369
+ | Benchmark compatibility | Evaluate native exploration against pinned external datasets and scorers, including [SWE-Explore](https://github.com/Qiushao-E/SWE-Explore-Bench); see the [dataset and benchmark matrix](https://docs.codenib.ai/evaluation/) |
370
+ | Local inspection | Audit the same context through Wiki pages, Ask answers, citations, and the Dependency Map |
371
+ | Evaluation harness | Measure retrieval, navigation, incremental maintenance, and context policies on the same artifacts |
372
+
373
+ Language support varies by surface. The generated
374
+ [capability matrix](https://docs.codenib.ai/language_capabilities/)
375
+ records chunking, graph, incremental, and C++ decoder support.
376
+
377
+ ## Documentation
378
+
379
+ - [Quickstart](https://docs.codenib.ai/quickstart/)
380
+ - [GitHub Pages](https://docs.codenib.ai/github_pages/)
381
+ - [MCP Server](https://docs.codenib.ai/mcp/)
382
+ - [Agent Integrations](https://docs.codenib.ai/agent_integrations/)
383
+ - [RAG Models and Planner](https://docs.codenib.ai/rag_ops/)
384
+ - [Benchmarks and Evaluation](https://docs.codenib.ai/evaluation/)
385
+ - [Web UI](https://docs.codenib.ai/web_demo/)
386
+ - [Language Capabilities](https://docs.codenib.ai/language_capabilities/)
387
+ - [Concepts and development guides](https://docs.codenib.ai/)
388
+
389
+ Build the documentation site locally with:
390
+
391
+ ```bash
392
+ python -m pip install -e ".[dev]"
393
+ mkdocs serve
394
+ ```
395
+
396
+ ## Development
397
+
398
+ ```bash
399
+ git clone https://github.com/sysevol-ai/CodeNib.git
400
+ cd CodeNib
401
+ make dev
402
+ make test
403
+ ```
404
+
405
+ The test suite is split into unit, integration, serial integration, core,
406
+ graph-consumer, and slow tiers. See
407
+ [CI/CD](https://docs.codenib.ai/ci_cd/) before
408
+ running the credential- or toolchain-dependent tiers.
409
+
410
+ ## Status
411
+
412
+ CodeNib `0.2.2` is a beta release. The CLI and manifest format are usable, but
413
+ public interfaces may still change before a stable release. Historical
414
+ research artifacts retain their published dataset identifiers; the maintained
415
+ package, import namespace, commands, and repository use `CodeNib`. See
416
+ [Naming](https://docs.codenib.ai/branding/).
417
+
418
+ ## Citation
419
+
420
+ If you use CodeNib in your research, please cite our
421
+ [arXiv paper](https://arxiv.org/abs/2607.25431):
422
+
423
+ ```bibtex
424
+ @misc{yu2026codenibmultiviewdataserving,
425
+ title={CodeNib: A Multi-View Data System for Serving Repository Context to Coding Agents},
426
+ author={Zhongming Yu and Hengjia Yu and Boqin Yuan and Shuting Zhao and Yizhao Chen and Aryan Dokania and Mihir Jagtap and Jiayu Chang and Yitong Ma and Yash Jayswal and Wentao Ni and Hejia Zhang and Zhaoling Chen and Gangda Deng and Jishen Zhao},
427
+ year={2026},
428
+ eprint={2607.25431},
429
+ archivePrefix={arXiv},
430
+ primaryClass={cs.SE},
431
+ url={https://arxiv.org/abs/2607.25431},
432
+ }
433
+ ```
434
+
435
+ ## Project
436
+
437
+ [Website](https://codenib.ai)
438
+ &nbsp;&middot;&nbsp;
439
+ [Changelog](https://github.com/sysevol-ai/CodeNib/blob/main/CHANGELOG.md)
440
+ &nbsp;&middot;&nbsp;
441
+ [Contributing](https://github.com/sysevol-ai/CodeNib/blob/main/CONTRIBUTING.md)
442
+
443
+ ## License
444
+
445
+ CodeNib is licensed under the
446
+ [Apache License, Version 2.0](https://github.com/sysevol-ai/CodeNib/blob/main/LICENSE).