auto-coder 0.1.399__tar.gz → 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (445) hide show
  1. {auto_coder-0.1.399 → auto_coder-1.0.0}/PKG-INFO +1 -1
  2. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/auto_coder.egg-info/PKG-INFO +1 -1
  3. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/auto_coder.egg-info/SOURCES.txt +36 -5
  4. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/agentic_filter.py +1 -1
  5. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/read_file_tool_resolver.py +1 -1
  6. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/auto_coder_runner.py +121 -26
  7. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/chat_auto_coder.py +81 -22
  8. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/commands/auto_command.py +1 -1
  9. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/__init__.py +2 -2
  10. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ac_style_command_parser/parser.py +27 -12
  11. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/auto_coder_lang.py +78 -0
  12. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_completer_v2.py +1 -1
  13. auto_coder-1.0.0/src/autocoder/common/file_monitor/test_file_monitor.py +307 -0
  14. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/git_utils.py +7 -2
  15. auto_coder-1.0.0/src/autocoder/common/pruner/agentic_conversation_pruner.py +197 -0
  16. {auto_coder-0.1.399/src/autocoder/common → auto_coder-1.0.0/src/autocoder/common/pruner}/context_pruner.py +137 -40
  17. auto_coder-1.0.0/src/autocoder/common/pruner/test_agentic_conversation_pruner.py +342 -0
  18. auto_coder-1.0.0/src/autocoder/common/pruner/test_context_pruner.py +546 -0
  19. auto_coder-1.0.0/src/autocoder/common/pull_requests/__init__.py +256 -0
  20. auto_coder-1.0.0/src/autocoder/common/pull_requests/base_provider.py +191 -0
  21. auto_coder-1.0.0/src/autocoder/common/pull_requests/config.py +66 -0
  22. auto_coder-1.0.0/src/autocoder/common/pull_requests/example.py +1 -0
  23. auto_coder-1.0.0/src/autocoder/common/pull_requests/exceptions.py +46 -0
  24. auto_coder-1.0.0/src/autocoder/common/pull_requests/manager.py +201 -0
  25. auto_coder-1.0.0/src/autocoder/common/pull_requests/models.py +164 -0
  26. auto_coder-1.0.0/src/autocoder/common/pull_requests/providers/__init__.py +23 -0
  27. auto_coder-1.0.0/src/autocoder/common/pull_requests/providers/gitcode_provider.py +19 -0
  28. auto_coder-1.0.0/src/autocoder/common/pull_requests/providers/gitee_provider.py +20 -0
  29. auto_coder-1.0.0/src/autocoder/common/pull_requests/providers/github_provider.py +214 -0
  30. auto_coder-1.0.0/src/autocoder/common/pull_requests/providers/gitlab_provider.py +29 -0
  31. auto_coder-1.0.0/src/autocoder/common/pull_requests/test_module.py +1 -0
  32. auto_coder-1.0.0/src/autocoder/common/pull_requests/utils.py +344 -0
  33. auto_coder-1.0.0/src/autocoder/common/tokens/__init__.py +77 -0
  34. auto_coder-1.0.0/src/autocoder/common/tokens/counter.py +231 -0
  35. auto_coder-1.0.0/src/autocoder/common/tokens/file_detector.py +105 -0
  36. auto_coder-1.0.0/src/autocoder/common/tokens/filters.py +111 -0
  37. auto_coder-1.0.0/src/autocoder/common/tokens/models.py +28 -0
  38. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit.py +538 -590
  39. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/__init__.py +8 -1
  40. auto_coder-1.0.0/src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_read_tool_resolver.py +40 -0
  41. auto_coder-1.0.0/src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_write_tool_resolver.py +43 -0
  42. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/ask_followup_question_tool_resolver.py +8 -0
  43. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/execute_command_tool_resolver.py +1 -1
  44. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/read_file_tool_resolver.py +1 -1
  45. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/search_files_tool_resolver.py +33 -88
  46. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/test_write_to_file_tool_resolver.py +8 -8
  47. auto_coder-1.0.0/src/autocoder/common/v2/agent/agentic_edit_tools/todo_read_tool_resolver.py +118 -0
  48. auto_coder-1.0.0/src/autocoder/common/v2/agent/agentic_edit_tools/todo_write_tool_resolver.py +324 -0
  49. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_types.py +47 -4
  50. auto_coder-1.0.0/src/autocoder/common/v2/agent/runner/__init__.py +31 -0
  51. auto_coder-1.0.0/src/autocoder/common/v2/agent/runner/base_runner.py +106 -0
  52. auto_coder-1.0.0/src/autocoder/common/v2/agent/runner/event_runner.py +216 -0
  53. auto_coder-1.0.0/src/autocoder/common/v2/agent/runner/sdk_runner.py +40 -0
  54. auto_coder-1.0.0/src/autocoder/common/v2/agent/runner/terminal_runner.py +283 -0
  55. auto_coder-1.0.0/src/autocoder/common/v2/agent/runner/tool_display.py +191 -0
  56. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/entry.py +1 -1
  57. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/plugins/token_helper_plugin.py +107 -7
  58. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/run_context.py +9 -0
  59. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/__init__.py +114 -81
  60. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/handlers.py +2 -1
  61. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/main.py +9 -2
  62. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/options.py +4 -3
  63. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/core/auto_coder_core.py +7 -152
  64. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/core/bridge.py +5 -4
  65. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/models/options.py +8 -6
  66. auto_coder-1.0.0/src/autocoder/version.py +2 -0
  67. auto_coder-0.1.399/src/autocoder/common/ac_style_command_parser/example.py +0 -7
  68. auto_coder-0.1.399/src/autocoder/common/v2/agent/agentic_edit_tools/list_package_info_tool_resolver.py +0 -42
  69. auto_coder-0.1.399/src/autocoder/version.py +0 -2
  70. {auto_coder-0.1.399 → auto_coder-1.0.0}/LICENSE +0 -0
  71. {auto_coder-0.1.399 → auto_coder-1.0.0}/README.md +0 -0
  72. {auto_coder-0.1.399 → auto_coder-1.0.0}/setup.cfg +0 -0
  73. {auto_coder-0.1.399 → auto_coder-1.0.0}/setup.py +0 -0
  74. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/auto_coder.egg-info/dependency_links.txt +0 -0
  75. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/auto_coder.egg-info/entry_points.txt +0 -0
  76. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/auto_coder.egg-info/requires.txt +0 -0
  77. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/auto_coder.egg-info/top_level.txt +0 -0
  78. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/__init__.py +0 -0
  79. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/__init__.py +0 -0
  80. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_demand_organizer.py +0 -0
  81. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_filegroup.py +0 -0
  82. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_guess_query.py +0 -0
  83. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_learn.py +0 -0
  84. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_learn_from_commit.py +0 -0
  85. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_review_commit.py +0 -0
  86. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/auto_tool.py +0 -0
  87. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/__init__.py +0 -0
  88. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/agent_hub.py +0 -0
  89. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/agentic_lang.py +0 -0
  90. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/agentic_tool_display.py +0 -0
  91. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/base_agent.py +0 -0
  92. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/default_tools.py +0 -0
  93. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/test_base_agent.py +0 -0
  94. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tool_registry.py +0 -0
  95. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/__init__.py +0 -0
  96. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/ask_followup_question_tool_resolver.py +0 -0
  97. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/attempt_completion_tool_resolver.py +0 -0
  98. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/base_tool_resolver.py +0 -0
  99. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/example_tool_resolver.py +0 -0
  100. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/execute_command_tool_resolver.py +0 -0
  101. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/list_files_tool_resolver.py +0 -0
  102. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/plan_mode_respond_tool_resolver.py +0 -0
  103. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/replace_in_file_tool_resolver.py +0 -0
  104. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/search_files_tool_resolver.py +0 -0
  105. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/talk_to_group_tool_resolver.py +0 -0
  106. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/talk_to_tool_resolver.py +0 -0
  107. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/use_mcp_tool_resolver.py +0 -0
  108. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/tools/write_to_file_tool_resolver.py +0 -0
  109. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/types.py +0 -0
  110. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/base_agentic/utils.py +0 -0
  111. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/coder.py +0 -0
  112. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/designer.py +0 -0
  113. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/__init__.py +0 -0
  114. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/auto_tool.py +0 -0
  115. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/chat.py +0 -0
  116. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/designer.py +0 -0
  117. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/generate_command.py +0 -0
  118. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/project_reader.py +0 -0
  119. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/entry_command_agent/voice2text.py +0 -0
  120. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/planner.py +0 -0
  121. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/agent/project_reader.py +0 -0
  122. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/auto_coder.py +0 -0
  123. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/auto_coder_rag.py +0 -0
  124. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/auto_coder_server.py +0 -0
  125. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/benchmark.py +0 -0
  126. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/chat/__init__.py +0 -0
  127. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/chat/conf_command.py +0 -0
  128. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/chat/models_command.py +0 -0
  129. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/chat/rules_command.py +0 -0
  130. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/chat_auto_coder_lang.py +0 -0
  131. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/command_args.py +0 -0
  132. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/commands/__init__.py +0 -0
  133. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/commands/auto_web.py +0 -0
  134. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/commands/tools.py +0 -0
  135. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/JupyterClient.py +0 -0
  136. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ShellClient.py +0 -0
  137. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ac_style_command_parser/__init__.py +0 -0
  138. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ac_style_command_parser/test_parser.py +0 -0
  139. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/action_yml_file_manager.py +0 -0
  140. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/anything2images.py +0 -0
  141. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/anything2img.py +0 -0
  142. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/audio.py +0 -0
  143. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/auto_configure.py +0 -0
  144. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/buildin_tokenizer.py +0 -0
  145. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/chunk_validation.py +0 -0
  146. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/cleaner.py +0 -0
  147. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_execute.py +0 -0
  148. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_generate.py +0 -0
  149. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_generate_diff.py +0 -0
  150. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_generate_editblock.py +0 -0
  151. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_generate_strict_diff.py +0 -0
  152. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_merge.py +0 -0
  153. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_merge_diff.py +0 -0
  154. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_merge_editblock.py +0 -0
  155. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_auto_merge_strict_diff.py +0 -0
  156. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/code_modification_ranker.py +0 -0
  157. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_completer.py +0 -0
  158. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_file_manager/__init__.py +0 -0
  159. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_file_manager/examples.py +0 -0
  160. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_file_manager/manager.py +0 -0
  161. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_file_manager/models.py +0 -0
  162. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_file_manager/utils.py +0 -0
  163. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_generator.py +0 -0
  164. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/command_templates.py +0 -0
  165. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/computer_use.py +0 -0
  166. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conf_import_export.py +0 -0
  167. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conf_utils.py +0 -0
  168. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conf_validator.py +0 -0
  169. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/const.py +0 -0
  170. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/__init__.py +0 -0
  171. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/backup/__init__.py +0 -0
  172. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/backup/backup_manager.py +0 -0
  173. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/backup/restore_manager.py +0 -0
  174. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/cache/__init__.py +0 -0
  175. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/cache/base_cache.py +0 -0
  176. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/cache/cache_manager.py +0 -0
  177. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/cache/memory_cache.py +0 -0
  178. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/config.py +0 -0
  179. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/exceptions.py +0 -0
  180. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/file_locker.py +0 -0
  181. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/get_conversation_manager.py +0 -0
  182. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/manager.py +0 -0
  183. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/models.py +0 -0
  184. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/search/__init__.py +0 -0
  185. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/search/filter_manager.py +0 -0
  186. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/search/text_searcher.py +0 -0
  187. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/storage/__init__.py +0 -0
  188. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/storage/base_storage.py +0 -0
  189. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/storage/file_storage.py +0 -0
  190. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/conversations/storage/index_manager.py +0 -0
  191. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/directory_cache/__init__.py +0 -0
  192. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/directory_cache/cache.py +0 -0
  193. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/directory_cache/test_cache.py +0 -0
  194. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/__init__.py +0 -0
  195. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/backup.py +0 -0
  196. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/conversation_checkpoint.py +0 -0
  197. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/examples.py +0 -0
  198. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/manager.py +0 -0
  199. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/models.py +0 -0
  200. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/store.py +0 -0
  201. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/test_backup.py +0 -0
  202. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/test_manager.py +0 -0
  203. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/test_models.py +0 -0
  204. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/test_store.py +0 -0
  205. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/test_utils.py +0 -0
  206. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_checkpoint/utils.py +0 -0
  207. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_monitor/__init__.py +0 -0
  208. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/file_monitor/monitor.py +0 -0
  209. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/files.py +0 -0
  210. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/global_cancel.py +0 -0
  211. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ignorefiles/__init__.py +0 -0
  212. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ignorefiles/ignore_file_utils.py +0 -0
  213. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/ignorefiles/test_ignore_file_utils.py +0 -0
  214. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/image_to_page.py +0 -0
  215. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/index_import_export.py +0 -0
  216. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/interpreter.py +0 -0
  217. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/llm_friendly_package.py +0 -0
  218. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/llm_friendly_package_example.py +0 -0
  219. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/llm_friendly_package_test.py +0 -0
  220. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_hub.py +0 -0
  221. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_server.py +0 -0
  222. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_server_install.py +0 -0
  223. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_server_types.py +0 -0
  224. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_servers/__init__.py +0 -0
  225. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_servers/mcp_server_gpt4o_mini_search.py +0 -0
  226. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_servers/mcp_server_perplexity.py +0 -0
  227. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/mcp_tools.py +0 -0
  228. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/memory_manager.py +0 -0
  229. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/model_speed_tester.py +0 -0
  230. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/openai_content.py +0 -0
  231. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/printer.py +0 -0
  232. {auto_coder-0.1.399/src/autocoder/common/v2 → auto_coder-1.0.0/src/autocoder/common/pruner}/__init__.py +0 -0
  233. {auto_coder-0.1.399/src/autocoder/common → auto_coder-1.0.0/src/autocoder/common/pruner}/conversation_pruner.py +0 -0
  234. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/rag_manager/__init__.py +0 -0
  235. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/rag_manager/rag_manager.py +0 -0
  236. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/recall_validation.py +0 -0
  237. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/result_manager.py +0 -0
  238. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/rulefiles/__init__.py +0 -0
  239. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/rulefiles/autocoderrules_utils.py +0 -0
  240. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/run_cmd.py +0 -0
  241. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/save_formatted_log.py +0 -0
  242. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/screenshots.py +0 -0
  243. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/search.py +0 -0
  244. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/search_replace.py +0 -0
  245. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/shells.py +0 -0
  246. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/stats_panel.py +0 -0
  247. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/stream_out_type.py +0 -0
  248. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/sys_prompt.py +0 -0
  249. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/test_run_cmd.py +0 -0
  250. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/text.py +0 -0
  251. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/token_cost_caculate.py +0 -0
  252. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/types.py +0 -0
  253. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/utils_code_auto_generate.py +0 -0
  254. {auto_coder-0.1.399/src/autocoder/common/v2/agent → auto_coder-1.0.0/src/autocoder/common/v2}/__init__.py +0 -0
  255. {auto_coder-0.1.399/src/autocoder/db → auto_coder-1.0.0/src/autocoder/common/v2/agent}/__init__.py +0 -0
  256. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/attempt_completion_tool_resolver.py +0 -0
  257. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/base_tool_resolver.py +0 -0
  258. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/dangerous_command_checker.py +0 -0
  259. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/list_code_definition_names_tool_resolver.py +0 -0
  260. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/list_files_tool_resolver.py +0 -0
  261. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/plan_mode_respond_tool_resolver.py +0 -0
  262. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file_tool_resolver.py +0 -0
  263. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/test_execute_command_tool_resolver.py +0 -0
  264. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/test_search_files_tool_resolver.py +0 -0
  265. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/use_mcp_tool_resolver.py +0 -0
  266. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/use_rag_tool_resolver.py +0 -0
  267. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_edit_tools/write_to_file_tool_resolver.py +0 -0
  268. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/agent/agentic_tool_display.py +0 -0
  269. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_agentic_editblock_manager.py +0 -0
  270. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_generate.py +0 -0
  271. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_generate_diff.py +0 -0
  272. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_generate_editblock.py +0 -0
  273. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_generate_strict_diff.py +0 -0
  274. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_merge.py +0 -0
  275. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_merge_diff.py +0 -0
  276. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_merge_editblock.py +0 -0
  277. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_auto_merge_strict_diff.py +0 -0
  278. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_diff_manager.py +0 -0
  279. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_editblock_manager.py +0 -0
  280. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_manager.py +0 -0
  281. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/common/v2/code_strict_diff_manager.py +0 -0
  282. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/__init__.py +0 -0
  283. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/base_compiler.py +0 -0
  284. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/compiler_config_api.py +0 -0
  285. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/compiler_config_manager.py +0 -0
  286. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/compiler_factory.py +0 -0
  287. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/java_compiler.py +0 -0
  288. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/models.py +0 -0
  289. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/normal_compiler.py +0 -0
  290. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/provided_compiler.py +0 -0
  291. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/python_compiler.py +0 -0
  292. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/reactjs_compiler.py +0 -0
  293. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/shadow_compiler.py +0 -0
  294. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/compilers/vue_compiler.py +0 -0
  295. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/data/byzerllm.md +0 -0
  296. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/data/tokenizer.json +0 -0
  297. {auto_coder-0.1.399/src/autocoder/dispacher/actions → auto_coder-1.0.0/src/autocoder/db}/__init__.py +0 -0
  298. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/db/store.py +0 -0
  299. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/dispacher/__init__.py +0 -0
  300. {auto_coder-0.1.399/src/autocoder/dispacher/actions/plugins → auto_coder-1.0.0/src/autocoder/dispacher/actions}/__init__.py +0 -0
  301. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/dispacher/actions/action.py +0 -0
  302. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/dispacher/actions/copilot.py +0 -0
  303. {auto_coder-0.1.399/src/autocoder/helper → auto_coder-1.0.0/src/autocoder/dispacher/actions/plugins}/__init__.py +0 -0
  304. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/dispacher/actions/plugins/action_regex_project.py +0 -0
  305. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/events/__init__.py +0 -0
  306. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/events/event_content.py +0 -0
  307. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/events/event_manager.py +0 -0
  308. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/events/event_manager_singleton.py +0 -0
  309. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/events/event_store.py +0 -0
  310. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/events/event_types.py +0 -0
  311. {auto_coder-0.1.399/src/autocoder/index → auto_coder-1.0.0/src/autocoder/helper}/__init__.py +0 -0
  312. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/helper/project_creator.py +0 -0
  313. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/helper/rag_doc_creator.py +0 -0
  314. {auto_coder-0.1.399/src/autocoder/index/filter → auto_coder-1.0.0/src/autocoder/index}/__init__.py +0 -0
  315. {auto_coder-0.1.399/src/autocoder/linters → auto_coder-1.0.0/src/autocoder/index/filter}/__init__.py +0 -0
  316. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/filter/normal_filter.py +0 -0
  317. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/filter/quick_filter.py +0 -0
  318. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/for_command.py +0 -0
  319. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/index.py +0 -0
  320. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/symbols_utils.py +0 -0
  321. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/index/types.py +0 -0
  322. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/lang.py +0 -0
  323. {auto_coder-0.1.399/src/autocoder/memory → auto_coder-1.0.0/src/autocoder/linters}/__init__.py +0 -0
  324. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/base_linter.py +0 -0
  325. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/linter_factory.py +0 -0
  326. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/models.py +0 -0
  327. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/normal_linter.py +0 -0
  328. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/python_linter.py +0 -0
  329. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/reactjs_linter.py +0 -0
  330. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/shadow_linter.py +0 -0
  331. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/test_python_linter.py +0 -0
  332. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/test_reactjs_linter.py +0 -0
  333. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/test_vue_linter.py +0 -0
  334. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/linters/vue_linter.py +0 -0
  335. {auto_coder-0.1.399/src/autocoder/rag → auto_coder-1.0.0/src/autocoder/memory}/__init__.py +0 -0
  336. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/active_changes.py +0 -0
  337. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/active_context_manager.py +0 -0
  338. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/active_diagrams.py +0 -0
  339. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/active_documents.py +0 -0
  340. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/active_header.py +0 -0
  341. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/active_package.py +0 -0
  342. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/async_processor.py +0 -0
  343. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/memory/directory_mapper.py +0 -0
  344. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/models.py +0 -0
  345. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/plugins/__init__.py +0 -0
  346. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/plugins/dynamic_completion_example.py +0 -0
  347. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/plugins/git_helper_plugin.py +0 -0
  348. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/plugins/sample_plugin.py +0 -0
  349. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/plugins/utils.py +0 -0
  350. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/privacy/__init__.py +0 -0
  351. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/privacy/model_filter.py +0 -0
  352. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/pyproject/__init__.py +0 -0
  353. {auto_coder-0.1.399/src/autocoder/rag/cache → auto_coder-1.0.0/src/autocoder/rag}/__init__.py +0 -0
  354. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/agentic_rag.py +0 -0
  355. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/api_server.py +0 -0
  356. {auto_coder-0.1.399/src/autocoder/rag/stream_event → auto_coder-1.0.0/src/autocoder/rag/cache}/__init__.py +0 -0
  357. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/base_cache.py +0 -0
  358. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/byzer_storage_cache.py +0 -0
  359. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/cache_result_merge.py +0 -0
  360. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/failed_files_utils.py +0 -0
  361. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/file_monitor_cache.py +0 -0
  362. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/local_byzer_storage_cache.py +0 -0
  363. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/local_duckdb_storage_cache.py +0 -0
  364. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/rag_file_meta.py +0 -0
  365. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/cache/simple_cache.py +0 -0
  366. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/conversation_to_queries.py +0 -0
  367. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/doc_filter.py +0 -0
  368. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/document_retriever.py +0 -0
  369. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/lang.py +0 -0
  370. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/llm_wrapper.py +0 -0
  371. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/__init__.py +0 -0
  372. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/docx_loader.py +0 -0
  373. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/excel_loader.py +0 -0
  374. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/filter_utils.py +0 -0
  375. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/image_loader.py +0 -0
  376. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/pdf_loader.py +0 -0
  377. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/loaders/ppt_loader.py +0 -0
  378. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/long_context_rag.py +0 -0
  379. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/qa_conversation_strategy.py +0 -0
  380. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/rag_config.py +0 -0
  381. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/rag_entry.py +0 -0
  382. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/relevant_utils.py +0 -0
  383. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/searchable.py +0 -0
  384. {auto_coder-0.1.399/src/autocoder/shadows → auto_coder-1.0.0/src/autocoder/rag/stream_event}/__init__.py +0 -0
  385. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/stream_event/event_writer.py +0 -0
  386. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/stream_event/types.py +0 -0
  387. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/test_doc_filter.py +0 -0
  388. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/test_long_context_rag.py +0 -0
  389. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/test_token_limiter.py +0 -0
  390. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/token_checker.py +0 -0
  391. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/token_counter.py +0 -0
  392. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/token_limiter.py +0 -0
  393. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/token_limiter_utils.py +0 -0
  394. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/tools/__init__.py +0 -0
  395. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/tools/recall_tool.py +0 -0
  396. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/tools/search_tool.py +0 -0
  397. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/types.py +0 -0
  398. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/utils.py +0 -0
  399. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rag/variable_holder.py +0 -0
  400. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/rags.py +0 -0
  401. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/regexproject/__init__.py +0 -0
  402. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/__init__.py +0 -0
  403. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/__main__.py +0 -0
  404. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/completion_wrapper.py +0 -0
  405. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/formatters.py +0 -0
  406. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/cli/install_completion.py +0 -0
  407. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/constants.py +0 -0
  408. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/core/__init__.py +0 -0
  409. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/exceptions.py +0 -0
  410. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/models/__init__.py +0 -0
  411. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/models/messages.py +0 -0
  412. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/models/responses.py +0 -0
  413. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/session/__init__.py +0 -0
  414. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/session/session.py +0 -0
  415. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/session/session_manager.py +0 -0
  416. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/utils/__init__.py +0 -0
  417. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/utils/formatters.py +0 -0
  418. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/utils/io_utils.py +0 -0
  419. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/sdk/utils/validators.py +0 -0
  420. {auto_coder-0.1.399/src/autocoder/utils/auto_coder_utils → auto_coder-1.0.0/src/autocoder/shadows}/__init__.py +0 -0
  421. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/shadows/shadow_manager.py +0 -0
  422. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/suffixproject/__init__.py +0 -0
  423. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/tsproject/__init__.py +0 -0
  424. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/__init__.py +0 -0
  425. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/_markitdown.py +0 -0
  426. {auto_coder-0.1.399/src/autocoder/utils/chat_auto_coder_utils → auto_coder-1.0.0/src/autocoder/utils/auto_coder_utils}/__init__.py +0 -0
  427. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/auto_coder_utils/chat_stream_out.py +0 -0
  428. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/auto_project_type.py +0 -0
  429. /auto_coder-0.1.399/src/autocoder/sdk/example.py → /auto_coder-1.0.0/src/autocoder/utils/chat_auto_coder_utils/__init__.py +0 -0
  430. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/conversation_store.py +0 -0
  431. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/llm_client_interceptors.py +0 -0
  432. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/llms.py +0 -0
  433. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/log_capture.py +0 -0
  434. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/model_provider_selector.py +0 -0
  435. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/multi_turn.py +0 -0
  436. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/operate_config_api.py +0 -0
  437. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/print_table.py +0 -0
  438. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/project_structure.py +0 -0
  439. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/queue_communicate.py +0 -0
  440. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/request_event_queue.py +0 -0
  441. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/request_queue.py +0 -0
  442. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/rest.py +0 -0
  443. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/stream_thinking.py +0 -0
  444. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/thread_utils.py +0 -0
  445. {auto_coder-0.1.399 → auto_coder-1.0.0}/src/autocoder/utils/types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: auto-coder
