auto-coder 3.0.42__tar.gz → 3.0.44__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 (877) hide show
  1. {auto_coder-3.0.42/src/auto_coder.egg-info → auto_coder-3.0.44}/PKG-INFO +1 -1
  2. {auto_coder-3.0.42 → auto_coder-3.0.44}/pyproject.toml +1 -1
  3. {auto_coder-3.0.42 → auto_coder-3.0.44/src/auto_coder.egg-info}/PKG-INFO +1 -1
  4. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/auto_coder.egg-info/SOURCES.txt +5 -1
  5. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/auto_coder_terminal_v3.py +36 -47
  6. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/__init__.py +2 -0
  7. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conf_validator.py +5 -0
  8. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/commit_handler.py +22 -2
  9. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/command_executor.py +43 -7
  10. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/process_manager.py +14 -2
  11. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_windows_support.py +58 -7
  12. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/windows_support.py +81 -14
  13. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shells.py +107 -4
  14. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit.py +33 -11
  15. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/execute_command_tool_resolver.py +116 -47
  16. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_types.py +9 -0
  17. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/runner/file_based_event_runner.py +31 -0
  18. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/plugins/__init__.py +27 -9
  19. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/task_metadata.py +167 -84
  20. auto_coder-3.0.44/src/autocoder/terminal/args.py +78 -0
  21. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/bootstrap.py +3 -6
  22. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/command_processor.py +20 -31
  23. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/tasks/background.py +3 -1
  24. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/ui/toolbar.py +2 -4
  25. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/__init__.py +10 -1
  26. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/cloud_bridge.py +110 -6
  27. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/cloud_command_dispatcher.py +140 -8
  28. auto_coder-3.0.44/src/autocoder/terminal_core/cloud_config.py +142 -0
  29. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/status.py +62 -18
  30. auto_coder-3.0.44/src/autocoder/terminal_core/tunnel_worker.py +456 -0
  31. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/app.py +9 -2
  32. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/handlers/command_handler.py +32 -32
  33. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/models/conversation_buffer.py +63 -4
  34. auto_coder-3.0.44/src/autocoder/terminal_v3/models/markdown_render.py +133 -0
  35. auto_coder-3.0.44/src/autocoder/terminal_v3/models/message.py +170 -0
  36. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/version.py +1 -1
  37. auto_coder-3.0.44/tests/test_plugin_manager.py +39 -0
  38. auto_coder-3.0.42/src/autocoder/terminal/args.py +0 -91
  39. auto_coder-3.0.42/src/autocoder/terminal_v3/models/message.py +0 -99
  40. {auto_coder-3.0.42 → auto_coder-3.0.44}/LICENSE +0 -0
  41. {auto_coder-3.0.42 → auto_coder-3.0.44}/MANIFEST.in +0 -0
  42. {auto_coder-3.0.42 → auto_coder-3.0.44}/README.md +0 -0
  43. {auto_coder-3.0.42 → auto_coder-3.0.44}/requirements.txt +0 -0
  44. {auto_coder-3.0.42 → auto_coder-3.0.44}/setup.cfg +0 -0
  45. {auto_coder-3.0.42 → auto_coder-3.0.44}/setup.py +0 -0
  46. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/auto_coder.egg-info/dependency_links.txt +0 -0
  47. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/auto_coder.egg-info/entry_points.txt +0 -0
  48. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/auto_coder.egg-info/requires.txt +0 -0
  49. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/auto_coder.egg-info/top_level.txt +0 -0
  50. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/__init__.py +0 -0
  51. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/__init__.py +0 -0
  52. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_demand_organizer.py +0 -0
  53. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_filegroup.py +0 -0
  54. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_guess_query.py +0 -0
  55. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_learn.py +0 -0
  56. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_learn_from_commit.py +0 -0
  57. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_review_commit.py +0 -0
  58. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/auto_tool.py +0 -0
  59. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/__init__.py +0 -0
  60. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/agent_hub.py +0 -0
  61. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/agentic_lang.py +0 -0
  62. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/agentic_tool_display.py +0 -0
  63. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/base_agent.py +0 -0
  64. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/default_tools.py +0 -0
  65. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/test_base_agent.py +0 -0
  66. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tool_registry.py +0 -0
  67. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/__init__.py +0 -0
  68. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/ask_followup_question_tool_resolver.py +0 -0
  69. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/attempt_completion_tool_resolver.py +0 -0
  70. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/base_tool_resolver.py +0 -0
  71. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/example_tool_resolver.py +0 -0
  72. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/execute_command_tool_resolver.py +0 -0
  73. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/list_files_tool_resolver.py +0 -0
  74. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/plan_mode_respond_tool_resolver.py +0 -0
  75. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/read_file_tool_resolver.py +0 -0
  76. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/replace_in_file_tool_resolver.py +0 -0
  77. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/search_files_tool_resolver.py +0 -0
  78. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/talk_to_group_tool_resolver.py +0 -0
  79. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/talk_to_tool_resolver.py +0 -0
  80. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/tools/write_to_file_tool_resolver.py +0 -0
  81. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/types.py +0 -0
  82. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/base_agentic/utils.py +0 -0
  83. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/coder.py +0 -0
  84. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/designer.py +0 -0
  85. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/__init__.py +0 -0
  86. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/auto_tool.py +0 -0
  87. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/chat.py +0 -0
  88. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/designer.py +0 -0
  89. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/generate_command.py +0 -0
  90. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/project_reader.py +0 -0
  91. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/entry_command_agent/voice2text.py +0 -0
  92. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/planner.py +0 -0
  93. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/agent/project_reader.py +0 -0
  94. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/auto_coder.py +0 -0
  95. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/auto_coder_rag.py +0 -0
  96. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/auto_coder_runner.py +0 -0
  97. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/auto_coder_terminal.py +0 -0
  98. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/chat/__init__.py +0 -0
  99. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/chat/conf_command.py +0 -0
  100. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/chat/conf_spec.py +0 -0
  101. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/chat/models_command.py +0 -0
  102. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/chat/rules_command.py +0 -0
  103. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/chat_auto_coder_lang.py +0 -0
  104. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/command_args.py +0 -0
  105. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/commands/__init__.py +0 -0
  106. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/commands/auto_command.py +0 -0
  107. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/commands/auto_web.py +0 -0
  108. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/commands/tools.py +0 -0
  109. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/JupyterClient.py +0 -0
  110. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ShellClient.py +0 -0
  111. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ac_style_command_parser/__init__.py +0 -0
  112. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ac_style_command_parser/config.py +0 -0
  113. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ac_style_command_parser/parser.py +0 -0
  114. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ac_style_command_parser/test_parser.py +0 -0
  115. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ac_style_command_parser/test_typed_parser.py +0 -0
  116. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ac_style_command_parser/typed_parser.py +0 -0
  117. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/action_yml_file_manager.py +0 -0
  118. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_events/__init__.py +0 -0
  119. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_events/agent_event_emitter.py +0 -0
  120. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_events/event_factory.py +0 -0
  121. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_events/examples.py +0 -0
  122. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_events/types.py +0 -0
  123. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_events/utils.py +0 -0
  124. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_hooks/__init__.py +0 -0
  125. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_hooks/examples.py +0 -0
  126. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_hooks/hook_executor.py +0 -0
  127. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_hooks/hook_manager.py +0 -0
  128. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_hooks/types.py +0 -0
  129. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_hooks/utils.py +0 -0
  130. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_query_queue/__init__.py +0 -0
  131. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_query_queue/queue_executor.py +0 -0
  132. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agent_query_queue/queue_manager.py +0 -0
  133. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agents/__init__.py +0 -0
  134. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agents/agent_manager.py +0 -0
  135. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agents/agent_parser.py +0 -0
  136. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agents/example_usage.py +0 -0
  137. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agents/integration_example.py +0 -0
  138. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/agents/test_agent_parser.py +0 -0
  139. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/anything2images.py +0 -0
  140. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/anything2img.py +0 -0
  141. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/async_prompt.py +0 -0
  142. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/async_utils.py +0 -0
  143. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/audio.py +0 -0
  144. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/auto_coder_lang.py +0 -0
  145. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/auto_configure.py +0 -0
  146. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/autocoderargs_parser/__init__.py +0 -0
  147. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/autocoderargs_parser/parser.py +0 -0
  148. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/autocoderargs_parser/tests/__init__.py +0 -0
  149. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/autocoderargs_parser/tests/test_args_parser.py +0 -0
  150. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/autocoderargs_parser/tests/test_token_parser.py +0 -0
  151. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/autocoderargs_parser/token_parser.py +0 -0
  152. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/buildin_tokenizer.py +0 -0
  153. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/chunk_validation.py +0 -0
  154. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/cli_invocation.py +0 -0
  155. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_execute.py +0 -0
  156. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_generate.py +0 -0
  157. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_generate_diff.py +0 -0
  158. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_generate_editblock.py +0 -0
  159. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_generate_strict_diff.py +0 -0
  160. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_merge.py +0 -0
  161. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_merge_diff.py +0 -0
  162. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_merge_editblock.py +0 -0
  163. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_auto_merge_strict_diff.py +0 -0
  164. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/code_modification_ranker.py +0 -0
  165. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_completer.py +0 -0
  166. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_file_manager/__init__.py +0 -0
  167. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_file_manager/examples.py +0 -0
  168. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_file_manager/manager.py +0 -0
  169. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_file_manager/models.py +0 -0
  170. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_file_manager/test_command_file_manager.py +0 -0
  171. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_file_manager/utils.py +0 -0
  172. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_generator.py +0 -0
  173. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/command_templates.py +0 -0
  174. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/computer_use.py +0 -0
  175. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conf_import_export.py +0 -0
  176. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conf_utils.py +0 -0
  177. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/const.py +0 -0
  178. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/__init__.py +0 -0
  179. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/backup/__init__.py +0 -0
  180. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/backup/backup_manager.py +0 -0
  181. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/backup/restore_manager.py +0 -0
  182. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/cache/__init__.py +0 -0
  183. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/cache/base_cache.py +0 -0
  184. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/cache/cache_manager.py +0 -0
  185. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/cache/memory_cache.py +0 -0
  186. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/config.py +0 -0
  187. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/exceptions.py +0 -0
  188. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/file_locker.py +0 -0
  189. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/get_conversation_manager.py +0 -0
  190. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/llm_stats_models.py +0 -0
  191. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/manager.py +0 -0
  192. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/models.py +0 -0
  193. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/runtime_registry.py +0 -0
  194. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/search/__init__.py +0 -0
  195. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/search/filter_manager.py +0 -0
  196. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/search/text_searcher.py +0 -0
  197. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/storage/__init__.py +0 -0
  198. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/storage/base_storage.py +0 -0
  199. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/storage/file_storage.py +0 -0
  200. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/conversations/storage/index_manager.py +0 -0
  201. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/__init__.py +0 -0
  202. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/agentic_mode_manager.py +0 -0
  203. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/base_manager.py +0 -0
  204. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/compatibility.py +0 -0
  205. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/config_manager.py +0 -0
  206. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/conversation_manager.py +0 -0
  207. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/exclude_manager.py +0 -0
  208. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/file_manager.py +0 -0
  209. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/human_as_model_manager.py +0 -0
  210. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/lib_manager.py +0 -0
  211. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/main_manager.py +0 -0
  212. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/merge_utils.py +0 -0
  213. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/mode_manager.py +0 -0
  214. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/models.py +0 -0
  215. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/core_config/test_memory_manager.py +0 -0
  216. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/env_manager.py +0 -0
  217. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/env_manager_usage_example.py +0 -0
  218. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/__init__.py +0 -0
  219. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/backup.py +0 -0
  220. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/conversation_checkpoint.py +0 -0
  221. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/manager.py +0 -0
  222. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/models.py +0 -0
  223. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/store.py +0 -0
  224. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/test_backup.py +0 -0
  225. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/test_manager.py +0 -0
  226. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/test_models.py +0 -0
  227. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/test_store.py +0 -0
  228. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/test_utils.py +0 -0
  229. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_checkpoint/utils.py +0 -0
  230. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/__init__.py +0 -0
  231. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/add_files_handler.py +0 -0
  232. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/chat_handler.py +0 -0
  233. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/coding_handler.py +0 -0
  234. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/lib_handler.py +0 -0
  235. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/list_files_handler.py +0 -0
  236. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/models_handler.py +0 -0
  237. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_handler/remove_files_handler.py +0 -0
  238. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_monitor/__init__.py +0 -0
  239. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_monitor/monitor.py +0 -0
  240. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/file_monitor/test_file_monitor.py +0 -0
  241. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/files.py +0 -0
  242. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/git_utils.py +0 -0
  243. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/global_cancel.py +0 -0
  244. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ignorefiles/__init__.py +0 -0
  245. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ignorefiles/ignore_file_utils.py +0 -0
  246. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/ignorefiles/test_ignore_file_utils.py +0 -0
  247. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/image_to_page.py +0 -0
  248. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/index_import_export.py +0 -0
  249. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/__init__.py +0 -0
  250. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/demo_international.py +0 -0
  251. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/message_manager.py +0 -0
  252. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/__init__.py +0 -0
  253. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/async_command_messages.py +0 -0
  254. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/auto_coder_messages.py +0 -0
  255. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/chat_auto_coder_messages.py +0 -0
  256. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/command_help_messages.py +0 -0
  257. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/conversation_command_messages.py +0 -0
  258. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/fast_command_messages.py +0 -0
  259. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/git_helper_plugin_messages.py +0 -0
  260. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/queue_command_messages.py +0 -0
  261. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/rules_command_messages.py +0 -0
  262. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/sdk_messages.py +0 -0
  263. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/token_helper_plugin_messages.py +0 -0
  264. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/tool_display_messages.py +0 -0
  265. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/messages/workflow_exception_messages.py +0 -0
  266. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/international/test_international.py +0 -0
  267. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/interpreter.py +0 -0
  268. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/__init__.py +0 -0
  269. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/base_linter.py +0 -0
  270. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/config_loader.py +0 -0
  271. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/formatters/__init__.py +0 -0
  272. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/formatters/base_formatter.py +0 -0
  273. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/formatters/raw_formatter.py +0 -0
  274. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linter.py +0 -0
  275. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linter_factory.py +0 -0
  276. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linter_manager.py +0 -0
  277. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linters/__init__.py +0 -0
  278. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linters/java_linter.py +0 -0
  279. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linters/python_linter.py +0 -0
  280. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/linters/typescript_linter.py +0 -0
  281. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/models/__init__.py +0 -0
  282. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/models/lint_result.py +0 -0
  283. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/models.py +0 -0
  284. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/__init__.py +0 -0
  285. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_config_loader.py +0 -0
  286. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_config_loading.py +0 -0
  287. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_factory_manager.py +0 -0
  288. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_formatters.py +0 -0
  289. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_integration.py +0 -0
  290. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_java_linter.py +0 -0
  291. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_linters.py +0 -0
  292. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/test_models.py +0 -0
  293. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/verify_config_loading.py +0 -0
  294. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/linter_core/tests/verify_fixes.py +0 -0
  295. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/__init__.py +0 -0
  296. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/base_manager.py +0 -0
  297. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/docs_manager.py +0 -0
  298. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/library_manager.py +0 -0
  299. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/main_manager.py +0 -0
  300. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/models.py +0 -0
  301. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llm_friendly_package/test_llm_friendly_package.py +0 -0
  302. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/__init__.py +0 -0
  303. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/demo_error_handling.py +0 -0
  304. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/factory.py +0 -0
  305. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/manager.py +0 -0
  306. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/pricing.py +0 -0
  307. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/registry.py +0 -0
  308. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/schema.py +0 -0
  309. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/simple_demo.py +0 -0
  310. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/test_quick_model.py +0 -0
  311. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/test_remove_functionality.py +0 -0
  312. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/tests/__init__.py +0 -0
  313. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/tests/test_manager.py +0 -0
  314. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/llms/tests/test_registry.py +0 -0
  315. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/memory_manager.py +0 -0
  316. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/model_speed_tester.py +0 -0
  317. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/openai_content.py +0 -0
  318. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/printer.py +0 -0
  319. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/priority_directory_finder/__init__.py +0 -0
  320. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/priority_directory_finder/examples.py +0 -0
  321. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/priority_directory_finder/finder.py +0 -0
  322. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/priority_directory_finder/models.py +0 -0
  323. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/priority_directory_finder/test_priority_directory_finder.py +0 -0
  324. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_scanner/__init__.py +0 -0
  325. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_scanner/compat.py +0 -0
  326. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_scanner/scanner.py +0 -0
  327. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_tracker/__init__.py +0 -0
  328. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_tracker/api.py +0 -0
  329. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_tracker/demo.py +0 -0
  330. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_tracker/tracker.py +0 -0
  331. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/project_tracker/types.py +0 -0
  332. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/__init__.py +0 -0
  333. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/agentic_conversation_pruner.py +0 -0
  334. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/context_pruner.py +0 -0
  335. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/conversation_message_ids_api.py +0 -0
  336. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/conversation_message_ids_manager.py +0 -0
  337. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/conversation_message_ids_pruner.py +0 -0
  338. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/conversation_normalizer.py +0 -0
  339. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/conversation_pruner.py +0 -0
  340. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/test_agentic_conversation_pruner.py +0 -0
  341. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/test_context_pruner.py +0 -0
  342. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/test_conversation_normalizer.py +0 -0
  343. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/test_tool_content_detector.py +0 -0
  344. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/tool_content_detector.py +0 -0
  345. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/tools/__init__.py +0 -0
  346. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/tools/query_message_ids.py +0 -0
  347. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/tools/test_agentic_pruning_logic.py +0 -0
  348. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pruner/tools/test_message_ids_pruning_only.py +0 -0
  349. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/__init__.py +0 -0
  350. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/base_provider.py +0 -0
  351. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/config.py +0 -0
  352. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/example.py +0 -0
  353. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/exceptions.py +0 -0
  354. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/manager.py +0 -0
  355. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/models.py +0 -0
  356. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/providers/__init__.py +0 -0
  357. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/providers/gitcode_provider.py +0 -0
  358. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/providers/gitee_provider.py +0 -0
  359. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/providers/github_provider.py +0 -0
  360. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/providers/gitlab_provider.py +0 -0
  361. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/pull_requests/utils.py +0 -0
  362. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rag_manager/__init__.py +0 -0
  363. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rag_manager/rag_manager.py +0 -0
  364. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/recall_validation.py +0 -0
  365. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/result_manager.py +0 -0
  366. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/__init__.py +0 -0
  367. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/api.py +0 -0
  368. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/core/__init__.py +0 -0
  369. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/core/manager.py +0 -0
  370. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/core/selector.py +0 -0
  371. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/models/__init__.py +0 -0
  372. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/models/index.py +0 -0
  373. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/models/init_rule.py +0 -0
  374. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/models/rule_file.py +0 -0
  375. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/models/rule_relevance.py +0 -0
  376. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/models/summary.py +0 -0
  377. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/test_rulefiles.py +0 -0
  378. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/test_subagents_filter.py +0 -0
  379. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/utils/__init__.py +0 -0
  380. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/utils/log_utils.py +0 -0
  381. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/utils/monitor.py +0 -0
  382. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/rulefiles/utils/parser.py +0 -0
  383. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/run_cmd.py +0 -0
  384. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/save_formatted_log.py +0 -0
  385. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/screenshots.py +0 -0
  386. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search.py +0 -0
  387. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace.py +0 -0
  388. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/__init__.py +0 -0
  389. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/base.py +0 -0
  390. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/manager.py +0 -0
  391. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/patch_replacer.py +0 -0
  392. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/similarity_replacer.py +0 -0
  393. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/string_replacer.py +0 -0
  394. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/__init__.py +0 -0
  395. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/run_tests.py +0 -0
  396. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_base.py +0 -0
  397. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_empty_line_insert.py +0 -0
  398. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_integration.py +0 -0
  399. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_manager.py +0 -0
  400. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_patch_replacer.py +0 -0
  401. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_regex_replacer.py +0 -0
  402. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/search_replace_patch/tests/test_similarity_replacer.py +0 -0
  403. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/__init__.py +0 -0
  404. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/background_process_notifier.py +0 -0
  405. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/error_recovery.py +0 -0
  406. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/exceptions.py +0 -0
  407. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/interactive_executor.py +0 -0
  408. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/interactive_pexpect_process.py +0 -0
  409. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/interactive_process.py +0 -0
  410. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/interactive_session_manager.py +0 -0
  411. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/monitoring.py +0 -0
  412. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/process_cleanup.py +0 -0
  413. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/test_interactive_pexpect_process.py +0 -0
  414. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/__init__.py +0 -0
  415. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/conftest.py +0 -0
  416. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_background_process_notifier.py +0 -0
  417. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_command_executor.py +0 -0
  418. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_error_recovery.py +0 -0
  419. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_exceptions.py +0 -0
  420. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_execute_batch.py +0 -0
  421. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_indented_batch_commands.py +0 -0
  422. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_integration.py +0 -0
  423. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_monitoring.py +0 -0
  424. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_performance.py +0 -0
  425. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_process_cleanup.py +0 -0
  426. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_process_manager.py +0 -0
  427. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_timeout_config.py +0 -0
  428. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/tests/test_timeout_manager.py +0 -0
  429. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/timeout_config.py +0 -0
  430. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/shell_commands/timeout_manager.py +0 -0
  431. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/skills/__init__.py +0 -0
  432. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/skills/manager.py +0 -0
  433. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/stats_panel.py +0 -0
  434. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/stream_out_type.py +0 -0
  435. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/sys_prompt.py +0 -0
  436. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/__init__.py +0 -0
  437. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/clipboard_image.py +0 -0
  438. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/demo.py +0 -0
  439. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/demo_paste_functionality.py +0 -0
  440. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/paste_handler.py +0 -0
  441. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/paste_manager.py +0 -0
  442. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/tests/__init__.py +0 -0
  443. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/tests/test_paste_handler.py +0 -0
  444. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/tests/test_paste_manager.py +0 -0
  445. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/terminal_paste/utils.py +0 -0
  446. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/test_autocoder_args.py +0 -0
  447. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/test_env_manager.py +0 -0
  448. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/test_env_manager_integration.py +0 -0
  449. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/test_run_cmd.py +0 -0
  450. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/text_similarity/__init__.py +0 -0
  451. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/text_similarity/demo.py +0 -0
  452. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/text_similarity/examples.py +0 -0
  453. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/text_similarity/test_text_similarity.py +0 -0
  454. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/text_similarity/text_similarity.py +0 -0
  455. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/text_similarity/utils.py +0 -0
  456. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/__init__.py +0 -0
  457. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/cache/__init__.py +0 -0
  458. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/cache/base_cache.py +0 -0
  459. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/cache/cache_manager.py +0 -0
  460. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/cache/memory_cache.py +0 -0
  461. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/config.py +0 -0
  462. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/exceptions.py +0 -0
  463. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/formatting.py +0 -0
  464. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/get_todo_manager.py +0 -0
  465. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/manager.py +0 -0
  466. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/models.py +0 -0
  467. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/storage/__init__.py +0 -0
  468. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/storage/base_storage.py +0 -0
  469. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/todos/storage/file_storage.py +0 -0
  470. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/token_cost_caculate.py +0 -0
  471. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tokens/__init__.py +0 -0
  472. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tokens/counter.py +0 -0
  473. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tokens/file_detector.py +0 -0
  474. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tokens/filters.py +0 -0
  475. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tokens/models.py +0 -0
  476. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tools_manager/__init__.py +0 -0
  477. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tools_manager/examples.py +0 -0
  478. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tools_manager/manager.py +0 -0
  479. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tools_manager/models.py +0 -0
  480. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tools_manager/test_tools_manager.py +0 -0
  481. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/tools_manager/utils.py +0 -0
  482. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/types.py +0 -0
  483. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/utils_code_auto_generate.py +0 -0
  484. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/__init__.py +0 -0
  485. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/__init__.py +0 -0
  486. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_callbacks.py +0 -0
  487. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_change_manager.py +0 -0
  488. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/__init__.py +0 -0
  489. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_list_tool_resolver.py +0 -0
  490. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_read_tool_resolver.py +0 -0
  491. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_write_tool_resolver.py +0 -0
  492. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/ask_followup_question_tool_resolver.py +0 -0
  493. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/attempt_completion_tool_resolver.py +0 -0
  494. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/base_tool_resolver.py +0 -0
  495. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/conversation_message_ids_read_tool_resolver.py +0 -0
  496. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/conversation_message_ids_write_tool_resolver.py +0 -0
  497. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/count_tokens_tool_resolver.py +0 -0
  498. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/dangerous_command_checker.py +0 -0
  499. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/execute_external_tool_resolver.py +0 -0
  500. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/execute_workflow_tool_resolver.py +0 -0
  501. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/__init__.py +0 -0
  502. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/ac_mod_files.py +0 -0
  503. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/interactive_session.py +0 -0
  504. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/plan_format.py +0 -0
  505. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/skill.py +0 -0
  506. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/web_research.py +0 -0
  507. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extra_docs/workflow_subagents.py +0 -0
  508. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/extract_text_to_file_tool_resolver.py +0 -0
  509. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/lint_report.py +0 -0
  510. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/linter_config_models.py +0 -0
  511. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/linter_enabled_tool_resolver.py +0 -0
  512. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/list_code_definition_names_tool_resolver.py +0 -0
  513. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/list_files_tool_resolver.py +0 -0
  514. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/load_extra_document_tool_resolver.py +0 -0
  515. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/manage_background_tasks_tool_resolver.py +0 -0
  516. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/plan_mode_respond_tool_resolver.py +0 -0
  517. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/read_file_tool_resolver.py +0 -0
  518. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/read_image_tool_resolver.py +0 -0
  519. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/repl_close_tool_resolver.py +0 -0
  520. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/repl_open_tool_resolver.py +0 -0
  521. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/repl_send_tool_resolver.py +0 -0
  522. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file/__init__.py +0 -0
  523. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file/apply.py +0 -0
  524. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file/failure_report.py +0 -0
  525. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file/parsing.py +0 -0
  526. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file/paths.py +0 -0
  527. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file_tool_resolver.py +0 -0
  528. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/run_named_subagents_tool_resolver.py +0 -0
  529. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/run_subagents_tool_resolver.py +0 -0
  530. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/search_files_tool_resolver.py +0 -0
  531. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/test_write_to_file_tool_resolver.py +0 -0
  532. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/todo_read_tool_resolver.py +0 -0
  533. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/todo_write_tool_resolver.py +0 -0
  534. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/use_rag_tool_resolver.py +0 -0
  535. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/web_crawl_tool_resolver.py +0 -0
  536. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/web_search_tool_resolver.py +0 -0
  537. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/agentic_edit_tools/write_to_file_tool_resolver.py +0 -0
  538. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/llm_stream_parser.py +0 -0
  539. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/runner/__init__.py +0 -0
  540. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/runner/base_runner.py +0 -0
  541. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/runner/sdk_runner.py +0 -0
  542. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/runner/terminal_runner.py +0 -0
  543. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/runner/tool_display.py +0 -0
  544. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/__init__.py +0 -0
  545. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/backends/__init__.py +0 -0
  546. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/backends/cli_process.py +0 -0
  547. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/backends/external_cli_drivers.py +0 -0
  548. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/backends/external_cli_process.py +0 -0
  549. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/backends/in_process.py +0 -0
  550. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/client.py +0 -0
  551. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/models.py +0 -0
  552. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/prompt_provider.py +0 -0
  553. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/tests/__init__.py +0 -0
  554. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/subagents/tests/test_subagent_client.py +0 -0
  555. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/test_agentic_callbacks.py +0 -0
  556. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/test_agentic_edit.py +0 -0
  557. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/test_agentic_edit_conversation_lifecycle.py +0 -0
  558. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/test_llm_stream_parser.py +0 -0
  559. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/__init__.py +0 -0
  560. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/default_tool_resolver_map.py +0 -0
  561. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/integration_test.py +0 -0
  562. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/__init__.py +0 -0
  563. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/base_plugin.py +0 -0
  564. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/examples/__init__.py +0 -0
  565. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/examples/command_policy_plugin.py +0 -0
  566. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/examples/logging_plugin.py +0 -0
  567. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/examples/security_filter_plugin.py +0 -0
  568. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/examples/workspace_delta_plugin.py +0 -0
  569. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/plugins/plugin_interface.py +0 -0
  570. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/test_hook_mechanism.py +0 -0
  571. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/test_tool_caller.py +0 -0
  572. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/tool_call_plugin_manager.py +0 -0
  573. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/tool_caller.py +0 -0
  574. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/agent/tool_caller/usage_example.py +0 -0
  575. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_agentic_editblock_manager.py +0 -0
  576. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_generate.py +0 -0
  577. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_generate_diff.py +0 -0
  578. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_generate_editblock.py +0 -0
  579. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_generate_strict_diff.py +0 -0
  580. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_merge.py +0 -0
  581. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_merge_diff.py +0 -0
  582. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_merge_editblock.py +0 -0
  583. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_auto_merge_strict_diff.py +0 -0
  584. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_diff_manager.py +0 -0
  585. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_editblock_events/__init__.py +0 -0
  586. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_editblock_events/manager.py +0 -0
  587. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_editblock_events/types.py +0 -0
  588. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_editblock_manager.py +0 -0
  589. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_manager.py +0 -0
  590. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/v2/code_strict_diff_manager.py +0 -0
  591. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/wrap_llm_hint/__init__.py +0 -0
  592. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/wrap_llm_hint/test_wrap_llm_hint.py +0 -0
  593. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/wrap_llm_hint/utils.py +0 -0
  594. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/common/wrap_llm_hint/wrap_llm_hint.py +0 -0
  595. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/__init__.py +0 -0
  596. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/base_compiler.py +0 -0
  597. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/compiler_config_api.py +0 -0
  598. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/compiler_config_manager.py +0 -0
  599. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/compiler_factory.py +0 -0
  600. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/java_compiler.py +0 -0
  601. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/models.py +0 -0
  602. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/normal_compiler.py +0 -0
  603. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/provided_compiler.py +0 -0
  604. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/python_compiler.py +0 -0
  605. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/reactjs_compiler.py +0 -0
  606. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/shadow_compiler.py +0 -0
  607. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/compilers/vue_compiler.py +0 -0
  608. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/completer/__init__.py +0 -0
  609. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/completer/command_completer_v2.py +0 -0
  610. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/completer/tests/__init__.py +0 -0
  611. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/completer/tests/test_task_completion.py +0 -0
  612. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/data/byzerllm.md +0 -0
  613. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/data/tokenizer.json +0 -0
  614. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/db/__init__.py +0 -0
  615. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/db/store.py +0 -0
  616. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/default_project/__init__.py +0 -0
  617. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/dispacher/__init__.py +0 -0
  618. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/dispacher/actions/__init__.py +0 -0
  619. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/dispacher/actions/action.py +0 -0
  620. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/dispacher/actions/copilot.py +0 -0
  621. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/dispacher/actions/plugins/__init__.py +0 -0
  622. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/dispacher/actions/plugins/action_regex_project.py +0 -0
  623. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/events/__init__.py +0 -0
  624. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/events/event_content.py +0 -0
  625. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/events/event_manager.py +0 -0
  626. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/events/event_manager_singleton.py +0 -0
  627. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/events/event_store.py +0 -0
  628. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/events/event_types.py +0 -0
  629. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/helper/__init__.py +0 -0
  630. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/helper/project_creator.py +0 -0
  631. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/helper/rag_doc_creator.py +0 -0
  632. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/__init__.py +0 -0
  633. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/entry.py +0 -0
  634. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/filter/__init__.py +0 -0
  635. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/filter/agentic_filter.py +0 -0
  636. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/filter/normal_filter.py +0 -0
  637. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/filter/quick_filter.py +0 -0
  638. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/for_command.py +0 -0
  639. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/index.py +0 -0
  640. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/symbols_utils.py +0 -0
  641. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/tests/__init__.py +0 -0
  642. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/tests/run_tests.py +0 -0
  643. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/tests/test_entry.py +0 -0
  644. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/tests/test_index_manager.py +0 -0
  645. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/tests/test_module_integration.py +0 -0
  646. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/tests/test_symbols_utils.py +0 -0
  647. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/index/types.py +0 -0
  648. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/inner/__init__.py +0 -0
  649. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/inner/agentic.py +0 -0
  650. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/inner/async_command_handler.py +0 -0
  651. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/inner/conversation_command_handlers.py +0 -0
  652. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/inner/merge_command_handler.py +0 -0
  653. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/inner/queue_command_handler.py +0 -0
  654. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/lang.py +0 -0
  655. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/__init__.py +0 -0
  656. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/base_linter.py +0 -0
  657. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/linter_factory.py +0 -0
  658. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/models.py +0 -0
  659. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/normal_linter.py +0 -0
  660. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/python_linter.py +0 -0
  661. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/reactjs_linter.py +0 -0
  662. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/shadow_linter.py +0 -0
  663. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/test_python_linter.py +0 -0
  664. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/test_reactjs_linter.py +0 -0
  665. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/test_vue_linter.py +0 -0
  666. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/linters/vue_linter.py +0 -0
  667. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/__init__.py +0 -0
  668. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/agent_executor.py +0 -0
  669. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/context_provider.py +0 -0
  670. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/manager.py +0 -0
  671. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/registry.py +0 -0
  672. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/scheduler.py +0 -0
  673. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/sources/__init__.py +0 -0
  674. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/sources/ac_modules.py +0 -0
  675. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/sources/history.py +0 -0
  676. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/store.py +0 -0
  677. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/tasks/__init__.py +0 -0
  678. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/tasks/base.py +0 -0
  679. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/tasks/history_memory_mining.py +0 -0
  680. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/tasks/module_context_refresh.py +0 -0
  681. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/tests/__init__.py +0 -0
  682. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/memory/tests/test_memory.py +0 -0
  683. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/models.py +0 -0
  684. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/plugins/git_helper_plugin.py +0 -0
  685. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/plugins/token_helper_plugin.py +0 -0
  686. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/plugins/utils.py +0 -0
  687. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/privacy/__init__.py +0 -0
  688. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/privacy/model_filter.py +0 -0
  689. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/pyproject/__init__.py +0 -0
  690. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/__init__.py +0 -0
  691. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/agentic_rag.py +0 -0
  692. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/api_server.py +0 -0
  693. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/__init__.py +0 -0
  694. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/base_cache.py +0 -0
  695. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/byzer_storage_cache.py +0 -0
  696. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/cache_result_merge.py +0 -0
  697. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/failed_files_utils.py +0 -0
  698. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/file_monitor_cache.py +0 -0
  699. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/local_byzer_storage_cache.py +0 -0
  700. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/local_duckdb_storage_cache.py +0 -0
  701. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/rag_file_meta.py +0 -0
  702. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/cache/simple_cache.py +0 -0
  703. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/conversation_to_queries.py +0 -0
  704. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/doc_filter.py +0 -0
  705. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/document_retriever.py +0 -0
  706. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/lang.py +0 -0
  707. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/llm_wrapper.py +0 -0
  708. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/__init__.py +0 -0
  709. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/docx_loader.py +0 -0
  710. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/excel_loader.py +0 -0
  711. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/filter_utils.py +0 -0
  712. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/image_loader.py +0 -0
  713. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/pdf_loader.py +0 -0
  714. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/loaders/ppt_loader.py +0 -0
  715. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/long_context_rag.py +0 -0
  716. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/qa_conversation_strategy.py +0 -0
  717. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/rag_config.py +0 -0
  718. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/rag_entry.py +0 -0
  719. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/relevant_utils.py +0 -0
  720. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/sdk/__init__.py +0 -0
  721. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/sdk/client.py +0 -0
  722. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/sdk/models.py +0 -0
  723. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/sdk/utils.py +0 -0
  724. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/searchable.py +0 -0
  725. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/stream_event/__init__.py +0 -0
  726. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/stream_event/event_writer.py +0 -0
  727. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/stream_event/types.py +0 -0
  728. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/__init__.py +0 -0
  729. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/args.py +0 -0
  730. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/bootstrap.py +0 -0
  731. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/command_handlers.py +0 -0
  732. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/formatters/__init__.py +0 -0
  733. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/formatters/base.py +0 -0
  734. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/formatters/json_format.py +0 -0
  735. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/formatters/stream_json.py +0 -0
  736. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/formatters/text.py +0 -0
  737. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/init.py +0 -0
  738. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/terminal/utils.py +0 -0
  739. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/test_agentic_rag.py +0 -0
  740. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/test_doc_filter.py +0 -0
  741. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/test_long_context_rag.py +0 -0
  742. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/test_token_limiter.py +0 -0
  743. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/token_checker.py +0 -0
  744. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/token_counter.py +0 -0
  745. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/token_limiter.py +0 -0
  746. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/token_limiter_utils.py +0 -0
  747. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/__init__.py +0 -0
  748. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/bochaai_example.py +0 -0
  749. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/bochaai_sdk.py +0 -0
  750. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/metaso_example.py +0 -0
  751. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/metaso_sdk.py +0 -0
  752. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/recall_tool.py +0 -0
  753. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/run_integration_tests.py +0 -0
  754. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/search_tool.py +0 -0
  755. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_all_providers.py +0 -0
  756. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_bochaai_integration.py +0 -0
  757. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_final_integration.py +0 -0
  758. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_metaso_integration.py +0 -0
  759. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_metaso_real.py +0 -0
  760. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_web_crawl_tool.py +0 -0
  761. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/test_web_search_tool.py +0 -0
  762. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/todo_read_tool.py +0 -0
  763. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/todo_write_tool.py +0 -0
  764. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/web_crawl_tool.py +0 -0
  765. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/web_search_tool.py +0 -0
  766. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/tools/web_tools_example.py +0 -0
  767. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/types.py +0 -0
  768. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/utils.py +0 -0
  769. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/variable_holder.py +0 -0
  770. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rag/wildcard_sync.py +0 -0
  771. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/rags.py +0 -0
  772. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/regexproject/__init__.py +0 -0
  773. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/run_context.py +0 -0
  774. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/__init__.py +0 -0
  775. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/api.py +0 -0
  776. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/__init__.py +0 -0
  777. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/async_executor.py +0 -0
  778. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/async_handler.py +0 -0
  779. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/async_service.py +0 -0
  780. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/markdown_processor.py +0 -0
  781. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/task_completion_provider.py +0 -0
  782. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/tests/__init__.py +0 -0
  783. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/tests/test_async_service.py +0 -0
  784. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/async_runner/worktree_manager.py +0 -0
  785. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/cli/__init__.py +0 -0
  786. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/cli/formatters.py +0 -0
  787. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/cli/handlers.py +0 -0
  788. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/cli/main.py +0 -0
  789. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/cli/options.py +0 -0
  790. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/constants.py +0 -0
  791. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/core/__init__.py +0 -0
  792. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/core/auto_coder_core.py +0 -0
  793. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/core/bridge.py +0 -0
  794. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/exceptions.py +0 -0
  795. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/formatters/__init__.py +0 -0
  796. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/formatters/input.py +0 -0
  797. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/formatters/output.py +0 -0
  798. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/formatters/stream.py +0 -0
  799. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/models/__init__.py +0 -0
  800. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/models/options.py +0 -0
  801. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/models/responses.py +0 -0
  802. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/utils/__init__.py +0 -0
  803. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/utils/formatters.py +0 -0
  804. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/utils/io_utils.py +0 -0
  805. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/sdk/utils/validators.py +0 -0
  806. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/shadows/__init__.py +0 -0
  807. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/shadows/shadow_manager.py +0 -0
  808. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/suffixproject/__init__.py +0 -0
  809. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/__init__.py +0 -0
  810. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/app.py +0 -0
  811. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/command_registry.py +0 -0
  812. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/help.py +0 -0
  813. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/tasks/__init__.py +0 -0
  814. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/tasks/task_event.py +0 -0
  815. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/ui/__init__.py +0 -0
  816. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/ui/completer.py +0 -0
  817. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/ui/keybindings.py +0 -0
  818. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/ui/session.py +0 -0
  819. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/utils/__init__.py +0 -0
  820. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/utils/errors.py +0 -0
  821. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/utils/paths.py +0 -0
  822. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal/utils/shell.py +0 -0
  823. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/command_registry.py +0 -0
  824. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/execution_broker.py +0 -0
  825. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/forward_input.py +0 -0
  826. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/lifecycle.py +0 -0
  827. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/output.py +0 -0
  828. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_core/task_runtime.py +0 -0
  829. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/__init__.py +0 -0
  830. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/handlers/__init__.py +0 -0
  831. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/models/__init__.py +0 -0
  832. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/models/tool_display.py +0 -0
  833. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/ui/__init__.py +0 -0
  834. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/ui/keybindings.py +0 -0
  835. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/ui/layout.py +0 -0
  836. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/terminal_v3/ui/styles.py +0 -0
  837. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/tsproject/__init__.py +0 -0
  838. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/__init__.py +0 -0
  839. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/_markitdown.py +0 -0
  840. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/auto_coder_utils/__init__.py +0 -0
  841. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/auto_coder_utils/chat_stream_out.py +0 -0
  842. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/auto_project_type.py +0 -0
  843. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/chat_auto_coder_utils/__init__.py +0 -0
  844. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/conversation_store.py +0 -0
  845. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/llm_client_interceptors.py +0 -0
  846. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/llms.py +0 -0
  847. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/log_capture.py +0 -0
  848. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/math_utils.py +0 -0
  849. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/model_provider_selector.py +0 -0
  850. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/multi_turn.py +0 -0
  851. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/operate_config_api.py +0 -0
  852. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/print_table.py +0 -0
  853. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/project_structure.py +0 -0
  854. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/queue_communicate.py +0 -0
  855. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/request_event_queue.py +0 -0
  856. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/request_queue.py +0 -0
  857. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/rest.py +0 -0
  858. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/stream_thinking.py +0 -0
  859. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/thread_utils.py +0 -0
  860. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/utils/types.py +0 -0
  861. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/__init__.py +0 -0
  862. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/agent.py +0 -0
  863. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/exceptions.py +0 -0
  864. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/executor.py +0 -0
  865. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/loader.py +0 -0
  866. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/runner.py +0 -0
  867. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/tests/__init__.py +0 -0
  868. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/tests/test_loader.py +0 -0
  869. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/tests/test_types.py +0 -0
  870. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/tests/test_utils.py +0 -0
  871. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/types.py +0 -0
  872. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/utils.py +0 -0
  873. {auto_coder-3.0.42 → auto_coder-3.0.44}/src/autocoder/workflow_agents/workflow_manager.py +0 -0
  874. {auto_coder-3.0.42 → auto_coder-3.0.44}/tests/test_args_parser.py +0 -0
  875. {auto_coder-3.0.42 → auto_coder-3.0.44}/tests/test_command_consistency.py +0 -0
  876. {auto_coder-3.0.42 → auto_coder-3.0.44}/tests/test_conf_completions.py +0 -0
  877. {auto_coder-3.0.42 → auto_coder-3.0.44}/tests/test_conf_global_shorthand.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: auto-coder
