auto-coder 0.1.378__tar.gz → 0.1.380__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.

Potentially problematic release.


This version of auto-coder might be problematic. Click here for more details.

Files changed (354) hide show
  1. {auto_coder-0.1.378 → auto_coder-0.1.380}/PKG-INFO +2 -1
  2. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/auto_coder.egg-info/PKG-INFO +2 -1
  3. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/auto_coder.egg-info/SOURCES.txt +1 -0
  4. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/auto_coder.egg-info/requires.txt +1 -0
  5. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/base_agent.py +2 -0
  6. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_file_manager/manager.py +1 -1
  7. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit.py +5 -36
  8. auto_coder-0.1.380/src/autocoder/common/v2/agent/agentic_edit_tools/test_execute_command_tool_resolver.py +70 -0
  9. auto_coder-0.1.380/src/autocoder/version.py +2 -0
  10. auto_coder-0.1.378/src/autocoder/version.py +0 -2
  11. {auto_coder-0.1.378 → auto_coder-0.1.380}/LICENSE +0 -0
  12. {auto_coder-0.1.378 → auto_coder-0.1.380}/README.md +0 -0
  13. {auto_coder-0.1.378 → auto_coder-0.1.380}/setup.cfg +0 -0
  14. {auto_coder-0.1.378 → auto_coder-0.1.380}/setup.py +0 -0
  15. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/auto_coder.egg-info/dependency_links.txt +0 -0
  16. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/auto_coder.egg-info/entry_points.txt +0 -0
  17. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/auto_coder.egg-info/top_level.txt +0 -0
  18. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/__init__.py +0 -0
  19. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/__init__.py +0 -0
  20. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/agentic_filter.py +0 -0
  21. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_demand_organizer.py +0 -0
  22. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_filegroup.py +0 -0
  23. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_guess_query.py +0 -0
  24. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_learn.py +0 -0
  25. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_learn_from_commit.py +0 -0
  26. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_review_commit.py +0 -0
  27. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/auto_tool.py +0 -0
  28. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/__init__.py +0 -0
  29. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/agent_hub.py +0 -0
  30. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/agentic_lang.py +0 -0
  31. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/agentic_tool_display.py +0 -0
  32. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/default_tools.py +0 -0
  33. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/test_base_agent.py +0 -0
  34. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tool_registry.py +0 -0
  35. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/__init__.py +0 -0
  36. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/ask_followup_question_tool_resolver.py +0 -0
  37. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/attempt_completion_tool_resolver.py +0 -0
  38. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/base_tool_resolver.py +0 -0
  39. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/example_tool_resolver.py +0 -0
  40. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/execute_command_tool_resolver.py +0 -0
  41. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/list_files_tool_resolver.py +0 -0
  42. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/plan_mode_respond_tool_resolver.py +0 -0
  43. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/read_file_tool_resolver.py +0 -0
  44. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/replace_in_file_tool_resolver.py +0 -0
  45. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/search_files_tool_resolver.py +0 -0
  46. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/talk_to_group_tool_resolver.py +0 -0
  47. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/talk_to_tool_resolver.py +0 -0
  48. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/use_mcp_tool_resolver.py +0 -0
  49. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/tools/write_to_file_tool_resolver.py +0 -0
  50. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/types.py +0 -0
  51. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/base_agentic/utils.py +0 -0
  52. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/coder.py +0 -0
  53. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/designer.py +0 -0
  54. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/planner.py +0 -0
  55. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/agent/project_reader.py +0 -0
  56. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/auto_coder.py +0 -0
  57. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/auto_coder_rag.py +0 -0
  58. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/auto_coder_runner.py +0 -0
  59. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/auto_coder_server.py +0 -0
  60. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/benchmark.py +0 -0
  61. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/chat/__init__.py +0 -0
  62. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/chat/conf_command.py +0 -0
  63. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/chat/models_command.py +0 -0
  64. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/chat/rules_command.py +0 -0
  65. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/chat_auto_coder.py +0 -0
  66. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/chat_auto_coder_lang.py +0 -0
  67. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/command_args.py +0 -0
  68. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/command_parser.py +0 -0
  69. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/commands/__init__.py +0 -0
  70. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/commands/auto_command.py +0 -0
  71. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/commands/auto_web.py +0 -0
  72. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/commands/tools.py +0 -0
  73. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/JupyterClient.py +0 -0
  74. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/ShellClient.py +0 -0
  75. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/__init__.py +0 -0
  76. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/action_yml_file_manager.py +0 -0
  77. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/anything2images.py +0 -0
  78. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/anything2img.py +0 -0
  79. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/audio.py +0 -0
  80. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/auto_coder_lang.py +0 -0
  81. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/auto_configure.py +0 -0
  82. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/buildin_tokenizer.py +0 -0
  83. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/chunk_validation.py +0 -0
  84. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/cleaner.py +0 -0
  85. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_execute.py +0 -0
  86. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_generate.py +0 -0
  87. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_generate_diff.py +0 -0
  88. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_generate_editblock.py +0 -0
  89. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_generate_strict_diff.py +0 -0
  90. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_merge.py +0 -0
  91. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_merge_diff.py +0 -0
  92. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_merge_editblock.py +0 -0
  93. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_auto_merge_strict_diff.py +0 -0
  94. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/code_modification_ranker.py +0 -0
  95. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_completer.py +0 -0
  96. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_completer_v2.py +0 -0
  97. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_file_manager/__init__.py +0 -0
  98. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_file_manager/examples.py +0 -0
  99. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_file_manager/models.py +0 -0
  100. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_file_manager/utils.py +0 -0
  101. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_generator.py +0 -0
  102. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/command_templates.py +0 -0
  103. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/computer_use.py +0 -0
  104. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conf_import_export.py +0 -0
  105. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conf_utils.py +0 -0
  106. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conf_validator.py +0 -0
  107. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/const.py +0 -0
  108. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/context_pruner.py +0 -0
  109. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conversation_pruner.py +0 -0
  110. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conversations/__init__.py +0 -0
  111. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conversations/compatibility.py +0 -0
  112. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conversations/conversation_manager.py +0 -0
  113. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/conversations/example.py +0 -0
  114. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/directory_cache/__init__.py +0 -0
  115. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/directory_cache/cache.py +0 -0
  116. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/directory_cache/test_cache.py +0 -0
  117. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/__init__.py +0 -0
  118. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/backup.py +0 -0
  119. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/conversation_checkpoint.py +0 -0
  120. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/examples.py +0 -0
  121. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/manager.py +0 -0
  122. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/models.py +0 -0
  123. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/store.py +0 -0
  124. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/test_backup.py +0 -0
  125. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/test_manager.py +0 -0
  126. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/test_models.py +0 -0
  127. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/test_store.py +0 -0
  128. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/test_utils.py +0 -0
  129. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_checkpoint/utils.py +0 -0
  130. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_monitor/__init__.py +0 -0
  131. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/file_monitor/monitor.py +0 -0
  132. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/files.py +0 -0
  133. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/git_utils.py +0 -0
  134. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/global_cancel.py +0 -0
  135. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/ignorefiles/__init__.py +0 -0
  136. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/ignorefiles/ignore_file_utils.py +0 -0
  137. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/ignorefiles/test_ignore_file_utils.py +0 -0
  138. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/image_to_page.py +0 -0
  139. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/index_import_export.py +0 -0
  140. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/interpreter.py +0 -0
  141. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_hub.py +0 -0
  142. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_server.py +0 -0
  143. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_server_install.py +0 -0
  144. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_server_types.py +0 -0
  145. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_servers/__init__.py +0 -0
  146. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_servers/mcp_server_gpt4o_mini_search.py +0 -0
  147. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_servers/mcp_server_perplexity.py +0 -0
  148. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/mcp_tools.py +0 -0
  149. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/memory_manager.py +0 -0
  150. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/model_speed_tester.py +0 -0
  151. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/openai_content.py +0 -0
  152. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/printer.py +0 -0
  153. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/recall_validation.py +0 -0
  154. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/result_manager.py +0 -0
  155. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/rulefiles/__init__.py +0 -0
  156. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/rulefiles/autocoderrules_utils.py +0 -0
  157. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/run_cmd.py +0 -0
  158. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/save_formatted_log.py +0 -0
  159. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/screenshots.py +0 -0
  160. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/search.py +0 -0
  161. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/search_replace.py +0 -0
  162. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/shells.py +0 -0
  163. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/stats_panel.py +0 -0
  164. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/stream_out_type.py +0 -0
  165. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/sys_prompt.py +0 -0
  166. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/test_run_cmd.py +0 -0
  167. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/text.py +0 -0
  168. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/token_cost_caculate.py +0 -0
  169. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/types.py +0 -0
  170. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/utils_code_auto_generate.py +0 -0
  171. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/__init__.py +0 -0
  172. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/__init__.py +0 -0
  173. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/__init__.py +0 -0
  174. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/ask_followup_question_tool_resolver.py +0 -0
  175. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/attempt_completion_tool_resolver.py +0 -0
  176. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/base_tool_resolver.py +0 -0
  177. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/execute_command_tool_resolver.py +0 -0
  178. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/list_code_definition_names_tool_resolver.py +0 -0
  179. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/list_files_tool_resolver.py +0 -0
  180. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/list_package_info_tool_resolver.py +0 -0
  181. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/plan_mode_respond_tool_resolver.py +0 -0
  182. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/read_file_tool_resolver.py +0 -0
  183. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file_tool_resolver.py +0 -0
  184. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/search_files_tool_resolver.py +0 -0
  185. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/test_search_files_tool_resolver.py +0 -0
  186. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/test_write_to_file_tool_resolver.py +0 -0
  187. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/use_mcp_tool_resolver.py +0 -0
  188. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_tools/write_to_file_tool_resolver.py +0 -0
  189. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_edit_types.py +0 -0
  190. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/agent/agentic_tool_display.py +0 -0
  191. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_agentic_editblock_manager.py +0 -0
  192. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_generate.py +0 -0
  193. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_generate_diff.py +0 -0
  194. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_generate_editblock.py +0 -0
  195. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_generate_strict_diff.py +0 -0
  196. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_merge.py +0 -0
  197. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_merge_diff.py +0 -0
  198. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_merge_editblock.py +0 -0
  199. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_auto_merge_strict_diff.py +0 -0
  200. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_diff_manager.py +0 -0
  201. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_editblock_manager.py +0 -0
  202. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_manager.py +0 -0
  203. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/common/v2/code_strict_diff_manager.py +0 -0
  204. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/__init__.py +0 -0
  205. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/base_compiler.py +0 -0
  206. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/compiler_config_api.py +0 -0
  207. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/compiler_config_manager.py +0 -0
  208. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/compiler_factory.py +0 -0
  209. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/java_compiler.py +0 -0
  210. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/models.py +0 -0
  211. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/normal_compiler.py +0 -0
  212. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/provided_compiler.py +0 -0
  213. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/python_compiler.py +0 -0
  214. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/reactjs_compiler.py +0 -0
  215. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/shadow_compiler.py +0 -0
  216. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/compilers/vue_compiler.py +0 -0
  217. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/data/byzerllm.md +0 -0
  218. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/data/tokenizer.json +0 -0
  219. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/db/__init__.py +0 -0
  220. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/db/store.py +0 -0
  221. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/dispacher/__init__.py +0 -0
  222. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/dispacher/actions/__init__.py +0 -0
  223. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/dispacher/actions/action.py +0 -0
  224. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/dispacher/actions/copilot.py +0 -0
  225. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/dispacher/actions/plugins/__init__.py +0 -0
  226. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/dispacher/actions/plugins/action_regex_project.py +0 -0
  227. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/events/__init__.py +0 -0
  228. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/events/event_content.py +0 -0
  229. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/events/event_manager.py +0 -0
  230. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/events/event_manager_singleton.py +0 -0
  231. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/events/event_store.py +0 -0
  232. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/events/event_types.py +0 -0
  233. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/helper/__init__.py +0 -0
  234. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/helper/project_creator.py +0 -0
  235. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/helper/rag_doc_creator.py +0 -0
  236. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/__init__.py +0 -0
  237. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/entry.py +0 -0
  238. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/filter/__init__.py +0 -0
  239. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/filter/normal_filter.py +0 -0
  240. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/filter/quick_filter.py +0 -0
  241. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/for_command.py +0 -0
  242. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/index.py +0 -0
  243. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/symbols_utils.py +0 -0
  244. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/index/types.py +0 -0
  245. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/lang.py +0 -0
  246. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/__init__.py +0 -0
  247. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/base_linter.py +0 -0
  248. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/linter_factory.py +0 -0
  249. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/models.py +0 -0
  250. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/normal_linter.py +0 -0
  251. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/python_linter.py +0 -0
  252. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/reactjs_linter.py +0 -0
  253. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/shadow_linter.py +0 -0
  254. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/linters/vue_linter.py +0 -0
  255. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/memory/__init__.py +0 -0
  256. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/memory/active_context_manager.py +0 -0
  257. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/memory/active_package.py +0 -0
  258. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/memory/async_processor.py +0 -0
  259. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/memory/directory_mapper.py +0 -0
  260. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/models.py +0 -0
  261. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/plugins/__init__.py +0 -0
  262. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/plugins/dynamic_completion_example.py +0 -0
  263. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/plugins/git_helper_plugin.py +0 -0
  264. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/plugins/sample_plugin.py +0 -0
  265. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/plugins/token_helper_plugin.py +0 -0
  266. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/plugins/utils.py +0 -0
  267. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/privacy/__init__.py +0 -0
  268. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/privacy/model_filter.py +0 -0
  269. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/pyproject/__init__.py +0 -0
  270. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/__init__.py +0 -0
  271. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/agentic_rag.py +0 -0
  272. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/api_server.py +0 -0
  273. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/__init__.py +0 -0
  274. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/base_cache.py +0 -0
  275. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/byzer_storage_cache.py +0 -0
  276. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/cache_result_merge.py +0 -0
  277. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/failed_files_utils.py +0 -0
  278. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/file_monitor_cache.py +0 -0
  279. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/local_byzer_storage_cache.py +0 -0
  280. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/local_duckdb_storage_cache.py +0 -0
  281. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/rag_file_meta.py +0 -0
  282. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/cache/simple_cache.py +0 -0
  283. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/conversation_to_queries.py +0 -0
  284. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/doc_filter.py +0 -0
  285. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/document_retriever.py +0 -0
  286. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/lang.py +0 -0
  287. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/llm_wrapper.py +0 -0
  288. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/__init__.py +0 -0
  289. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/docx_loader.py +0 -0
  290. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/excel_loader.py +0 -0
  291. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/filter_utils.py +0 -0
  292. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/image_loader.py +0 -0
  293. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/pdf_loader.py +0 -0
  294. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/loaders/ppt_loader.py +0 -0
  295. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/long_context_rag.py +0 -0
  296. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/qa_conversation_strategy.py +0 -0
  297. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/rag_config.py +0 -0
  298. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/rag_entry.py +0 -0
  299. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/relevant_utils.py +0 -0
  300. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/searchable.py +0 -0
  301. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/stream_event/__init__.py +0 -0
  302. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/stream_event/event_writer.py +0 -0
  303. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/stream_event/types.py +0 -0
  304. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/test_doc_filter.py +0 -0
  305. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/test_long_context_rag.py +0 -0
  306. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/test_token_limiter.py +0 -0
  307. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/token_checker.py +0 -0
  308. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/token_counter.py +0 -0
  309. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/token_limiter.py +0 -0
  310. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/token_limiter_utils.py +0 -0
  311. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/tools/__init__.py +0 -0
  312. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/tools/recall_tool.py +0 -0
  313. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/tools/search_tool.py +0 -0
  314. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/types.py +0 -0
  315. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/utils.py +0 -0
  316. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/rag/variable_holder.py +0 -0
  317. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/regexproject/__init__.py +0 -0
  318. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/run_context.py +0 -0
  319. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/shadows/__init__.py +0 -0
  320. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/shadows/shadow_manager.py +0 -0
  321. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/suffixproject/__init__.py +0 -0
  322. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/tsproject/__init__.py +0 -0
  323. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/__init__.py +0 -0
  324. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/_markitdown.py +0 -0
  325. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/auto_coder_utils/__init__.py +0 -0
  326. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/auto_coder_utils/chat_stream_out.py +0 -0
  327. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/auto_project_type.py +0 -0
  328. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/chat_auto_coder_utils/__init__.py +0 -0
  329. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/conversation_store.py +0 -0
  330. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/llm_client_interceptors.py +0 -0
  331. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/llms.py +0 -0
  332. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/log_capture.py +0 -0
  333. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/model_provider_selector.py +0 -0
  334. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/multi_turn.py +0 -0
  335. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/operate_config_api.py +0 -0
  336. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/print_table.py +0 -0
  337. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/project_structure.py +0 -0
  338. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/queue_communicate.py +0 -0
  339. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/request_event_queue.py +0 -0
  340. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/request_queue.py +0 -0
  341. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/rest.py +0 -0
  342. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/stream_thinking.py +0 -0
  343. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/thread_utils.py +0 -0
  344. {auto_coder-0.1.378 → auto_coder-0.1.380}/src/autocoder/utils/types.py +0 -0
  345. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_action_regex_project.py +0 -0
  346. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_action_yml_file_manager.py +0 -0
  347. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_chat_auto_coder.py +0 -0
  348. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_code_auto_merge_editblock.py +0 -0
  349. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_command_completer.py +0 -0
  350. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_planner.py +0 -0
  351. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_plugins.py +0 -0
  352. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_privacy.py +0 -0
  353. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_queue_communicate.py +0 -0
  354. {auto_coder-0.1.378 → auto_coder-0.1.380}/tests/test_symbols_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: auto-coder