3
- Version: 0.1.399
3
+ Version: 1.0.0
4
4
  Summary: AutoCoder: AutoCoder
5
5
  Author: allwefantasy
6
6
  Classifier: Programming Language :: Python :: 3.10
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: auto-coder
3
- Version: 0.1.399
3
+ Version: 1.0.0
4
4
  Summary: AutoCoder: AutoCoder
5
5
  Author: allwefantasy
6
6
  Classifier: Programming Language :: Python :: 3.10
@@ -105,8 +105,6 @@ src/autocoder/common/conf_import_export.py
105
105
  src/autocoder/common/conf_utils.py
106
106
  src/autocoder/common/conf_validator.py
107
107
  src/autocoder/common/const.py
108
- src/autocoder/common/context_pruner.py
109
- src/autocoder/common/conversation_pruner.py
110
108
  src/autocoder/common/files.py
111
109
  src/autocoder/common/git_utils.py
112
110
  src/autocoder/common/global_cancel.py
@@ -142,7 +140,6 @@ src/autocoder/common/token_cost_caculate.py
142
140
  src/autocoder/common/types.py
143
141
  src/autocoder/common/utils_code_auto_generate.py
144
142
  src/autocoder/common/ac_style_command_parser/__init__.py
145
- src/autocoder/common/ac_style_command_parser/example.py
146
143
  src/autocoder/common/ac_style_command_parser/parser.py