3
- Version: 3.0.42
3
+ Version: 3.0.44
4
4
  Summary: AutoCoder: AutoCoder
5
5
  Author: allwefantasy
6
6
  Author-email: allwefantasy <allwefantasy@gmail.com>
@@ -5,7 +5,7 @@ build-backend = "hatchling.build"
5
5
 
6
6
  [project]
7
7
  name = "auto-coder"
8
- version = "3.0.42"
8
+ version = "3.0.44"
9
9
  description = "AutoCoder: AutoCoder"
10
10
  authors = [
11
11
  {name = "allwefantasy", email = "allwefantasy@gmail.com"}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: auto-coder
3
- Version: 3.0.42
3
+ Version: 3.0.44
4
4
  Summary: AutoCoder: AutoCoder
5
5
  Author: allwefantasy
6
6
  Author-email: allwefantasy <allwefantasy@gmail.com>
@@ -807,6 +807,7 @@ src/autocoder/terminal/utils/shell.py
807
807
  src/autocoder/terminal_core/__init__.py
808
808
  src/autocoder/terminal_core/cloud_bridge.py
809
809
  src/autocoder/terminal_core/cloud_command_dispatcher.py
810
+ src/autocoder/terminal_core/cloud_config.py
810
811
  src/autocoder/terminal_core/command_registry.py
811
812
  src/autocoder/terminal_core/execution_broker.py
812
813
  src/autocoder/terminal_core/forward_input.py
@@ -814,12 +815,14 @@ src/autocoder/terminal_core/lifecycle.py
814
815
  src/autocoder/terminal_core/output.py
815
816
  src/autocoder/terminal_core/status.py
816
817
  src/autocoder/terminal_core/task_runtime.py
818
+ src/autocoder/terminal_core/tunnel_worker.py
817
819
  src/autocoder/terminal_v3/__init__.py
818
820
  src/autocoder/terminal_v3/app.py
819
821
  src/autocoder/terminal_v3/handlers/__init__.py
820
822
  src/autocoder/terminal_v3/handlers/command_handler.py
821
823
  src/autocoder/terminal_v3/models/__init__.py
822
824
  src/autocoder/terminal_v3/models/conversation_buffer.py
825
+ src/autocoder/terminal_v3/models/markdown_render.py
823
826
  src/autocoder/terminal_v3/models/message.py
824
827
  src/autocoder/terminal_v3/models/tool_display.py
825
828
  src/autocoder/terminal_v3/ui/__init__.py
@@ -866,4 +869,5 @@ src/autocoder/workflow_agents/tests/test_utils.py
866
869
  tests/test_args_parser.py
867
870
  tests/test_command_consistency.py
868
871
  tests/test_conf_completions.py
869
- tests/test_conf_global_shorthand.py
872
+ tests/test_conf_global_shorthand.py
873
+ tests/test_plugin_manager.py
@@ -50,6 +50,7 @@ V3_COMMANDS = [
50
50
  "/new",
51
51
  "/rules",
52
52
  "/status",
53
+ "/tunnel",
53
54
  "/workflow",
54
55
  ]
55
56
  from autocoder.common.core_config import (
@@ -92,64 +93,51 @@ def parse_arguments():
92
93
  parser.add_argument("--lite", action="store_true", help="Lite mode")
93
94
  parser.add_argument("--pro", action="store_true", help="Pro mode")
94
95
 
96
+ from autocoder.terminal_core.cloud_config import (
97
+ DEFAULT_BASE_URL,
98
+ ENV_API_KEY,
99
+ ENV_BASE_URL,
100
+ ENV_INSTANCE_NAME,
101
+ load_cloud_config,
102
+ save_cloud_config,
103
+ )
104
+
95
105
  cloud = parser.add_argument_group("cloud", "Cloud integration options")
96
106
  cloud.add_argument(
97
107
  "--cloud-api-key",
98
108
  type=str,
99
109
  default=None,
100
- help="API key for cloud registration (env: AUTO_CODER_CLOUD_API_KEY)",
110
+ help=f"API key for cloud registration (env: {ENV_API_KEY})",
101
111
  )
102
112
  cloud.add_argument(
103
113
  "--cloud-base-url",
104
114
  type=str,
105
- default="https://auto-coder.chat",
106
- help="Base URL of the auto-coder.chat server (env: AUTO_CODER_CLOUD_BASE_URL)",
115
+ default=DEFAULT_BASE_URL,
116
+ help=f"Base URL of the auto-coder.chat server (env: {ENV_BASE_URL})",
107
117
  )
108
118
  cloud.add_argument(
109
119
  "--instance-name",
110
120
  type=str,
111
121
  default=None,
112
- help="Display name for this instance (env: AUTO_CODER_INSTANCE_NAME, default: current directory name)",
122
+ help=(
123
+ f"Display name for this instance (env: {ENV_INSTANCE_NAME}, "
124
+ "default: current directory name)"
125
+ ),
113
126
  )
114
127
 
115
128
  args = parser.parse_args()
116
129
 
117
- import json
118
- import os
119
-
120
- cloud_config_path = Path.home() / ".auto-coder" / "cloud" / "config.json"
121
- saved_cloud: dict = {}
122
- if cloud_config_path.exists():
123
- try:
124
- saved_cloud = json.loads(cloud_config_path.read_text(encoding="utf-8"))
125
- except Exception:
126
- pass
127
-
128
- if not args.cloud_api_key:
129
- args.cloud_api_key = os.environ.get("AUTO_CODER_CLOUD_API_KEY") or saved_cloud.get("api_key")
130
- if args.cloud_base_url == "https://auto-coder.chat":
131
- args.cloud_base_url = (
132
- os.environ.get("AUTO_CODER_CLOUD_BASE_URL")
133
- or saved_cloud.get("base_url")
134
- or "https://auto-coder.chat"
135
- )
136
- if not args.instance_name:
137
- args.instance_name = (
138
- os.environ.get("AUTO_CODER_INSTANCE_NAME")
139
- or Path.cwd().name
140
- )
130
+ cloud_cfg = load_cloud_config(
131
+ cli_api_key=args.cloud_api_key,
132
+ cli_base_url=args.cloud_base_url,
133
+ cli_instance_name=args.instance_name,
134
+ )
135
+ args.cloud_api_key = cloud_cfg.api_key or None
136
+ args.cloud_base_url = cloud_cfg.base_url
137
+ args.instance_name = cloud_cfg.instance_name
138
+ args.cloud_connection = cloud_cfg
141
139
 
142
- if args.cloud_api_key:
143
- new_cloud = {
144
- "api_key": args.cloud_api_key,
145
- "base_url": args.cloud_base_url,
146
- }
147
- if new_cloud != saved_cloud:
148
- cloud_config_path.parent.mkdir(parents=True, exist_ok=True)
149
- cloud_config_path.write_text(
150
- json.dumps(new_cloud, indent=2, ensure_ascii=False),
151
- encoding="utf-8",
152
- )
140
+ save_cloud_config(cloud_cfg)
153
141
 
154
142
  return args
155
143
 
@@ -227,12 +215,16 @@ async def async_main():
227
215
  buf = io.StringIO()
228
216
  with redirect_stdout(buf), redirect_stderr(buf):
229
217
  plugin_manager.load_global_plugin_dirs()
230
- plugins_dir = Path(__file__).parent.parent / "plugins"
231
- plugin_manager.add_plugin_directory(str(plugins_dir))
218
+ plugins_dir = Path(__file__).resolve().parent / "plugins"
219
+ _, add_plugins_dir_message = plugin_manager.add_plugin_directory(
220
+ str(plugins_dir)
221
+ )
232
222
  plugin_manager.load_runtime_cfg()
233
223
  load_builtin_plugins(plugin_manager)
234
224
 
235
225
  raw_logs = buf.getvalue().strip()
226
+ if add_plugins_dir_message.startswith("Invalid directory:"):
227
+ startup_logs.append(add_plugins_dir_message)
236
228
  if raw_logs:
237
229
  for line in raw_logs.splitlines():
238
230
  cleaned = line.strip()
@@ -272,16 +264,13 @@ async def async_main():
272
264
  )
273
265
 
274
266
  cloud_bridge = None
275
- if args.cloud_api_key and args.cloud_base_url:
267
+ if args.cloud_connection.is_complete:
276
268
  from autocoder.terminal_core.cloud_bridge import CloudBridge, CloudConfig
277
269
  from autocoder.terminal_core.execution_broker import ExecutionBroker
278
270
 
279
271
  broker = ExecutionBroker(configure_func=configure)
280
- cloud_config = CloudConfig(
281
- api_key=args.cloud_api_key,
282
- base_url=args.cloud_base_url,
283
- instance_name=args.instance_name,
284
- project_path=str(Path.cwd()),
272
+ cloud_config = CloudConfig.from_connection(
273
+ args.cloud_connection, project_path=str(Path.cwd())
285
274
  )
286
275
  cloud_bridge = CloudBridge(config=cloud_config, broker=broker)
287
276
  ok = await cloud_bridge.start()
@@ -293,6 +293,8 @@ class AutoCoderArgs(pydantic.BaseModel):
293
293
 
294
294
  enable_forward_input_to_running_conversation: bool = False
295
295
 
296
+ enable_rich_render: bool = True
297
+
296
298
  paste_image_mode: str = "direct"
297
299
 
298
300
  agentic_max_rounds: int = 10000
@@ -144,6 +144,11 @@ class ConfigValidator:
144
144
  "allowed": ["direct", "tool"],
145
145
  "default": "direct",
146
146
  "description": "粘贴图片模式(direct: <_image_>标签直接识别 / tool: @路径工具读取)"
147
+ },
148
+ "enable_rich_render": {
149
+ "type": bool,
150
+ "default": True,
151
+ "description": "V3 终端是否用 rich 美化输出(Markdown 结果 / shell 命令头等),关闭则回退纯文本"
147
152
  }
148
153
  }
