aider-ce 0.88.20__py3-none-any.whl → 0.88.38__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. aider/__init__.py +1 -1
  2. aider/_version.py +2 -2
  3. aider/args.py +63 -43
  4. aider/coders/agent_coder.py +331 -79
  5. aider/coders/agent_prompts.py +3 -15
  6. aider/coders/architect_coder.py +21 -5
  7. aider/coders/base_coder.py +661 -413
  8. aider/coders/base_prompts.py +6 -3
  9. aider/coders/chat_chunks.py +39 -17
  10. aider/commands.py +79 -15
  11. aider/diffs.py +10 -9
  12. aider/exceptions.py +1 -1
  13. aider/helpers/coroutines.py +8 -0
  14. aider/helpers/requests.py +45 -0
  15. aider/history.py +5 -0
  16. aider/io.py +179 -25
  17. aider/main.py +86 -35
  18. aider/models.py +16 -8
  19. aider/queries/tree-sitter-language-pack/c-tags.scm +3 -0
  20. aider/queries/tree-sitter-language-pack/clojure-tags.scm +5 -0
  21. aider/queries/tree-sitter-language-pack/commonlisp-tags.scm +5 -0
  22. aider/queries/tree-sitter-language-pack/cpp-tags.scm +3 -0
  23. aider/queries/tree-sitter-language-pack/csharp-tags.scm +6 -0
  24. aider/queries/tree-sitter-language-pack/dart-tags.scm +5 -0
  25. aider/queries/tree-sitter-language-pack/elixir-tags.scm +5 -0
  26. aider/queries/tree-sitter-language-pack/elm-tags.scm +3 -0
  27. aider/queries/tree-sitter-language-pack/go-tags.scm +7 -0
  28. aider/queries/tree-sitter-language-pack/java-tags.scm +6 -0
  29. aider/queries/tree-sitter-language-pack/javascript-tags.scm +8 -0
  30. aider/queries/tree-sitter-language-pack/lua-tags.scm +5 -0
  31. aider/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +3 -0
  32. aider/queries/tree-sitter-language-pack/python-tags.scm +10 -0
  33. aider/queries/tree-sitter-language-pack/r-tags.scm +6 -0
  34. aider/queries/tree-sitter-language-pack/ruby-tags.scm +5 -0
  35. aider/queries/tree-sitter-language-pack/rust-tags.scm +3 -0
  36. aider/queries/tree-sitter-language-pack/solidity-tags.scm +1 -1
  37. aider/queries/tree-sitter-language-pack/swift-tags.scm +4 -1
  38. aider/queries/tree-sitter-languages/c-tags.scm +3 -0
  39. aider/queries/tree-sitter-languages/c_sharp-tags.scm +6 -0
  40. aider/queries/tree-sitter-languages/cpp-tags.scm +3 -0
  41. aider/queries/tree-sitter-languages/dart-tags.scm +2 -1
  42. aider/queries/tree-sitter-languages/elixir-tags.scm +5 -0
  43. aider/queries/tree-sitter-languages/elm-tags.scm +3 -0
  44. aider/queries/tree-sitter-languages/fortran-tags.scm +3 -0
  45. aider/queries/tree-sitter-languages/go-tags.scm +6 -0
  46. aider/queries/tree-sitter-languages/haskell-tags.scm +2 -0
  47. aider/queries/tree-sitter-languages/java-tags.scm +6 -0
  48. aider/queries/tree-sitter-languages/javascript-tags.scm +8 -0
  49. aider/queries/tree-sitter-languages/julia-tags.scm +2 -2
  50. aider/queries/tree-sitter-languages/kotlin-tags.scm +3 -0
  51. aider/queries/tree-sitter-languages/ocaml_interface-tags.scm +6 -0
  52. aider/queries/tree-sitter-languages/php-tags.scm +6 -0
  53. aider/queries/tree-sitter-languages/python-tags.scm +10 -0
  54. aider/queries/tree-sitter-languages/ruby-tags.scm +5 -0
  55. aider/queries/tree-sitter-languages/rust-tags.scm +3 -0
  56. aider/queries/tree-sitter-languages/scala-tags.scm +2 -3
  57. aider/queries/tree-sitter-languages/typescript-tags.scm +3 -0
  58. aider/queries/tree-sitter-languages/zig-tags.scm +20 -3
  59. aider/repomap.py +71 -11
  60. aider/resources/model-metadata.json +27335 -635
  61. aider/resources/model-settings.yml +190 -0
  62. aider/scrape.py +2 -0
  63. aider/tools/__init__.py +2 -0
  64. aider/tools/command.py +84 -94
  65. aider/tools/command_interactive.py +95 -110
  66. aider/tools/delete_block.py +131 -159
  67. aider/tools/delete_line.py +97 -132
  68. aider/tools/delete_lines.py +120 -160
  69. aider/tools/extract_lines.py +288 -312
  70. aider/tools/finished.py +30 -43
  71. aider/tools/git_branch.py +107 -109
  72. aider/tools/git_diff.py +44 -56
  73. aider/tools/git_log.py +39 -53
  74. aider/tools/git_remote.py +37 -51
  75. aider/tools/git_show.py +33 -47
  76. aider/tools/git_status.py +30 -44
  77. aider/tools/grep.py +214 -242
  78. aider/tools/indent_lines.py +175 -201
  79. aider/tools/insert_block.py +220 -253
  80. aider/tools/list_changes.py +65 -80
  81. aider/tools/ls.py +64 -80
  82. aider/tools/make_editable.py +57 -73
  83. aider/tools/make_readonly.py +50 -66
  84. aider/tools/remove.py +64 -80
  85. aider/tools/replace_all.py +96 -109
  86. aider/tools/replace_line.py +118 -156
  87. aider/tools/replace_lines.py +160 -197
  88. aider/tools/replace_text.py +159 -160
  89. aider/tools/show_numbered_context.py +115 -141
  90. aider/tools/thinking.py +52 -0
  91. aider/tools/undo_change.py +78 -91
  92. aider/tools/update_todo_list.py +130 -138
  93. aider/tools/utils/base_tool.py +64 -0
  94. aider/tools/utils/output.py +118 -0
  95. aider/tools/view.py +38 -54
  96. aider/tools/view_files_matching.py +131 -134
  97. aider/tools/view_files_with_symbol.py +108 -120
  98. aider/urls.py +1 -1
  99. aider/versioncheck.py +4 -3
  100. aider/website/docs/config/adv-model-settings.md +237 -0
  101. aider/website/docs/config/agent-mode.md +36 -3
  102. aider/website/docs/config/model-aliases.md +2 -1
  103. aider/website/docs/faq.md +6 -11
  104. aider/website/docs/languages.md +2 -2
  105. aider/website/docs/more/infinite-output.md +27 -0
  106. {aider_ce-0.88.20.dist-info → aider_ce-0.88.38.dist-info}/METADATA +112 -70
  107. {aider_ce-0.88.20.dist-info → aider_ce-0.88.38.dist-info}/RECORD +112 -107
  108. aider_ce-0.88.38.dist-info/entry_points.txt +6 -0
  109. aider_ce-0.88.20.dist-info/entry_points.txt +0 -2
  110. /aider/tools/{tool_utils.py → utils/helpers.py} +0 -0
  111. {aider_ce-0.88.20.dist-info → aider_ce-0.88.38.dist-info}/WHEEL +0 -0
  112. {aider_ce-0.88.20.dist-info → aider_ce-0.88.38.dist-info}/licenses/LICENSE.txt +0 -0
  113. {aider_ce-0.88.20.dist-info → aider_ce-0.88.38.dist-info}/top_level.txt +0 -0