147
144
  src/autocoder/common/ac_style_command_parser/test_parser.py
148
145
  src/autocoder/common/command_file_manager/__init__.py
@@ -189,16 +186,42 @@ src/autocoder/common/file_checkpoint/test_utils.py
189
186
  src/autocoder/common/file_checkpoint/utils.py
190
187
  src/autocoder/common/file_monitor/__init__.py
191
188
  src/autocoder/common/file_monitor/monitor.py
189
+ src/autocoder/common/file_monitor/test_file_monitor.py
192
190
  src/autocoder/common/ignorefiles/__init__.py
193
191
  src/autocoder/common/ignorefiles/ignore_file_utils.py
194
192
  src/autocoder/common/ignorefiles/test_ignore_file_utils.py
195
193
  src/autocoder/common/mcp_servers/__init__.py
196
194
  src/autocoder/common/mcp_servers/mcp_server_gpt4o_mini_search.py
197
195
  src/autocoder/common/mcp_servers/mcp_server_perplexity.py
196
+ src/autocoder/common/pruner/__init__.py
197
+ src/autocoder/common/pruner/agentic_conversation_pruner.py
198
+ src/autocoder/common/pruner/context_pruner.py
199
+ src/autocoder/common/pruner/conversation_pruner.py
200
+ src/autocoder/common/pruner/test_agentic_conversation_pruner.py
201
+ src/autocoder/common/pruner/test_context_pruner.py
202
+ src/autocoder/common/pull_requests/__init__.py
203
+ src/autocoder/common/pull_requests/base_provider.py
204
+ src/autocoder/common/pull_requests/config.py
205
+ src/autocoder/common/pull_requests/example.py
206
+ src/autocoder/common/pull_requests/exceptions.py
207
+ src/autocoder/common/pull_requests/manager.py
208
+ src/autocoder/common/pull_requests/models.py
209
+ src/autocoder/common/pull_requests/test_module.py
210
+ src/autocoder/common/pull_requests/utils.py
211
+ src/autocoder/common/pull_requests/providers/__init__.py
212
+ src/autocoder/common/pull_requests/providers/gitcode_provider.py
213
+ src/autocoder/common/pull_requests/providers/gitee_provider.py
214
+ src/autocoder/common/pull_requests/providers/github_provider.py
215
+ src/autocoder/common/pull_requests/providers/gitlab_provider.py
198
216
  src/autocoder/common/rag_manager/__init__.py