149
154
 
@@ -5,6 +5,7 @@ from typing import Optional
5
5
  from autocoder.common.international import get_message
6
6
  from autocoder.common.ac_style_command_parser import create_config, parse_typed_query
7
7
  from autocoder.common.printer import Printer
8
+ from autocoder.common.core_config import get_memory_manager
8
9
  from autocoder.auto_coder_runner import (
9
10
  get_current_memory,
10
11
  get_current_files,
@@ -65,7 +66,27 @@ class CommitHandler:
65
66
  """处理提交逻辑"""
66
67
  memory = get_current_memory()
67
68
  conf = memory.get("conf", {})
68
- product_mode = conf.get("product_mode", "lite")
69
+
70
+ memory_manager = get_memory_manager()
71
+ merged_conf = memory_manager.get_all_config(source="merged")
72
+ product_mode = merged_conf.get("product_mode", "lite")
73
+
74
+ target_model = (
75
+ merged_conf.get("commit_model") or merged_conf.get("model")
76
+ )
77
+ if not target_model or not str(target_model).strip():
78
+ self.printer.print_in_terminal(
79
+ "commit_failed",
80
+ style="red",
81
+ model_name="(not configured)",
82
+ error=(
83
+ "未配置 commit 所用的模型。请先设置 `commit_model` 或 `model`,"
84
+ "例如:`/conf /global commit_model:<已注册的模型名>`,"
85
+ "或 `/conf commit_model:<已注册的模型名>`。"
86
+ ),
87
+ )
88
+ return None
89
+ target_model = str(target_model).strip()
69
90
 
70
91
  def prepare_commit_yaml():
71
92
  auto_coder_main(["next", "chat_action"])
@@ -99,7 +120,6 @@ class CommitHandler:
99
120
  if os.path.exists(temp_yaml):
100
121
  os.remove(temp_yaml)
101
122
 
102
- target_model = args.commit_model or args.model
103
123
  llm = get_single_llm(target_model, product_mode)
104
124
  self.printer.print_in_terminal(
105
125
  "commit_generating", style="yellow", model_name=target_model
@@ -82,6 +82,7 @@ class CommandExecutor:
82
82
  text: bool = True,
83
83
  encoding: str = 'utf-8',
84
84
  shell: Optional[bool] = None,
85
+ prefer_shell: Optional[str] = None,
85
86
  **kwargs
86
87
  ) -> Tuple[int, str]:
87
88
  """
@@ -96,6 +97,10 @@ class CommandExecutor:
96
97
  text: Whether to use text mode
97
98
  encoding: Text encoding
98
99
  shell: Whether to use shell
100
+ prefer_shell: Optional explicit Windows shell hint
101
+ (``"powershell"`` / ``"pwsh"`` / ``"cmd"`` / ``"auto"``).
102
+ Ignored on non-Windows. When provided, overrides the
103
+ parent-process based shell auto-detection.
99
104
  **kwargs: Additional arguments for subprocess.Popen
100
105
 
101
106
  Returns:
@@ -122,7 +127,8 @@ class CommandExecutor:
122
127
  try:
123
128
  # Execute command with subprocess
124
129
  exit_code, output = self._execute_with_subprocess(
125
- command, timeout, cwd, env, capture_output, text, encoding, shell, **kwargs
130
+ command, timeout, cwd, env, capture_output, text, encoding, shell,
131
+ prefer_shell=prefer_shell, **kwargs
126
132
  )
127
133
 
128
134
  # Log completion
@@ -152,6 +158,7 @@ class CommandExecutor:
152
158
  text: bool,
153
159
  encoding: str,
154
160
  shell: bool,
161
+ prefer_shell: Optional[str] = None,
155
162
  **kwargs
156
163
  ) -> Tuple[int, str]:
157
164
  """
@@ -181,6 +188,7 @@ class CommandExecutor:
181
188
  capture_output=capture_output,
182
189
  text=text,
183
190
  encoding=encoding,
191
+ prefer_shell=prefer_shell,
184
192
  **kwargs
185
193
  )
