asicode 0.2.6__py3-none-any.whl

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 (340) hide show
  1. asi.py +9644 -0
  2. asicode-0.2.6.dist-info/METADATA +208 -0
  3. asicode-0.2.6.dist-info/RECORD +340 -0
  4. asicode-0.2.6.dist-info/WHEEL +5 -0
  5. asicode-0.2.6.dist-info/entry_points.txt +2 -0
  6. asicode-0.2.6.dist-info/licenses/LICENSE +21 -0
  7. asicode-0.2.6.dist-info/top_level.txt +11 -0
  8. common.py +86 -0
  9. config.py +162 -0
  10. context_collector.py +388 -0
  11. diff_apply.py +1549 -0
  12. external_llm/__init__.py +53 -0
  13. external_llm/agent/__init__.py +1 -0
  14. external_llm/agent/_shared_utils.py +1713 -0
  15. external_llm/agent/_thread_pool.py +13 -0
  16. external_llm/agent/_user_intent.py +233 -0
  17. external_llm/agent/agent_context_manager.py +532 -0
  18. external_llm/agent/agent_escalation_pipeline.py +161 -0
  19. external_llm/agent/agent_fast_path.py +63 -0
  20. external_llm/agent/agent_loop.py +3567 -0
  21. external_llm/agent/agent_loop_types.py +207 -0
  22. external_llm/agent/agent_phase_manager.py +352 -0
  23. external_llm/agent/agent_planner_pipeline.py +1756 -0
  24. external_llm/agent/agent_profile.py +200 -0
  25. external_llm/agent/agent_turn_pipeline.py +2592 -0
  26. external_llm/agent/alignment_scorer.py +333 -0
  27. external_llm/agent/anchor_shared.py +310 -0
  28. external_llm/agent/argument_repairer.py +119 -0
  29. external_llm/agent/ast_cache.py +148 -0
  30. external_llm/agent/ast_engine.py +1060 -0
  31. external_llm/agent/async_tool_executor.py +182 -0
  32. external_llm/agent/auto_correction.py +2268 -0
  33. external_llm/agent/background_job_manager.py +571 -0
  34. external_llm/agent/call_graph.py +516 -0
  35. external_llm/agent/checkpoint_store.py +472 -0
  36. external_llm/agent/config/__init__.py +0 -0
  37. external_llm/agent/config/thresholds.py +409 -0
  38. external_llm/agent/context_budget.py +593 -0
  39. external_llm/agent/context_contract.py +231 -0
  40. external_llm/agent/context_manager.py +1301 -0
  41. external_llm/agent/context_utils.py +29 -0
  42. external_llm/agent/design_chat_loop.py +2510 -0
  43. external_llm/agent/enums.py +48 -0
  44. external_llm/agent/execution_mode_classifier.py +323 -0
  45. external_llm/agent/execution_spec.py +355 -0
  46. external_llm/agent/execution_thresholds.py +281 -0
  47. external_llm/agent/failure_classifier.py +160 -0
  48. external_llm/agent/failure_context.py +409 -0
  49. external_llm/agent/failure_pattern_store.py +911 -0
  50. external_llm/agent/file_cache.py +144 -0
  51. external_llm/agent/fix_spec_claim_validator.py +747 -0
  52. external_llm/agent/gsg_safety.py +114 -0
  53. external_llm/agent/guard_ir.py +985 -0
  54. external_llm/agent/handoff_observer.py +327 -0
  55. external_llm/agent/insights_manager.py +1124 -0
  56. external_llm/agent/intent_models.py +250 -0
  57. external_llm/agent/intent_resolver.py +861 -0
  58. external_llm/agent/interrupt_tool_results.py +95 -0
  59. external_llm/agent/json_repair.py +283 -0
  60. external_llm/agent/language_backend.py +612 -0
  61. external_llm/agent/language_hint.py +51 -0
  62. external_llm/agent/learned_policy.py +826 -0
  63. external_llm/agent/light_repo_index.py +231 -0
  64. external_llm/agent/lint_runner.py +397 -0
  65. external_llm/agent/llm_output_utils.py +52 -0
  66. external_llm/agent/local_assistant.py +804 -0
  67. external_llm/agent/message_shapes.py +89 -0
  68. external_llm/agent/metadata_utils.py +14 -0
  69. external_llm/agent/operation_models.py +2707 -0
  70. external_llm/agent/orchestrator.py +5109 -0
  71. external_llm/agent/output_normalizer.py +415 -0
  72. external_llm/agent/performance_metrics.py +452 -0
  73. external_llm/agent/placement_contract.py +2765 -0
  74. external_llm/agent/plan_state.py +136 -0
  75. external_llm/agent/planner_lane_facade.py +67 -0
  76. external_llm/agent/rag_configs.py +168 -0
  77. external_llm/agent/rag_searcher.py +693 -0
  78. external_llm/agent/reasoning_utils.py +62 -0
  79. external_llm/agent/repair_helpers.py +475 -0
  80. external_llm/agent/request_intent_classifier.py +95 -0
  81. external_llm/agent/routing_policy.py +157 -0
  82. external_llm/agent/run_store.py +2356 -0
  83. external_llm/agent/scanner_registry.py +610 -0
  84. external_llm/agent/selector_constants.py +26 -0
  85. external_llm/agent/semantic_intent.py +163 -0
  86. external_llm/agent/semantic_lint.py +94 -0
  87. external_llm/agent/session_state.py +80 -0
  88. external_llm/agent/slash_commands.py +90 -0
  89. external_llm/agent/subagent_ipc.py +1222 -0
  90. external_llm/agent/symbol_engine.py +592 -0
  91. external_llm/agent/symbol_index.py +380 -0
  92. external_llm/agent/symbol_locator.py +117 -0
  93. external_llm/agent/symbol_modify_tool.py +1258 -0
  94. external_llm/agent/symbol_search.py +1881 -0
  95. external_llm/agent/task_router.py +751 -0
  96. external_llm/agent/terminal_coordination.py +43 -0
  97. external_llm/agent/termination_policy.py +284 -0
  98. external_llm/agent/test_impact_selector.py +411 -0
  99. external_llm/agent/test_runner.py +450 -0
  100. external_llm/agent/tool_chain.py +36 -0
  101. external_llm/agent/tool_dependency_graph.py +169 -0
  102. external_llm/agent/tool_failure_log.py +497 -0
  103. external_llm/agent/tool_handlers/__init__.py +25 -0
  104. external_llm/agent/tool_handlers/agent_tools.py +289 -0
  105. external_llm/agent/tool_handlers/analysis_tools.py +1343 -0
  106. external_llm/agent/tool_handlers/ast_op_executor.py +1233 -0
  107. external_llm/agent/tool_handlers/browser_tools.py +325 -0
  108. external_llm/agent/tool_handlers/constants.py +10 -0
  109. external_llm/agent/tool_handlers/git_tools.py +1031 -0
  110. external_llm/agent/tool_handlers/read_tools.py +530 -0
  111. external_llm/agent/tool_handlers/shell_policy.py +17 -0
  112. external_llm/agent/tool_handlers/test_tools.py +228 -0
  113. external_llm/agent/tool_handlers/web_search_tools.py +769 -0
  114. external_llm/agent/tool_handlers/write_tools.py +6213 -0
  115. external_llm/agent/tool_registry.py +2268 -0
  116. external_llm/agent/tool_result_cache.py +178 -0
  117. external_llm/agent/tool_safety.py +956 -0
  118. external_llm/agent/tool_schemas.py +1176 -0
  119. external_llm/agent/vector_cache.py +614 -0
  120. external_llm/agent/weight_learning.py +2929 -0
  121. external_llm/agent/work_state_digest.py +157 -0
  122. external_llm/analysis/__init__.py +0 -0
  123. external_llm/analysis/_dead_block_shared.py +848 -0
  124. external_llm/analysis/ast_similarity_scanner.py +1128 -0
  125. external_llm/analysis/broken_contract_scanner.py +591 -0
  126. external_llm/analysis/container_reachability_scanner.py +792 -0
  127. external_llm/analysis/contradictory_logic_scanner.py +693 -0
  128. external_llm/analysis/cross_file_refs.py +430 -0
  129. external_llm/analysis/dead_block_scanner.py +97 -0
  130. external_llm/analysis/duplicate_definition_scanner.py +353 -0
  131. external_llm/analysis/parse_cache.py +110 -0
  132. external_llm/analysis/public_dead_code_scanner.py +106 -0
  133. external_llm/analysis/unused_import_scanner.py +385 -0
  134. external_llm/analysis/vulture_scanner.py +445 -0
  135. external_llm/anthropic_client.py +1235 -0
  136. external_llm/ast_rewrite.py +322 -0
  137. external_llm/client.py +485 -0
  138. external_llm/code_analyzer.py +302 -0
  139. external_llm/code_structure_utils.py +1554 -0
  140. external_llm/common/__init__.py +0 -0
  141. external_llm/common/atomic_io.py +240 -0
  142. external_llm/common/file_lock.py +134 -0
  143. external_llm/common/indent_utils.py +839 -0
  144. external_llm/context/context_packs.py +60 -0
  145. external_llm/context_builder.py +411 -0
  146. external_llm/dependency_graph.py +303 -0
  147. external_llm/design_session.py +629 -0
  148. external_llm/edit_localization/__init__.py +26 -0
  149. external_llm/edit_localization/dataflow_extractor.py +472 -0
  150. external_llm/edit_localization/graph_propagator.py +241 -0
  151. external_llm/edit_localization/relevance_scorer.py +310 -0
  152. external_llm/edit_localization/request_analyzer.py +89 -0
  153. external_llm/editor/_editor_core/__init__.py +0 -0
  154. external_llm/editor/_editor_core/common/__init__.py +0 -0
  155. external_llm/editor/_editor_core/common/import_normalizer.py +376 -0
  156. external_llm/editor/_editor_core/ts_vm/__init__.py +0 -0
  157. external_llm/editor/_editor_core/ts_vm/execution_vm/__init__.py +0 -0
  158. external_llm/editor/_editor_core/ts_vm/execution_vm/ast_rewriter.py +118 -0
  159. external_llm/editor/_editor_core/ts_vm/execution_vm/models.py +27 -0
  160. external_llm/editor/_editor_core/ts_vm/execution_vm/rollback_manager.py +41 -0
  161. external_llm/editor/_editor_core/ts_vm/execution_vm/verifier.py +212 -0
  162. external_llm/editor/_editor_core/ts_vm/execution_vm/vm.py +193 -0
  163. external_llm/editor/_editor_core/ts_vm/learning/__init__.py +0 -0
  164. external_llm/editor/_editor_core/ts_vm/learning/exploration_policy.py +43 -0
  165. external_llm/editor/_editor_core/ts_vm/primitives/__init__.py +0 -0
  166. external_llm/editor/_editor_core/ts_vm/primitives/executor.py +66 -0
  167. external_llm/editor/_editor_core/ts_vm/primitives/models.py +21 -0
  168. external_llm/editor/_editor_core/ts_vm/repair/__init__.py +0 -0
  169. external_llm/editor/_editor_core/ts_vm/repair/failure_classifier.py +88 -0
  170. external_llm/editor/_editor_core/ts_vm/repair/repair_planner.py +94 -0
  171. external_llm/editor/_editor_core/ts_vm/repair/repair_registry.py +42 -0
  172. external_llm/editor/_editor_core/ts_vm/repair/repair_strategies.py +113 -0
  173. external_llm/editor/_editor_core/vm/__init__.py +36 -0
  174. external_llm/editor/_editor_core/vm/ast_rewriter.py +99 -0
  175. external_llm/editor/_editor_core/vm/classification.py +70 -0
  176. external_llm/editor/_editor_core/vm/contracts/__init__.py +3 -0
  177. external_llm/editor/_editor_core/vm/contracts/contract_diff.py +225 -0
  178. external_llm/editor/_editor_core/vm/contracts/contract_extractor.py +271 -0
  179. external_llm/editor/_editor_core/vm/contracts/contract_models.py +93 -0
  180. external_llm/editor/_editor_core/vm/contracts/project_graph.py +201 -0
  181. external_llm/editor/_editor_core/vm/contracts/propagation_planner.py +237 -0
  182. external_llm/editor/_editor_core/vm/failure_classifier.py +390 -0
  183. external_llm/editor/_editor_core/vm/models.py +28 -0
  184. external_llm/editor/_editor_core/vm/repair_planner.py +91 -0
  185. external_llm/editor/_editor_core/vm/repair_registry.py +34 -0
  186. external_llm/editor/_editor_core/vm/repair_strategies.py +1049 -0
  187. external_llm/editor/_editor_core/vm/rollback_manager.py +40 -0
  188. external_llm/editor/_editor_core/vm/verifier.py +381 -0
  189. external_llm/editor/_editor_core/vm/vm.py +326 -0
  190. external_llm/editor/agent/autonomous/__init__.py +45 -0
  191. external_llm/editor/agent/autonomous/proactive_runner.py +386 -0
  192. external_llm/editor/agent/autonomous/push_manager.py +299 -0
  193. external_llm/editor/agent/autonomous/task_queue.py +225 -0
  194. external_llm/editor/agent/autonomous/trigger_engine.py +175 -0
  195. external_llm/editor/agent/autonomous/trigger_policy.py +294 -0
  196. external_llm/editor/agent/mcp/__init__.py +13 -0
  197. external_llm/editor/agent/mcp/server.py +175 -0
  198. external_llm/editor/agent/prompts/__init__.py +2 -0
  199. external_llm/editor/agent/prompts/edit_prompts.py +299 -0
  200. external_llm/editor/cross_language/__init__.py +4 -0
  201. external_llm/editor/cross_language/models.py +79 -0
  202. external_llm/editor/cross_language/strategy_abstraction.py +204 -0
  203. external_llm/editor/cross_language/transfer_engine.py +170 -0
  204. external_llm/editor/learning/__init__.py +1 -0
  205. external_llm/editor/learning/experience_store.py +343 -0
  206. external_llm/editor/learning/exploration_state.py +124 -0
  207. external_llm/editor/learning/learning_sink.py +131 -0
  208. external_llm/editor/learning/pattern_extractor.py +158 -0
  209. external_llm/editor/learning/primitive_learning_models.py +125 -0
  210. external_llm/editor/learning/primitive_learning_scorer.py +145 -0
  211. external_llm/editor/learning/primitive_learning_store.py +142 -0
  212. external_llm/editor/learning/primitive_learning_updater.py +128 -0
  213. external_llm/editor/learning/primitive_sequence_models.py +58 -0
  214. external_llm/editor/learning/primitive_sequence_scorer.py +117 -0
  215. external_llm/editor/learning/primitive_sequence_store.py +115 -0
  216. external_llm/editor/learning/primitive_sequence_updater.py +74 -0
  217. external_llm/editor/learning/problem_signature.py +161 -0
  218. external_llm/editor/learning/strategy_execution_bias.py +345 -0
  219. external_llm/editor/learning/strategy_prioritizer.py +245 -0
  220. external_llm/editor/learning/strategy_state.py +128 -0
  221. external_llm/editor/learning/unified_run_record.py +118 -0
  222. external_llm/editor/learning/unified_store.py +566 -0
  223. external_llm/editor/primitives/__init__.py +2 -0
  224. external_llm/editor/primitives/code_context.py +660 -0
  225. external_llm/editor/primitives/delete_node.py +41 -0
  226. external_llm/editor/primitives/executor.py +106 -0
  227. external_llm/editor/primitives/insert_import.py +90 -0
  228. external_llm/editor/primitives/insert_statement.py +77 -0
  229. external_llm/editor/primitives/models.py +87 -0
  230. external_llm/editor/primitives/registry.py +49 -0
  231. external_llm/editor/primitives/rename_symbol.py +91 -0
  232. external_llm/editor/primitives/replace_function.py +260 -0
  233. external_llm/editor/primitives/update_call.py +76 -0
  234. external_llm/editor/semantic/__init__.py +1 -0
  235. external_llm/editor/semantic/ast_transform_utils.py +450 -0
  236. external_llm/editor/semantic/contract_replan_strategy.py +98 -0
  237. external_llm/editor/semantic/draft_parser.py +206 -0
  238. external_llm/editor/semantic/flow_synthesizer.py +165 -0
  239. external_llm/editor/semantic/fragment_generator.py +21 -0
  240. external_llm/editor/semantic/fragment_integrator.py +163 -0
  241. external_llm/editor/semantic/generation_planner.py +19 -0
  242. external_llm/editor/semantic/libcst_transform_utils.py +254 -0
  243. external_llm/editor/semantic/output_comparator.py +90 -0
  244. external_llm/editor/semantic/primitive_code_templates.py +307 -0
  245. external_llm/editor/semantic/primitive_detector.py +402 -0
  246. external_llm/editor/semantic/primitive_ir_builder.py +109 -0
  247. external_llm/editor/semantic/primitive_models.py +108 -0
  248. external_llm/editor/semantic/primitive_reconstructor.py +264 -0
  249. external_llm/editor/semantic/primitive_registry.py +328 -0
  250. external_llm/editor/semantic/semantic_contract_evaluator.py +321 -0
  251. external_llm/editor/semantic/semantic_contract_models.py +124 -0
  252. external_llm/editor/semantic/semantic_contract_registry.py +134 -0
  253. external_llm/editor/semantic/semantic_contracts.py +72 -0
  254. external_llm/editor/semantic/semantic_corrector.py +75 -0
  255. external_llm/editor/semantic/semantic_gap_analyzer.py +194 -0
  256. external_llm/editor/semantic/semantic_rewrite_models.py +62 -0
  257. external_llm/editor/semantic/semantic_rewrite_planner.py +252 -0
  258. external_llm/editor/semantic/semantic_rewriter.py +304 -0
  259. external_llm/editor/semantic/semantic_tracer.py +427 -0
  260. external_llm/editor/semantic/synthesis_planner.py +99 -0
  261. external_llm/editor/semantic/ts_ir_models.py +414 -0
  262. external_llm/editor/semantic/ts_semantic_models.py +112 -0
  263. external_llm/editor/semantic/ts_semantic_tracer.py +1302 -0
  264. external_llm/editor/simulator/dependency_traversal.py +172 -0
  265. external_llm/editor/simulator/impact_models.py +42 -0
  266. external_llm/editor/simulator/impact_simulator.py +187 -0
  267. external_llm/editor/simulator/risk_estimator.py +71 -0
  268. external_llm/editor/verification/__init__.py +7 -0
  269. external_llm/editor/verification/code_integrity.py +406 -0
  270. external_llm/editor/verification/impact_propagation.py +401 -0
  271. external_llm/editor/verification/impact_verification_mapper.py +148 -0
  272. external_llm/editor/verification/verification_set_builder.py +329 -0
  273. external_llm/graph/composite_risk.py +226 -0
  274. external_llm/graph/execution_graph_advisor.py +636 -0
  275. external_llm/graph/graph_builder.py +31 -0
  276. external_llm/graph/graph_facade.py +198 -0
  277. external_llm/graph/models.py +113 -0
  278. external_llm/graph/repository_graph.py +1061 -0
  279. external_llm/graph/run_scoped_graph_cache.py +283 -0
  280. external_llm/graph/spec_graph_enricher.py +855 -0
  281. external_llm/graph/virtual_graph.py +429 -0
  282. external_llm/hybrid_parser.py +215 -0
  283. external_llm/image_utils.py +147 -0
  284. external_llm/intelligent_service.py +2147 -0
  285. external_llm/languages/__init__.py +24 -0
  286. external_llm/languages/base.py +450 -0
  287. external_llm/languages/bash_provider.py +94 -0
  288. external_llm/languages/capabilities.py +129 -0
  289. external_llm/languages/csharp_provider.py +111 -0
  290. external_llm/languages/css_provider.py +178 -0
  291. external_llm/languages/dependency_checker.py +753 -0
  292. external_llm/languages/go_provider.py +452 -0
  293. external_llm/languages/html_provider.py +136 -0
  294. external_llm/languages/java_provider.py +485 -0
  295. external_llm/languages/javascript_provider.py +334 -0
  296. external_llm/languages/json_provider.py +113 -0
  297. external_llm/languages/kotlin_provider.py +462 -0
  298. external_llm/languages/libcst_utils.py +699 -0
  299. external_llm/languages/models.py +195 -0
  300. external_llm/languages/php_provider.py +90 -0
  301. external_llm/languages/python_provider.py +390 -0
  302. external_llm/languages/registry.py +128 -0
  303. external_llm/languages/ruby_provider.py +90 -0
  304. external_llm/languages/rust_provider.py +89 -0
  305. external_llm/languages/swift_provider.py +95 -0
  306. external_llm/languages/syntax_validator.py +357 -0
  307. external_llm/languages/tree_sitter_utils.py +2140 -0
  308. external_llm/languages/typescript_provider.py +694 -0
  309. external_llm/model_registry.py +153 -0
  310. external_llm/multi_planner.py +744 -0
  311. external_llm/ollama_api.py +126 -0
  312. external_llm/openai_client.py +1281 -0
  313. external_llm/output_modes.py +29 -0
  314. external_llm/output_parser.py +760 -0
  315. external_llm/patch_engine.py +2482 -0
  316. external_llm/patch_synthesizer.py +251 -0
  317. external_llm/project_analyzer.py +1386 -0
  318. external_llm/providers.py +2112 -0
  319. external_llm/repl/collaborate/__init__.py +46 -0
  320. external_llm/repl/collaborate/asi_mcp_adapter.py +550 -0
  321. external_llm/repl/collaborate/claude_session.py +484 -0
  322. external_llm/repl/collaborate/cli.py +257 -0
  323. external_llm/repl/collaborate/collaboration_orchestrator.py +422 -0
  324. external_llm/repl/collaborate/streaming_display.py +667 -0
  325. external_llm/repl/collaborate/verdict.py +145 -0
  326. external_llm/semantic_patch.py +190 -0
  327. external_llm/service.py +1690 -0
  328. external_llm/smart_analyzer.py +466 -0
  329. external_llm/super_context_builder.py +644 -0
  330. external_llm/testing/__init__.py +0 -0
  331. external_llm/testing/symbol_aware_test_finder.py +377 -0
  332. external_llm/testing/test_dependency_graph.py +380 -0
  333. patch_synth.py +1587 -0
  334. path_security.py +143 -0
  335. plan_compiler.py +1058 -0
  336. services/__init__.py +0 -0
  337. services/patch_helpers.py +151 -0
  338. utils/__init__.py +1 -0
  339. utils/llm_utils.py +22 -0
  340. utils/string_helper.py +274 -0