aider/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  from packaging import version
2
2
 
3
- __version__ = "0.88.20.dev"
3
+ __version__ = "0.88.38.dev"
4
4
  safe_version = __version__
5
5
 
6
6
  try:
aider/_version.py CHANGED
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.88.20'
32
- __version_tuple__ = version_tuple = (0, 88, 20)
31
+ __version__ = version = '0.88.38'
32
+ __version_tuple__ = version_tuple = (0, 88, 38)
33
33
 
34
34
  __commit_id__ = commit_id = None
aider/args.py CHANGED
@@ -234,6 +234,58 @@ def get_parser(default_config_files, git_root):
234
234
  ),
235
235
  )
236
236
 
237
+ #########
238
+ group = parser.add_argument_group("Agent settings")
239
+ group.add_argument(
240
+ "--agent-config",
241
+ metavar="AGENT_CONFIG_JSON",
242
+ help="Specify Agent Mode configuration as a JSON string",
243
+ default=None,
244
+ )
245
+ group.add_argument(
246
+ "--auto-save",
247
+ action=argparse.BooleanOptionalAction,
248
+ default=False,
249
+ help="Enable/disable automatic saving of sessions as 'auto-save' (default: False)",
250
+ )
251
+ group.add_argument(
252
+ "--auto-load",
253
+ action=argparse.BooleanOptionalAction,
254
+ default=False,
255
+ help="Enable/disable automatic loading of 'auto-save' session on startup (default: False)",
256
+ )
257
+ group.add_argument(
258
+ "--mcp-servers",
259
+ metavar="MCP_CONFIG_JSON",
260
+ help="Specify MCP server configurations as a JSON string",
261
+ default=None,
262
+ )
263
+ group.add_argument(
264
+ "--mcp-servers-file",
265
+ metavar="MCP_CONFIG_FILE",
266
+ help="Specify a file path with MCP server configurations",
267
+ default=None,
268
+ )
269
+ group.add_argument(
270
+ "--mcp-transport",
271
+ metavar="MCP_TRANSPORT",
272
+ help="Specify the transport for MCP servers (default: stdio)",
273
+ default="stdio",
274
+ choices=["stdio", "http", "sse"],
275
+ )
276
+ group.add_argument(
277
+ "--preserve-todo-list",
278
+ action="store_true",
279
+ help="Preserve the existing .aider.todo.txt file on startup (default: False)",
280
+ default=False,
281
+ )
282
+ group.add_argument(
283
+ "--use-enhanced-map",
284
+ action="store_true",
285
+ help="Use enhanced Repo Map that takes into account imports (default: False)",
286
+ default=False,
287
+ )
288
+
237
289
  ##########
