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,548 @@
1
+ ---
2
+ parent: Configuration
3
+ nav_order: 15
4
+ description: How to configure aider with a YAML config file.
5
+ ---
6
+
7
+ # YAML config file
8
+
9
+ Most of aider's options can be set in an `.aider.conf.yml` file.
10
+ Aider will look for a this file in these locations:
11
+
12
+ - Your home directory.
13
+ - The root of your git repo.
14
+ - The current directory.
15
+
16
+ If the files above exist, they will be loaded in that order. Files loaded last will take priority.
17
+
18
+ You can also specify the `--config <filename>` parameter, which will only load the one config file.
19
+
20
+ {% include keys.md %}
21
+
22
+ ## A note on lists
23
+
24
+ Lists of values can be specified either as a bulleted list:
25
+
26
+ ```
27
+ read:
28
+ - CONVENTIONS.md
29
+ - anotherfile.txt
30
+ - thirdfile.py
31
+ ```
32
+
33
+ Or lists can be specified using commas and square brackets:
34
+
35
+ ```
36
+ read: [CONVENTIONS.md, anotherfile.txt, thirdfile.py]
37
+ ```
38
+
39
+ ## Sample YAML config file
40
+
41
+ Below is a sample of the YAML config file, which you
42
+ can also
43
+ [download from GitHub](https://github.com/Aider-AI/aider/blob/main/aider/website/assets/sample.aider.conf.yml).
44
+
45
+ <!--[[[cog
46
+ from aider.args import get_sample_yaml
47
+ from pathlib import Path
48
+ text=get_sample_yaml()
49
+ Path("aider/website/assets/sample.aider.conf.yml").write_text(text)
50
+ cog.outl("```")
51
+ cog.out(text)
52
+ cog.outl("```")
53
+ ]]]-->
54
+ ```
55
+ ##########################################################
56
+ # Sample .aider.conf.yml
57
+ # This file lists *all* the valid configuration entries.
58
+ # Place in your home dir, or at the root of your git repo.
59
+ ##########################################################
60
+
61
+ # Note: You can only put OpenAI and Anthropic API keys in the YAML
62
+ # config file. Keys for all APIs can be stored in a .env file
63
+ # https://aider.chat/docs/config/dotenv.html
64
+
65
+ ##########
66
+ # options:
67
+
68
+ ## show this help message and exit
69
+ #help: xxx
70
+
71
+ #############
72
+ # Main model:
73
+
74
+ ## Specify the model to use for the main chat
75
+ #model: xxx
76
+
77
+ ########################
78
+ # API Keys and settings:
79
+
80
+ ## Specify the OpenAI API key
81
+ #openai-api-key: xxx
82
+
83
+ ## Specify the Anthropic API key
84
+ #anthropic-api-key: xxx
85
+
86
+ ## Specify the api base url
87
+ #openai-api-base: xxx
88
+
89
+ ## (deprecated, use --set-env OPENAI_API_TYPE=<value>)
90
+ #openai-api-type: xxx
91
+
92
+ ## (deprecated, use --set-env OPENAI_API_VERSION=<value>)
93
+ #openai-api-version: xxx
94
+
95
+ ## (deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
96
+ #openai-api-deployment-id: xxx
97
+
98
+ ## (deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
99
+ #openai-organization-id: xxx
100
+
101
+ ## Set an environment variable (to control API settings, can be used multiple times)
102
+ #set-env: xxx
103
+ ## Specify multiple values like this:
104
+ #set-env:
105
+ # - xxx
106
+ # - yyy
107
+ # - zzz
108
+
109
+ ## Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
110
+ #api-key: xxx
111
+ ## Specify multiple values like this:
112
+ #api-key:
113
+ # - xxx
114
+ # - yyy
115
+ # - zzz
116
+
117
+ #################
118
+ # Model settings:
119
+
120
+ ## List known models which match the (partial) MODEL name
121
+ #list-models: xxx
122
+
123
+ ## Specify a file with aider model settings for unknown models
124
+ #model-settings-file: .aider.model.settings.yml
125
+
126
+ ## Specify a file with context window and costs for unknown models
127
+ #model-metadata-file: .aider.model.metadata.json
128
+
129
+ ## Add a model alias (can be used multiple times)
130
+ #alias: xxx
131
+ ## Specify multiple values like this:
132
+ #alias:
133
+ # - xxx
134
+ # - yyy
135
+ # - zzz
136
+
137
+ ## Set the reasoning_effort API parameter (default: not set)
138
+ #reasoning-effort: xxx
139
+
140
+ ## Set the thinking token budget for models that support it. Use 0 to disable. (default: not set)
141
+ #thinking-tokens: xxx
142
+
143
+ ## Verify the SSL cert when connecting to models (default: True)
144
+ #verify-ssl: true
145
+
146
+ ## Timeout in seconds for API calls (default: None)
147
+ #timeout: xxx
148
+
149
+ ## Specify what edit format the LLM should use (default depends on model)
150
+ #edit-format: xxx
151
+
152
+ ## Use architect edit format for the main chat
153
+ #architect: false
154
+
155
+ ## Enable/disable automatic acceptance of architect changes (default: True)
156
+ #auto-accept-architect: true
157
+
158
+ ## Specify the model to use for commit messages and chat history summarization (default depends on --model)
159
+ #weak-model: xxx
160
+
161
+ ## Specify the model to use for editor tasks (default depends on --model)
162
+ #editor-model: xxx
163
+
164
+ ## Specify the edit format for the editor model (default: depends on editor model)
165
+ #editor-edit-format: xxx
166
+
167
+ ## Only work with models that have meta-data available (default: True)
168
+ #show-model-warnings: true
169
+
170
+ ## Check if model accepts settings like reasoning_effort/thinking_tokens (default: True)
171
+ #check-model-accepts-settings: true
172
+
173
+ ## Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
174
+ #max-chat-history-tokens: xxx
175
+
176
+ ######################
177
+ # Context Compaction:
178
+
179
+ ## Enable automatic compaction of chat history to conserve tokens (default: False)
180
+ #enable-context-compaction: false
181
+
182
+ ## The maximum number of tokens in the conversation before context compaction is triggered. (default: 80% of model's context window)
183
+ #context-compaction-max-tokens: xxx
184
+
185
+ ## The target maximum number of tokens for the generated summary. (default: 4096)
186
+ #context-compaction-summary-tokens: 4096
187
+
188
+ #################
189
+ # Cache settings:
190
+
191
+ ## Enable caching of prompts (default: False)
192
+ #cache-prompts: false
193
+
194
+ ## Number of times to ping at 5min intervals to keep prompt cache warm (default: 0)
195
+ #cache-keepalive-pings: false
196
+
197
+ ###################
198
+ # Repomap settings:
199
+
200
+ ## Suggested number of tokens to use for repo map, use 0 to disable
201
+ #map-tokens: xxx
202
+
203
+ ## Control how often the repo map is refreshed. Options: auto, always, files, manual (default: auto)
204
+ #map-refresh: auto
205
+
206
+ ## Multiplier for map tokens when no files are specified (default: 2)
207
+ #map-multiplier-no-files: true
208
+
209
+ ################
210
+ # History Files:
211
+
212
+ ## Specify the chat input history file (default: .aider.input.history)
213
+ #input-history-file: .aider.input.history
214
+
215
+ ## Specify the chat history file (default: .aider.chat.history.md)
216
+ #chat-history-file: .aider.chat.history.md
217
+
218
+ ## Restore the previous chat history messages (default: False)
219
+ #restore-chat-history: false
220
+
221
+ ## Log the conversation with the LLM to this file (for example, .aider.llm.history)
222
+ #llm-history-file: xxx
223
+
224
+ ##################
225
+ # Output settings:
226
+
227
+ ## Use colors suitable for a dark terminal background (default: False)
228
+ #dark-mode: false
229
+
230
+ ## Use colors suitable for a light terminal background (default: False)
231
+ #light-mode: false
232
+
233
+ ## Enable/disable pretty, colorized output (default: True)
234
+ #pretty: true
235
+
236
+ ## Enable/disable streaming responses (default: True)
237
+ #stream: true
238
+
239
+ ## Set the color for user input (default: #00cc00)
240
+ #user-input-color: "#00cc00"
241
+
242
+ ## Set the color for tool output (default: None)
243
+ #tool-output-color: "xxx"
244
+
245
+ ## Set the color for tool error messages (default: #FF2222)
246
+ #tool-error-color: "#FF2222"
247
+
248
+ ## Set the color for tool warning messages (default: #FFA500)
249
+ #tool-warning-color: "#FFA500"
250
+
251
+ ## Set the color for assistant output (default: #0088ff)
252
+ #assistant-output-color: "#0088ff"
253
+
254
+ ## Set the color for the completion menu (default: terminal's default text color)
255
+ #completion-menu-color: "xxx"
256
+
257
+ ## Set the background color for the completion menu (default: terminal's default background color)
258
+ #completion-menu-bg-color: "xxx"
259
+
260
+ ## Set the color for the current item in the completion menu (default: terminal's default background color)
261
+ #completion-menu-current-color: "xxx"
262
+
263
+ ## Set the background color for the current item in the completion menu (default: terminal's default text color)
264
+ #completion-menu-current-bg-color: "xxx"
265
+
266
+ ## 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)
267
+ #code-theme: default
268
+
269
+ ## Show diffs when committing changes (default: False)
270
+ #show-diffs: false
271
+
272
+ ###############
273
+ # Git settings:
274
+
275
+ ## Enable/disable looking for a git repo (default: True)
276
+ #git: true
277
+
278
+ ## Enable/disable adding .aider* to .gitignore (default: True)
279
+ #gitignore: true
280
+
281
+ ## Enable/disable the addition of files listed in .gitignore to Aider's editing scope.
282
+ #add-gitignore-files: false
283
+
284
+ ## Specify the aider ignore file (default: .aiderignore in git root)
285
+ #aiderignore: .aiderignore
286
+
287
+ ## Only consider files in the current subtree of the git repository
288
+ #subtree-only: false
289
+
290
+ ## Enable/disable auto commit of LLM changes (default: True)
291
+ #auto-commits: true
292
+
293
+ ## Enable/disable commits when repo is found dirty (default: True)
294
+ #dirty-commits: true
295
+
296
+ ## Attribute aider code changes in the git author name (default: True). If explicitly set to True, overrides --attribute-co-authored-by precedence.
297
+ #attribute-author: xxx
298
+
299
+ ## Attribute aider commits in the git committer name (default: True). If explicitly set to True, overrides --attribute-co-authored-by precedence for aider edits.
300
+ #attribute-committer: xxx
301
+
302
+ ## Prefix commit messages with 'aider: ' if aider authored the changes (default: False)
303
+ #attribute-commit-message-author: false
304
+
305
+ ## Prefix all commit messages with 'aider: ' (default: False)
306
+ #attribute-commit-message-committer: false
307
+
308
+ ## 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.
309
+ #attribute-co-authored-by: true
310
+
311
+ ## Enable/disable git pre-commit hooks with --no-verify (default: False)
312
+ #git-commit-verify: false
313
+
314
+ ## Commit all pending changes with a suitable commit message, then exit
315
+ #commit: false
316
+
317
+ ## Specify a custom prompt for generating commit messages
318
+ #commit-prompt: xxx
319
+
320
+ ## Perform a dry run without modifying files (default: False)
321
+ #dry-run: false
322
+
323
+ ## Skip the sanity check for the git repository (default: False)
324
+ #skip-sanity-check-repo: false
325
+
326
+ ## Enable/disable watching files for ai coding comments (default: False)
327
+ #watch-files: false
328
+
329
+ ########################
330
+ # Fixing and committing:
331
+
332
+ ## Lint and fix provided files, or dirty files if none provided
333
+ #lint: false
334
+
335
+ ## Specify lint commands to run for different languages, eg: "python: flake8 --select=..." (can be used multiple times)
336
+ #lint-cmd: xxx
337
+ ## Specify multiple values like this:
338
+ #lint-cmd:
339
+ # - xxx
340
+ # - yyy
341
+ # - zzz
342
+
343
+ ## Enable/disable automatic linting after changes (default: True)
344
+ #auto-lint: true
345
+
346
+ ## Specify command to run tests
347
+ #test-cmd: xxx
348
+
349
+ ## Enable/disable automatic testing after changes (default: False)
350
+ #auto-test: false
351
+
352
+ ## Run tests, fix problems found and then exit
353
+ #test: false
354
+
355
+ ############
356
+ # Analytics:
357
+
358
+ ## Enable/disable analytics for current session (default: random)
359
+ #analytics: xxx
360
+
361
+ ## Specify a file to log analytics events
362
+ #analytics-log: xxx
363
+
364
+ ## Permanently disable analytics
365
+ #analytics-disable: false
366
+
367
+ ## Send analytics to custom PostHog instance
368
+ #analytics-posthog-host: xxx
369
+
370
+ ## Send analytics to custom PostHog project
371
+ #analytics-posthog-project-api-key: xxx
372
+
373
+ ############
374
+ # Upgrading:
375
+
376
+ ## Check for updates and return status in the exit code
377
+ #just-check-update: false
378
+
379
+ ## Check for new aider versions on launch
380
+ #check-update: true
381
+
382
+ ## Show release notes on first run of new version (default: None, ask user)
383
+ #show-release-notes: xxx
384
+
385
+ ## Install the latest version from the main branch
386
+ #install-main-branch: false
387
+
388
+ ## Upgrade aider to the latest version from PyPI
389
+ #upgrade: false
390
+
391
+ ## Show the version number and exit
392
+ #version: xxx
393
+
394
+ ########
395
+ # Modes:
396
+
397
+ ## Specify a single message to send the LLM, process reply then exit (disables chat mode)
398
+ #message: xxx
399
+
400
+ ## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
401
+ #message-file: xxx
402
+
403
+ ## Run aider in your browser (default: False)
404
+ #gui: false
405
+
406
+ ## Enable automatic copy/paste of chat between aider and web UI (default: False)
407
+ #copy-paste: false
408
+
409
+ ## Apply the changes from the given file instead of running the chat (debug)
410
+ #apply: xxx
411
+
412
+ ## Apply clipboard contents as edits using the main model's editor format
413
+ #apply-clipboard-edits: false
414
+
415
+ ## Do all startup activities then exit before accepting user input (debug)
416
+ #exit: false
417
+
418
+ ## Print the repo map and exit (debug)
419
+ #show-repo-map: false
420
+
421
+ ## Print the system prompts and exit (debug)
422
+ #show-prompts: false
423
+
424
+ #################
425
+ # Voice settings:
426
+
427
+ ## Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
428
+ #voice-format: wav
429
+
430
+ ## Specify the language for voice using ISO 639-1 code (default: auto)
431
+ #voice-language: en
432
+
433
+ ## Specify the input device name for voice recording
434
+ #voice-input-device: xxx
435
+
436
+ #################
437
+ # Other settings:
438
+
439
+ ## Never prompt for or attempt to install Playwright for web scraping (default: False).
440
+ #disable-playwright: false
441
+
442
+ ## specify a file to edit (can be used multiple times)
443
+ #file: xxx
444
+ ## Specify multiple values like this:
445
+ #file:
446
+ # - xxx
447
+ # - yyy
448
+ # - zzz
449
+
450
+ ## specify a read-only file (can be used multiple times)
451
+ #read: xxx
452
+ ## Specify multiple values like this:
453
+ #read:
454
+ # - xxx
455
+ # - yyy
456
+ # - zzz
457
+
458
+ ## Use VI editing mode in the terminal (default: False)
459
+ #vim: false
460
+
461
+ ## Specify the language to use in the chat (default: None, uses system settings)
462
+ #chat-language: xxx
463
+
464
+ ## Specify the language to use in the commit message (default: None, user language)
465
+ #commit-language: xxx
466
+
467
+ ## Always say yes to every confirmation
468
+ #yes-always: false
469
+
470
+ ## Enable verbose output
471
+ #verbose: false
472
+
473
+ ## Load and execute /commands from a file on launch
474
+ #load: xxx
475
+
476
+ ## Specify the encoding for input and output (default: utf-8)
477
+ #encoding: utf-8
478
+
479
+ ## Line endings to use when writing files (default: platform)
480
+ #line-endings: platform
481
+
482
+ ## Specify the config file (default: search for .aider.conf.yml in git root, cwd or home directory)
483
+ #config: xxx
484
+
485
+ ## Specify the .env file to load (default: .env in git root)
486
+ #env-file: .env
487
+
488
+ ## Enable/disable suggesting shell commands (default: True)
489
+ #suggest-shell-commands: true
490
+
491
+ ## Enable/disable fancy input with history and completion (default: True)
492
+ #fancy-input: true
493
+
494
+ ## Enable/disable multi-line input mode with Meta-Enter to submit (default: False)
495
+ #multiline: false
496
+
497
+ ## Enable/disable terminal bell notifications when LLM responses are ready (default: False)
498
+ #notifications: false
499
+
500
+ ## Specify a command to run for notifications instead of the terminal bell. If not specified, a default command for your OS may be used.
501
+ #notifications-command: xxx
502
+
503
+ ## Enable/disable detection and offering to add URLs to chat (default: True)
504
+ #detect-urls: true
505
+
506
+ ## Specify which editor to use for the /editor command
507
+ #editor: xxx
508
+
509
+ ## Print shell completion script for the specified SHELL and exit. Supported shells: bash, tcsh, zsh. Example: aider --shell-completions bash
510
+ #shell-completions: xxx
511
+
512
+ ############################
513
+ # Deprecated model settings:
514
+
515
+ ## Use claude-3-opus-20240229 model for the main chat (deprecated, use --model)
516
+ #opus: false
517
+
518
+ ## Use anthropic/claude-3-7-sonnet-20250219 model for the main chat (deprecated, use --model)
519
+ #sonnet: false
520
+
521
+ ## Use claude-3-5-haiku-20241022 model for the main chat (deprecated, use --model)
522
+ #haiku: false
523
+
524
+ ## Use gpt-4-0613 model for the main chat (deprecated, use --model)
525
+ #4: false
526
+
527
+ ## Use gpt-4o model for the main chat (deprecated, use --model)
528
+ #4o: false
529
+
530
+ ## Use gpt-4o-mini model for the main chat (deprecated, use --model)
531
+ #mini: false
532
+
533
+ ## Use gpt-4-1106-preview model for the main chat (deprecated, use --model)
534
+ #4-turbo: false
535
+
536
+ ## Use gpt-3.5-turbo model for the main chat (deprecated, use --model)
537
+ #35turbo: false
538
+
539
+ ## Use deepseek/deepseek-chat model for the main chat (deprecated, use --model)
540
+ #deepseek: false
541
+
542
+ ## Use o1-mini model for the main chat (deprecated, use --model)
543
+ #o1-mini: false
544
+
545
+ ## Use o1-preview model for the main chat (deprecated, use --model)
546
+ #o1-preview: false
547
+ ```
548
+ <!--[[[end]]]-->
@@ -0,0 +1,90 @@
1
+ ---
2
+ parent: Configuration
3
+ nav_order: 5
4
+ description: Setting API keys for API providers.
5
+ ---
6
+
7
+ # API Keys
8
+
9
+ Aider lets you specify API keys in a few ways:
10
+
11
+ - On the command line
12
+ - As environment variables
13
+ - In a `.env` file
14
+ - In your `.aider.conf.yml` config file
15
+
16
+ ---
17
+
18
+ ## OpenAI and Anthropic
19
+
20
+ Aider has special support for providing
21
+ OpenAI and Anthropic API keys
22
+ via dedicated switches and configuration options.
23
+ Settings keys for other providers works a bit differently, see below.
24
+
25
+ #### Command line
26
+
27
+ You can set OpenAI and Anthropic API keys via
28
+ [command line switches](/docs/config/options.html#api-keys-and-settings)
29
+ `--openai-api-key` and `--anthropic-api-key`.
30
+
31
+
32
+ #### Environment variables or .env file
33
+
34
+ You can also store them in environment variables or a
35
+ [.env file](/docs/config/dotenv.html), which also works
36
+ for every API provider:
37
+
38
+ ```
39
+ OPENAI_API_KEY=<key>
40
+ ANTHROPIC_API_KEY=<key>
41
+ ```
42
+
43
+ #### YAML config file
44
+ You can also set those API keys via special entries in the
45
+ [YAML config file](/docs/config/aider_conf.html), like this:
46
+
47
+ ```yaml
48
+ openai-api-key: <key>
49
+ anthropic-api-key: <key>
50
+ ```
51
+
52
+
53
+ ---
54
+
55
+ ## Other API providers
56
+
57
+ All other LLM providers can use one of these other methods to set their API keys.
58
+
59
+ #### Command line
60
+ {: .no_toc }
61
+
62
+ Use `--api-key provider=<key>` which has the effect of setting the environment variable `PROVIDER_API_KEY=<key>`. So `--api-key gemini=xxx` would set `GEMINI_API_KEY=xxx`.
63
+
64
+ #### Environment variables or .env file
65
+ {: .no_toc }
66
+
67
+ You can set API keys in environment variables.
68
+ The [.env file](/docs/config/dotenv.html)
69
+ is a great place to store your API keys and other provider API environment variables:
70
+
71
+ ```bash
72
+ GEMINI_API_KEY=foo
73
+ OPENROUTER_API_KEY=bar
74
+ DEEPSEEK_API_KEY=baz
75
+ ```
76
+
77
+ #### YAML config file
78
+
79
+
80
+ You can also set API keys in the
81
+ [`.aider.conf.yml` file](/docs/config/aider_conf.html)
82
+ via the `api-key` entry:
83
+
84
+ ```
85
+ api-key:
86
+ - gemini=foo # Sets env var GEMINI_API_KEY=foo
87
+ - openrouter=bar # Sets env var OPENROUTER_API_KEY=bar
88
+ - deepseek=baz # Sets env var DEEPSEEK_API_KEY=baz
89
+ ```
90
+