aider-ce 0.88.20__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 (279) hide show
  1. aider/__init__.py +20 -0
  2. aider/__main__.py +4 -0
  3. aider/_version.py +34 -0
  4. aider/analytics.py +258 -0
  5. aider/args.py +1056 -0
  6. aider/args_formatter.py +228 -0
  7. aider/change_tracker.py +133 -0
  8. aider/coders/__init__.py +36 -0
  9. aider/coders/agent_coder.py +2166 -0
  10. aider/coders/agent_prompts.py +104 -0
  11. aider/coders/architect_coder.py +48 -0
  12. aider/coders/architect_prompts.py +40 -0
  13. aider/coders/ask_coder.py +9 -0
  14. aider/coders/ask_prompts.py +35 -0
  15. aider/coders/base_coder.py +3613 -0
  16. aider/coders/base_prompts.py +87 -0
  17. aider/coders/chat_chunks.py +64 -0
  18. aider/coders/context_coder.py +53 -0
  19. aider/coders/context_prompts.py +75 -0
  20. aider/coders/editblock_coder.py +657 -0
  21. aider/coders/editblock_fenced_coder.py +10 -0
  22. aider/coders/editblock_fenced_prompts.py +143 -0
  23. aider/coders/editblock_func_coder.py +141 -0
  24. aider/coders/editblock_func_prompts.py +27 -0
  25. aider/coders/editblock_prompts.py +175 -0
  26. aider/coders/editor_diff_fenced_coder.py +9 -0
  27. aider/coders/editor_diff_fenced_prompts.py +11 -0
  28. aider/coders/editor_editblock_coder.py +9 -0
  29. aider/coders/editor_editblock_prompts.py +21 -0
  30. aider/coders/editor_whole_coder.py +9 -0
  31. aider/coders/editor_whole_prompts.py +12 -0
  32. aider/coders/help_coder.py +16 -0
  33. aider/coders/help_prompts.py +46 -0
  34. aider/coders/patch_coder.py +706 -0
  35. aider/coders/patch_prompts.py +159 -0
  36. aider/coders/search_replace.py +757 -0
  37. aider/coders/shell.py +37 -0
  38. aider/coders/single_wholefile_func_coder.py +102 -0
  39. aider/coders/single_wholefile_func_prompts.py +27 -0
  40. aider/coders/udiff_coder.py +429 -0
  41. aider/coders/udiff_prompts.py +115 -0
  42. aider/coders/udiff_simple.py +14 -0
  43. aider/coders/udiff_simple_prompts.py +25 -0
  44. aider/coders/wholefile_coder.py +144 -0
  45. aider/coders/wholefile_func_coder.py +134 -0
  46. aider/coders/wholefile_func_prompts.py +27 -0
  47. aider/coders/wholefile_prompts.py +65 -0
  48. aider/commands.py +2173 -0
  49. aider/copypaste.py +72 -0
  50. aider/deprecated.py +126 -0
  51. aider/diffs.py +128 -0
  52. aider/dump.py +29 -0
  53. aider/editor.py +147 -0
  54. aider/exceptions.py +115 -0
  55. aider/format_settings.py +26 -0
  56. aider/gui.py +545 -0
  57. aider/help.py +163 -0
  58. aider/help_pats.py +19 -0
  59. aider/helpers/__init__.py +9 -0
  60. aider/helpers/similarity.py +98 -0
  61. aider/history.py +180 -0
  62. aider/io.py +1608 -0
  63. aider/linter.py +304 -0
  64. aider/llm.py +55 -0
  65. aider/main.py +1415 -0
  66. aider/mcp/__init__.py +174 -0
  67. aider/mcp/server.py +149 -0
  68. aider/mdstream.py +243 -0
  69. aider/models.py +1313 -0
  70. aider/onboarding.py +429 -0
  71. aider/openrouter.py +129 -0
  72. aider/prompts.py +56 -0
  73. aider/queries/tree-sitter-language-pack/README.md +7 -0
  74. aider/queries/tree-sitter-language-pack/arduino-tags.scm +5 -0
  75. aider/queries/tree-sitter-language-pack/c-tags.scm +9 -0
  76. aider/queries/tree-sitter-language-pack/chatito-tags.scm +16 -0
  77. aider/queries/tree-sitter-language-pack/clojure-tags.scm +7 -0
  78. aider/queries/tree-sitter-language-pack/commonlisp-tags.scm +122 -0
  79. aider/queries/tree-sitter-language-pack/cpp-tags.scm +15 -0
  80. aider/queries/tree-sitter-language-pack/csharp-tags.scm +26 -0
  81. aider/queries/tree-sitter-language-pack/d-tags.scm +26 -0
  82. aider/queries/tree-sitter-language-pack/dart-tags.scm +92 -0
  83. aider/queries/tree-sitter-language-pack/elisp-tags.scm +5 -0
  84. aider/queries/tree-sitter-language-pack/elixir-tags.scm +54 -0
  85. aider/queries/tree-sitter-language-pack/elm-tags.scm +19 -0
  86. aider/queries/tree-sitter-language-pack/gleam-tags.scm +41 -0
  87. aider/queries/tree-sitter-language-pack/go-tags.scm +42 -0
  88. aider/queries/tree-sitter-language-pack/java-tags.scm +20 -0
  89. aider/queries/tree-sitter-language-pack/javascript-tags.scm +88 -0
  90. aider/queries/tree-sitter-language-pack/lua-tags.scm +34 -0
  91. aider/queries/tree-sitter-language-pack/matlab-tags.scm +10 -0
  92. aider/queries/tree-sitter-language-pack/ocaml-tags.scm +115 -0
  93. aider/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +98 -0
  94. aider/queries/tree-sitter-language-pack/pony-tags.scm +39 -0
  95. aider/queries/tree-sitter-language-pack/properties-tags.scm +5 -0
  96. aider/queries/tree-sitter-language-pack/python-tags.scm +14 -0
  97. aider/queries/tree-sitter-language-pack/r-tags.scm +21 -0
  98. aider/queries/tree-sitter-language-pack/racket-tags.scm +12 -0
  99. aider/queries/tree-sitter-language-pack/ruby-tags.scm +64 -0
  100. aider/queries/tree-sitter-language-pack/rust-tags.scm +60 -0
  101. aider/queries/tree-sitter-language-pack/solidity-tags.scm +43 -0
  102. aider/queries/tree-sitter-language-pack/swift-tags.scm +51 -0
  103. aider/queries/tree-sitter-language-pack/udev-tags.scm +20 -0
  104. aider/queries/tree-sitter-languages/README.md +24 -0
  105. aider/queries/tree-sitter-languages/c-tags.scm +9 -0
  106. aider/queries/tree-sitter-languages/c_sharp-tags.scm +46 -0
  107. aider/queries/tree-sitter-languages/cpp-tags.scm +15 -0
  108. aider/queries/tree-sitter-languages/dart-tags.scm +91 -0
  109. aider/queries/tree-sitter-languages/elisp-tags.scm +8 -0
  110. aider/queries/tree-sitter-languages/elixir-tags.scm +54 -0
  111. aider/queries/tree-sitter-languages/elm-tags.scm +19 -0
  112. aider/queries/tree-sitter-languages/fortran-tags.scm +15 -0
  113. aider/queries/tree-sitter-languages/go-tags.scm +30 -0
  114. aider/queries/tree-sitter-languages/haskell-tags.scm +3 -0
  115. aider/queries/tree-sitter-languages/hcl-tags.scm +77 -0
  116. aider/queries/tree-sitter-languages/java-tags.scm +20 -0
  117. aider/queries/tree-sitter-languages/javascript-tags.scm +88 -0
  118. aider/queries/tree-sitter-languages/julia-tags.scm +60 -0
  119. aider/queries/tree-sitter-languages/kotlin-tags.scm +27 -0
  120. aider/queries/tree-sitter-languages/matlab-tags.scm +10 -0
  121. aider/queries/tree-sitter-languages/ocaml-tags.scm +115 -0
  122. aider/queries/tree-sitter-languages/ocaml_interface-tags.scm +98 -0
  123. aider/queries/tree-sitter-languages/php-tags.scm +26 -0
  124. aider/queries/tree-sitter-languages/python-tags.scm +12 -0
  125. aider/queries/tree-sitter-languages/ql-tags.scm +26 -0
  126. aider/queries/tree-sitter-languages/ruby-tags.scm +64 -0
  127. aider/queries/tree-sitter-languages/rust-tags.scm +60 -0
  128. aider/queries/tree-sitter-languages/scala-tags.scm +65 -0
  129. aider/queries/tree-sitter-languages/typescript-tags.scm +41 -0
  130. aider/queries/tree-sitter-languages/zig-tags.scm +3 -0
  131. aider/reasoning_tags.py +82 -0
  132. aider/repo.py +621 -0
  133. aider/repomap.py +1174 -0
  134. aider/report.py +260 -0
  135. aider/resources/__init__.py +3 -0
  136. aider/resources/model-metadata.json +776 -0
  137. aider/resources/model-settings.yml +2068 -0
  138. aider/run_cmd.py +133 -0
  139. aider/scrape.py +293 -0
  140. aider/sendchat.py +242 -0
  141. aider/sessions.py +256 -0
  142. aider/special.py +203 -0
  143. aider/tools/__init__.py +72 -0
  144. aider/tools/command.py +105 -0
  145. aider/tools/command_interactive.py +122 -0
  146. aider/tools/delete_block.py +182 -0
  147. aider/tools/delete_line.py +155 -0
  148. aider/tools/delete_lines.py +184 -0
  149. aider/tools/extract_lines.py +341 -0
  150. aider/tools/finished.py +48 -0
  151. aider/tools/git_branch.py +129 -0
  152. aider/tools/git_diff.py +60 -0
  153. aider/tools/git_log.py +57 -0
  154. aider/tools/git_remote.py +53 -0
  155. aider/tools/git_show.py +51 -0
  156. aider/tools/git_status.py +46 -0
  157. aider/tools/grep.py +256 -0
  158. aider/tools/indent_lines.py +221 -0
  159. aider/tools/insert_block.py +288 -0
  160. aider/tools/list_changes.py +86 -0
  161. aider/tools/ls.py +93 -0
  162. aider/tools/make_editable.py +85 -0
  163. aider/tools/make_readonly.py +69 -0
  164. aider/tools/remove.py +91 -0
  165. aider/tools/replace_all.py +126 -0
  166. aider/tools/replace_line.py +173 -0
  167. aider/tools/replace_lines.py +217 -0
  168. aider/tools/replace_text.py +187 -0
  169. aider/tools/show_numbered_context.py +147 -0
  170. aider/tools/tool_utils.py +313 -0
  171. aider/tools/undo_change.py +95 -0
  172. aider/tools/update_todo_list.py +156 -0
  173. aider/tools/view.py +57 -0
  174. aider/tools/view_files_matching.py +141 -0
  175. aider/tools/view_files_with_symbol.py +129 -0
  176. aider/urls.py +17 -0
  177. aider/utils.py +456 -0
  178. aider/versioncheck.py +113 -0
  179. aider/voice.py +205 -0
  180. aider/waiting.py +38 -0
  181. aider/watch.py +318 -0
  182. aider/watch_prompts.py +12 -0
  183. aider/website/Gemfile +8 -0
  184. aider/website/_includes/blame.md +162 -0
  185. aider/website/_includes/get-started.md +22 -0
  186. aider/website/_includes/help-tip.md +5 -0
  187. aider/website/_includes/help.md +24 -0
  188. aider/website/_includes/install.md +5 -0
  189. aider/website/_includes/keys.md +4 -0
  190. aider/website/_includes/model-warnings.md +67 -0
  191. aider/website/_includes/multi-line.md +22 -0
  192. aider/website/_includes/python-m-aider.md +5 -0
  193. aider/website/_includes/recording.css +228 -0
  194. aider/website/_includes/recording.md +34 -0
  195. aider/website/_includes/replit-pipx.md +9 -0
  196. aider/website/_includes/works-best.md +1 -0
  197. aider/website/_sass/custom/custom.scss +103 -0
  198. aider/website/docs/config/adv-model-settings.md +2261 -0
  199. aider/website/docs/config/agent-mode.md +194 -0
  200. aider/website/docs/config/aider_conf.md +548 -0
  201. aider/website/docs/config/api-keys.md +90 -0
  202. aider/website/docs/config/dotenv.md +493 -0
  203. aider/website/docs/config/editor.md +127 -0
  204. aider/website/docs/config/mcp.md +95 -0
  205. aider/website/docs/config/model-aliases.md +104 -0
  206. aider/website/docs/config/options.md +890 -0
  207. aider/website/docs/config/reasoning.md +210 -0
  208. aider/website/docs/config.md +44 -0
  209. aider/website/docs/faq.md +384 -0
  210. aider/website/docs/git.md +76 -0
  211. aider/website/docs/index.md +47 -0
  212. aider/website/docs/install/codespaces.md +39 -0
  213. aider/website/docs/install/docker.md +57 -0
  214. aider/website/docs/install/optional.md +100 -0
  215. aider/website/docs/install/replit.md +8 -0
  216. aider/website/docs/install.md +115 -0
  217. aider/website/docs/languages.md +264 -0
  218. aider/website/docs/legal/contributor-agreement.md +111 -0
  219. aider/website/docs/legal/privacy.md +104 -0
  220. aider/website/docs/llms/anthropic.md +77 -0
  221. aider/website/docs/llms/azure.md +48 -0
  222. aider/website/docs/llms/bedrock.md +132 -0
  223. aider/website/docs/llms/cohere.md +34 -0
  224. aider/website/docs/llms/deepseek.md +32 -0
  225. aider/website/docs/llms/gemini.md +49 -0
  226. aider/website/docs/llms/github.md +111 -0
  227. aider/website/docs/llms/groq.md +36 -0
  228. aider/website/docs/llms/lm-studio.md +39 -0
  229. aider/website/docs/llms/ollama.md +75 -0
  230. aider/website/docs/llms/openai-compat.md +39 -0
  231. aider/website/docs/llms/openai.md +58 -0
  232. aider/website/docs/llms/openrouter.md +78 -0
  233. aider/website/docs/llms/other.md +117 -0
  234. aider/website/docs/llms/vertex.md +50 -0
  235. aider/website/docs/llms/warnings.md +10 -0
  236. aider/website/docs/llms/xai.md +53 -0
  237. aider/website/docs/llms.md +54 -0
  238. aider/website/docs/more/analytics.md +127 -0
  239. aider/website/docs/more/edit-formats.md +116 -0
  240. aider/website/docs/more/infinite-output.md +165 -0
  241. aider/website/docs/more-info.md +8 -0
  242. aider/website/docs/recordings/auto-accept-architect.md +31 -0
  243. aider/website/docs/recordings/dont-drop-original-read-files.md +35 -0
  244. aider/website/docs/recordings/index.md +21 -0
  245. aider/website/docs/recordings/model-accepts-settings.md +69 -0
  246. aider/website/docs/recordings/tree-sitter-language-pack.md +80 -0
  247. aider/website/docs/repomap.md +112 -0
  248. aider/website/docs/scripting.md +100 -0
  249. aider/website/docs/sessions.md +203 -0
  250. aider/website/docs/troubleshooting/aider-not-found.md +24 -0
  251. aider/website/docs/troubleshooting/edit-errors.md +76 -0
  252. aider/website/docs/troubleshooting/imports.md +62 -0
  253. aider/website/docs/troubleshooting/models-and-keys.md +54 -0
  254. aider/website/docs/troubleshooting/support.md +79 -0
  255. aider/website/docs/troubleshooting/token-limits.md +96 -0
  256. aider/website/docs/troubleshooting/warnings.md +12 -0
  257. aider/website/docs/troubleshooting.md +11 -0
  258. aider/website/docs/usage/browser.md +57 -0
  259. aider/website/docs/usage/caching.md +49 -0
  260. aider/website/docs/usage/commands.md +133 -0
  261. aider/website/docs/usage/conventions.md +119 -0
  262. aider/website/docs/usage/copypaste.md +121 -0
  263. aider/website/docs/usage/images-urls.md +48 -0
  264. aider/website/docs/usage/lint-test.md +118 -0
  265. aider/website/docs/usage/modes.md +211 -0
  266. aider/website/docs/usage/not-code.md +179 -0
  267. aider/website/docs/usage/notifications.md +87 -0
  268. aider/website/docs/usage/tips.md +79 -0
  269. aider/website/docs/usage/tutorials.md +30 -0
  270. aider/website/docs/usage/voice.md +121 -0
  271. aider/website/docs/usage/watch.md +294 -0
  272. aider/website/docs/usage.md +102 -0
  273. aider/website/share/index.md +101 -0
  274. aider_ce-0.88.20.dist-info/METADATA +187 -0
  275. aider_ce-0.88.20.dist-info/RECORD +279 -0
  276. aider_ce-0.88.20.dist-info/WHEEL +5 -0
  277. aider_ce-0.88.20.dist-info/entry_points.txt +2 -0
  278. aider_ce-0.88.20.dist-info/licenses/LICENSE.txt +202 -0
  279. aider_ce-0.88.20.dist-info/top_level.txt +1 -0