186
194
 
@@ -257,6 +265,7 @@ class CommandExecutor:
257
265
  cwd: Optional[str] = None,
258
266
  env: Optional[Dict[str, str]] = None,
259
267
  encoding: str = 'utf-8',
268
+ prefer_shell: Optional[str] = None,
260
269
  **kwargs
261
270
  ) -> Generator[str, None, int]:
262
271
  """
@@ -268,6 +277,9 @@ class CommandExecutor:
268
277
  cwd: Working directory
269
278
  env: Environment variables
270
279
  encoding: Text encoding
280
+ prefer_shell: Optional explicit Windows shell hint
281
+ (``"powershell"`` / ``"pwsh"`` / ``"cmd"`` / ``"auto"``).
282
+ Ignored on non-Windows.
271
283
  **kwargs: Additional subprocess arguments
272
284
 
273
285
  Yields:
@@ -301,6 +313,7 @@ class CommandExecutor:
301
313
  capture_output=True,
302
314
  text=True,
303
315
  encoding=encoding,
316
+ prefer_shell=prefer_shell,
304
317
  **kwargs
305
318
  )
306
319
 
@@ -514,6 +527,7 @@ class CommandExecutor:
514
527
  text: bool = True,
515
528
  encoding: str = 'utf-8',
516
529
  shell: Optional[bool] = None,
530
+ prefer_shell: Optional[str] = None,
517
531
  **kwargs
518
532
  ) -> List[Dict[str, Any]]:
519
533
  """