3
- Version: 0.1.378
3
+ Version: 0.1.380
4
4
  Summary: AutoCoder: AutoCoder
5
5
  Author: allwefantasy
6
6
  Classifier: Programming Language :: Python :: 3.10
@@ -43,6 +43,7 @@ Requires-Dist: python-docx
43
43
  Requires-Dist: docx2txt
44
44
  Requires-Dist: pdf2image
45
45
  Requires-Dist: docx2pdf
46
+ Requires-Dist: pypdf
46
47
  Requires-Dist: pyperclip
47
48
  Requires-Dist: colorama
48
49
  Requires-Dist: pylint
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: auto-coder
3
- Version: 0.1.378
3
+ Version: 0.1.380
4
4
  Summary: AutoCoder: AutoCoder
5
5
  Author: allwefantasy
6
6
  Classifier: Programming Language :: Python :: 3.10
@@ -43,6 +43,7 @@ Requires-Dist: python-docx
43
43
  Requires-Dist: docx2txt
44
44
  Requires-Dist: pdf2image
45
45
  Requires-Dist: docx2pdf
46
+ Requires-Dist: pypdf
46
47
  Requires-Dist: pyperclip
47
48
  Requires-Dist: colorama
48
49
  Requires-Dist: pylint
@@ -196,6 +196,7 @@ src/autocoder/common/v2/agent/agentic_edit_tools/plan_mode_respond_tool_resolver
196
196
  src/autocoder/common/v2/agent/agentic_edit_tools/read_file_tool_resolver.py