199
217
  src/autocoder/common/rag_manager/rag_manager.py
200
218
  src/autocoder/common/rulefiles/__init__.py
201
219
  src/autocoder/common/rulefiles/autocoderrules_utils.py
220
+ src/autocoder/common/tokens/__init__.py
221
+ src/autocoder/common/tokens/counter.py
222
+ src/autocoder/common/tokens/file_detector.py
223
+ src/autocoder/common/tokens/filters.py
224
+ src/autocoder/common/tokens/models.py
202
225
  src/autocoder/common/v2/__init__.py
203
226
  src/autocoder/common/v2/code_agentic_editblock_manager.py
204
227
  src/autocoder/common/v2/code_auto_generate.py
@@ -218,6 +241,8 @@ src/autocoder/common/v2/agent/agentic_edit.py
218
241
  src/autocoder/common/v2/agent/agentic_edit_types.py
219
242
  src/autocoder/common/v2/agent/agentic_tool_display.py
220
243
  src/autocoder/common/v2/agent/agentic_edit_tools/__init__.py
244
+ src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_read_tool_resolver.py
245
+ src/autocoder/common/v2/agent/agentic_edit_tools/ac_mod_write_tool_resolver.py
221
246
  src/autocoder/common/v2/agent/agentic_edit_tools/ask_followup_question_tool_resolver.py