@@ -575,12 +589,14 @@ class CommandExecutor:
575
589
  if parallel:
576
590
  results = self._execute_batch_parallel(
577
591
  commands, timeout, per_command_timeout, cwd, env,
578
- capture_output, text, encoding, shell, **kwargs
592
+ capture_output, text, encoding, shell,
593
+ prefer_shell=prefer_shell, **kwargs
579
594
  )
580
595
  else:
581
596
  results = self._execute_batch_serial(
582
597
  commands, timeout, per_command_timeout, cwd, env,
583
- capture_output, text, encoding, shell, **kwargs
598
+ capture_output, text, encoding, shell,
599
+ prefer_shell=prefer_shell, **kwargs
584
600
  )
585
601
 
586
602
  # Log batch completion
@@ -646,6 +662,7 @@ class CommandExecutor:
646
662
  text: bool,
647
663
  encoding: str,
648
664
  shell: bool,
665
+ prefer_shell: Optional[str] = None,
649
666
  **kwargs
650
667
  ) -> List[Dict[str, Any]]:
651
668
  """Execute commands serially."""
@@ -686,7 +703,7 @@ class CommandExecutor:
686
703
  exit_code, output = self.execute(
687
704
  command, timeout=cmd_timeout, cwd=cwd, env=env,
688
705
  capture_output=capture_output, text=text, encoding=encoding,
689
- shell=shell, **kwargs
706
+ shell=shell, prefer_shell=prefer_shell, **kwargs
690
707
  )