@@ -0,0 +1,493 @@
1
+ ---
2
+ parent: Configuration
3
+ nav_order: 20
4
+ description: Using a .env file to store LLM API keys for aider.
5
+ ---
6
+
7
+ # Config with .env
8
+
9
+ You can use a `.env` file to store API keys and other settings for the
10
+ models you use with aider.
11
+ You can also set many general aider options
12
+ in the `.env` file.
13
+
14
+ Aider will look for a `.env` file in these locations:
15
+
16
+ - Your home directory.
17
+ - The root of your git repo.
18
+ - The current directory.
19
+ - As specified with the `--env-file <filename>` parameter.
20
+
21
+ If the files above exist, they will be loaded in that order. Files loaded last will take priority.
22
+
23
+ {% include keys.md %}
24
+
25
+ ## Sample .env file
26
+
27
+ Below is a sample `.env` file, which you
28
+ can also
29
+ [download from GitHub](https://github.com/Aider-AI/aider/blob/main/aider/website/assets/sample.env).
30
+
31
+ <!--[[[cog
32
+ from aider.args import get_sample_dotenv
33
+ from pathlib import Path
34
+ text=get_sample_dotenv()
35
+ Path("aider/website/assets/sample.env").write_text(text)
36
+ cog.outl("```")
37
+ cog.out(text)
38
+ cog.outl("```")
39
+ ]]]-->
40
+ ```
41
+ ##########################################################
42
+ # Sample aider .env file.
43
+ # Place at the root of your git repo.
44
+ # Or use `aider --env <fname>` to specify.
45
+ ##########################################################
46
+
47
+ #################
48
+ # LLM parameters:
49
+ #
50
+ # Include xxx_API_KEY parameters and other params needed for your LLMs.
51
+ # See https://aider.chat/docs/llms.html for details.
52
+
53
+ ## OpenAI
54
+ #OPENAI_API_KEY=
55
+
56
+ ## Anthropic
57
+ #ANTHROPIC_API_KEY=
58
+
59
+ ##...
60
+
61
+ #############
62
+ # Main model:
63
+
64
+ ## Specify the model to use for the main chat
65
+ #AIDER_MODEL=
66
+
67
+ ########################
68
+ # API Keys and settings:
69
+
70
+ ## Specify the OpenAI API key
71
+ #AIDER_OPENAI_API_KEY=
72
+
73
+ ## Specify the Anthropic API key
74
+ #AIDER_ANTHROPIC_API_KEY=
75
+
76
+ ## Specify the api base url
77
+ #AIDER_OPENAI_API_BASE=
78
+
79
+ ## (deprecated, use --set-env OPENAI_API_TYPE=<value>)
80
+ #AIDER_OPENAI_API_TYPE=
81
+
82
+ ## (deprecated, use --set-env OPENAI_API_VERSION=<value>)
83
+ #AIDER_OPENAI_API_VERSION=
84
+
85
+ ## (deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
86
+ #AIDER_OPENAI_API_DEPLOYMENT_ID=
87
+
88
+ ## (deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
89
+ #AIDER_OPENAI_ORGANIZATION_ID=
90
+
91
+ ## Set an environment variable (to control API settings, can be used multiple times)
92
+ #AIDER_SET_ENV=
93
+
94
+ ## Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
95
+ #AIDER_API_KEY=
96
+
97
+ #################
98
+ # Model settings:
99
+
100
+ ## List known models which match the (partial) MODEL name
101
+ #AIDER_LIST_MODELS=
102
+
103
+ ## Specify a file with aider model settings for unknown models
104
+ #AIDER_MODEL_SETTINGS_FILE=.aider.model.settings.yml
105
+
106
+ ## Specify a file with context window and costs for unknown models
107
+ #AIDER_MODEL_METADATA_FILE=.aider.model.metadata.json
108
+
109
+ ## Add a model alias (can be used multiple times)
110
+ #AIDER_ALIAS=
111
+
112
+ ## Set the reasoning_effort API parameter (default: not set)
113
+ #AIDER_REASONING_EFFORT=
114
+
115
+ ## Set the thinking token budget for models that support it. Use 0 to disable. (default: not set)
116
+ #AIDER_THINKING_TOKENS=
117
+
118
+ ## Verify the SSL cert when connecting to models (default: True)
119
+ #AIDER_VERIFY_SSL=true
120
+
121
+ ## Timeout in seconds for API calls (default: None)
122
+ #AIDER_TIMEOUT=
123
+
124
+ ## Specify what edit format the LLM should use (default depends on model)
125
+ #AIDER_EDIT_FORMAT=
126
+
127
+ ## Use architect edit format for the main chat
128
+ #AIDER_ARCHITECT=
129
+
130
+ ## Enable/disable automatic acceptance of architect changes (default: True)
131
+ #AIDER_AUTO_ACCEPT_ARCHITECT=true
132
+
133
+ ## Specify the model to use for commit messages and chat history summarization (default depends on --model)
134
+ #AIDER_WEAK_MODEL=
135
+
136
+ ## Specify the model to use for editor tasks (default depends on --model)
137
+ #AIDER_EDITOR_MODEL=
138
+
139
+ ## Specify the edit format for the editor model (default: depends on editor model)
140
+ #AIDER_EDITOR_EDIT_FORMAT=
141
+
142
+ ## Only work with models that have meta-data available (default: True)
143
+ #AIDER_SHOW_MODEL_WARNINGS=true
144
+
145
+ ## Check if model accepts settings like reasoning_effort/thinking_tokens (default: True)
146
+ #AIDER_CHECK_MODEL_ACCEPTS_SETTINGS=true
147
+
148
+ ## Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
149
+ #AIDER_MAX_CHAT_HISTORY_TOKENS=
150
+
151
+ #################
152
+ # Cache settings:
153
+
154
+ ## Enable caching of prompts (default: False)
155
+ #AIDER_CACHE_PROMPTS=false
156
+
157
+ ## Number of times to ping at 5min intervals to keep prompt cache warm (default: 0)
158
+ #AIDER_CACHE_KEEPALIVE_PINGS=false
159
+
160
+ ###################
161
+ # Repomap settings:
162
+
163
+ ## Suggested number of tokens to use for repo map, use 0 to disable
164
+ #AIDER_MAP_TOKENS=
165
+
166
+ ## Control how often the repo map is refreshed. Options: auto, always, files, manual (default: auto)
167
+ #AIDER_MAP_REFRESH=auto
168
+
169
+ ## Multiplier for map tokens when no files are specified (default: 2)
170
+ #AIDER_MAP_MULTIPLIER_NO_FILES=true
171
+
172
+ ## Maximum line length for the repo map code. Prevents sending crazy long lines of minified JS files etc. (default: 100)
173
+ #AIDER_MAP_MAX_LINE_LENGTH=100
174
+
175
+ ################
176
+ # History Files:
177
+
178
+ ## Specify the chat input history file (default: .aider.input.history)
179
+ #AIDER_INPUT_HISTORY_FILE=.aider.input.history
180
+
181
+ ## Specify the chat history file (default: .aider.chat.history.md)
182
+ #AIDER_CHAT_HISTORY_FILE=.aider.chat.history.md
183
+
184
+ ## Restore the previous chat history messages (default: False)
185
+ #AIDER_RESTORE_CHAT_HISTORY=false
186
+
187
+ ## Log the conversation with the LLM to this file (for example, .aider.llm.history)
188
+ #AIDER_LLM_HISTORY_FILE=
189
+
190
+ ##################
191
+ # Output settings:
192
+
193
+ ## Use colors suitable for a dark terminal background (default: False)
194
+ #AIDER_DARK_MODE=false
195
+
196
+ ## Use colors suitable for a light terminal background (default: False)
197
+ #AIDER_LIGHT_MODE=false
198
+
199
+ ## Enable/disable pretty, colorized output (default: True)
200
+ #AIDER_PRETTY=true
201
+
202
+ ## Enable/disable streaming responses (default: True)
203
+ #AIDER_STREAM=true
204
+
205
+ ## Set the color for user input (default: #00cc00)
206
+ #AIDER_USER_INPUT_COLOR=#00cc00
207
+
208
+ ## Set the color for tool output (default: None)
209
+ #AIDER_TOOL_OUTPUT_COLOR=
210
+
211
+ ## Set the color for tool error messages (default: #FF2222)
212
+ #AIDER_TOOL_ERROR_COLOR=#FF2222
213
+
214
+ ## Set the color for tool warning messages (default: #FFA500)
215
+ #AIDER_TOOL_WARNING_COLOR=#FFA500
216
+
217
+ ## Set the color for assistant output (default: #0088ff)
218
+ #AIDER_ASSISTANT_OUTPUT_COLOR=#0088ff
219
+
220
+ ## Set the color for the completion menu (default: terminal's default text color)
221
+ #AIDER_COMPLETION_MENU_COLOR=
222
+
223
+ ## Set the background color for the completion menu (default: terminal's default background color)
224
+ #AIDER_COMPLETION_MENU_BG_COLOR=
225
+
226
+ ## Set the color for the current item in the completion menu (default: terminal's default background color)
227
+ #AIDER_COMPLETION_MENU_CURRENT_COLOR=
228
+
229
+ ## Set the background color for the current item in the completion menu (default: terminal's default text color)
230
+ #AIDER_COMPLETION_MENU_CURRENT_BG_COLOR=
231
+
232
+ ## Set the markdown code theme (default: default, other options include monokai, solarized-dark, solarized-light, or a Pygments builtin style, see https://pygments.org/styles for available themes)
233
+ #AIDER_CODE_THEME=default
234
+
235
+ ## Show diffs when committing changes (default: False)
236
+ #AIDER_SHOW_DIFFS=false
237
+
238
+ ###############
239
+ # Git settings:
240
+
241
+ ## Enable/disable looking for a git repo (default: True)
242
+ #AIDER_GIT=true
243
+
244
+ ## Enable/disable adding .aider* to .gitignore (default: True)
245
+ #AIDER_GITIGNORE=true
246
+
247
+ ## Enable/disable the addition of files listed in .gitignore to Aider's editing scope.
248
+ #AIDER_ADD_GITIGNORE_FILES=false
249
+
250
+ ## Specify the aider ignore file (default: .aiderignore in git root)
251
+ #AIDER_AIDERIGNORE=.aiderignore
252
+
253
+ ## Only consider files in the current subtree of the git repository
254
+ #AIDER_SUBTREE_ONLY=false
255
+
256
+ ## Enable/disable auto commit of LLM changes (default: True)
257
+ #AIDER_AUTO_COMMITS=true
258
+
259
+ ## Enable/disable commits when repo is found dirty (default: True)
260
+ #AIDER_DIRTY_COMMITS=true
261
+
262
+ ## Attribute aider code changes in the git author name (default: True). If explicitly set to True, overrides --attribute-co-authored-by precedence.
263
+ #AIDER_ATTRIBUTE_AUTHOR=
264
+
265
+ ## Attribute aider commits in the git committer name (default: True). If explicitly set to True, overrides --attribute-co-authored-by precedence for aider edits.
266
+ #AIDER_ATTRIBUTE_COMMITTER=
267
+
268
+ ## Prefix commit messages with 'aider: ' if aider authored the changes (default: False)
269
+ #AIDER_ATTRIBUTE_COMMIT_MESSAGE_AUTHOR=false
270
+
271
+ ## Prefix all commit messages with 'aider: ' (default: False)
272
+ #AIDER_ATTRIBUTE_COMMIT_MESSAGE_COMMITTER=false
273
+
274
+ ## Attribute aider edits using the Co-authored-by trailer in the commit message (default: True). If True, this takes precedence over default --attribute-author and --attribute-committer behavior unless they are explicitly set to True.
275
+ #AIDER_ATTRIBUTE_CO_AUTHORED_BY=true
276
+
277
+ ## Enable/disable git pre-commit hooks with --no-verify (default: False)
278
+ #AIDER_GIT_COMMIT_VERIFY=false
279
+
280
+ ## Commit all pending changes with a suitable commit message, then exit
281
+ #AIDER_COMMIT=false
282
+
283
+ ## Specify a custom prompt for generating commit messages
284
+ #AIDER_COMMIT_PROMPT=
285
+
286
+ ## Perform a dry run without modifying files (default: False)
287
+ #AIDER_DRY_RUN=false
288
+
289
+ ## Skip the sanity check for the git repository (default: False)
290
+ #AIDER_SKIP_SANITY_CHECK_REPO=false
291
+
292
+ ## Enable/disable watching files for ai coding comments (default: False)
293
+ #AIDER_WATCH_FILES=false
294
+
295
+ ########################
296
+ # Fixing and committing:
297
+
298
+ ## Lint and fix provided files, or dirty files if none provided
299
+ #AIDER_LINT=false
300
+
301
+ ## Specify lint commands to run for different languages, eg: "python: flake8 --select=..." (can be used multiple times)
302
+ #AIDER_LINT_CMD=
303
+
304
+ ## Enable/disable automatic linting after changes (default: True)
305
+ #AIDER_AUTO_LINT=true
306
+
307
+ ## Specify command to run tests
308
+ #AIDER_TEST_CMD=
309
+
310
+ ## Enable/disable automatic testing after changes (default: False)
311
+ #AIDER_AUTO_TEST=false
312
+
313
+ ## Run tests, fix problems found and then exit
314
+ #AIDER_TEST=false
315
+
316
+ ############
317
+ # Analytics:
318
+
319
+ ## Enable/disable analytics for current session (default: random)
320
+ #AIDER_ANALYTICS=
321
+
322
+ ## Specify a file to log analytics events
323
+ #AIDER_ANALYTICS_LOG=
324
+
325
+ ## Permanently disable analytics
326
+ #AIDER_ANALYTICS_DISABLE=false
327
+
328
+ ## Send analytics to custom PostHog instance
329
+ #AIDER_ANALYTICS_POSTHOG_HOST=
330
+
331
+ ## Send analytics to custom PostHog project
332
+ #AIDER_ANALYTICS_POSTHOG_PROJECT_API_KEY=
333
+
334
+ ############
335
+ # Upgrading:
336
+
337
+ ## Check for updates and return status in the exit code
338
+ #AIDER_JUST_CHECK_UPDATE=false
339
+
340
+ ## Check for new aider versions on launch
341
+ #AIDER_CHECK_UPDATE=true
342
+
343
+ ## Show release notes on first run of new version (default: None, ask user)
344
+ #AIDER_SHOW_RELEASE_NOTES=
345
+
346
+ ## Install the latest version from the main branch
347
+ #AIDER_INSTALL_MAIN_BRANCH=false
348
+
349
+ ## Upgrade aider to the latest version from PyPI
350
+ #AIDER_UPGRADE=false
351
+
352
+ ########
353
+ # Modes:
354
+
355
+ ## Specify a single message to send the LLM, process reply then exit (disables chat mode)
356
+ #AIDER_MESSAGE=
357
+
358
+ ## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
359
+ #AIDER_MESSAGE_FILE=
360
+
361
+ ## Run aider in your browser (default: False)
362
+ #AIDER_GUI=false
363
+
364
+ ## Enable automatic copy/paste of chat between aider and web UI (default: False)
365
+ #AIDER_COPY_PASTE=false
366
+
367
+ ## Apply the changes from the given file instead of running the chat (debug)
368
+ #AIDER_APPLY=
369
+
370
+ ## Apply clipboard contents as edits using the main model's editor format
371
+ #AIDER_APPLY_CLIPBOARD_EDITS=false
372
+
373
+ ## Do all startup activities then exit before accepting user input (debug)
374
+ #AIDER_EXIT=false
375
+
376
+ ## Print the repo map and exit (debug)
377
+ #AIDER_SHOW_REPO_MAP=false
378
+
379
+ ## Print the system prompts and exit (debug)
380
+ #AIDER_SHOW_PROMPTS=false
381
+
382
+ #################
383
+ # Voice settings:
384
+
385
+ ## Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
386
+ #AIDER_VOICE_FORMAT=wav
387
+
388
+ ## Specify the language for voice using ISO 639-1 code (default: auto)
389
+ #AIDER_VOICE_LANGUAGE=en
390
+
391
+ ## Specify the input device name for voice recording
392
+ #AIDER_VOICE_INPUT_DEVICE=
393
+
394
+ #################
395
+ # Other settings:
396
+
397
+ ## Never prompt for or attempt to install Playwright for web scraping (default: False).
398
+ #AIDER_DISABLE_PLAYWRIGHT=false
399
+
400
+ ## specify a file to edit (can be used multiple times)
401
+ #AIDER_FILE=
402
+
403
+ ## specify a read-only file (can be used multiple times)
404
+ #AIDER_READ=
405
+
406
+ ## Use VI editing mode in the terminal (default: False)
407
+ #AIDER_VIM=false
408
+
409
+ ## Specify the language to use in the chat (default: None, uses system settings)
410
+ #AIDER_CHAT_LANGUAGE=
411
+
412
+ ## Specify the language to use in the commit message (default: None, user language)
413
+ #AIDER_COMMIT_LANGUAGE=
414
+
415
+ ## Always say yes to every confirmation
416
+ #AIDER_YES_ALWAYS=
417
+
418
+ ## Enable verbose output
419
+ #AIDER_VERBOSE=false
420
+
421
+ ## Load and execute /commands from a file on launch
422
+ #AIDER_LOAD=
423
+
424
+ ## Specify the encoding for input and output (default: utf-8)
425
+ #AIDER_ENCODING=utf-8
426
+
427
+ ## Line endings to use when writing files (default: platform)
428
+ #AIDER_LINE_ENDINGS=platform
429
+
430
+ ## Specify the .env file to load (default: .env in git root)
431
+ #AIDER_ENV_FILE=.env
432
+
433
+ ## Enable/disable suggesting shell commands (default: True)
434
+ #AIDER_SUGGEST_SHELL_COMMANDS=true
435
+
436
+ ## Enable/disable fancy input with history and completion (default: True)
437
+ #AIDER_FANCY_INPUT=true
438
+
439
+ ## Enable/disable multi-line input mode with Meta-Enter to submit (default: False)
440
+ #AIDER_MULTILINE=false
441
+
442
+ ## Enable/disable terminal bell notifications when LLM responses are ready (default: False)
443
+ #AIDER_NOTIFICATIONS=false
444
+
445
+ ## Specify a command to run for notifications instead of the terminal bell. If not specified, a default command for your OS may be used.
446
+ #AIDER_NOTIFICATIONS_COMMAND=
447
+
448
+ ## Enable/disable detection and offering to add URLs to chat (default: True)
449
+ #AIDER_DETECT_URLS=true
450
+
451
+ ## Specify which editor to use for the /editor command
452
+ #AIDER_EDITOR=
453
+
454
+ ## Print shell completion script for the specified SHELL and exit. Supported shells: bash, tcsh, zsh. Example: aider --shell-completions bash
455
+ #AIDER_SHELL_COMPLETIONS=
456
+
457
+ ############################
458
+ # Deprecated model settings:
459
+
460
+ ## Use claude-3-opus-20240229 model for the main chat (deprecated, use --model)
461
+ #AIDER_OPUS=false
462
+
463
+ ## Use anthropic/claude-3-7-sonnet-20250219 model for the main chat (deprecated, use --model)
464
+ #AIDER_SONNET=false
465
+
466
+ ## Use claude-3-5-haiku-20241022 model for the main chat (deprecated, use --model)
467
+ #AIDER_HAIKU=false
468
+
469
+ ## Use gpt-4-0613 model for the main chat (deprecated, use --model)
470
+ #AIDER_4=false
471
+
472
+ ## Use gpt-4o model for the main chat (deprecated, use --model)
473
+ #AIDER_4O=false
474
+
475
+ ## Use gpt-4o-mini model for the main chat (deprecated, use --model)
476
+ #AIDER_MINI=false
477
+
478
+ ## Use gpt-4-1106-preview model for the main chat (deprecated, use --model)
479
+ #AIDER_4_TURBO=false
480
+
481
+ ## Use gpt-3.5-turbo model for the main chat (deprecated, use --model)
482
+ #AIDER_35TURBO=false
483
+
484
+ ## Use deepseek/deepseek-chat model for the main chat (deprecated, use --model)
485
+ #AIDER_DEEPSEEK=false
486
+
487
+ ## Use o1-mini model for the main chat (deprecated, use --model)
488
+ #AIDER_O1_MINI=false
489
+
490
+ ## Use o1-preview model for the main chat (deprecated, use --model)
491
+ #AIDER_O1_PREVIEW=false
492
+ ```
493
+ <!--[[[end]]]-->
@@ -0,0 +1,127 @@
1
+ ---
2
+ parent: Configuration
3
+ nav_order: 100
4
+ description: How to configure a custom editor for aider's /editor command
5
+ ---
6
+
7
+ # Editor configuration
8
+
9
+ Aider allows you to configure your preferred text editor for use with the `/editor` command. The editor must be capable of running in "blocking mode", meaning the command line will wait until you close the editor before proceeding.
10
+
11
+ ## Using `--editor`
12
+
13
+ You can specify the text editor with the `--editor` switch or using
14
+ `editor:` in aider's
15
+ [YAML config file](https://aider.chat/docs/config/aider_conf.html).
16
+
17
+ ## Environment variables
18
+
19
+ Aider checks the following environment variables in order to determine which editor to use:
20
+
21
+ 1. `AIDER_EDITOR`
22
+ 2. `VISUAL`
23
+ 3. `EDITOR`
24
+
25
+ ## Default behavior
26
+
27
+ If no editor is configured, aider will use these platform-specific defaults:
28
+
29
+ - Windows: `notepad`
30
+ - macOS: `vim`
31
+ - Linux/Unix: `vi`
32
+
33
+ ## Using a custom editor
34
+
35
+ You can set your preferred editor in your shell's configuration file (e.g., `.bashrc`, `.zshrc`):
36
+
37
+ ```bash
38
+ export AIDER_EDITOR=vim
39
+ ```
40
+
41
+ ## Popular Editors by Platform
42
+
43
+ ### macOS
44
+
45
+ 1. **vim**
46
+ ```bash
47
+ export AIDER_EDITOR=vim
48
+ ```
49
+
50
+ 2. **Emacs**
51
+ ```bash
52
+ export AIDER_EDITOR=emacs
53
+ ```
54
+
55
+ 3. **VSCode**
56
+ ```bash
57
+ export AIDER_EDITOR="code --wait"
58
+ ```
59
+
60
+ 4. **Sublime Text**
61
+ ```bash
62
+ export AIDER_EDITOR="subl --wait"
63
+ ```
64
+
65
+ 5. **BBEdit**
66
+ ```bash
67
+ export AIDER_EDITOR="bbedit --wait"
68
+ ```
69
+
70
+ ### Linux
71
+
72
+ 1. **vim**
73
+ ```bash
74
+ export AIDER_EDITOR=vim
75
+ ```
76
+
77
+ 2. **Emacs**
78
+ ```bash
79
+ export AIDER_EDITOR=emacs
80
+ ```
81
+
82
+ 3. **nano**
83
+ ```bash
84
+ export AIDER_EDITOR=nano
85
+ ```
86
+
87
+ 4. **VSCode**
88
+ ```bash
89
+ export AIDER_EDITOR="code --wait"
90
+ ```
91
+
92
+ 5. **Sublime Text**
93
+ ```bash
94
+ export AIDER_EDITOR="subl --wait"
95
+ ```
96
+
97
+ ### Windows
98
+
99
+ 1. **Notepad**
100
+ ```bat
101
+ set AIDER_EDITOR=notepad
102
+ ```
103
+
104
+ 2. **VSCode**
105
+ ```bat
106
+ set AIDER_EDITOR="code --wait"
107
+ ```
108
+
109
+ 3. **Notepad++**
110
+ ```bat
111
+ set AIDER_EDITOR="notepad++ -multiInst -notabbar -nosession -noPlugin -waitForClose"
112
+ ```
113
+
114
+ ## Editor command arguments
115
+
116
+ Some editors require specific command-line arguments to operate in blocking mode. The `--wait` flag (or equivalent) is commonly used to make the editor block until the file is closed.
117
+
118
+ ## Troubleshooting
119
+
120
+ If you encounter issues with your editor not blocking (returning to the prompt immediately), verify that:
121
+
122
+ 1. Your editor supports blocking mode
123
+ 2. You've included the necessary command-line arguments for blocking mode
124
+ 3. The editor command is properly quoted if it contains spaces or special characters, e.g.:
125
+ ```bash
126
+ export AIDER_EDITOR="code --wait"
127
+ ```
@@ -0,0 +1,95 @@
1
+ ---
2
+ parent: Configuration
3
+ nav_order: 120
4
+ description: Configure Model Control Protocol (MCP) servers for enhanced AI capabilities.
5
+ ---
6
+
7
+ # Model Control Protocol (MCP)
8
+
9
+ Model Control Protocol (MCP) servers extend aider's capabilities by providing additional tools and functionality to the AI models. MCP servers can add features like git operations, context retrieval, and other specialized tools.
10
+
11
+ ## Configuring MCP Servers
12
+
13
+ Aider supports configuring MCP servers using the MCP Server Configuration schema. Please
14
+ see the [Model Context Protocol documentation](https://modelcontextprotocol.io/introduction)
15
+ for more information.
16
+
17
+ You have two ways of sharing your MCP server configuration with Aider.
18
+
19
+ {: .note }
20
+
21
+ > Today, Aider supports connecting to MCP servers using stdio and http transports.
22
+
23
+ ### Config Files
24
+
25
+ You can also configure MCP servers in your `.aider.conf.yml` file:
26
+
27
+ ```yaml
28
+ mcp-servers: |
29
+ {
30
+ "mcpServers": {
31
+ "git": {
32
+ "transport": "http",
33
+ "url": "http://localhost:8000"
34
+ }
35
+ }
36
+ }
37
+ ```
38
+
39
+ Or specify a configuration file:
40
+
41
+ ```yaml
42
+ mcp-servers-file: /path/to/mcp.json
43
+ ```
44
+
45
+ These options are configurable in any of Aider's config file formats.
46
+
47
+ ### Flags
48
+
49
+ You can specify MCP servers directly on the command line using the `--mcp-servers` option with a JSON string:
50
+
51
+ #### Using a JSON String
52
+
53
+ ```bash
54
+ aider --mcp-servers '{"mcpServers":{"git":{"transport":"http","url":"http://localhost:8000"}}}'
55
+ ```
56
+
57
+ #### Using a configuration file
58
+
59
+ Alternatively, you can store your MCP server configurations in a JSON file and reference it with the `--mcp-servers-file` option:
60
+
61
+ ```bash
62
+ aider --mcp-servers-file mcp.json
63
+ ```
64
+
65
+ #### Specifying the transport
66
+
67
+ You can use the `--mcp-transport` flag to specify the transport for all configured MCP servers that do not have a transport specified.
68
+
69
+ ```bash
70
+ aider --mcp-transport http
71
+ ```
72
+
73
+ ### Environment Variables
74
+
75
+ You can also configure MCP servers using environment variables in your `.env` file:
76
+
77
+ ```
78
+ AIDER_MCP_SERVERS={"mcpServers":{"git":{"command":"uvx","args":["mcp-server-git"]}}}
79
+ ```
80
+
81
+ Or specify a configuration file:
82
+
83
+ ```
84
+ AIDER_MCP_SERVERS_FILE=/path/to/mcp.json
85
+ ```
86
+
87
+ ## Troubleshooting
88
+
89
+ If you encounter issues with MCP servers:
90
+
91
+ 1. Use the `--verbose` flag to see detailed information about MCP server loading
92
+ 2. Check that the specified executables are installed and available in your PATH
93
+ 3. Verify that your JSON configuration is valid
94
+
95
+ For more information about specific MCP servers and their capabilities, refer to their respective documentation.