@@ -0,0 +1,208 @@
1
+ Metadata-Version: 2.4
2
+ Name: asicode
3
+ Version: 0.2.6
4
+ Summary: Autonomous Software Improvement — AST-precise code editing agent with verification gates (CLI + MCP server)
5
+ Author-email: socialherb <junddory@gmail.com>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/socialherb/asicode
8
+ Project-URL: Repository, https://github.com/socialherb/asicode
9
+ Project-URL: Issues, https://github.com/socialherb/asicode/issues
10
+ Classifier: Development Status :: 4 - Beta
11
+ Classifier: Environment :: Console
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Operating System :: MacOS
14
+ Classifier: Operating System :: POSIX :: Linux
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: Topic :: Software Development :: Code Generators
22
+ Classifier: Topic :: Software Development :: Quality Assurance
23
+ Requires-Python: >=3.10
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: pydantic>=2.0
27
+ Requires-Dist: requests>=2.31
28
+ Requires-Dist: rich>=13.7
29
+ Requires-Dist: libcst>=1.4
30
+ Requires-Dist: prompt-toolkit>=3.0
31
+ Requires-Dist: httpx>=0.27
32
+ Requires-Dist: ruff>=0.6
33
+ Requires-Dist: tree-sitter-language-pack>=1.10
34
+ Requires-Dist: networkx>=3.0
35
+ Requires-Dist: packaging>=21
36
+ Provides-Extra: webapp
37
+ Requires-Dist: fastapi>=0.110; extra == "webapp"
38
+ Requires-Dist: uvicorn>=0.27; extra == "webapp"
39
+ Requires-Dist: jinja2>=3.1; extra == "webapp"
40
+ Provides-Extra: vulture
41
+ Requires-Dist: vulture>=2.11; extra == "vulture"
42
+ Provides-Extra: collaborate
43
+ Requires-Dist: claude-agent-sdk>=0.2; extra == "collaborate"
44
+ Provides-Extra: rag
45
+ Requires-Dist: sentence-transformers>=3.0; extra == "rag"
46
+ Requires-Dist: faiss-cpu>=1.8; extra == "rag"
47
+ Requires-Dist: numpy>=1.24; extra == "rag"
48
+ Provides-Extra: vision
49
+ Requires-Dist: Pillow>=10.0; extra == "vision"
50
+ Requires-Dist: pytesseract>=0.3; extra == "vision"
51
+ Provides-Extra: browser
52
+ Requires-Dist: playwright>=1.40; extra == "browser"
53
+ Provides-Extra: config
54
+ Requires-Dist: pyyaml>=6.0; extra == "config"
55
+ Provides-Extra: dev
56
+ Requires-Dist: pytest>=8.0; extra == "dev"
57
+ Requires-Dist: pytest-xdist>=3.6; extra == "dev"
58
+ Requires-Dist: pre-commit>=4.0; extra == "dev"
59
+ Provides-Extra: lint
60
+ Requires-Dist: mypy>=1.10; extra == "lint"
61
+ Requires-Dist: pyright[nodejs]>=1.1; extra == "lint"
62
+ Provides-Extra: search
63
+ Requires-Dist: ripgrep>=15.0; extra == "search"
64
+ Provides-Extra: all
65
+ Requires-Dist: asicode[vulture]; extra == "all"
66
+ Requires-Dist: asicode[collaborate]; extra == "all"
67
+ Requires-Dist: asicode[rag]; extra == "all"
68
+ Requires-Dist: asicode[vision]; extra == "all"
69
+ Requires-Dist: asicode[browser]; extra == "all"
70
+ Requires-Dist: asicode[config]; extra == "all"
71
+ Requires-Dist: asicode[lint]; extra == "all"
72
+ Requires-Dist: asicode[search]; extra == "all"
73
+ Dynamic: license-file
74
+
75
+ # asicode
76
+
77
+ **Autonomous Software Improvement** — local safe patch runner and code editing tool: an AI-powered assistant for reading, analyzing, and modifying codebases with deterministic AST-level operations, transparent shell execution, and multi-language support.
78
+
79
+ ## Features
80
+
81
+ - **Multi-language code editing**: Python, TypeScript, JavaScript, Go, Java, Kotlin, Rust, and more via tree-sitter AST parsing
82
+ - **AST-precise modifications**: Edit symbols by name, insert/delete lines by anchor, apply typed AST operations (Python)
83
+ - **Vector search & RAG**: Semantic code search with FAISS + sentence-transformers embedding
84
+ - **Structural analysis**: Dead code detection, duplicate finding, unused import scanning, contradictory logic detection
85
+ - **Interactive CLI**: Rich terminal interface with prompt-toolkit, command history, completion, and multi-line editing
86
+ - **Headless & automation modes**: single-shot runs (`asi -p`), JSON/NDJSON output, and multi-agent orchestration (`--orchestrate`)
87
+ - **Design chat**: Persistent conversation session with auto-compression and insight management
88
+ - **Shell shim layer**: macOS/Linux compatibility layer for BSD-style command-line tools
89
+
90
+ ## Quick Start
91
+
92
+ ```bash
93
+ # Recommended for CLI use: pipx installs into an isolated env and puts
94
+ # `asi` on your PATH, no venv activation needed
95
+ pipx install 'asicode @ git+https://github.com/socialherb/asicode.git'
96
+
97
+ # Or plain pip (inside a venv of your choice):
98
+ pip install git+https://github.com/socialherb/asicode.git
99
+
100
+ # Or with all features:
101
+ pip install 'asicode[all] @ git+https://github.com/socialherb/asicode.git'
102
+
103
+ # Start the interactive CLI
104
+ asi
105
+ ```
106
+
107
+ ## Installation Options
108
+
109
+ ```bash
110
+ # Core (includes tree-sitter AST parsing — one package covers 300+ languages)
111
+ pip install asicode
112
+
113
+ # With RAG (vector search for code)
114
+ pip install 'asicode[rag]'
115
+
116
+ # With browser automation
117
+ pip install 'asicode[browser]'
118
+
119
+ # Development tools
120
+ pip install 'asicode[dev,lint]'
121
+
122
+ # Everything
123
+ pip install 'asicode[all]'
124
+ ```
125
+
126
+ ## Architecture
127
+
128
+ ```
129
+ asicode/
130
+ ├── asi.py # Interactive CLI (REPL)
131
+ ├── external_llm/ # Core engine
132
+ │ ├── agent/ # Agent loop, tool handlers, verification
133
+ │ ├── languages/ # Multi-language providers (Python, TS, Go, etc.)
134
+ │ ├── editor/ # Code editing (AST, anchor, text, patch)
135
+ │ └── repl/ # Design chat session management
136
+ ├── scripts/ # Lint/reachability guards (CI)
137
+ └── tests/ # Test suite (unit + integration)
138
+ ```
139
+
140
+ ## Key Concepts
141
+
142
+ ### Agent Tool Loop
143
+ Every request runs through a single LLM tool-use loop: the model reads,
144
+ searches, and edits the repository through typed tools, and each write is
145
+ followed by verification. Headless mode (`asi -p`) and orchestration mode
146
+ (`--orchestrate`, which decomposes a request and dispatches it to parallel
147
+ sub-agent workers) drive the same loop.
148
+
149
+ ### Deterministic Editing
150
+ All code modifications are validated through multiple layers:
151
+ - Syntax validation (AST parse gate)
152
+ - Structural analysis (dependency graph, import consistency)
153
+ - Verification loop (edit → verify → repair if needed)
154
+
155
+ ## Requirements
156
+
157
+ ### Python
158
+ - Python 3.10+
159
+ - macOS or Linux (BSD shim layer for macOS)
160
+
161
+ ### Bundled with the install
162
+ - **`ruff`** — the linter used for post-edit verification (F821 undefined-name checks). It is a
163
+ core dependency, so `pip install asicode` installs it automatically. No separate step needed.
164
+ - **tree-sitter** — powers AST-based symbol/call/import detection for precise multi-language
165
+ editing. The core install ships `tree-sitter-language-pack` (~2 MB) — a single package with
166
+ full prebuilt-wheel platform coverage that covers every supported language out of the box
167
+ (it also pulls in the `tree-sitter` core library automatically).
168
+
169
+ ### Recommended system tools
170
+ asicode degrades gracefully when these are missing, but installing them improves results:
171
+
172
+ | Tool | Used for | Required when | Behavior if absent |
173
+ |------|----------|---------------|--------------------|
174
+ | `git` | Version control, diff/apply, change-impact analysis | Almost always | Core features expect git |
175
+ | `ripgrep` (`rg`) | Fast code search (`grep` tool) | Recommended | Falls back to system `grep` |
176
+ | `node` | TypeScript/JavaScript editing & validation | Only when editing JS/TS | JS/TS features disabled |
177
+ | `gofmt` / `golangci-lint` | Go formatting & linting | Only when editing Go | Go linting disabled |
178
+ | `docker` | Sandboxed web search (SearXNG) | Only for isolated web search | Web search disabled |
179
+
180
+ Install `git` and `ripgrep` on macOS:
181
+ ```bash
182
+ brew install git ripgrep
183
+ ```
184
+
185
+ `ripgrep` can also be installed via the optional `search` extra (`pip install asicode` is unaffected if it fails — the `grep` fallback applies):
186
+ ```bash
187
+ pip install 'asicode[search]'
188
+ ```
189
+ > Prebuilt wheels exist for macOS-arm64 and linux-x86_64; other platforms build from source.
190
+
191
+ ## Development
192
+
193
+ ```bash
194
+ # Clone and install in editable mode
195
+ git clone <repo-url>
196
+ cd asicode
197
+ pip install -e '.[dev,lint,rag]'
198
+
199
+ # Run tests
200
+ pytest
201
+
202
+ # Run linting
203
+ ruff check
204
+ ruff format --check
205
+
206
+ # Run type checking
207
+ pyright
208
+ ```
@@ -0,0 +1,340 @@
1
+ asi.py,sha256=n8r4_4czvH5Z5wQVVblbfnlreDyBPHwenGTM0OhLYEo,472860
2
+ common.py,sha256=wKt5bFQxlWPQZDlz4dNIqRJc_5j8jWxIB3WSo69GNQA,3031
3
+ config.py,sha256=z58zWJkIoqs7nC89A32URpeb5ZUPzIM7ackQvrKTMrM,7550
4
+ context_collector.py,sha256=hx7LqdMbasdCw9HRHdICCxhUNYcnYLxdLxSc6iht2VU,12583
5
+ diff_apply.py,sha256=Xsyka3Sn-lrL5iAIGYZ-WACGfU0wwB9gJLh1TealNck,65143
6
+ patch_synth.py,sha256=vf_skAY44Ezwf2utk5Y-rEBq4LvjgAw_alvf46BXouA,53750
7
+ path_security.py,sha256=E8hlZohO8pgr3upXnFknI_ZvxO1RJiQWFGCrhtMVx2Y,4917
8
+ plan_compiler.py,sha256=QoYfzx72fC8l84NbCb-WfFNNT54pVgqsFzZGuQ8bOSI,43129
9
+ asicode-0.2.6.dist-info/licenses/LICENSE,sha256=NCILgVMmhNstKYmeY-tzFJoI_BwIS2dA0VY_s49XEYA,1082
10
+ external_llm/__init__.py,sha256=2sf1daqLFIihMY9_6ciF9HI5vY-M6CmEhtp_CismhwM,2353
11
+ external_llm/anthropic_client.py,sha256=YhZ9cOZPIes9WT3TrY5mqx668B-F5Ctm2Mk8WkYSYHE,54708
12
+ external_llm/ast_rewrite.py,sha256=ZVzeFmJi_yV3zd3mWBBmFMXnGiacQnUHa4NABGcNQeQ,9243
13
+ external_llm/client.py,sha256=rtMyanB88TSQ9XmkYvFvLLCzeE8WhTFV1EjTOu892AI,18191
14
+ external_llm/code_analyzer.py,sha256=gKPXjFYiEmFapCwPvFjLlHUhJE10yAsAYjUmJHlH8sI,9423
15
+ external_llm/code_structure_utils.py,sha256=o-ciliq6Hcc_ujQjMHgRvGuXdDFUijjEtbpj0s6XzqQ,67929
16
+ external_llm/context_builder.py,sha256=em7dAgRwntbr7SJgLHSazRsslU4rw5EdDJZxkLyOhL0,15135
17
+ external_llm/dependency_graph.py,sha256=F2wPPllEZ0N1QcluZVkm1MhcD8DGOxOsfKLa1b_kZQY,10015
18
+ external_llm/design_session.py,sha256=DuGGO-FQeGJ4rNAc-A0mV1YCLsoLiJ8-X62oZm4X7gY,29182
19
+ external_llm/hybrid_parser.py,sha256=Ab7zxq07pe3_3ZUdMYsu1_q1gI4HlWbXVeTQ9HKBOEo,7038
20
+ external_llm/image_utils.py,sha256=QALe-FEDC9ZXoRXhJyEOFnGNq21HUvRNZO2aRWmMpyo,5717
21
+ external_llm/intelligent_service.py,sha256=7L4zsJ2Zm2zZj6tdaZFnUC-jAjsNqpNSicwW2dLP-Mk,92459
22
+ external_llm/model_registry.py,sha256=oJYLYUzseWLkQ-fW5N_N-I_5iPc_OYlOmKkXS0yHJGA,7501
23
+ external_llm/multi_planner.py,sha256=qiY2RJY_9rN1OYTgfdVk3j2gGFgy9s4Vqn8Gkl3hzzU,26979
24
+ external_llm/ollama_api.py,sha256=W7JvX65SVVeMHuGPf0_DzLF07QkMdqWyti27r2gptco,5203
25
+ external_llm/openai_client.py,sha256=ZC8Mgh7gvqNRMZFDgMf6Lp5C6ScHhcFVeJPW1U8KkU0,53330
26
+ external_llm/output_modes.py,sha256=0VmVi-PrHa7O9GO5nd0GVxj6nBa_UHr8Ox10mxW4Avw,830
27
+ external_llm/output_parser.py,sha256=7UscRp35C6XQKws-o_6ZTMBsQxqgFohkDEd5sQpQWE8,27288
28
+ external_llm/patch_engine.py,sha256=8dx77rOMmnupoYa6jCQEL05QfgW8pjWxsGe42-7eb_U,108605
29
+ external_llm/patch_synthesizer.py,sha256=RHdv3ZGwc5gouHLRxKcVE4L7gA82WZVwrJjt1I286_8,9158
30
+ external_llm/project_analyzer.py,sha256=d86Z9D5Y2Tikcb-f8v-b8ZEyRLmeJGC8Zg0i0kTkWzM,58584
31
+ external_llm/providers.py,sha256=Cw-BBzj9YA_2O5ZU3Ey8kjYso8RnqwajnJRSxhBnYwo,87071
32
+ external_llm/semantic_patch.py,sha256=KDPrjcbznHl_m743ZNp-WqaCLUQHI8JPnw0IxvJ4c5Y,5173
33
+ external_llm/service.py,sha256=r7dhaVzB0EQmq9_Xft8z2hJqaL2VSobmEsAWNLmjBuM,71347
34
+ external_llm/smart_analyzer.py,sha256=SViCMZ8FvXVvSu6iWZvONtR6sVQLTDSGSaVLF5gR7_8,18441
35
+ external_llm/super_context_builder.py,sha256=JVmEZPIFvWC-riDMee8i5Mh5UqNgQakwLwQWk9Lx_5o,23127
36
+ external_llm/agent/__init__.py,sha256=v8w2HHiPIhXXVGAhzpGFFlxbb7G0HlSRhxhaRPE__jA,30
37
+ external_llm/agent/_shared_utils.py,sha256=sSzStsfwd4WVVHSha_x_znqCN80xyoD8CNaTDeZ4gpM,74833
38
+ external_llm/agent/_thread_pool.py,sha256=jElrItcgKVfyfAp7iFcYa54zXTDUGzc_oezNhnm-VeY,689
39
+ external_llm/agent/_user_intent.py,sha256=D_ZOXyqz1kwOd4RVxNFLoijGdZz-sMscfllM_D7bCJ4,10299
40
+ external_llm/agent/agent_context_manager.py,sha256=cRZiKt1kDnMog97IBwHHDY5Tw66HBGHvtyklIqiyvKU,26210
41
+ external_llm/agent/agent_escalation_pipeline.py,sha256=MAH_C4D3YlZ8-AuXf0zj5FigTyTxefpl0asszkVBqro,7917
42
+ external_llm/agent/agent_fast_path.py,sha256=8lrp7BbLs7ZeuS0QzdACQe2-P_3qE0R0DUDrgFsYwvc,2338
43
+ external_llm/agent/agent_loop.py,sha256=rQNGmBZ5NcJY00u4BI4mbqNbC3tutUHl11MHB3Ev1AM,173900
44
+ external_llm/agent/agent_loop_types.py,sha256=IivquK-ylk9_iCwi584aVNZEEOmSTtbSPSsib1XzkVw,6217
45
+ external_llm/agent/agent_phase_manager.py,sha256=wlK1LrndijkoY2o24_B1mzgjJyF9or7Ambo0L4oXvRo,14791
46
+ external_llm/agent/agent_planner_pipeline.py,sha256=fVITmrbxkLJaqVpGRp0OnCsOtMS6SfT_iVQ3o5x0uh4,91225
47
+ external_llm/agent/agent_profile.py,sha256=ciZ6Ljnq1WOBqsm5Y3yuaI6Qq-P_x2ncfDfhudFPzKE,7329
48
+ external_llm/agent/agent_turn_pipeline.py,sha256=7TfUM6gOiQQjgnjv2xhqKnuuygXM55LR_yuR0OplAGc,126187
49
+ external_llm/agent/alignment_scorer.py,sha256=yP0HYhhpsajbVwa-79Ii1T-89aGyjnBxoQ42taqO1Oo,14214
50
+ external_llm/agent/anchor_shared.py,sha256=TXFBR0gZDZ2eSAla9X1K7_Q6zTQF3CRFfsXBn2Gn4hg,12859
51
+ external_llm/agent/argument_repairer.py,sha256=32_WX-4UHDl0dRZIcZ_GbMunsqWLmpfyJTkwpmNMS1E,4472
52
+ external_llm/agent/ast_cache.py,sha256=RHiOPhYhuSySZbee4XrCBHWQdzvfeGI79X-ptqwLids,5414
53
+ external_llm/agent/ast_engine.py,sha256=xIk0fAOOUDhJuvVDjgRBO-11Up2WDVCzKKcv_AzaKDg,40726
54
+ external_llm/agent/async_tool_executor.py,sha256=USwVcMUx882BZljIvAImwRTavMaQozhQERRuBvU7B3Y,6602
55
+ external_llm/agent/auto_correction.py,sha256=JbOo6SYMQvqyzdLCwj69d3wXgPMZ71a-789V7wb-crc,101183
56
+ external_llm/agent/background_job_manager.py,sha256=Go-xjodKyVKOMvYCytBt6hH3cTgUOYLhinM0AtBU3As,23144
57
+ external_llm/agent/call_graph.py,sha256=kyJWovOI3u730xyA4GjoJPlIrPPlbXHh0l07EWOjj0c,20713
58
+ external_llm/agent/checkpoint_store.py,sha256=bgRMgAZolN1M9h9k6yWksZI7F-WQq3pCkSvwvqt-xPQ,20353
59
+ external_llm/agent/context_budget.py,sha256=1iF9cBeTc6oig1FJyWTLikGYd8zD3C8jdFydVGPxq50,28550
60
+ external_llm/agent/context_contract.py,sha256=N_8mrfcNU9TNM8ooC49BFiEMjx9gpmAwDptuRMhb7NI,10315
61
+ external_llm/agent/context_manager.py,sha256=bstEn4bvkfaocNgT63egVBLUuUb0utjSgmYzqIXCXR8,62809
62
+ external_llm/agent/context_utils.py,sha256=30SuM6xoPOo1ftVJukWdb6jmQpwIx5GK9jf20obOnnw,1096
63
+ external_llm/agent/design_chat_loop.py,sha256=4F9Rn06eLV0lXBUKtlNxyAi_tnHFSP-W6-bzJC_q3ZU,125651
64
+ external_llm/agent/enums.py,sha256=fcf6-V6XxEpWYRqurMvkc18_gMjUrklbOCyBzpD_D6M,1084
65
+ external_llm/agent/execution_mode_classifier.py,sha256=3a33rsWTB6Y8Td_Ib32TWwO9eBZjxTWws2FNFthT18A,12936
66
+ external_llm/agent/execution_spec.py,sha256=Bs6P23gVN4pV0gADz4qnsFq1R8K5iZTzIUt7Ych6lx4,16574
67
+ external_llm/agent/execution_thresholds.py,sha256=VpfFdnsLQTTZgvkJooEqLkWcxjYO8curcmAiDVsJ2t4,16177
68
+ external_llm/agent/failure_classifier.py,sha256=ei2ffbAdyiXFLVFZObJzhai9QR318B043ZqAPVxF8N8,6655
69
+ external_llm/agent/failure_context.py,sha256=x4WdAFiaU5-FUUbZH2kYPgWszba0PoBKbcYNmGair9c,14672
70
+ external_llm/agent/failure_pattern_store.py,sha256=y3aImP_ujj1faAv04gbqlnGi1ssmg3Cz2rXLOAb1Hm8,42884
71
+ external_llm/agent/file_cache.py,sha256=GmKADvEz6Jb7e32myfdADtONjwJxzJCXo6dvF0_85no,5515
72
+ external_llm/agent/fix_spec_claim_validator.py,sha256=P0-qSSmPO63gqBAZi7g83gY8Vyl8wBBwlV0ymjVzlbU,29220
73
+ external_llm/agent/gsg_safety.py,sha256=O8kGWqfNQyYGUM17tYQvSrQiOncVQyrlUo66AHC7dbc,4147
74
+ external_llm/agent/guard_ir.py,sha256=0jVDfNelIsAijZZrPVAVb2rTaIV8cTrRcQJi2n4OpPI,38755
75
+ external_llm/agent/handoff_observer.py,sha256=u-d8ASIwuGcb4-wQdHxx4qNUx0dRYJ4pOqwLx9gLMzE,11147
76
+ external_llm/agent/insights_manager.py,sha256=2tcdjLkkFjYECj_1HSlc8BJmooHJ69WVwHPlzGGN7j4,53204
77
+ external_llm/agent/intent_models.py,sha256=lEzNLGnGYFbMIf8CbECYDNwy76BnDq8QoAp1qmtdaZk,10349
78
+ external_llm/agent/intent_resolver.py,sha256=59V1HII0etODQGeD6ldM-FqCbkREebcKb0FJtwo-3lo,41553
79
+ external_llm/agent/interrupt_tool_results.py,sha256=5n0thmhv0xwT2DMYdJl_aLgZrEJcqC80cZbIzQfJjY4,3467
80
+ external_llm/agent/json_repair.py,sha256=v9MdWcf9vplvhQo0Y0lFKs6cM0E7N2zYLkXI0-f5I8M,9535
81
+ external_llm/agent/language_backend.py,sha256=84EKcuQP_tOEMKD_b4CWzWiaODOT86GHUr6Ix9hchSI,23504
82
+ external_llm/agent/language_hint.py,sha256=IJocPrYVdiLlBTo3Iuv0LpoJm7sDnWWj0xNlfUw5FaA,2015
83
+ external_llm/agent/learned_policy.py,sha256=UmXOpHYfuB48EdRhXFn0TTkq8mkw8Fx0H3vQ6B6CSTo,32049
84
+ external_llm/agent/light_repo_index.py,sha256=P6mZzUCjkIb0pRuBkDJxK7w59neMzYIbmjGvPRmdAWc,9674
85
+ external_llm/agent/lint_runner.py,sha256=PKiN-4GWEoPiDODDxhaOf39oacbyaFXiZ_eV0dXIlTo,15513
86
+ external_llm/agent/llm_output_utils.py,sha256=l261KQBv9E1AzxIpRLA1knPkeOJRf6ByhahsulPhI0A,1949
87
+ external_llm/agent/local_assistant.py,sha256=d1-erpitfCmb4C7vUMgXnu9vG2ryxwoikQiNUm5xQWI,32051
88
+ external_llm/agent/message_shapes.py,sha256=PkXhOJ8YxBYu6kCAeEn_15vc5azQcLYP31C9Y91kI6A,3204
89
+ external_llm/agent/metadata_utils.py,sha256=mupw_AM0jedy91idFlQoCn5SE7rEg8lw4DFChVCoUAU,360
90
+ external_llm/agent/operation_models.py,sha256=Z-9LgnCv02Eu4sYn51PNvECWQSlBYLht4jkIp0vwheA,132213
91
+ external_llm/agent/orchestrator.py,sha256=GgK_bjF-jh17iD3jQNrKBrdSRWGyyBZprMqv4iE-Mdo,257552
92
+ external_llm/agent/output_normalizer.py,sha256=nyGWf8ZmqZ7iobfaAVCJ6zyv7izI8Vul0Co4YmmKIgw,16227
93
+ external_llm/agent/performance_metrics.py,sha256=csq81zjtsjoskXUAMWuzgWavZ-HNBtHTJBOjBRkRk_I,18979
94
+ external_llm/agent/placement_contract.py,sha256=nJEOfRtVzNNoZZ3n0v08pFuRvNGblmqg2j46HvuOxK4,118525
95
+ external_llm/agent/plan_state.py,sha256=Gp_MqeLDkhry3LkYhc0RSzU7kB_fWbhJ3IKVZQj48Mo,5035
96
+ external_llm/agent/planner_lane_facade.py,sha256=PEjtmFQXZVTLs0ypDIefZIZ-SdEaWzWdYjDc8TspHvc,2974
97
+ external_llm/agent/rag_configs.py,sha256=K7oe_2O-Y1YJWUEWit9_Kwar1zdpL4tlilYff45YXJs,6439
98
+ external_llm/agent/rag_searcher.py,sha256=yIkTEClxVqP_5nTZYZmx5deW1dPikPG7P83kPm3PbXU,31186
99
+ external_llm/agent/reasoning_utils.py,sha256=QN0ks5MwtswprQlOqVth1QwiYrWLVIpK52S6KBN96E4,2409
100
+ external_llm/agent/repair_helpers.py,sha256=-7LDoRqmGtKea2pV9rkT1pYyt69zDk4OXl71un_ikmk,19329
101
+ external_llm/agent/request_intent_classifier.py,sha256=ObZyozvsKKym6xrK-51500fVkthBlUjQUX8lWN1riJ8,4314
102
+ external_llm/agent/routing_policy.py,sha256=YxakPOVKRWDOVFVvhqZTqNylAZkrQrEQRC7ou0I--OM,5104
103
+ external_llm/agent/run_store.py,sha256=ROJ30Cu1A_VAhCxnhjjCj6e0xOkynyNvirRAyqUY_gk,108768
104
+ external_llm/agent/scanner_registry.py,sha256=WRozIPKOP5uHvucbmKSsUHDnZBwmeJXsUgLKMp6oSVU,25589
105
+ external_llm/agent/selector_constants.py,sha256=wW66OqVbjKDAahovajMf__fAfnty0png36_sF6cQQ04,1390
106
+ external_llm/agent/semantic_intent.py,sha256=Qw9cQapypCOQ2HoQUxFNoqDFmIFFnTOOpDZ-Pc2r6Is,7087
107
+ external_llm/agent/semantic_lint.py,sha256=m4nqX_Eq41qdmjw1PR2YpZRtpAkL2kIcWr1Av_DACHQ,2748
108
+ external_llm/agent/session_state.py,sha256=WGbX9Z6dBEhgayEcZ7EIm0ki9uFfgEJah2RzpxNuJvQ,3051
109
+ external_llm/agent/slash_commands.py,sha256=sJ5RE9AHYAi53wLlVgWrHVtHkhVTQScO-53BYnlJC6M,3105
110
+ external_llm/agent/subagent_ipc.py,sha256=Cy4aCfydWSG2mXkOcKM-QcmhJbzKhF7eQl25gVn3NlQ,59434
111
+ external_llm/agent/symbol_engine.py,sha256=gUIopE8JTp8RhXRRePWlG67Fo2joqy9o7DgDu7tgJ7s,23904
112
+ external_llm/agent/symbol_index.py,sha256=lSQJUd4pfCnjgwun2HrpTMvQnAaUoDqWm2V9YhHkrBA,16232
113
+ external_llm/agent/symbol_locator.py,sha256=KxghAlSdj7hkTjHRY9SVncbFnMOCaIaMMAaW0F2KbyA,4471
114
+ external_llm/agent/symbol_modify_tool.py,sha256=GbDOj438DpmEqPbpsU4irPZS3NEmcs1t4L8zOUERuOI,54350
115
+ external_llm/agent/symbol_search.py,sha256=e2V0M1-1ApBpidnm7uG4c1xACi5IkNBU5be06DTj-os,86622
116
+ external_llm/agent/task_router.py,sha256=EAmOxG2K2S7AQUtrrYf39jLf-P_smyvOzwdqGK1yhUE,31123
117
+ external_llm/agent/terminal_coordination.py,sha256=-93HqxXFwSKJhgAWObuub3iYHGpvJDz2hTsYiMtQBXo,1822
118
+ external_llm/agent/termination_policy.py,sha256=yqRefW6i3QdyQbJ2V_q2Pbrqo-WOQvJurBClfCl0yvQ,12122
119
+ external_llm/agent/test_impact_selector.py,sha256=W5I0sJUG0hzDIPAjzSKMvzg797MVXfW0LBPunLBrgxg,18311
120
+ external_llm/agent/test_runner.py,sha256=fuRMZTZx4kcWnSgfYLWFPbmc5yGaxhSn8Bmq14ZOISY,16892
121
+ external_llm/agent/tool_chain.py,sha256=qch_APbAi9IeR_St83PCknvDZoyniC0_r3XOE2bhUw4,1233
122
+ external_llm/agent/tool_dependency_graph.py,sha256=4kBmZy3GvmKl-cwZ2YJnu9qyGMaN7jivUyrNRpjGaRY,6712
123
+ external_llm/agent/tool_failure_log.py,sha256=y1k_D8dIErp9BsNSpp_qENPZSH8QPnfnSGqC29Onztk,22686
124
+ external_llm/agent/tool_registry.py,sha256=cxvupk_7yw-1nJeV2wLzTJ4Hjwr3jn9ANc9LZyDmDNY,109839
125
+ external_llm/agent/tool_result_cache.py,sha256=0L85eqEkrMn7Bser3mpZENlJLEUiRJzCvBztJiKQWC0,7030
126
+ external_llm/agent/tool_safety.py,sha256=13drCF1qHWNoqIcC37zJhc3OsGNvFQxNBkSNl9G1y6Y,45235
127
+ external_llm/agent/tool_schemas.py,sha256=9xzVEF5E2MsuULA9pz7kHoO-Vq8d3rniHQcPXiwOEts,58594
128
+ external_llm/agent/vector_cache.py,sha256=wl4b5VruBGSqHyeNlihzt0URTVPZDZ1b9ZiW7qFakqM,27527
129
+ external_llm/agent/weight_learning.py,sha256=n6oHfHA6qmxmJtxVeqpaBaTBE4h67eenkKn_IJJsB08,130135
130
+ external_llm/agent/work_state_digest.py,sha256=rs8mEHgv7CoVdyOuA297sOvrZXIgTnQ433kov8NGN1c,6031
131
+ external_llm/agent/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
132
+ external_llm/agent/config/thresholds.py,sha256=FWsAZrIuy9_-UA6I1vfjyfhZLMsM8958I4EUsIM3AGY,21532
133
+ external_llm/agent/tool_handlers/__init__.py,sha256=57hGfj2UVKJIt5IIPz4iEsnO6Cux5-WlNrUsMiYQKUE,738
134
+ external_llm/agent/tool_handlers/agent_tools.py,sha256=HDCtqEYqr3Qc9ToV-F4fpA-FpiSIxK5WIHyUx63Dp5Q,12352
135
+ external_llm/agent/tool_handlers/analysis_tools.py,sha256=S1EnCNbpUv0WnEmTfErEOIi8W-u0b8_kvoXedCgDC9Q,63098
136
+ external_llm/agent/tool_handlers/ast_op_executor.py,sha256=4nmHL-dJBB9PxkVLNH4M_phaxfjbZyJlsaObp3mtjOU,54344
137
+ external_llm/agent/tool_handlers/browser_tools.py,sha256=VZ9pJaMRZlv9F8U6HYePYFfPIYGj9cOFAbYiaPQa-ek,13632
138
+ external_llm/agent/tool_handlers/constants.py,sha256=75gIKQstE_XXY9qhtWV3A2mE6mCQAW0HPIfsne72jGw,452
139
+ external_llm/agent/tool_handlers/git_tools.py,sha256=bLLtEZ81hK9EEsyM0vB7GV1aSFvrx89eG1A7qcxriCM,49538
140
+ external_llm/agent/tool_handlers/read_tools.py,sha256=MjZeWhX-fhcjNtnbapgMuFCzOLR_15h0z39ykutYGE0,25089
141
+ external_llm/agent/tool_handlers/shell_policy.py,sha256=3-KemnXrPBOVKP_j1JpddDjEFeC8zHSl7clBMjh31eE,646
142
+ external_llm/agent/tool_handlers/test_tools.py,sha256=3NOqT0ADoVzYi596KupBw3PEPFaLXZetJ7teInWNhac,10820
143
+ external_llm/agent/tool_handlers/web_search_tools.py,sha256=6HX0f-0cbdQ2k70zTb2e_kWldQLlZgaKzQRiNLVFFdk,33415
144
+ external_llm/agent/tool_handlers/write_tools.py,sha256=xQVsPXDxMla2R-5YTlb7f89X_SmF3TgAGnEaNH7Ny60,304971
145
+ external_llm/analysis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
146
+ external_llm/analysis/_dead_block_shared.py,sha256=ssL4RaPE8PqCNDwjaSGGX4z8otZf-6KGuhBj3c6FpZA,35643
147
+ external_llm/analysis/ast_similarity_scanner.py,sha256=XR_PdeSclPTMJfh7Z6z5Nr1oHNp9dsejytlx0af4qno,51019
148
+ external_llm/analysis/broken_contract_scanner.py,sha256=U3hFAJkU_rchZ2TzD3MaHosRFVUqyMTIZgh3E2wbt6s,22916
149
+ external_llm/analysis/container_reachability_scanner.py,sha256=kNz1UMCly5Rveld1Hb-UMAGbDSLWKLzexEZgazRTWxA,32020
150
+ external_llm/analysis/contradictory_logic_scanner.py,sha256=pDylbPbLjBDttpspa8RHKHxK4N5faOAd_pnnfS9rvv4,30931
151
+ external_llm/analysis/cross_file_refs.py,sha256=PoMcYby8TjTfzj3dvL3De68XIIgD2AHzY70_kHKZNQg,20125
152
+ external_llm/analysis/dead_block_scanner.py,sha256=XM-aZqjWO1yAiM3Lcz9BfkFMs2tbosZqjJzvk22ZXfI,4119
153
+ external_llm/analysis/duplicate_definition_scanner.py,sha256=iHMkYXA05GKxXnAEKvGRcs_HfptL8lu-gE_E1B-P5aI,15397
154
+ external_llm/analysis/parse_cache.py,sha256=LstWczomgCe49j5XNdlm6mafGymv8WmTjSdDrp3EAtA,3999
155
+ external_llm/analysis/public_dead_code_scanner.py,sha256=ftZjAJqjXAV2eWW_rLNqRtVCKrtcCNsMfhQ1MtykYUU,4101
156
+ external_llm/analysis/unused_import_scanner.py,sha256=8mhNxILw1Jv4SziyCSrMriVhtPtcXzIVhkIDePznLNQ,16270
157
+ external_llm/analysis/vulture_scanner.py,sha256=08bnooizeqE5Zt54l4yXCaN9APLloC5u9nPXimvTf3E,18528
158
+ external_llm/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
159
+ external_llm/common/atomic_io.py,sha256=XaOejza2rCGefwqBVZQpvsulD7byGHkrw9DllAI51yE,9747
160
+ external_llm/common/file_lock.py,sha256=QLJjZYv9RnmIqxPL8Ls3HzcSrlu8h0trU10A_6xXcJ8,4932
161
+ external_llm/common/indent_utils.py,sha256=tgfKER7iWPwFHv1499YBNrdeA52Bhdva5ORrguTQx9A,40315
162
+ external_llm/context/context_packs.py,sha256=X9C1lM3jBtByqwgqaPNiLDnVuAAQHUXkG7b9IRO3afA,1703
163
+ external_llm/edit_localization/__init__.py,sha256=zzd6dUYr1xIRivQyjFj1iul-zrmFmpLTbkonPTK7bYg,833
164
+ external_llm/edit_localization/dataflow_extractor.py,sha256=y80n-hTuMa2EKSc8nX9afYEhEhFOQDufqyCeCb105P8,17372
165
+ external_llm/edit_localization/graph_propagator.py,sha256=XM4F6fmZv07o8kuNmT2U2l71fNcwDSMdPviBsBFTs0U,8652
166
+ external_llm/edit_localization/relevance_scorer.py,sha256=jQxGZ0SHes2M4qLn6YrQfRhaHemsbYNMPQ4NcocuDqc,10827
167
+ external_llm/edit_localization/request_analyzer.py,sha256=H3kz5huLErc7XNPyaPqvwxk51jjE3iq6dp3uU2Cu1Qw,3034
168
+ external_llm/editor/_editor_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
169
+ external_llm/editor/_editor_core/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
170
+ external_llm/editor/_editor_core/common/import_normalizer.py,sha256=FQb35w507s-LyjkLGF_3fnCHibwjheNwk14bGZcc4XU,15433
171
+ external_llm/editor/_editor_core/ts_vm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
+ external_llm/editor/_editor_core/ts_vm/execution_vm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
173
+ external_llm/editor/_editor_core/ts_vm/execution_vm/ast_rewriter.py,sha256=-rm50Vrsl3dJuMej9cr_JmoPKsYoUur66zMr4hyhjds,4245
174
+ external_llm/editor/_editor_core/ts_vm/execution_vm/models.py,sha256=Q2h1yQL0PBwp0I9qprZxo61-q8-wGtNjxgfyEjusccU,716
175
+ external_llm/editor/_editor_core/ts_vm/execution_vm/rollback_manager.py,sha256=_GsBgEw-XaljfruCo282G9Kksqrp014xGbXC8qDHnkk,1242
176
+ external_llm/editor/_editor_core/ts_vm/execution_vm/verifier.py,sha256=coyRsYJ5uce6JgdVMiFxHMT6ZUFuTC1Xy3mnO43JZuM,8198
177
+ external_llm/editor/_editor_core/ts_vm/execution_vm/vm.py,sha256=4CMVJEAJ_Tk3CBu6J1ZbEqSoyzYHAWD4JR3GzasMEhg,7208
178
+ external_llm/editor/_editor_core/ts_vm/learning/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
179
+ external_llm/editor/_editor_core/ts_vm/learning/exploration_policy.py,sha256=fxIA2L6G3iZ0fAPswXGWZwZtxZwdhVA3VEtwbgsrRMg,1299
180
+ external_llm/editor/_editor_core/ts_vm/primitives/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
181
+ external_llm/editor/_editor_core/ts_vm/primitives/executor.py,sha256=HuS8qRV0oUkHqfHlZRYdYMBCvZo7oEOat0eos8urZew,2414
182
+ external_llm/editor/_editor_core/ts_vm/primitives/models.py,sha256=gp6qWOA-928L_ADJKJkgwb2dz49w-IAJSp2W-xOi2Gw,852
183
+ external_llm/editor/_editor_core/ts_vm/repair/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
184
+ external_llm/editor/_editor_core/ts_vm/repair/failure_classifier.py,sha256=dcrvErm-WWwxbtXiQ7XGgeE4g1aYktfz1yxSukfd6mA,4067
185
+ external_llm/editor/_editor_core/ts_vm/repair/repair_planner.py,sha256=lMbahBpKvwr9NBABbJDZfFDMmzC9GrJwSPs-DcmQrUs,2933
186
+ external_llm/editor/_editor_core/ts_vm/repair/repair_registry.py,sha256=qOGDavQ39ni1fXAGWocAUvMh7wQ8fnZ4JaOZoWbbYNk,1633
187
+ external_llm/editor/_editor_core/ts_vm/repair/repair_strategies.py,sha256=f-G_CTJwSkEsxjT1hqpHVlKnBh9yEF7VjTx3laTKBiI,5175
188
+ external_llm/editor/_editor_core/vm/__init__.py,sha256=47BjAMqtwvMbXj9-PpKiyNXBvOWiybBtuW9JA7nueCo,1215
189
+ external_llm/editor/_editor_core/vm/ast_rewriter.py,sha256=12lOs8iYbw00IZA3A6xcuC6cgnyQh1mYTYIynygjA8k,3344
190
+ external_llm/editor/_editor_core/vm/classification.py,sha256=9U9sIEC06ExTlovAK_ycocrMTHSnEIUFjfi35s4hZWs,2726
191
+ external_llm/editor/_editor_core/vm/failure_classifier.py,sha256=_QXNQ2fWIvkkGKcUA0bYHzZdTfjeblVPkPXl4XmbFHQ,16680
192
+ external_llm/editor/_editor_core/vm/models.py,sha256=Sy-GnU-j6p1VYjRtKCETJSZUSSUH42_IyaKUZnm1-is,816
193
+ external_llm/editor/_editor_core/vm/repair_planner.py,sha256=3kern04v9EPGA1muVZ5Bm7MB_w5NLsmOmlQhLZ8keuA,2863
194
+ external_llm/editor/_editor_core/vm/repair_registry.py,sha256=OHSoJkrwYQiF6iqlJDI4tBhus2Wd7QVQTBjkc4dgFhE,1442
195
+ external_llm/editor/_editor_core/vm/repair_strategies.py,sha256=iz84hWQmTufGJpY__MRgUUPMii-XUODaUhJ12ZCgAvc,40603
196
+ external_llm/editor/_editor_core/vm/rollback_manager.py,sha256=JuXZH2xXd9OctoI_YCZCVxRCHTzv9SAsnxHiwG4xaVM,1239
197
+ external_llm/editor/_editor_core/vm/verifier.py,sha256=5TocQv8rTcEM8awqjYENIBVfNf9mIrNfJIBeX8PIn-A,14675
198
+ external_llm/editor/_editor_core/vm/vm.py,sha256=DZmeRVPRZ3SkSzkqA5jhAOm_CYprmMh3d2jEKZC2ZkM,12057
199
+ external_llm/editor/_editor_core/vm/contracts/__init__.py,sha256=Bq1H2hU8CLGSybm25wvBHWXZ6e9CeiU-4FnixVVcNFM,132
200
+ external_llm/editor/_editor_core/vm/contracts/contract_diff.py,sha256=9fAeTnz0pstfut9QYfqWeJ867k7WPBullz-j4euIC2Q,8090
201
+ external_llm/editor/_editor_core/vm/contracts/contract_extractor.py,sha256=157ICTcQhQyP1QTnq-rMxhYVFCyoJKANYmah8Zhd2rg,9457
202
+ external_llm/editor/_editor_core/vm/contracts/contract_models.py,sha256=1lX3qFJoQ2HBz0n4Bnf59mLbWSmO4Pj6JORquqaR3Lk,2416
203
+ external_llm/editor/_editor_core/vm/contracts/project_graph.py,sha256=eetDe8hVoQ8IAClHAbe2JsedevuTvyvEENg9nh7-iXA,7401
204
+ external_llm/editor/_editor_core/vm/contracts/propagation_planner.py,sha256=_gwBxq6zbO-rZOorQ3igde8-TAuFjZj0BqBJrLfXZCs,8140
205
+ external_llm/editor/agent/autonomous/__init__.py,sha256=UpN6hse-nMbE5wg6aoIHCAO2BkJDLfaYd1uxNZZKC4c,1652
206
+ external_llm/editor/agent/autonomous/proactive_runner.py,sha256=FtX2ye3JOKXWufJ6jMW_00dgpHK8eyTFy8Aa9pLMhbs,16289
207
+ external_llm/editor/agent/autonomous/push_manager.py,sha256=bgeJgWCV1P9U1wwebJVHXAl5VwBeY01IVdSlJtgYlBM,12767
208
+ external_llm/editor/agent/autonomous/task_queue.py,sha256=mInmB4wVntrEeNppwl_pKVM7EBauBVk4kQIL8HKwDPE,10394
209
+ external_llm/editor/agent/autonomous/trigger_engine.py,sha256=9aY_W5MXWLykEYJQfmARjfRrVG4OT5WeSteXX_MuETY,7303
210
+ external_llm/editor/agent/autonomous/trigger_policy.py,sha256=2zGtVcqIiBX5JFkhhhJrmsqQp0DLQB38To9diQvDSvE,13649
211
+ external_llm/editor/agent/mcp/__init__.py,sha256=Zjt7wKrLRcqxzoZsgdB3QUv0EG_2sJ59o7n0ujsoPig,419
212
+ external_llm/editor/agent/mcp/server.py,sha256=QmFJ7QKNm587Kg__eAofP3qJ5HBY8e-A9iHUfqffXps,5750
213
+ external_llm/editor/agent/prompts/__init__.py,sha256=cO_m6r54zQIUPWOfWlWKki8O5jFp9-tcK5Z8mww26Rg,119
214
+ external_llm/editor/agent/prompts/edit_prompts.py,sha256=DChrr_I1SdVBkaHERS7PZj57DaHh6e-chkx0AA6oDmA,11851
215
+ external_llm/editor/cross_language/__init__.py,sha256=Vb0aWGD0EG20Cfc_F18HIdm1XBpp6f6YoAYZ7LWuhR8,124
216
+ external_llm/editor/cross_language/models.py,sha256=0ilcapFobkH-gm4KMVaF-afnKLvS4r9cdLYLYt0J5JY,2582
217
+ external_llm/editor/cross_language/strategy_abstraction.py,sha256=kwfHnvS6eOt24h3oLLzxOFd0zIjsw1kPL2OiqcIc_0U,7934
218
+ external_llm/editor/cross_language/transfer_engine.py,sha256=01wyKrjZf6R0cYxQ3OZufgqvIiZxy2QCZRSOabIG72Y,6086
219
+ external_llm/editor/learning/__init__.py,sha256=CMCN3Df4pFHP91r7KHS76JDb3OVrEfbXvm4bCUU5Yi8,46
220
+ external_llm/editor/learning/experience_store.py,sha256=Eb5aWCUeztfJ2q1yNzB4Z4XO8CL_LTlTXLrRb3sdCvQ,14485
221
+ external_llm/editor/learning/exploration_state.py,sha256=6Lt40hnAq_qVMvnVCa6Qgx-mFerXM9viP8Wlxgk-LYw,4410
222
+ external_llm/editor/learning/learning_sink.py,sha256=WScps1WRFo141NRrbuO053mkymIVsUQSqqrCehb8vO0,4779
223
+ external_llm/editor/learning/pattern_extractor.py,sha256=ZDE3cDMWpQsmRNYvNn7fWWf0ojNll0rtiDOcR5SMOmc,6061
224
+ external_llm/editor/learning/primitive_learning_models.py,sha256=CzoMkj7Lx515Sx2yPyE9yrnpp5KvGMXlwHu9tAbTaBQ,5133
225
+ external_llm/editor/learning/primitive_learning_scorer.py,sha256=JGGhnAs_Zw34fAu1nWUbgYP9U7zAgXn1Qw96dnXk7AQ,4222
226
+ external_llm/editor/learning/primitive_learning_store.py,sha256=GQbD4s3UTlrPC8XHQLxs_8cJnM_P6Q-oBK1eTB7avDg,5281
227
+ external_llm/editor/learning/primitive_learning_updater.py,sha256=EVhpqwi2hJphRsAfHLnvcZ7UewYpPkd2xxlLKziTXgM,4525
228
+ external_llm/editor/learning/primitive_sequence_models.py,sha256=91NBfBtVdEARY_MHdyqgMYTvhkksIVlDNKsrnsraUT0,1775
229
+ external_llm/editor/learning/primitive_sequence_scorer.py,sha256=fjkKD98OJLuLrkdGBIIEeTArJ2pI_UQOeGDZFMIun9Q,3714
230
+ external_llm/editor/learning/primitive_sequence_store.py,sha256=O76vzqk8E-ceT6QwxrZ2gZ6aj6C54ThagRP7lxtbclA,4389
231
+ external_llm/editor/learning/primitive_sequence_updater.py,sha256=bDlXH0Y6aquU4RjUr9wjXd8uX8XHp1L8OeSXs0E0eJg,2047
232
+ external_llm/editor/learning/problem_signature.py,sha256=jPQe_U3TDQJTHcFpSDc7i7wXjpJqwBjz3kx-bGtw2w4,5787
233
+ external_llm/editor/learning/strategy_execution_bias.py,sha256=URZ5ASav6Dt6O76bV36USIHhmuaiD8NGJVTRH_a8fhQ,13207
234
+ external_llm/editor/learning/strategy_prioritizer.py,sha256=wpDCPnUHjSewYF_CHvk94sLpbk-QLzM8Xqq7-E0ae88,10099
235
+ external_llm/editor/learning/strategy_state.py,sha256=VM1MuAeEJVmvAsgD5EdSBfpeV_NynV_wZW1r4lJzdPU,4754
236
+ external_llm/editor/learning/unified_run_record.py,sha256=1SxuV2FkdvtiLRxqKkBzyORZCkZbfKcOYYKJF2Vr-TI,4446
237
+ external_llm/editor/learning/unified_store.py,sha256=h-L3G8XeJfWlavq7HKqyDSJdsW3RCVg6C_pnh6nFXpk,22434
238
+ external_llm/editor/primitives/__init__.py,sha256=oZww4XCgsY15U7sMTt4f9ArnlnhYIP3zsFuINREQMx4,111
239
+ external_llm/editor/primitives/code_context.py,sha256=9EjYGOgOWywJPlsTgQkW4gz8tDMERUAVJNGJBM3bm_4,27219
240
+ external_llm/editor/primitives/delete_node.py,sha256=ggN7TnxWyRO9wKQYDuDrWahWysBCb_I_ommkEvuoQH8,1230
241
+ external_llm/editor/primitives/executor.py,sha256=RFgkAi_S1dnZNdlrNILJMuKwUyUYvBlimTG4LlrsbKM,3733
242
+ external_llm/editor/primitives/insert_import.py,sha256=pjLSqJpfQzis7s1AVzRCoGgQkVa_eRZv2S8eSqzZxKE,3035
243
+ external_llm/editor/primitives/insert_statement.py,sha256=w30nrkyAPmi-06_6J4OOawK-JJriZqoTech2fEYXO8U,2749
244
+ external_llm/editor/primitives/models.py,sha256=sKijKAkQBevrQ1s60yB7l3mXJcQtKQmgZuitCzwScW8,2410
245
+ external_llm/editor/primitives/registry.py,sha256=MvBMNOXZaTAN7i1BmxNLLrA8Q45Ylq26QTMVgoRHjMk,1638
246
+ external_llm/editor/primitives/rename_symbol.py,sha256=PLU7mVH_6k4Ud8nvAM5PYmd7SD9Qrr_jUrhtkQ6U7OA,3415
247
+ external_llm/editor/primitives/replace_function.py,sha256=vzY-9bsQbsWWdmWIQm_HHyquyQZeVuzmY76SJHROqUw,10180
248
+ external_llm/editor/primitives/update_call.py,sha256=stI9bn8_OYQ9iEPHeeV_yH4Vxx2weJ_9yyZdtgzyl9c,2687
249
+ external_llm/editor/semantic/__init__.py,sha256=y_FAEMxyTY05bEo2HV6iR8mKtZmJDl2kPvJfwtVq6CI,62
250
+ external_llm/editor/semantic/ast_transform_utils.py,sha256=Ubgp9B6L5Ij7Zt41G8nVrpL3uexLrEkZ1FjqEn4auDE,15308
251
+ external_llm/editor/semantic/contract_replan_strategy.py,sha256=AaxNCQ5jmEYFgsQBu3pDbbCaB8emNUuAXfq7r1NXKvM,3499
252
+ external_llm/editor/semantic/draft_parser.py,sha256=NbjbRYRhEmcHnajjPIvEf6yFzf_S_0z-kWoWBjhq0ns,7005
253
+ external_llm/editor/semantic/flow_synthesizer.py,sha256=jdzFwOQ8f_J03NQluAde82m4Vol3n3RS4zf6N5VYT4Y,5135
254
+ external_llm/editor/semantic/fragment_generator.py,sha256=3ZtB7h1frKirHdySoedKT4kKY9TXmhKtJTYJX3F4mS4,803
255
+ external_llm/editor/semantic/fragment_integrator.py,sha256=bJnriVv0tG22Ud157rhb-bHskwgZUWmFD5aCIg5g1jI,4701
256
+ external_llm/editor/semantic/generation_planner.py,sha256=hde8E8nzADA9CC4RK6Ufa-tBxREHDeuaacCrergto1Q,783
257
+ external_llm/editor/semantic/libcst_transform_utils.py,sha256=LCMT9dZvdBbka1ye82O0Q5Uu8MtlYkYKt7P2JwYFnlo,9877
258
+ external_llm/editor/semantic/output_comparator.py,sha256=TX6o_2sfXAMDSUgjbL_ub7MxUHyOaw7TwES9BcTJo_g,3094
259
+ external_llm/editor/semantic/primitive_code_templates.py,sha256=wCSb_LQsqcYsWyLkYFm0Djw65bXFaHq-OZWLj8PKOTw,11431
260
+ external_llm/editor/semantic/primitive_detector.py,sha256=uSGI8CoLqdCxJFmyLvKg9qx5IQNnq6iYPU7wT-9etE4,19139
261
+ external_llm/editor/semantic/primitive_ir_builder.py,sha256=tgJGPlmzVwPh8pKUsJeDCtl7Z9hLJymYqvZYEf5zS2o,4720
262
+ external_llm/editor/semantic/primitive_models.py,sha256=C8YNGAuPSDsibOi3mwKRDagBi5278JvvyVqHHNUGfYk,3929
263
+ external_llm/editor/semantic/primitive_reconstructor.py,sha256=L8Az_2zbwl-i4dSVSYqB54i9jvDhS5JLhYBOD1n8nPA,10777
264
+ external_llm/editor/semantic/primitive_registry.py,sha256=Ve5fh1f3ieAtPr8vf1XKbp7WN56ZqlYLaQ0z1vrCVKs,11776
265
+ external_llm/editor/semantic/semantic_contract_evaluator.py,sha256=q8X8k79Y_LdSjHMSyCS9b_dOUvAxJ3SWRtP-qVJBltQ,12665
266
+ external_llm/editor/semantic/semantic_contract_models.py,sha256=trBc2RcjjimmXflC-gcvKEBeCfGUZAZkJGF24mrNC-I,4315
267
+ external_llm/editor/semantic/semantic_contract_registry.py,sha256=Je2MKPV8NM_0RQez8HGGDtsU-a8OEiR96WRXcVL1_KY,4717
268
+ external_llm/editor/semantic/semantic_contracts.py,sha256=Jk46ktqyQZO0xgWK1g41jxgajOZgxro8CmIO5zIY4s0,3646
269
+ external_llm/editor/semantic/semantic_corrector.py,sha256=HZwxH0aTjaunZUXcZTQI1OCZOihqFsweOmBviw21jsc,2506
270
+ external_llm/editor/semantic/semantic_gap_analyzer.py,sha256=WlHlzJQaa4fABji54-ZcFe1niE9r37G5BdHoleWu4f0,6133
271
+ external_llm/editor/semantic/semantic_rewrite_models.py,sha256=QVmLwLqoAjZB40XI-Hs3NW4mEsOAHidfUhgVQ6chZXk,2121
272
+ external_llm/editor/semantic/semantic_rewrite_planner.py,sha256=YJbbndeuFpcx1hXURjcUO9v7TSwGA2jWPPWbUBJ6djY,8722
273
+ external_llm/editor/semantic/semantic_rewriter.py,sha256=dLhUuHlVmXrz2VZlbqcXdGM49aTTHmkR3JhdEa4v-Yg,10806
274
+ external_llm/editor/semantic/semantic_tracer.py,sha256=Y8I8keRzdw98pgbjO1Qmuvwe2UOjdLi8Og46_-LE0Xw,16707
275
+ external_llm/editor/semantic/synthesis_planner.py,sha256=IaZElTh3LacV6_lfAYDyLftWccn187Jw7yMR_eowPMM,3569
276
+ external_llm/editor/semantic/ts_ir_models.py,sha256=T03f88fTD2s2peaGwZ_53CtLDzA8-YziK50hUOpa2gM,13469
277
+ external_llm/editor/semantic/ts_semantic_models.py,sha256=sbijuAKKZDKqYqgZI4-Y2VdNlZ_iltid6Na8-nATp18,3337
278
+ external_llm/editor/semantic/ts_semantic_tracer.py,sha256=7aUgM1I0j_0X3q1Wq65Gu6CdIjCgIA6ZmtG8wIGmzzE,55124
279
+ external_llm/editor/simulator/dependency_traversal.py,sha256=j_x3tIHLKmBJjj9tEVLFOoZURmc3O34BtlXS2YCIO6M,5012
280
+ external_llm/editor/simulator/impact_models.py,sha256=EbqvF-9aEo7ycydJZyt-_utA2qnGXsWuLEg6LgNNMsA,1313
281
+ external_llm/editor/simulator/impact_simulator.py,sha256=t90qiPyjQ6qLdWqo_Fn6lBUWvgCHodyv-9ZdhxOALss,6355
282
+ external_llm/editor/simulator/risk_estimator.py,sha256=65w0bTo2_e3CG7zv7yfkAEautuBZ-4TJoyaOubBVq60,2181
283
+ external_llm/editor/verification/__init__.py,sha256=zaN6m-BkJ69BdZYf9SlMs2-T0U-HrvhMp3G10slz8lU,219
284
+ external_llm/editor/verification/code_integrity.py,sha256=gHr4vkuyYjb4IK4mU5inEXP5_SDdEfH2yDIsdqO2WWw,15701
285
+ external_llm/editor/verification/impact_propagation.py,sha256=zzT5ba9CNYtKMnYRQw0cXDuHwM9RgDP_dDIAndsoG88,15524
286
+ external_llm/editor/verification/impact_verification_mapper.py,sha256=ZduuGvggHvF0GHkfHRJ6k8U7w0cAyoyIcST4mKocZk0,5501
287
+ external_llm/editor/verification/verification_set_builder.py,sha256=A5oHuRyRquRQ6eWhjBgfJs89A0_IUH51mC1E42nfMck,14130
288
+ external_llm/graph/composite_risk.py,sha256=Q7dI9D1bhoHUZWxYg3HDIxmi7wNIqFWHB7o7PdhgY_Y,8458
289
+ external_llm/graph/execution_graph_advisor.py,sha256=0bq6Re4SVTCyepsslt94btopNqEOqDAsTyHMBtAspQU,26791
290
+ external_llm/graph/graph_builder.py,sha256=NO6-W8__MAR6_O6aTZVOUQcmm0iu1t7D5PTcoYZ1gQg,807
291
+ external_llm/graph/graph_facade.py,sha256=LHK41RE1bydZs8Sbyab65WM-MfYIBGU1TLELzC1dtXk,8089
292
+ external_llm/graph/models.py,sha256=wiZ2ckVMBNKYK7i4aVbdGtrTnhWaclO-eoUStzn9LCo,3356
293
+ external_llm/graph/repository_graph.py,sha256=EDZFQ4o5V9lbQOXEOibnc1MZ6tg8kI-P00puiWnQ6Dw,45440
294
+ external_llm/graph/run_scoped_graph_cache.py,sha256=VEalTcRak5rm5QIt1J8-oxO5W4eNNWbndjHFRzpPUyM,10823
295
+ external_llm/graph/spec_graph_enricher.py,sha256=FfJxuSN2vqFXbIYaWFQYtwHo9u1X7RkeQMIAJUncb6w,43564
296
+ external_llm/graph/virtual_graph.py,sha256=0YEPPZRc8c1QBC3IyWmORphIkLt_Md09lPjffEWtvOA,22459
297
+ external_llm/languages/__init__.py,sha256=WxvBSr0AikMHCVN4FDIQte4DgwIFZQ_x051jJbBvJzg,571
298
+ external_llm/languages/base.py,sha256=4ZLRuPeaE2BCAbXbRY_ru_W3D_-VRi0fF_FSpuO8Crw,17928
299
+ external_llm/languages/bash_provider.py,sha256=CBBVffI4sSSmohofhwL7zPE5_awzEHfd5fs2IgKXkpk,3958
300
+ external_llm/languages/capabilities.py,sha256=mYnrp5wdxmo4K7Ejd8rp1wFfaF6tizQzGuuI-YiDOMQ,4949
301
+ external_llm/languages/csharp_provider.py,sha256=AJc2j3pzhN6L58mldHwthjQMrSOOPWr0fabkx_pOpRw,4483
302
+ external_llm/languages/css_provider.py,sha256=PE5lDJoS0PMWZNcRekLWu7X56_w1TpgyARMCuDumxnI,5848
303
+ external_llm/languages/dependency_checker.py,sha256=FXD7a_fePNeuYqajHpVs2CXfiTzSFiXxB1L05OHcpbU,26469
304
+ external_llm/languages/go_provider.py,sha256=vuzSpURXD2qSLs3y3kntwZS-UIJbgqe9Qel4mSrpwGE,19903
305
+ external_llm/languages/html_provider.py,sha256=8rp0MqCw1vZFNN2fjuqjyHhBMDGSOhm5ppsIcTKmgF0,4761
306
+ external_llm/languages/java_provider.py,sha256=r6dCAonkyl-EaUy1kJGkZPQJhbXO6jOU1VFuOLBUviQ,20904
307
+ external_llm/languages/javascript_provider.py,sha256=j2EAweS-mi5C8T0iMdtWjt4EFV6gFtelnS7I7U5CfzQ,14112
308
+ external_llm/languages/json_provider.py,sha256=IzWDXap2_Hq6BnQ4e3xpTqBt6sTZCd1FfuM3Il2RfZI,3851
309
+ external_llm/languages/kotlin_provider.py,sha256=NTx-av98I2pPVP09K1ITNC1bsDAvPdv7dILNB1sheKc,19851
310
+ external_llm/languages/libcst_utils.py,sha256=EhQI9A71rPiAsITcnI6HEZNotwRt0jO3XernxFsPGbs,28060
311
+ external_llm/languages/models.py,sha256=dJU9vuPdeU5CT0VT3Xx6P1ZhW61TK1O7moYkNCx8QsI,6309
312
+ external_llm/languages/php_provider.py,sha256=u8m-BU2Q3OL8XfCZ5t6c0GlenixWGg5X1kZikX9UDnE,3399
313
+ external_llm/languages/python_provider.py,sha256=NhuKuXcDvM8gx_r1BBXH92ldQkPC9_0ikfY3R4li3tI,15546
314
+ external_llm/languages/registry.py,sha256=vhXSshGXPmvrWYHNsljU-jEfJM_TptPsRV3c37FVP_o,5431
315
+ external_llm/languages/ruby_provider.py,sha256=UoveCCXrO-AKfCKmji9vJcoSS5K9A9TsC7RiN5BkxlQ,3401
316
+ external_llm/languages/rust_provider.py,sha256=9E2BTZVPw2mcD0g2DTElqnj4A4hn4cCe934q16L3GrM,3304
317
+ external_llm/languages/swift_provider.py,sha256=7F3uq8uqXZRfLLqsHSMgUlNcco7PuId4K7xLtkI-hCI,3603
318
+ external_llm/languages/syntax_validator.py,sha256=bjqpc7habai6WgmgyJj7w5vTER0kRQ_VUicQiwvMssg,14939
319
+ external_llm/languages/tree_sitter_utils.py,sha256=js9KmFxvmbNPlmX4HJLHpWnIoxWXhYf7pNUVC_qEbd8,81929
320
+ external_llm/languages/typescript_provider.py,sha256=u3dKibKQLrQKPEQUrxJWntAEUS6zxERG6hEKT8hxE20,31616
321
+ external_llm/repl/collaborate/__init__.py,sha256=aS_JQWVajBJYopHHdyuSmJbVF-eMQCyO8-tOLnWPGTY,1603
322
+ external_llm/repl/collaborate/asi_mcp_adapter.py,sha256=ypJu8fhOLzm9RNG_qkFvBjXkoUwJauacTnjEUEuU8Ms,23915
323
+ external_llm/repl/collaborate/claude_session.py,sha256=2vqnnkX12cpjgKeazQXWv5Lgx-I6E97k5Xw2gCzmuB8,19684
324
+ external_llm/repl/collaborate/cli.py,sha256=tMx0BSmZ4Vm7ZvJ1h5bCFQNkbWZBLPxNjwyZZA1wYVM,7671
325
+ external_llm/repl/collaborate/collaboration_orchestrator.py,sha256=vII6x2k2W5L4nndFOyJlAn6_kMkee02o9Y5f6hwgZn8,17154
326
+ external_llm/repl/collaborate/streaming_display.py,sha256=Psyk5tje247aVKiwDkhtNNiLoadqpaR7XUaac3KytdI,28994
327
+ external_llm/repl/collaborate/verdict.py,sha256=cmaWuE2FvSayd2U2jQMVUtne5VO7_S0OLJhaum7qLA0,6293
328
+ external_llm/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
329
+ external_llm/testing/symbol_aware_test_finder.py,sha256=lZF1vV3DMNT2yHuMWB64qo04ZD_z1zKPjUpw199nw7E,16048
330
+ external_llm/testing/test_dependency_graph.py,sha256=5xBShed5neP8qsHCWi_wX5QMJLzWNRYImU2fyadKrYc,16756
331
+ services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
332
+ services/patch_helpers.py,sha256=qWb6vAY2wnDfLdtdePThZ0GkGCZIGd11CGDzvrVeR3Q,4610
333
+ utils/__init__.py,sha256=6OEhX5P2M-KyzBgDzEGJKzfjEaX0Bccyyf21DWQHNo8,58
334
+ utils/llm_utils.py,sha256=0f_hHElnXNscmDjQggepz27Thnqt6DZAfmLY9C3428I,956
335
+ utils/string_helper.py,sha256=FFIcLxEg2bKG7rXmM8kl0a0hfarsqUn32Lcdw1I8bz8,8619
336
+ asicode-0.2.6.dist-info/METADATA,sha256=bWE9ySbWL5yNI4Y4ssiukfyk3P5Is9tyTXgytNq8Yc0,8175
337
+ asicode-0.2.6.dist-info/WHEEL,sha256=K260EYznzXsJYBQGqmI8VTxEdiZYNvDZwW9cBh9-_MA,91
338
+ asicode-0.2.6.dist-info/entry_points.txt,sha256=ucfQDo18vkbL36rwuHEWko6oyHq5MB1Y8O3QhGVj-No,33
339
+ asicode-0.2.6.dist-info/top_level.txt,sha256=XlDWp77Wk3L-srWgzpfTkubYk7AD3_Wv08Rd-hdJZ_I,115
340
+ asicode-0.2.6.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (83.0.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ asi = asi:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025-2026 asicode contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,11 @@
1
+ asi
2
+ common
3
+ config
4
+ context_collector
5
+ diff_apply
6
+ external_llm
7
+ patch_synth
8
+ path_security
9
+ plan_compiler
10
+ services
11
+ utils