222
247
  src/autocoder/common/v2/agent/agentic_edit_tools/attempt_completion_tool_resolver.py
223
248
  src/autocoder/common/v2/agent/agentic_edit_tools/base_tool_resolver.py
@@ -225,7 +250,6 @@ src/autocoder/common/v2/agent/agentic_edit_tools/dangerous_command_checker.py
225
250
  src/autocoder/common/v2/agent/agentic_edit_tools/execute_command_tool_resolver.py
226
251
  src/autocoder/common/v2/agent/agentic_edit_tools/list_code_definition_names_tool_resolver.py
227
252
  src/autocoder/common/v2/agent/agentic_edit_tools/list_files_tool_resolver.py
228
- src/autocoder/common/v2/agent/agentic_edit_tools/list_package_info_tool_resolver.py
229
253
  src/autocoder/common/v2/agent/agentic_edit_tools/plan_mode_respond_tool_resolver.py
230
254
  src/autocoder/common/v2/agent/agentic_edit_tools/read_file_tool_resolver.py
231
255
  src/autocoder/common/v2/agent/agentic_edit_tools/replace_in_file_tool_resolver.py
@@ -233,9 +257,17 @@ src/autocoder/common/v2/agent/agentic_edit_tools/search_files_tool_resolver.py
233
257
  src/autocoder/common/v2/agent/agentic_edit_tools/test_execute_command_tool_resolver.py
234
258
  src/autocoder/common/v2/agent/agentic_edit_tools/test_search_files_tool_resolver.py
235
259
  src/autocoder/common/v2/agent/agentic_edit_tools/test_write_to_file_tool_resolver.py
260
+ src/autocoder/common/v2/agent/agentic_edit_tools/todo_read_tool_resolver.py
261
+ src/autocoder/common/v2/agent/agentic_edit_tools/todo_write_tool_resolver.py
236
262
  src/autocoder/common/v2/agent/agentic_edit_tools/use_mcp_tool_resolver.py
237
263
  src/autocoder/common/v2/agent/agentic_edit_tools/use_rag_tool_resolver.py
238
264
  src/autocoder/common/v2/agent/agentic_edit_tools/write_to_file_tool_resolver.py
265
+ src/autocoder/common/v2/agent/runner/__init__.py
266
+ src/autocoder/common/v2/agent/runner/base_runner.py
267
+ src/autocoder/common/v2/agent/runner/event_runner.py
268
+ src/autocoder/common/v2/agent/runner/sdk_runner.py
269
+ src/autocoder/common/v2/agent/runner/terminal_runner.py
270
+ src/autocoder/common/v2/agent/runner/tool_display.py
239
271
  src/autocoder/compilers/__init__.py
240
272
  src/autocoder/compilers/base_compiler.py
241
273
  src/autocoder/compilers/compiler_config_api.py
@@ -357,7 +389,6 @@ src/autocoder/rag/tools/search_tool.py
357
389
  src/autocoder/regexproject/__init__.py
358
390
  src/autocoder/sdk/__init__.py
359
391
  src/autocoder/sdk/constants.py
360
- src/autocoder/sdk/example.py
361
392
  src/autocoder/sdk/exceptions.py
362
393
  src/autocoder/sdk/cli/__init__.py
363
394
  src/autocoder/sdk/cli/__main__.py
@@ -859,7 +859,7 @@ class AgenticFilter:
859
859
  total_tokens=total_tokens,
860
860
  safe_zone=self.args.conversation_prune_safe_zone_tokens,
861
861
  )
862
- from autocoder.common.conversation_pruner import ConversationPruner
862
+ from autocoder.common.pruner.conversation_pruner import ConversationPruner
863
863
 
864
864
  pruner = ConversationPruner(self.args, self.llm)
865
865
  conversations = pruner.prune_conversations(conversations)
@@ -5,7 +5,7 @@ from autocoder.agent.base_agentic.types import ReadFileTool, ToolResult # Impor
5
5
  from loguru import logger
6
6
  import typing
7
7
  from autocoder.common import AutoCoderArgs
8
- from autocoder.common.context_pruner import PruneContext
8
+ from autocoder.common.pruner.context_pruner import PruneContext
9
9
  from autocoder.common import SourceCode
10
10
  from autocoder.rag.token_counter import count_tokens
11
11
  from loguru import logger
@@ -24,7 +24,7 @@ from autocoder.version import __version__
24
24
  from autocoder.auto_coder import main as auto_coder_main
25
25
  from autocoder.utils import get_last_yaml_file
26
26
  from autocoder.commands.auto_command import CommandAutoTuner, AutoCommandRequest, CommandConfig, MemoryConfig