197
197
  src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file_tool_resolver.py
198
198
  src/autocoder/common/v2/agent/agentic_edit_tools/search_files_tool_resolver.py
199
+ src/autocoder/common/v2/agent/agentic_edit_tools/test_execute_command_tool_resolver.py
199
200
  src/autocoder/common/v2/agent/agentic_edit_tools/test_search_files_tool_resolver.py
200
201
  src/autocoder/common/v2/agent/agentic_edit_tools/test_write_to_file_tool_resolver.py
201
202
  src/autocoder/common/v2/agent/agentic_edit_tools/use_mcp_tool_resolver.py
@@ -33,6 +33,7 @@ python-docx
33
33
  docx2txt
34
34
  pdf2image
35
35
  docx2pdf
36
+ pypdf
36
37
  pyperclip
37
38
  colorama
38
39
  pylint
@@ -616,6 +616,8 @@ class BaseAgent(ABC):
616
616
  - When using the replace_in_file tool, you must include complete lines in your SEARCH blocks, not partial lines. The system requires exact line matches and cannot match partial lines. For example, if you want to match a line containing "const x = 5;", your SEARCH block must include the entire line, not just "x = 5" or other fragments.
617
617
  - When using the replace_in_file tool, if you use multiple SEARCH/REPLACE blocks, list them in the order they appear in the file. For example if you need to make changes to both line 10 and line 50, first include the SEARCH/REPLACE block for line 10, followed by the SEARCH/REPLACE block for line 50.