691
708
  end_time = time.time()
692
709
 
@@ -741,6 +758,7 @@ class CommandExecutor:
741
758
  text: bool,
742
759
  encoding: str,
743
760
  shell: bool,
761
+ prefer_shell: Optional[str] = None,
744
762
  **kwargs
745
763
  ) -> List[Dict[str, Any]]:
746
764
  """Execute commands in parallel."""
@@ -757,7 +775,7 @@ class CommandExecutor:
757
775
  exit_code, output = self.execute(
758
776
  cmd, timeout=per_command_timeout, cwd=cwd, env=env,
759
777
  capture_output=capture_output, text=text, encoding=encoding,
760
- shell=shell, **kwargs
778
+ shell=shell, prefer_shell=prefer_shell, **kwargs
761
779
  )
762
780
  end_time = time.time()
763
781
 
@@ -874,6 +892,7 @@ def execute_command(
874
892
  timeout: Optional[float] = None,
875
893
  cwd: Optional[str] = None,
876
894
  verbose: bool = False,
895
+ prefer_shell: Optional[str] = None,
877
896
  **kwargs
878
897
  ) -> Tuple[int, str]:
879
898
  """
@@ -884,6 +903,8 @@ def execute_command(
884
903
  timeout: Timeout in seconds
885
904
  cwd: Working directory
886
905
  verbose: Whether to enable verbose logging
906
+ prefer_shell: Optional explicit Windows shell hint (``"powershell"`` /
907
+ ``"pwsh"`` / ``"cmd"`` / ``"auto"``). Ignored on non-Windows.
887
908
  **kwargs: Additional arguments
888
909
 
889
910
  Returns:
@@ -896,7 +917,9 @@ def execute_command(
896
917
 
897
918
  executor = CommandExecutor(config=config, verbose=verbose)
898
919
  try:
899
- return executor.execute(command, timeout, cwd, **kwargs)
920
+ return executor.execute(
921
+ command, timeout, cwd, prefer_shell=prefer_shell, **kwargs
922
+ )
900
923
  finally:
901
924
  executor.cleanup()
902
925
 
@@ -906,6 +929,7 @@ def execute_command_generator(
906
929
  timeout: Optional[float] = None,
907
930
  cwd: Optional[str] = None,
908
931
  verbose: bool = False,
932
+ prefer_shell: Optional[str] = None,
909
933
  **kwargs
910
934
  ) -> Generator[str, None, int]:
911
935
  """