27
- from autocoder.common.v2.agent.agentic_edit import AgenticEdit,AgenticEditRequest
27
+ from autocoder.common.v2.agent.agentic_edit import AgenticEditRequest
28
28
  from autocoder.common.v2.agent.agentic_edit_types import AgenticEditConversationConfig
29
29
  from autocoder.index.symbols_utils import (
30
30
  extract_symbols,
@@ -69,7 +69,7 @@ from autocoder.common import SourceCodeList,SourceCode
69
69
  from autocoder.common.file_monitor import FileMonitor
70
70
  from filelock import FileLock
71
71
  from autocoder.common.command_file_manager import CommandManager
72
-
72
+ from autocoder.common.v2.agent.runner import SdkRunner,TerminalRunner,EventRunner
73
73
 
74
74
  ## 对外API,用于第三方集成 auto-coder 使用。
75
75
  class SymbolItem(BaseModel):
@@ -836,6 +836,84 @@ def _handle_post_commit_and_pr(post_commit: bool, pr: bool, query: str, args, ll
836
836
  except Exception as e:
837
837
  printer.print_in_terminal("post_commit_pr_failed", style="red", error=str(e))
838
838
 
839
+ def init_project_if_required(target_dir: str,project_type:str):
840
+ """
841
+ 如果项目没有初始化,则自动初始化项目
842
+
843
+ Args:
844
+ target_dir: 目标目录路径
845
+ """
846
+
847
+ # 确保目标目录是绝对路径
848
+ if not os.path.isabs(target_dir):
849
+ target_dir = os.path.abspath(target_dir)
850
+
851
+ actions_dir = os.path.join(target_dir, "actions")
852
+ auto_coder_dir = os.path.join(target_dir, ".auto-coder")
853
+
854
+ # 检查是否已经初始化
855
+ if os.path.exists(actions_dir) and os.path.exists(auto_coder_dir):
856
+ return # 已经初始化,无需再次初始化
857
+
858
+ printer = Printer()
859
+
860
+ try:
861
+ # 创建必要的目录
862
+ os.makedirs(actions_dir, exist_ok=True)
863
+ os.makedirs(auto_coder_dir, exist_ok=True)
864
+
865
+ # 导入并使用 create_actions 创建默认的 action 文件
866
+ from autocoder.common.command_templates import create_actions
867
+
868
+ create_actions(
869
+ source_dir=target_dir,
870
+ params={
871
+ "project_type": project_type,
872
+ "source_dir": target_dir
873
+ },
874
+ )
875
+
876
+ # 初始化 git 仓库
877
+ try:
878
+ git_utils.init(target_dir)
879
+ except Exception as e:
880
+ global_logger.warning(f"Failed to initialize git repository: {e}")
881
+
882
+ # 创建或更新 .gitignore 文件
883
+ gitignore_path = os.path.join(target_dir, ".gitignore")
884
+ gitignore_entries = ["\n.auto-coder/", "\n/actions/", "\n/output.txt"]
885
+
886
+ try:
887
+ # 检查现有的 .gitignore 内容,避免重复添加
888
+ existing_content = ""
889
+ if os.path.exists(gitignore_path):
890
+ with open(gitignore_path, "r", encoding="utf-8") as f:
891
+ existing_content = f.read()
892
+
893
+ with open(gitignore_path, "a", encoding="utf-8") as f:
894
+ for entry in gitignore_entries:
895
+ if entry.strip() not in existing_content:
896
+ f.write(entry)
897
+ except Exception as e:
898
+ global_logger.warning(f"Failed to update .gitignore: {e}")
899
+
900
+ # 创建 .autocoderignore 文件
901
+ try:
902
+ autocoderignore_path = os.path.join(target_dir, ".autocoderignore")
903
+ if not os.path.exists(autocoderignore_path):
904
+ autocoderignore_content = "target\n"
905
+ with open(autocoderignore_path, "w", encoding="utf-8") as f:
906
+ f.write(autocoderignore_content)
907
+ except Exception as e:
908
+ global_logger.warning(f"Failed to create .autocoderignore: {e}")
909
+
910
+ configure(f"project_type:{project_type}")
911
+ global_logger.info(f"Successfully initialized auto-coder project in {target_dir}")
912
+
913
+ except Exception as e:
914
+ global_logger.error(f"Failed to initialize project in {target_dir}: {e}")
915
+ printer.print_in_terminal("init_project_error", style="red", error=str(e))
916
+
839
917
 
840
918
  def _create_pull_request(commit_result, original_query: str, llm):
841
919
  """
@@ -1677,7 +1755,7 @@ def code_next(query: str):
1677
1755
 
1678
1756
 
1679
1757
  @run_in_raw_thread()
1680
- def commit(query: str):
1758
+ def commit(query: Optional[str] = None):
1681
1759
  conf = memory.get("conf", {})
1682
1760
  product_mode = conf.get("product_mode", "lite")
1683
1761
  def prepare_commit_yaml():
@@ -1740,7 +1818,7 @@ def commit(query: str):
1740
1818
  try:
1741
1819
  uncommitted_changes = git_utils.get_uncommitted_changes(".")
1742
1820
  commit_message = git_utils.generate_commit_message.with_llm(llm).run(
1743
- uncommitted_changes
1821
+ uncommitted_changes, query=query
1744
1822
  )
1745
1823
  # memory["conversation"].append(
1746
1824
  # {"role": "user", "content": commit_message})
@@ -3228,18 +3306,31 @@ def auto_command(query: str,extra_args: Dict[str,Any]={}):
3228
3306
 
3229
3307
  conversation_config.query = task_query
3230
3308
 
3231
- agent = AgenticEdit(llm=llm,args=args,files=SourceCodeList(sources=sources),
3232
- conversation_history=conversation_history,
3233
- memory_config=MemoryConfig(memory=memory,
3234
- save_memory_func=save_memory), command_config=CommandConfig,
3235
- conversation_name="current",
3236
- conversation_config=conversation_config
3237
- )
3238
- if get_run_context().mode == RunMode.WEB:
3239
- agent.run_with_events(AgenticEditRequest(user_input=task_query))
3309
+ if get_run_context().mode == RunMode.WEB:
3310
+ runner = EventRunner(llm=llm,
3311
+ args=args,
3312
+ files=SourceCodeList(sources=sources),
3313
+ conversation_history=conversation_history,
3314
+ memory_config=MemoryConfig(memory=memory,
3315
+ save_memory_func=save_memory),
3316
+ command_config=CommandConfig,
3317
+ conversation_name="current",
3318
+ conversation_config=conversation_config
3319
+ )
3320
+ runner.run(AgenticEditRequest(user_input=task_query))
3240
3321
 
3241
- if get_run_context().mode == RunMode.TERMINAL:
3242
- agent.run_in_terminal(AgenticEditRequest(user_input=task_query))
3322
+ if get_run_context().mode == RunMode.TERMINAL:
3323
+ runner = TerminalRunner(llm=llm,
3324
+ args=args,
3325
+ files=SourceCodeList(sources=sources),
3326
+ conversation_history=conversation_history,
3327
+ memory_config=MemoryConfig(memory=memory,
3328
+ save_memory_func=save_memory),
3329
+ command_config=CommandConfig,
3330
+ conversation_name="current",
3331
+ conversation_config=conversation_config
3332
+ )
3333
+ runner.run(AgenticEditRequest(user_input=task_query))
3243
3334
 
3244
3335
  completer.refresh_files()
3245
3336
  return
@@ -3357,19 +3448,23 @@ def run_auto_command(query: str,
3357
3448
  conversation_config.action = "command"
3358
3449
  task_query = render_command_file_with_variables(command_infos)
3359
3450
 
3360
- conversation_config.query = task_query
3361
-
3362
- agent = AgenticEdit(llm=llm,args=args,files=SourceCodeList(sources=sources),
3363
- conversation_history=conversation_history,
3364
- memory_config=MemoryConfig(memory=memory,
3365
- save_memory_func=save_memory), command_config=CommandConfig,
3366
- conversation_name="current",
3367
- conversation_config=conversation_config
3368
- )
3451
+ conversation_config.query = task_query
3452
+ conversation_config.pull_request = pr
3453
+
3454
+ runner = SdkRunner(llm=llm,
3455
+ args=args,
3456
+ files=SourceCodeList(sources=sources),
3457
+ conversation_history=conversation_history,
3458
+ memory_config=MemoryConfig(memory=memory,
3459
+ save_memory_func=save_memory),
3460
+ command_config=CommandConfig,
3461
+ conversation_name="current",
3462
+ conversation_config=conversation_config
3463
+ )
3369
3464
  if pre_commit:
3370
- agent.apply_pre_changes()
3465
+ runner.apply_pre_changes()
3371
3466
 
3372
- events = agent.run(AgenticEditRequest(user_input=task_query))
3467
+ events = runner.run(AgenticEditRequest(user_input=task_query))
3373
3468
 
3374
3469
  for event in events:
3375
3470
  yield event
@@ -170,9 +170,14 @@ def show_help():
170
170
  print(" \033[94mCommand\033[0m - \033[93mDescription\033[0m")
171
171
  for cmd, (_, desc, plugin_id) in plugin_manager.command_handlers.items():
172
172
  plugin = plugin_manager.get_plugin(plugin_id)
173
- print(
174
- f" \033[94m{cmd}\033[0m - \033[92m{desc} (from {plugin.plugin_name()})\033[0m"
175
- )
173
+ if plugin:
174
+ print(
175
+ f" \033[94m{cmd}\033[0m - \033[92m{desc} (from {plugin.plugin_name()})\033[0m"
176
+ )
177
+ else:
178
+ print(
179
+ f" \033[94m{cmd}\033[0m - \033[92m{desc} (from unknown plugin)\033[0m"
180
+ )
176
181
  print()
177
182
 
178
183
 
@@ -274,6 +279,41 @@ class EnhancedCompleter(Completer):
274
279
  ARGS = None
275
280
 
276
281
 
282
+ def load_builtin_plugins():
283
+ """加载内置插件"""
284
+ try:
285
+ # 发现所有可用的插件
286
+ discovered_plugins = plugin_manager.discover_plugins()
287
+
288
+ # 排除的示例插件列表
289
+ excluded_plugins = {
290
+ "autocoder.plugins.dynamic_completion_example",
291
+ "autocoder.plugins.sample_plugin"
292
+ }
293
+
294
+ # 自动加载内置插件(在autocoder.plugins模块中的插件)
295
+ builtin_loaded = 0
296
+ for plugin_class in discovered_plugins:
297
+ module_name = plugin_class.__module__
298
+ if (module_name.startswith("autocoder.plugins.")
299
+ and not module_name.endswith(".__init__")
300
+ and module_name not in excluded_plugins):
301
+ try:
302
+ if plugin_manager.load_plugin(plugin_class):
303
+ builtin_loaded += 1
304
+ print(f"✓ Loaded builtin plugin: {plugin_class.plugin_name()}")
305
+ except Exception as e:
306
+ print(f"✗ Failed to load builtin plugin {plugin_class.plugin_name()}: {e}")
307
+
308
+ if builtin_loaded > 0:
309
+ print(f"Loaded {builtin_loaded} builtin plugin(s)")
310
+ else:
311
+ print("No builtin plugins loaded")
312
+
313
+ except Exception as e:
314
+ print(f"Error loading builtin plugins: {e}")
315
+
316
+
277
317
  def main():
278
318
  load_tokenizer()
279
319
  ARGS = parse_arguments()
@@ -305,6 +345,9 @@ def main():
305
345
 
306
346
  # 加载保存的运行时配置
307
347
  plugin_manager.load_runtime_cfg()
348
+
349
+ # 自动加载内置插件(如果还没有被配置文件加载)
350
+ load_builtin_plugins()
308
351
 
309
352
  memory = get_memory()
310
353
 
@@ -320,7 +363,13 @@ def main():
320
363
 
321
364
  @kb.add("c-c")
322
365
  def _(event):
323
- event.app.exit()
366
+ # 如果在历史搜索模式中
367
+ if event.app.layout.is_searching:
368
+ event.app.current_buffer.history_search_text = None
369
+ # 清除当前缓冲区
370
+ event.app.current_buffer.reset()
371
+ else:
372
+ event.app.exit()
324
373
 
325
374
  @kb.add("tab")
326
375
  def _(event):
@@ -481,14 +530,21 @@ def main():
481
530
  if temp_user_input.startswith("/"):
482
531
  user_input = temp_user_input
483
532
 
484
- # Check if this is a plugin command
533
+ # 修复插件命令处理逻辑
534
+ plugin_handled = False
485
535
  if user_input.startswith("/"):
486
536
  plugin_result = plugin_manager.process_command(user_input)
487
537
  if plugin_result:
488
538
  plugin_name, handler, args = plugin_result
489
539
  if handler:
490
540
  handler(*args)
491
- continue
541
+ plugin_handled = True
542
+
543
+ # 如果插件已处理命令,直接继续下一轮循环
544
+ if plugin_handled:
545
+ continue
546
+
547
+ # 如果插件未处理,继续处理内置命令
492
548
  if (
493
549
  memory["mode"] == "auto_detect"
494
550
  and user_input
@@ -654,24 +710,27 @@ def main():
654
710
  except Exception as e:
655
711
  print(f"Debug error: {str(e)}")
656
712
 
657
- # elif user_input.startswith("/shell"):
713
+ elif user_input.startswith("/shell"):
714
+ command = user_input[len("/shell") :].strip()
715
+ if not command:
716
+ print("Please enter a shell command to execute.")
717
+ else:
718
+ if command.startswith("/chat"):
719
+ event_file, file_id = gengerate_event_file_path()
720
+ global_cancel.register_token(event_file)
721
+ configure(f"event_file:{event_file}")
722
+ command = command[len("/chat") :].strip()
723
+ gen_and_exec_shell_command(command)
724
+ else:
725
+ execute_shell_command(command)
658
726
  else:
659
- command = user_input
660
- if user_input.startswith("/shell"):
661
- command = user_input[len("/shell") :].strip()
662
- if not command:
663
- print("Please enter a shell command to execute.")
727
+ # 对于未识别的命令,显示提示信息而不是执行auto_command
728
+ if user_input and user_input.strip():
729
+ if user_input.startswith("/"):
730
+ print(f"\033[91mUnknown command: {user_input}\033[0m")
731
+ print("Type /help to see available commands.")
664
732
  else:
665
- if command.startswith("/chat"):
666
- event_file, file_id = gengerate_event_file_path()
667
- global_cancel.register_token(event_file)
668
- configure(f"event_file:{event_file}")
669
- command = command[len("/chat") :].strip()
670
- gen_and_exec_shell_command(command)
671
- else:
672
- execute_shell_command(command)
673
- else:
674
- if user_input and user_input.strip():
733
+ # 只有非命令输入才执行auto_command
675
734
  auto_command(user_input)
676
735
 
677
736
  except KeyboardInterrupt:
@@ -543,7 +543,7 @@ class CommandAutoTuner:
543
543
  total_tokens=total_tokens,
544
544
  safe_zone=self.args.conversation_prune_safe_zone_tokens
545
545
  )
546
- from autocoder.common.conversation_pruner import ConversationPruner
546
+ from autocoder.common.pruner.conversation_pruner import ConversationPruner
547
547
  pruner = ConversationPruner(self.args, self.llm)
548
548
  conversations = pruner.prune_conversations(conversations)
549
549
 
@@ -397,13 +397,13 @@ class AutoCoderArgs(pydantic.BaseModel):
397
397
  in_code_apply: bool = False
398
398
  model_filter_path: Optional[str] = None
399
399
 
400
- conversation_prune_safe_zone_tokens: Optional[int] = 50*1024
400
+ conversation_prune_safe_zone_tokens: int = 50*1024
401
401
  conversation_prune_group_size: Optional[int] = 4
402
402
  conversation_prune_strategy: Optional[str] = "summarize"
403
403
 
404
404
  context_prune_strategy: Optional[str] = "extract"
405
405
  context_prune: Optional[bool] = True
406
- context_prune_safe_zone_tokens: Optional[int] = 32*1024
406
+ context_prune_safe_zone_tokens: Optional[int] = 24*1024
407
407
  context_prune_sliding_window_size: Optional[int] = 1000
408
408
  context_prune_sliding_window_overlap: Optional[int] = 100
409
409
 
@@ -22,8 +22,8 @@ class CommandParser:
22
22
  # 匹配命令的正则表达式 - 必须是以/开头,后跟单词字符,且不能后跟/或.
23
23
  # (?<!\S) 确保命令前是字符串开头或空白字符
24
24
  self.command_pattern = r'(?<!\S)/(\w+)(?!/|\.)'
25
- # 匹配键值对参数的正则表达式,支持带引号的值
26
- self.key_value_pattern = r'(\w+)=(?:"([^"]*?)"|\'([^\']*?)\'|([^\s"\']+))(?:\s|$)'
25
+ # 匹配键值对参数的正则表达式,支持带引号的值(包括三重引号)
26
+ self.key_value_pattern = r'(\w+)=(?:\'\'\'([^\']*?)\'\'\'|"""([^"]*?)"""|"([^"]*?)"|\'([^\']*?)\'|([^\s"\']*))(?:\s|$)'
27
27
  # 匹配路径模式的正则表达式
28
28
  self.path_pattern = r'/\w+(?:/[^/\s]+)+'
29
29
 
@@ -119,8 +119,9 @@ class CommandParser:
119
119
  if key_value_pairs:
120
120
  for match in key_value_pairs:
121
121
  key = match[0]
122
- # 值可能在三个捕获组中的一个,取非空的那个
123
- value = match[1] or match[2] or match[3]
122
+ # 值可能在六个捕获组中的一个,取非空的那个
123
+ # match[1]: 三重单引号, match[2]: 三重双引号, match[3]: 双引号, match[4]: 单引号, match[5]: 无引号
124
+ value = match[1] or match[2] or match[3] or match[4] or match[5]
124
125
  kwargs[key] = value.strip()
125
126
 
126
127
  # 替换带引号的键值对
@@ -131,15 +132,22 @@ class CommandParser:
131
132
 
132
133
  # 现在 processed_params_str 中应该只剩下位置参数
133
134
 
134
- # 处理带引号的位置参数
135
- quote_pattern = r'(?:"([^"]*?)"|\'([^\']*?)\')'
135
+ # 处理带引号的位置参数(包括三重引号)
136
+ quote_pattern = r'(?:\'\'\'([^\']*?)\'\'\'|"""([^"]*?)"""|"([^"]*?)"|\'([^\']*?)\')'
136
137
  quoted_args = re.findall(quote_pattern, processed_params_str)
137
138
  for quoted_arg in quoted_args:
138
139
  # 取非空的那个捕获组
139
- arg = quoted_arg[0] or quoted_arg[1]
140
+ arg = quoted_arg[0] or quoted_arg[1] or quoted_arg[2] or quoted_arg[3]
140
141
  args.append(arg)
141
142
  # 从参数字符串中移除这个带引号的参数
142
- quoted_pattern = f'"{arg}"' if quoted_arg[0] else f"'{arg}'"
143
+ if quoted_arg[0]: # 三重单引号
144
+ quoted_pattern = f"'''{arg}'''"
145
+ elif quoted_arg[1]: # 三重双引号
146
+ quoted_pattern = f'"""{arg}"""'
147
+ elif quoted_arg[2]: # 双引号
148
+ quoted_pattern = f'"{arg}"'
149
+ else: # 单引号
150
+ quoted_pattern = f"'{arg}'"
143
151
  processed_params_str = processed_params_str.replace(quoted_pattern, "", 1).strip()
144
152
 
145
153
  # 分割剩余的位置参数(不带引号的)
@@ -148,17 +156,24 @@ class CommandParser:
148
156
  else:
149
157
  # 如果没有键值对,处理所有参数作为位置参数
150
158
 
151
- # 处理带引号的位置参数
152
- quote_pattern = r'(?:"([^"]*?)"|\'([^\']*?)\')'
159
+ # 处理带引号的位置参数(包括三重引号)
160
+ quote_pattern = r'(?:\'\'\'([^\']*?)\'\'\'|"""([^"]*?)"""|"([^"]*?)"|\'([^\']*?)\')'
153
161
  quoted_args = re.findall(quote_pattern, params_str)
154
162
  processed_params_str = params_str
155
163
 
156
164
  for quoted_arg in quoted_args:
157
165
  # 取非空的那个捕获组
158
- arg = quoted_arg[0] or quoted_arg[1]
166
+ arg = quoted_arg[0] or quoted_arg[1] or quoted_arg[2] or quoted_arg[3]
159
167
  args.append(arg)
160
168
  # 从参数字符串中移除这个带引号的参数
161
- quoted_pattern = f'"{arg}"' if quoted_arg[0] else f"'{arg}'"
169
+ if quoted_arg[0]: # 三重单引号
170
+ quoted_pattern = f"'''{arg}'''"
171
+ elif quoted_arg[1]: # 三重双引号
172
+ quoted_pattern = f'"""{arg}"""'
173
+ elif quoted_arg[2]: # 双引号
174
+ quoted_pattern = f'"{arg}"'
175
+ else: # 单引号
176
+ quoted_pattern = f"'{arg}'"
162
177
  processed_params_str = processed_params_str.replace(quoted_pattern, "", 1).strip()
163
178
 
164
179
  # 分割剩余的位置参数(不带引号的)