618
618
  - It is critical you wait for the user's response after each tool use, in order to confirm the success of the tool use.
619
+ - To display LaTeX formulas, use a single dollar sign to wrap inline formulas, like `$E=mc^2$`, and double dollar signs to wrap block-level formulas, like `$$\frac{d}{dx}e^x = e^x$$`.
620
+ - To include flowcharts or diagrams, you can use Mermaid syntax.
619
621
 
620
622
  {% if extra_docs %}
621
623
  ====
@@ -37,7 +37,7 @@ class CommandManager:
37
37
  os.makedirs(self.commands_dir, exist_ok=True)
38
38
  logger.info(f"已创建命令目录: {self.commands_dir}")
39
39
 
40
- def list_command_files(self, recursive: bool = False) -> ListCommandsResult:
40
+ def list_command_files(self, recursive: bool = True) -> ListCommandsResult:
41
41
  """
42
42
  列出命令目录中的所有命令文件
43
43
 
@@ -391,20 +391,7 @@ class AgenticEdit:
391
391
  Your final result description here
392
392
  </result>
393
393
  <command>Command to demonstrate result (optional)</command>
394
- </attempt_completion>
395
-
396
- ## plan_mode_respond
397
- Description: Respond to the user's inquiry in an effort to plan a solution to the user's task. This tool should be used when you need to provide a response to a question or statement from the user about how you plan to accomplish the task. This tool is only available in PLAN MODE. The environment_details will specify the current mode, if it is not PLAN MODE then you should not use this tool. Depending on the user's message, you may ask questions to get clarification about the user's request, architect a solution to the task, and to brainstorm ideas with the user. For example, if the user's task is to create a website, you may start by asking some clarifying questions, then present a detailed plan for how you will accomplish the task given the context, and perhaps engage in a back and forth to finalize the details before the user switches you to ACT MODE to implement the solution.
398
- Parameters:
399
- - response: (required) The response to provide to the user. Do not try to use tools in this parameter, this is simply a chat response. (You MUST use the response parameter, do not simply place the response text directly within <plan_mode_respond> tags.)
400
- - options: (optional) An array of 2-5 options for the user to choose from. Each option should be a string describing a possible choice or path forward in the planning process. This can help guide the discussion and make it easier for the user to provide input on key decisions. You may not always need to provide options, but it may be helpful in many cases where it can save the user from having to type out a response manually. Do NOT present an option to toggle to Act mode, as this will be something you need to direct the user to do manually themselves.
401
- Usage:
402
- <plan_mode_respond>
403
- <response>Your response here</response>
404
- <options>
405
- Array of options here (optional), e.g. ["Option 1", "Option 2", "Option 3"]
406
- </options>
407
- </plan_mode_respond>
394
+ </attempt_completion>
408
395
 
409
396
  ## mcp_tool
410
397
  Description: Request to execute a tool via the Model Context Protocol (MCP) server. Use this when you need to execute a tool that is not natively supported by the agentic edit tools.
@@ -596,28 +583,7 @@ class AgenticEdit:
596
583
 
597
584
  By thoughtfully selecting between write_to_file and replace_in_file, you can make your file editing process smoother, safer, and more efficient.
598
585
 
599
- ====
600
-
601
- ACT MODE V.S. PLAN MODE
602
-
603
- In each user message, the environment_details will specify the current mode. There are two modes:
604
-
605
- - ACT MODE: In this mode, you have access to all tools EXCEPT the plan_mode_respond tool.
606
- - In ACT MODE, you use tools to accomplish the user's task. Once you've completed the user's task, you use the attempt_completion tool to present the result of the task to the user.
607
- - PLAN MODE: In this special mode, you have access to the plan_mode_respond tool.
608
- - In PLAN MODE, the goal is to gather information and get context to create a detailed plan for accomplishing the task, which the user will review and approve before they switch you to ACT MODE to implement the solution.
609
- - In PLAN MODE, when you need to converse with the user or present a plan, you should use the plan_mode_respond tool to deliver your response directly, rather than using <thinking> tags to analyze when to respond. Do not talk about using plan_mode_respond - just use it directly to share your thoughts and provide helpful answers.
610
-
611
- ## What is PLAN MODE?
612
-
613
- - While you are usually in ACT MODE, the user may switch to PLAN MODE in order to have a back and forth with you to plan how to best accomplish the task.
614
- - When starting in PLAN MODE, depending on the user's request, you may need to do some information gathering e.g. using read_file or search_files to get more context about the task. You may also ask the user clarifying questions to get a better understanding of the task. You may return mermaid diagrams to visually display your understanding.
615
- - Once you've gained more context about the user's request, you should architect a detailed plan for how you will accomplish the task. Returning mermaid diagrams may be helpful here as well.
616
- - Then you might ask the user if they are pleased with this plan, or if they would like to make any changes. Think of this as a brainstorming session where you can discuss the task and plan the best way to accomplish it.
617
- - If at any point a mermaid diagram would make your plan clearer to help the user quickly see the structure, you are encouraged to include a Mermaid code block in the response. (Note: if you use colors in your mermaid diagrams, be sure to use high contrast colors so the text is readable.)
618
- - Finally once it seems like you've reached a good plan, ask the user to switch you back to ACT MODE to implement the solution.
619
-
620
- ====
586
+ ====
621
587
 
622
588
  PACKAGE CONTEXT INFORMATION
623
589
 
@@ -691,6 +657,9 @@ class AgenticEdit:
691
657
  - When using the replace_in_file tool, you must include complete lines in your SEARCH blocks, not partial lines. The system requires exact line matches and cannot match partial lines. For example, if you want to match a line containing "const x = 5;", your SEARCH block must include the entire line, not just "x = 5" or other fragments.
692
658
  - When using the replace_in_file tool, if you use multiple SEARCH/REPLACE blocks, list them in the order they appear in the file. For example if you need to make changes to both line 10 and line 50, first include the SEARCH/REPLACE block for line 10, followed by the SEARCH/REPLACE block for line 50.
693
659
  - It is critical you wait for the user's response after each tool use, in order to confirm the success of the tool use. For example, if asked to make a todo app, you would create a file, wait for the user's response it was created successfully, then create another file if needed, wait for the user's response it was created successfully, etc.
660
+ - To display LaTeX formulas, use a single dollar sign to wrap inline formulas, like `$E=mc^2$`, and double dollar signs to wrap block-level formulas, like `$$\frac{d}{dx}e^x = e^x$$`.
661
+ - To include flowcharts or diagrams, you can use Mermaid syntax.
662
+
694
663
 
695
664
  {% if extra_docs %}
696
665
  ====
@@ -0,0 +1,70 @@
1
+ import pytest
2
+ from unittest.mock import MagicMock, patch
3
+ from autocoder.common.v2.agent.agentic_edit_tools \
4
+ .execute_command_tool_resolver import ExecuteCommandToolResolver
5
+ from autocoder.common.v2.agent.agentic_edit_types import ExecuteCommandTool
6
+ from autocoder.common import AutoCoderArgs
7
+
8
+
9
+ class TestExecuteCommandToolResolver:
10
+ @pytest.fixture
11
+ def mock_agent(self):
12
+ agent = MagicMock()
13
+ agent.args = AutoCoderArgs()
14
+ agent.args.context_prune_safe_zone_tokens = 1000
15
+ agent.context_prune_llm = None
16
+ agent.current_conversations = []
17
+ return agent
18
+
19
+ @pytest.fixture
20
+ def mock_tool(self):
21
+ return ExecuteCommandTool(
22
+ command="echo 'test output'",
23
+ requires_approval=False
24
+ )
25
+
26
+
27
+ def test_command_execution_with_token_count(self, mock_agent, mock_tool):
28
+ """测试命令执行并验证token统计功能"""
29
+ resolver = ExecuteCommandToolResolver(mock_agent, mock_tool, mock_agent.args)
30
+
31
+ # 模拟命令执行返回大量输出
32
+ with patch("autocoder.common.run_cmd.run_cmd_subprocess") as mock_run_cmd:
33
+ mock_run_cmd.return_value = (0, "test output " * 500) # 生成大量输出
34
+
35
+ result = resolver.resolve()
36
+
37
+ assert result.success
38
+ assert "test output" in result.content
39
+
40
+ # 验证token统计功能
41
+ # 这里需要修改ExecuteCommandToolResolver来添加token统计功能
42
+ # 测试将失败,符合TDD的红色阶段
43
+
44
+ def test_output_pruning_when_exceeds_token_limit(self, mock_agent, mock_tool):
45
+ """测试当输出超过token限制时的裁剪功能"""
46
+ resolver = ExecuteCommandToolResolver(mock_agent, mock_tool, mock_agent.args)
47
+
48
+ # 模拟命令执行返回大量输出
49
+ with patch("autocoder.common.run_cmd.run_cmd_subprocess") as mock_run_cmd:
50
+ mock_run_cmd.return_value = (0, "test output " * 500) # 生成大量输出
51
+
52
+ result = resolver.resolve()
53
+
54
+ assert result.success
55
+ # 验证输出是否被裁剪
56
+ # 这里需要修改ExecuteCommandToolResolver来添加裁剪功能
57
+ # 测试将失败,符合TDD的红色阶段
58
+
59
+ def test_command_execution_failure(self, mock_agent, mock_tool):
60
+ """测试命令执行失败的情况"""
61
+ resolver = ExecuteCommandToolResolver(mock_agent, mock_tool, mock_agent.args)
62
+
63
+ # 模拟命令执行失败
64
+ with patch("autocoder.common.run_cmd.run_cmd_subprocess") as mock_run_cmd:
65
+ mock_run_cmd.return_value = (1, "command failed")
66
+
67
+ result = resolver.resolve()
68
+
69
+ assert not result.success
70
+ assert "command failed" in result.message
@@ -0,0 +1,2 @@
1
+
2
+ __version__ = "0.1.380"
@@ -1,2 +0,0 @@
1
-
2
- __version__ = "0.1.378"
File without changes
File without changes
File without changes
File without changes