@@ -916,6 +940,8 @@ def execute_command_generator(
916
940
  timeout: Timeout in seconds
917
941
  cwd: Working directory
918
942
  verbose: Whether to enable verbose logging
943
+ prefer_shell: Optional explicit Windows shell hint (``"powershell"`` /
944
+ ``"pwsh"`` / ``"cmd"`` / ``"auto"``). Ignored on non-Windows.
919
945
  **kwargs: Additional arguments
920
946
 
921
947
  Yields:
@@ -925,13 +951,16 @@ def execute_command_generator(
925
951
  Final exit code
926
952
  """
927
953
  executor = CommandExecutor(verbose=verbose)
928
- return executor.execute_generator(command, timeout, cwd, **kwargs)
954
+ return executor.execute_generator(
955
+ command, timeout, cwd, prefer_shell=prefer_shell, **kwargs
956
+ )
929
957
 
930
958
 
931
959
  def execute_command_background(
932
960
  command: Union[str, List[str]],
933
961
  cwd: Optional[str] = None,
934
962
  verbose: bool = False,
963
+ prefer_shell: Optional[str] = None,
935
964
  **kwargs
936
965
  ) -> Dict[str, Any]:
937
966
  """
@@ -941,6 +970,8 @@ def execute_command_background(
941
970
  command: Command to execute
942
971
  cwd: Working directory
943
972
  verbose: Whether to enable verbose logging
973
+ prefer_shell: Optional explicit Windows shell hint (``"powershell"`` /
974
+ ``"pwsh"`` / ``"cmd"`` / ``"auto"``). Ignored on non-Windows.
944
975
  **kwargs: Additional arguments
945
976
 
946
977
  Returns:
@@ -963,6 +994,7 @@ def execute_command_background(
963
994
  command=command,
964
995
  cwd=cwd,
965
996
  process_uniq_id=process_uniq_id,
997
+ prefer_shell=prefer_shell,
966
998
  **kwargs
967
999
  )
968
1000
 
@@ -1051,6 +1083,7 @@ def execute_commands(
1051
1083
  cwd: Optional[str] = None,
1052
1084
  env: Optional[Dict[str, str]] = None,
1053
1085
  verbose: bool = False,
1086
+ prefer_shell: Optional[str] = None,
1054
1087
  **kwargs
1055
1088
  ) -> List[Dict[str, Any]]:
1056
1089
  """
@@ -1067,6 +1100,8 @@ def execute_commands(
1067
1100
  cwd: Working directory
1068
1101
  env: Environment variables
1069
1102
  verbose: Whether to enable verbose logging
1103
+ prefer_shell: Optional explicit Windows shell hint (``"powershell"`` /
1104
+ ``"pwsh"`` / ``"cmd"`` / ``"auto"``). Ignored on non-Windows.
1070
1105
  **kwargs: Additional arguments for subprocess.Popen
1071
1106
 
1072
1107
  Returns:
@@ -1119,6 +1154,7 @@ def execute_commands(
1119
1154
  parallel=parallel,
1120
1155
  cwd=cwd,
1121
1156
  env=env,
1157
+ prefer_shell=prefer_shell,
1122
1158
  **kwargs
1123
1159
  )
1124
1160
  return results
@@ -75,6 +75,7 @@ class ProcessManager:
75
75
  capture_output: bool = True,
76
76
  text: bool = True,
77
77
  encoding: str = "utf-8",
78
+ prefer_shell: Optional[str] = None,
78
79
  **kwargs,
79
80
  ) -> subprocess.Popen:
80
81
  """
@@ -89,6 +90,10 @@ class ProcessManager:
89
90
  capture_output: Whether to capture stdout/stderr
90
91
  text: Whether to use text mode
91
92
  encoding: Text encoding
93
+ prefer_shell: Optional explicit Windows shell hint passed through to
94
+ ``prepare_windows_command``. Accepts ``"powershell"`` /
95
+ ``"pwsh"`` / ``"cmd"`` / ``"auto"`` (or ``None`` for auto).
96
+ Ignored on non-Windows platforms.
92
97
  **kwargs: Additional arguments for subprocess.Popen
93
98
 
94
99
  Returns:
@@ -103,7 +108,9 @@ class ProcessManager:
103
108
 
104
109
  # On Windows, wrap the command to use the correct shell and encoding
105
110
  if platform.system() == "Windows":
106
- command, shell, encoding = prepare_windows_command(command, encoding)
111
+ command, shell, encoding = prepare_windows_command(
112
+ command, encoding, prefer_shell=prefer_shell
113
+ )
107
114
 
108
115
  # Prepare process arguments
109
116
  popen_args = {
@@ -347,6 +354,7 @@ class ProcessManager:
347
354
  env: Optional[Dict[str, str]] = None,
348
355
  shell: bool = True,
349
356
  process_uniq_id: Optional[str] = None,
357
+ prefer_shell: Optional[str] = None,
350
358
  **kwargs,
351
359
  ) -> subprocess.Popen:
352
360
  """
@@ -357,6 +365,10 @@ class ProcessManager:
357
365
  cwd: Working directory
358
366
  env: Environment variables
359
367
  shell: Whether to use shell
368
+ prefer_shell: Optional explicit Windows shell hint passed through to
369
+ ``prepare_windows_command``. Accepts ``"powershell"`` /
370
+ ``"pwsh"`` / ``"cmd"`` / ``"auto"`` (or ``None`` for auto).
371
+ Ignored on non-Windows platforms.
360
372
  **kwargs: Additional arguments for subprocess.Popen
361
373
 
362
374
  Returns:
@@ -367,7 +379,7 @@ class ProcessManager:
367
379
  bg_encoding = "utf-8"
368
380
  if platform.system() == "Windows":
369
381
  command, shell, bg_encoding = prepare_windows_command(
370
- command, bg_encoding
382
+ command, bg_encoding, prefer_shell=prefer_shell
371
383
  )
372
384
 
373
385
  # Prepare process arguments for background execution
@@ -174,11 +174,24 @@ class TestWrapPowershell:
174
174
 
175
175
  class TestWrapCmd:
176
176
  def test_basic_wrap(self):
177
- argv = _wrap_cmd("dir")
178
- assert argv[0] == "cmd.exe"
179
- assert argv[1] == "/c"
180
- assert "chcp 65001" in argv[2]
181
- assert "dir" in argv[2]
177
+ # _wrap_cmd now returns a single command-line *string* (see its
178
+ # docstring for why); callers feed it directly to subprocess.Popen
179
+ # with shell=False so that internal double-quotes survive.
180
+ cmdline = _wrap_cmd("dir")
181
+ assert isinstance(cmdline, str)
182
+ assert cmdline.startswith("cmd.exe /s /c \"")
183
+ assert cmdline.endswith("\"")
184
+ assert "chcp 65001" in cmdline
185
+ assert "dir" in cmdline
186
+
187
+ def test_quotes_preserved(self):
188
+ """Inner double-quotes in the user command must be kept verbatim
189
+ (not turned into ``\\"``) so cmd.exe can parse them.
190
+ """
191
+ cmdline = _wrap_cmd('cd /d "F:\\proj" && echo done')
192
+ assert '"F:\\proj"' in cmdline
193
+ # No backslash-escaped quotes in cmd-mode payload
194
+ assert '\\"' not in cmdline
182
195
 
183
196
 
184
197
  # ---------------------------------------------------------------------------
@@ -217,8 +230,46 @@ class TestPrepareWindowsCommand:
217
230
  cmd, shell, enc = prepare_windows_command("dir /b")
218
231
  assert shell is False
219
232
  assert enc == "utf-8"
220
- assert cmd[0] == "cmd.exe"
221
- assert "chcp 65001" in cmd[2]
233
+ # cmd branch now returns a single command-line *string* so that
234
+ # subprocess.list2cmdline does not corrupt embedded double quotes.
235
+ assert isinstance(cmd, str)
236
+ assert cmd.startswith("cmd.exe /s /c \"")
237
+ assert "chcp 65001" in cmd
238
+ assert "dir /b" in cmd
239
+
240
+ def test_explicit_prefer_shell_overrides_detection(self):
241
+ """``prefer_shell`` must win over the parent-shell auto-detect."""
242
+ with patch(
243
+ "autocoder.common.shell_commands.windows_support._detect_parent_shell",
244
+ return_value="powershell",
245
+ ):
246
+ cmd, shell, enc = prepare_windows_command(
247
+ "dir /b", prefer_shell="cmd"
248
+ )
249
+ assert shell is False
250
+ assert enc == "utf-8"
251
+ assert isinstance(cmd, str)
252
+ assert cmd.startswith("cmd.exe /s /c \"")
253
+
254
+ with patch(
255
+ "autocoder.common.shell_commands.windows_support._detect_parent_shell",
256
+ return_value="cmd",
257
+ ):
258
+ cmd, shell, enc = prepare_windows_command(
259
+ "Get-Process", prefer_shell="powershell"
260
+ )
261
+ assert isinstance(cmd, list)
262
+ assert cmd[0] == "powershell.exe"
263
+
264
+ def test_prefer_shell_auto_falls_back(self):
265
+ """``prefer_shell='auto'`` must be equivalent to no hint at all."""
266
+ with patch(
267
+ "autocoder.common.shell_commands.windows_support._detect_parent_shell",
268
+ return_value="cmd",
269
+ ):
270
+ cmd_auto, _, _ = prepare_windows_command("dir", prefer_shell="auto")
271
+ cmd_none, _, _ = prepare_windows_command("dir", prefer_shell=None)
272
+ assert cmd_auto == cmd_none
222
273
 
223
274
  def test_list_command_passthrough(self):
224
275
  """List commands should not be re-wrapped."""