238
290
  group = parser.add_argument_group("Context Compaction")
239
291
  group.add_argument(
@@ -789,22 +841,16 @@ def get_parser(default_config_files, git_root):
789
841
  ######
790
842
  group = parser.add_argument_group("Other settings")
791
843
  group.add_argument(
792
- "--preserve-todo-list",
844
+ "--tweak-responses",
793
845
  action="store_true",
794
- help="Preserve the existing .aider.todo.txt file on startup (default: False)",
795
- default=False,
796
- )
797
- group.add_argument(
798
- "--auto-save",
799
- action=argparse.BooleanOptionalAction,
846
+ help="Allow manual edits to model responses (default: False)",
800
847
  default=False,
801
- help="Enable/disable automatic saving of sessions as 'auto-save' (default: False)",
802
848
  )
803
849
  group.add_argument(
804
- "--auto-load",
805
- action=argparse.BooleanOptionalAction,
806
- default=False,
807
- help="Enable/disable automatic loading of 'auto-save' session on startup (default: False)",
850
+ "--yes-always",
851
+ action="store_true",
852
+ help="Always say yes to every confirmation",
853
+ default=None,
808
854
  )
809
855
  group.add_argument(
810
856
  "--disable-playwright",
@@ -842,12 +888,6 @@ def get_parser(default_config_files, git_root):
842
888
  default=None,
843
889
  help="Specify the language to use in the commit message (default: None, user language)",
844
890
  )
845
- group.add_argument(
846
- "--yes-always",
847
- action="store_true",
848
- help="Always say yes to every confirmation",
849
- default=None,
850
- )
851
891
  group.add_argument(
852
892
  "-v",
853
893
  "--verbose",
@@ -871,25 +911,6 @@ def get_parser(default_config_files, git_root):
871
911
  default="platform",
872
912
  help="Line endings to use when writing files (default: platform)",
873
913
  )
874
- group.add_argument(
875
- "--mcp-servers",
876
- metavar="MCP_CONFIG_JSON",
877
- help="Specify MCP server configurations as a JSON string",
878
- default=None,
879
- )
880
- group.add_argument(
881
- "--mcp-servers-file",
882
- metavar="MCP_CONFIG_FILE",
883
- help="Specify a file path with MCP server configurations",
884
- default=None,
885
- )
886
- group.add_argument(
887
- "--mcp-transport",
888
- metavar="MCP_TRANSPORT",
889
- help="Specify the transport for MCP servers (default: stdio)",
890
- default="stdio",
891
- choices=["stdio", "http"],
892
- )
893
914
  group.add_argument(
894
915
  "-c",
895
916
  "--config",
@@ -900,12 +921,6 @@ def get_parser(default_config_files, git_root):
900
921
  " or home directory)"
901
922
  ),
902
923
  ).complete = shtab.FILE
903
- group.add_argument(
904
- "--agent-config",
905
- metavar="AGENT_CONFIG_JSON",
906
- help="Specify Agent Mode configuration as a JSON string",
907
- default=None,
908
- )
909
924
  # This is a duplicate of the argument in the preparser and is a no-op by this time of
910
925
  # argument parsing, but it's here so that the help is displayed as expected.
911
926
  group.add_argument(
@@ -950,6 +965,11 @@ def get_parser(default_config_files, git_root):
950
965
  " specified, a default command for your OS may be used."
951
966
  ),
952
967
  )
968
+ group.add_argument(
969
+ "--command-prefix",
970
+ default=None,
971
+ help="Specify a command prefix for all commands (useful for sandboxing)",
972
+ )
953
973
  group.add_argument(
954
974
  "--detect-urls",
955
975
  action=argparse.BooleanOptionalAction,