chatmcp-cli 0.1.0__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 (228) hide show
  1. aider/__init__.py +20 -0
  2. aider/__main__.py +4 -0
  3. aider/_version.py +21 -0
  4. aider/analytics.py +250 -0
  5. aider/args.py +926 -0
  6. aider/args_formatter.py +228 -0
  7. aider/coders/__init__.py +34 -0
  8. aider/coders/architect_coder.py +48 -0
  9. aider/coders/architect_prompts.py +40 -0
  10. aider/coders/ask_coder.py +9 -0
  11. aider/coders/ask_prompts.py +35 -0
  12. aider/coders/base_coder.py +2483 -0
  13. aider/coders/base_prompts.py +60 -0
  14. aider/coders/chat_chunks.py +64 -0
  15. aider/coders/context_coder.py +53 -0
  16. aider/coders/context_prompts.py +75 -0
  17. aider/coders/editblock_coder.py +657 -0
  18. aider/coders/editblock_fenced_coder.py +10 -0
  19. aider/coders/editblock_fenced_prompts.py +143 -0
  20. aider/coders/editblock_func_coder.py +141 -0
  21. aider/coders/editblock_func_prompts.py +27 -0
  22. aider/coders/editblock_prompts.py +174 -0
  23. aider/coders/editor_diff_fenced_coder.py +9 -0
  24. aider/coders/editor_diff_fenced_prompts.py +11 -0
  25. aider/coders/editor_editblock_coder.py +8 -0
  26. aider/coders/editor_editblock_prompts.py +18 -0
  27. aider/coders/editor_whole_coder.py +8 -0
  28. aider/coders/editor_whole_prompts.py +10 -0
  29. aider/coders/help_coder.py +16 -0
  30. aider/coders/help_prompts.py +46 -0
  31. aider/coders/patch_coder.py +706 -0
  32. aider/coders/patch_prompts.py +161 -0
  33. aider/coders/search_replace.py +757 -0
  34. aider/coders/shell.py +37 -0
  35. aider/coders/single_wholefile_func_coder.py +102 -0
  36. aider/coders/single_wholefile_func_prompts.py +27 -0
  37. aider/coders/udiff_coder.py +429 -0
  38. aider/coders/udiff_prompts.py +115 -0
  39. aider/coders/udiff_simple.py +14 -0
  40. aider/coders/udiff_simple_prompts.py +25 -0
  41. aider/coders/wholefile_coder.py +144 -0
  42. aider/coders/wholefile_func_coder.py +134 -0
  43. aider/coders/wholefile_func_prompts.py +27 -0
  44. aider/coders/wholefile_prompts.py +67 -0
  45. aider/commands.py +1665 -0
  46. aider/copypaste.py +72 -0
  47. aider/deprecated.py +126 -0
  48. aider/diffs.py +128 -0
  49. aider/dump.py +29 -0
  50. aider/editor.py +147 -0
  51. aider/exceptions.py +107 -0
  52. aider/format_settings.py +26 -0
  53. aider/gui.py +545 -0
  54. aider/help.py +163 -0
  55. aider/help_pats.py +19 -0
  56. aider/history.py +143 -0
  57. aider/io.py +1175 -0
  58. aider/linter.py +304 -0
  59. aider/llm.py +47 -0
  60. aider/main.py +1267 -0
  61. aider/mdstream.py +243 -0
  62. aider/models.py +1286 -0
  63. aider/onboarding.py +428 -0
  64. aider/openrouter.py +128 -0
  65. aider/prompts.py +64 -0
  66. aider/queries/tree-sitter-language-pack/README.md +7 -0
  67. aider/queries/tree-sitter-language-pack/arduino-tags.scm +5 -0
  68. aider/queries/tree-sitter-language-pack/c-tags.scm +9 -0
  69. aider/queries/tree-sitter-language-pack/chatito-tags.scm +16 -0
  70. aider/queries/tree-sitter-language-pack/commonlisp-tags.scm +122 -0
  71. aider/queries/tree-sitter-language-pack/cpp-tags.scm +15 -0
  72. aider/queries/tree-sitter-language-pack/csharp-tags.scm +26 -0
  73. aider/queries/tree-sitter-language-pack/d-tags.scm +26 -0
  74. aider/queries/tree-sitter-language-pack/dart-tags.scm +92 -0
  75. aider/queries/tree-sitter-language-pack/elisp-tags.scm +5 -0
  76. aider/queries/tree-sitter-language-pack/elixir-tags.scm +54 -0
  77. aider/queries/tree-sitter-language-pack/elm-tags.scm +19 -0
  78. aider/queries/tree-sitter-language-pack/gleam-tags.scm +41 -0
  79. aider/queries/tree-sitter-language-pack/go-tags.scm +42 -0
  80. aider/queries/tree-sitter-language-pack/java-tags.scm +20 -0
  81. aider/queries/tree-sitter-language-pack/javascript-tags.scm +88 -0
  82. aider/queries/tree-sitter-language-pack/lua-tags.scm +34 -0
  83. aider/queries/tree-sitter-language-pack/ocaml-tags.scm +115 -0
  84. aider/queries/tree-sitter-language-pack/ocaml_interface-tags.scm +98 -0
  85. aider/queries/tree-sitter-language-pack/pony-tags.scm +39 -0
  86. aider/queries/tree-sitter-language-pack/properties-tags.scm +5 -0
  87. aider/queries/tree-sitter-language-pack/python-tags.scm +14 -0
  88. aider/queries/tree-sitter-language-pack/r-tags.scm +21 -0
  89. aider/queries/tree-sitter-language-pack/racket-tags.scm +12 -0
  90. aider/queries/tree-sitter-language-pack/ruby-tags.scm +64 -0
  91. aider/queries/tree-sitter-language-pack/rust-tags.scm +60 -0
  92. aider/queries/tree-sitter-language-pack/solidity-tags.scm +43 -0
  93. aider/queries/tree-sitter-language-pack/swift-tags.scm +51 -0
  94. aider/queries/tree-sitter-language-pack/udev-tags.scm +20 -0
  95. aider/queries/tree-sitter-languages/README.md +23 -0
  96. aider/queries/tree-sitter-languages/c-tags.scm +9 -0
  97. aider/queries/tree-sitter-languages/c_sharp-tags.scm +46 -0
  98. aider/queries/tree-sitter-languages/cpp-tags.scm +15 -0
  99. aider/queries/tree-sitter-languages/dart-tags.scm +91 -0
  100. aider/queries/tree-sitter-languages/elisp-tags.scm +8 -0
  101. aider/queries/tree-sitter-languages/elixir-tags.scm +54 -0
  102. aider/queries/tree-sitter-languages/elm-tags.scm +19 -0
  103. aider/queries/tree-sitter-languages/go-tags.scm +30 -0
  104. aider/queries/tree-sitter-languages/hcl-tags.scm +77 -0
  105. aider/queries/tree-sitter-languages/java-tags.scm +20 -0
  106. aider/queries/tree-sitter-languages/javascript-tags.scm +88 -0
  107. aider/queries/tree-sitter-languages/kotlin-tags.scm +27 -0
  108. aider/queries/tree-sitter-languages/ocaml-tags.scm +115 -0
  109. aider/queries/tree-sitter-languages/ocaml_interface-tags.scm +98 -0
  110. aider/queries/tree-sitter-languages/php-tags.scm +26 -0
  111. aider/queries/tree-sitter-languages/python-tags.scm +12 -0
  112. aider/queries/tree-sitter-languages/ql-tags.scm +26 -0
  113. aider/queries/tree-sitter-languages/ruby-tags.scm +64 -0
  114. aider/queries/tree-sitter-languages/rust-tags.scm +60 -0
  115. aider/queries/tree-sitter-languages/scala-tags.scm +65 -0
  116. aider/queries/tree-sitter-languages/typescript-tags.scm +41 -0
  117. aider/reasoning_tags.py +82 -0
  118. aider/repo.py +623 -0
  119. aider/repomap.py +847 -0
  120. aider/report.py +200 -0
  121. aider/resources/__init__.py +3 -0
  122. aider/resources/model-metadata.json +468 -0
  123. aider/resources/model-settings.yml +1767 -0
  124. aider/run_cmd.py +132 -0
  125. aider/scrape.py +284 -0
  126. aider/sendchat.py +61 -0
  127. aider/special.py +203 -0
  128. aider/urls.py +17 -0
  129. aider/utils.py +338 -0
  130. aider/versioncheck.py +113 -0
  131. aider/voice.py +187 -0
  132. aider/waiting.py +221 -0
  133. aider/watch.py +318 -0
  134. aider/watch_prompts.py +12 -0
  135. aider/website/Gemfile +8 -0
  136. aider/website/_includes/blame.md +162 -0
  137. aider/website/_includes/get-started.md +22 -0
  138. aider/website/_includes/help-tip.md +5 -0
  139. aider/website/_includes/help.md +24 -0
  140. aider/website/_includes/install.md +5 -0
  141. aider/website/_includes/keys.md +4 -0
  142. aider/website/_includes/model-warnings.md +67 -0
  143. aider/website/_includes/multi-line.md +22 -0
  144. aider/website/_includes/python-m-aider.md +5 -0
  145. aider/website/_includes/recording.css +228 -0
  146. aider/website/_includes/recording.md +34 -0
  147. aider/website/_includes/replit-pipx.md +9 -0
  148. aider/website/_includes/works-best.md +1 -0
  149. aider/website/_sass/custom/custom.scss +103 -0
  150. aider/website/docs/config/adv-model-settings.md +1881 -0
  151. aider/website/docs/config/aider_conf.md +527 -0
  152. aider/website/docs/config/api-keys.md +90 -0
  153. aider/website/docs/config/dotenv.md +478 -0
  154. aider/website/docs/config/editor.md +127 -0
  155. aider/website/docs/config/model-aliases.md +103 -0
  156. aider/website/docs/config/options.md +843 -0
  157. aider/website/docs/config/reasoning.md +209 -0
  158. aider/website/docs/config.md +44 -0
  159. aider/website/docs/faq.md +378 -0
  160. aider/website/docs/git.md +76 -0
  161. aider/website/docs/index.md +47 -0
  162. aider/website/docs/install/codespaces.md +39 -0
  163. aider/website/docs/install/docker.md +57 -0
  164. aider/website/docs/install/optional.md +100 -0
  165. aider/website/docs/install/replit.md +8 -0
  166. aider/website/docs/install.md +115 -0
  167. aider/website/docs/languages.md +264 -0
  168. aider/website/docs/legal/contributor-agreement.md +111 -0
  169. aider/website/docs/legal/privacy.md +104 -0
  170. aider/website/docs/llms/anthropic.md +77 -0
  171. aider/website/docs/llms/azure.md +48 -0
  172. aider/website/docs/llms/bedrock.md +132 -0
  173. aider/website/docs/llms/cohere.md +34 -0
  174. aider/website/docs/llms/deepseek.md +32 -0
  175. aider/website/docs/llms/gemini.md +49 -0
  176. aider/website/docs/llms/github.md +105 -0
  177. aider/website/docs/llms/groq.md +36 -0
  178. aider/website/docs/llms/lm-studio.md +39 -0
  179. aider/website/docs/llms/ollama.md +75 -0
  180. aider/website/docs/llms/openai-compat.md +39 -0
  181. aider/website/docs/llms/openai.md +58 -0
  182. aider/website/docs/llms/openrouter.md +78 -0
  183. aider/website/docs/llms/other.md +103 -0
  184. aider/website/docs/llms/vertex.md +50 -0
  185. aider/website/docs/llms/warnings.md +10 -0
  186. aider/website/docs/llms/xai.md +53 -0
  187. aider/website/docs/llms.md +54 -0
  188. aider/website/docs/more/analytics.md +122 -0
  189. aider/website/docs/more/edit-formats.md +116 -0
  190. aider/website/docs/more/infinite-output.md +137 -0
  191. aider/website/docs/more-info.md +8 -0
  192. aider/website/docs/recordings/auto-accept-architect.md +31 -0
  193. aider/website/docs/recordings/dont-drop-original-read-files.md +35 -0
  194. aider/website/docs/recordings/index.md +21 -0
  195. aider/website/docs/recordings/model-accepts-settings.md +69 -0
  196. aider/website/docs/recordings/tree-sitter-language-pack.md +80 -0
  197. aider/website/docs/repomap.md +112 -0
  198. aider/website/docs/scripting.md +100 -0
  199. aider/website/docs/troubleshooting/aider-not-found.md +24 -0
  200. aider/website/docs/troubleshooting/edit-errors.md +76 -0
  201. aider/website/docs/troubleshooting/imports.md +62 -0
  202. aider/website/docs/troubleshooting/models-and-keys.md +54 -0
  203. aider/website/docs/troubleshooting/support.md +79 -0
  204. aider/website/docs/troubleshooting/token-limits.md +96 -0
  205. aider/website/docs/troubleshooting/warnings.md +12 -0
  206. aider/website/docs/troubleshooting.md +11 -0
  207. aider/website/docs/usage/browser.md +57 -0
  208. aider/website/docs/usage/caching.md +49 -0
  209. aider/website/docs/usage/commands.md +132 -0
  210. aider/website/docs/usage/conventions.md +119 -0
  211. aider/website/docs/usage/copypaste.md +121 -0
  212. aider/website/docs/usage/images-urls.md +48 -0
  213. aider/website/docs/usage/lint-test.md +118 -0
  214. aider/website/docs/usage/modes.md +211 -0
  215. aider/website/docs/usage/not-code.md +179 -0
  216. aider/website/docs/usage/notifications.md +87 -0
  217. aider/website/docs/usage/tips.md +79 -0
  218. aider/website/docs/usage/tutorials.md +30 -0
  219. aider/website/docs/usage/voice.md +121 -0
  220. aider/website/docs/usage/watch.md +294 -0
  221. aider/website/docs/usage.md +92 -0
  222. aider/website/share/index.md +101 -0
  223. chatmcp_cli-0.1.0.dist-info/METADATA +502 -0
  224. chatmcp_cli-0.1.0.dist-info/RECORD +228 -0
  225. chatmcp_cli-0.1.0.dist-info/WHEEL +5 -0
  226. chatmcp_cli-0.1.0.dist-info/entry_points.txt +3 -0
  227. chatmcp_cli-0.1.0.dist-info/licenses/LICENSE.txt +202 -0
  228. chatmcp_cli-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,264 @@
1
+ ---
2
+ parent: More info
3
+ nav_order: 200
4
+ description: Aider supports pretty much all popular coding languages.
5
+ ---
6
+ # Supported languages
7
+
8
+ Aider should work well with most popular coding languages.
9
+ This is because top LLMs are fluent in most mainstream languages,
10
+ and familiar with popular libraries, packages and frameworks.
11
+
12
+ Aider has specific support for linting many languages.
13
+ By default, aider runs the built in linter any time a file is edited.
14
+ If it finds syntax errors, aider will offer to fix them for you.
15
+ This helps catch small code issues and quickly fix them.
16
+
17
+ Aider also does code analysis to help
18
+ the LLM navigate larger code bases by producing
19
+ a [repository map](https://aider.chat/docs/repomap.html).
20
+ Aider can currently produce repository maps for many popular
21
+ mainstream languages, listed below.
22
+
23
+
24
+ ## How to add support for another language
25
+
26
+ Aider should work quite well for other languages, even those
27
+ without repo map or linter support.
28
+ You should really try coding with aider before
29
+ assuming it needs better support for your language.
30
+
31
+ That said, if aider already has support for linting your language,
32
+ then it should be possible to add repo map support.
33
+ To build a repo map, aider needs the `tags.scm` file
34
+ from the given language's tree-sitter grammar.
35
+ If you can find and share that file in a
36
+ [GitHub issue](https://github.com/Aider-AI/aider/issues),
37
+ then it may be possible to add repo map support.
38
+
39
+ If aider doesn't already support linting your language,
40
+ it will be more complicated to add support.
41
+ Aider relies on
42
+ [tree-sitter-language-pack](https://github.com/Goldziher/tree-sitter-language-pack)
43
+ to provide pre-packaged versions of tree-sitter
44
+ language parsers.
45
+ This makes it easy for users to install aider in many diverse environments.
46
+ You probably need to work with that project to get your language
47
+ supported, which will easily allow aider to lint that language.
48
+ For repo-map support, you will also need to find or create a `tags.scm` file.
49
+
50
+ <!--[[[cog
51
+ from aider.repomap import get_supported_languages_md
52
+ cog.out(get_supported_languages_md())
53
+ ]]]-->
54
+
55
+ | Language | File extension | Repo map | Linter |
56
+ |:--------:|:--------------:|:--------:|:------:|
57
+ | actionscript | .as | | ✓ |
58
+ | ada | .adb | | ✓ |
59
+ | ada | .ads | | ✓ |
60
+ | agda | .agda | | ✓ |
61
+ | arduino | .ino | ✓ | ✓ |
62
+ | asm | .asm | | ✓ |
63
+ | asm | .s | | ✓ |
64
+ | astro | .astro | | ✓ |
65
+ | bash | .bash | | ✓ |
66
+ | bash | .sh | | ✓ |
67
+ | bash | .zsh | | ✓ |
68
+ | beancount | .bean | | ✓ |
69
+ | bibtex | .bib | | ✓ |
70
+ | bicep | .bicep | | ✓ |
71
+ | bitbake | .bb | | ✓ |
72
+ | bitbake | .bbappend | | ✓ |
73
+ | bitbake | .bbclass | | ✓ |
74
+ | c | .c | ✓ | ✓ |
75
+ | c | .h | ✓ | ✓ |
76
+ | cairo | .cairo | | ✓ |
77
+ | capnp | .capnp | | ✓ |
78
+ | chatito | .chatito | ✓ | ✓ |
79
+ | clarity | .clar | | ✓ |
80
+ | clojure | .clj | | ✓ |
81
+ | clojure | .cljc | | ✓ |
82
+ | clojure | .cljs | | ✓ |
83
+ | clojure | .edn | | ✓ |
84
+ | cmake | .cmake | | ✓ |
85
+ | cmake | CMakeLists.txt | | ✓ |
86
+ | commonlisp | .cl | ✓ | ✓ |
87
+ | commonlisp | .lisp | ✓ | ✓ |
88
+ | cpon | .cpon | | ✓ |
89
+ | cpp | .cc | ✓ | ✓ |
90
+ | cpp | .cpp | ✓ | ✓ |
91
+ | cpp | .cxx | ✓ | ✓ |
92
+ | cpp | .h++ | ✓ | ✓ |
93
+ | cpp | .hpp | ✓ | ✓ |
94
+ | cpp | .hxx | ✓ | ✓ |
95
+ | csharp | .cs | ✓ | ✓ |
96
+ | css | .css | | ✓ |
97
+ | csv | .csv | | ✓ |
98
+ | cuda | .cu | | ✓ |
99
+ | cuda | .cuh | | ✓ |
100
+ | d | .d | ✓ | ✓ |
101
+ | dart | .dart | ✓ | ✓ |
102
+ | dockerfile | Dockerfile | | ✓ |
103
+ | dtd | .dtd | | ✓ |
104
+ | elisp | .el | ✓ | ✓ |
105
+ | elixir | .ex | ✓ | ✓ |
106
+ | elixir | .exs | ✓ | ✓ |
107
+ | elm | .elm | ✓ | ✓ |
108
+ | erlang | .erl | | ✓ |
109
+ | erlang | .hrl | | ✓ |
110
+ | fennel | .fnl | | ✓ |
111
+ | firrtl | .fir | | ✓ |
112
+ | fish | .fish | | ✓ |
113
+ | fortran | .f | | ✓ |
114
+ | fortran | .f03 | | ✓ |
115
+ | fortran | .f08 | | ✓ |
116
+ | fortran | .f90 | | ✓ |
117
+ | fortran | .f95 | | ✓ |
118
+ | func | .fc | | ✓ |
119
+ | gdscript | .gd | | ✓ |
120
+ | gitattributes | .gitattributes | | ✓ |
121
+ | gitcommit | .gitcommit | | ✓ |
122
+ | gitignore | .gitignore | | ✓ |
123
+ | gleam | .gleam | ✓ | ✓ |
124
+ | glsl | .frag | | ✓ |
125
+ | glsl | .glsl | | ✓ |
126
+ | glsl | .vert | | ✓ |
127
+ | gn | .gn | | ✓ |
128
+ | gn | .gni | | ✓ |
129
+ | go | .go | ✓ | ✓ |
130
+ | gomod | go.mod | | ✓ |
131
+ | gosum | go.sum | | ✓ |
132
+ | groovy | .groovy | | ✓ |
133
+ | gstlaunch | .launch | | ✓ |
134
+ | hack | .hack | | ✓ |
135
+ | hare | .ha | | ✓ |
136
+ | haskell | .hs | | ✓ |
137
+ | haxe | .hx | | ✓ |
138
+ | hcl | .hcl | ✓ | ✓ |
139
+ | hcl | .tf | ✓ | ✓ |
140
+ | hcl | .tfvars | ✓ | ✓ |
141
+ | heex | .heex | | ✓ |
142
+ | hlsl | .hlsl | | ✓ |
143
+ | html | .htm | | ✓ |
144
+ | html | .html | | ✓ |
145
+ | hyprlang | .hypr | | ✓ |
146
+ | ispc | .ispc | | ✓ |
147
+ | janet | .janet | | ✓ |
148
+ | java | .java | ✓ | ✓ |
149
+ | javascript | .js | ✓ | ✓ |
150
+ | javascript | .jsx | ✓ | ✓ |
151
+ | javascript | .mjs | ✓ | ✓ |
152
+ | jsdoc | .jsdoc | | ✓ |
153
+ | json | .json | | ✓ |
154
+ | jsonnet | .jsonnet | | ✓ |
155
+ | jsonnet | .libsonnet | | ✓ |
156
+ | julia | .jl | | ✓ |
157
+ | kconfig | Kconfig | | ✓ |
158
+ | kdl | .kdl | | ✓ |
159
+ | kotlin | .kt | ✓ | ✓ |
160
+ | kotlin | .kts | ✓ | ✓ |
161
+ | latex | .cls | | ✓ |
162
+ | latex | .sty | | ✓ |
163
+ | latex | .tex | | ✓ |
164
+ | linkerscript | .ld | | ✓ |
165
+ | llvm | .ll | | ✓ |
166
+ | lua | .lua | ✓ | ✓ |
167
+ | luadoc | .luadoc | | ✓ |
168
+ | luap | .luap | | ✓ |
169
+ | luau | .luau | | ✓ |
170
+ | magik | .magik | | ✓ |
171
+ | make | .mk | | ✓ |
172
+ | make | Makefile | | ✓ |
173
+ | markdown | .markdown | | ✓ |
174
+ | markdown | .md | | ✓ |
175
+ | matlab | .m | | ✓ |
176
+ | matlab | .mat | | ✓ |
177
+ | mermaid | .mermaid | | ✓ |
178
+ | meson | meson.build | | ✓ |
179
+ | ninja | .ninja | | ✓ |
180
+ | nix | .nix | | ✓ |
181
+ | nqc | .nqc | | ✓ |
182
+ | objc | .mm | | ✓ |
183
+ | ocaml | .ml | ✓ | ✓ |
184
+ | ocaml_interface | .mli | ✓ | ✓ |
185
+ | odin | .odin | | ✓ |
186
+ | org | .org | | ✓ |
187
+ | pascal | .pas | | ✓ |
188
+ | pascal | .pp | | ✓ |
189
+ | pem | .pem | | ✓ |
190
+ | perl | .pl | | ✓ |
191
+ | perl | .pm | | ✓ |
192
+ | pgn | .pgn | | ✓ |
193
+ | php | .php | ✓ | ✓ |
194
+ | po | .po | | ✓ |
195
+ | po | .pot | | ✓ |
196
+ | pony | .pony | ✓ | ✓ |
197
+ | powershell | .ps1 | | ✓ |
198
+ | powershell | .psm1 | | ✓ |
199
+ | printf | .printf | | ✓ |
200
+ | prisma | .prisma | | ✓ |
201
+ | properties | .properties | ✓ | ✓ |
202
+ | proto | .proto | | ✓ |
203
+ | psv | .psv | | ✓ |
204
+ | purescript | .purs | | ✓ |
205
+ | pymanifest | MANIFEST.in | | ✓ |
206
+ | python | .py | ✓ | ✓ |
207
+ | qmldir | qmldir | | ✓ |
208
+ | qmljs | .qml | | ✓ |
209
+ | r | .R | ✓ | ✓ |
210
+ | r | .r | ✓ | ✓ |
211
+ | racket | .rkt | ✓ | ✓ |
212
+ | re2c | .re2c | | ✓ |
213
+ | readline | .inputrc | | ✓ |
214
+ | requirements | requirements.txt | | ✓ |
215
+ | ron | .ron | | ✓ |
216
+ | rst | .rst | | ✓ |
217
+ | ruby | .rb | ✓ | ✓ |
218
+ | rust | .rs | ✓ | ✓ |
219
+ | scala | .sc | ✓ | ✓ |
220
+ | scala | .scala | ✓ | ✓ |
221
+ | scheme | .scm | | ✓ |
222
+ | scheme | .ss | | ✓ |
223
+ | scss | .scss | | ✓ |
224
+ | smali | .smali | | ✓ |
225
+ | smithy | .smithy | | ✓ |
226
+ | solidity | .sol | ✓ | ✓ |
227
+ | sparql | .rq | | ✓ |
228
+ | sql | .sql | | ✓ |
229
+ | squirrel | .nut | | ✓ |
230
+ | starlark | .bzl | | ✓ |
231
+ | starlark | BUILD | | ✓ |
232
+ | starlark | WORKSPACE | | ✓ |
233
+ | svelte | .svelte | | ✓ |
234
+ | swift | .swift | ✓ | ✓ |
235
+ | tablegen | .td | | ✓ |
236
+ | tcl | .tcl | | ✓ |
237
+ | thrift | .thrift | | ✓ |
238
+ | toml | .toml | | ✓ |
239
+ | tsv | .tsv | | ✓ |
240
+ | twig | .twig | | ✓ |
241
+ | typescript | .ts | ✓ | ✓ |
242
+ | typescript | .tsx | ✓ | ✓ |
243
+ | typst | .typ | | ✓ |
244
+ | udev | .rules | ✓ | ✓ |
245
+ | ungrammar | .ungram | | ✓ |
246
+ | uxntal | .tal | | ✓ |
247
+ | verilog | .sv | | ✓ |
248
+ | verilog | .v | | ✓ |
249
+ | vhdl | .vhd | | ✓ |
250
+ | vhdl | .vhdl | | ✓ |
251
+ | vim | .vim | | ✓ |
252
+ | vim | .vimrc | | ✓ |
253
+ | vue | .vue | | ✓ |
254
+ | wgsl | .wgsl | | ✓ |
255
+ | xcompose | .XCompose | | ✓ |
256
+ | xml | .svg | | ✓ |
257
+ | xml | .xml | | ✓ |
258
+ | xml | .xsl | | ✓ |
259
+ | yuck | .yuck | | ✓ |
260
+ | zig | .zig | | ✓ |
261
+
262
+ <!--[[[end]]]-->
263
+
264
+
@@ -0,0 +1,111 @@
1
+
2
+ Individual Contributor License Agreement
3
+
4
+ Thank you for your interest in Aider AI LLC ("Aider AI").
5
+ To clarify the intellectual property license
6
+ granted with Contributions from any person or entity, Aider AI
7
+ must have on file a signed Contributor License Agreement ("CLA")
8
+ from each Contributor, indicating agreement with the license
9
+ terms below. This agreement is for your protection as a Contributor
10
+ as well as the protection of Aider AI and its users. It does not
11
+ change your rights to use your own Contributions for any other purpose.
12
+
13
+ Please complete and sign this Agreement. Read this document carefully
14
+ before signing and keep a copy for your records.
15
+
16
+ You accept and agree to the following terms and conditions for Your
17
+ Contributions (present and future) that you submit to Aider AI.
18
+ Except for the license granted herein to Aider AI and recipients
19
+ of software distributed by Aider AI, You reserve all right, title,
20
+ and interest in and to Your Contributions.
21
+
22
+ 1. Definitions.
23
+
24
+ "You" (or "Your") shall mean the copyright owner or legal entity
25
+ authorized by the copyright owner that is making this Agreement
26
+ with Aider AI. For legal entities, the entity making a
27
+ Contribution and all other entities that control, are controlled
28
+ by, or are under common control with that entity are considered to
29
+ be a single Contributor. For the purposes of this definition,
30
+ "control" means (i) the power, direct or indirect, to cause the
31
+ direction or management of such entity, whether by contract or
32
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
33
+ outstanding shares, or (iii) beneficial ownership of such entity.
34
+
35
+ "Contribution" shall mean any original work of authorship,
36
+ including any modifications or additions to an existing work, that
37
+ is intentionally submitted by You to Aider AI for inclusion
38
+ in, or documentation of, any of the products owned or managed by
39
+ Aider AI (the "Work"). For the purposes of this definition,
40
+ "submitted" means any form of electronic, verbal, or written
41
+ communication sent to Aider AI or its representatives,
42
+ including but not limited to communication on electronic mailing
43
+ lists, source code control systems, and issue tracking systems that
44
+ are managed by, or on behalf of, Aider AI for the purpose of
45
+ discussing and improving the Work, but excluding communication that
46
+ is conspicuously marked or otherwise designated in writing by You
47
+ as "Not a Contribution."
48
+
49
+ 2. Grant of Copyright License. Subject to the terms and conditions of
50
+ this Agreement, You hereby grant to Aider AI and to
51
+ recipients of software distributed by Aider AI a perpetual,
52
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
53
+ copyright license to reproduce, prepare derivative works of,
54
+ publicly display, publicly perform, sublicense, and distribute Your
55
+ Contributions and such derivative works.
56
+
57
+ 3. Grant of Patent License. Subject to the terms and conditions of
58
+ this Agreement, You hereby grant to Aider AI and to
59
+ recipients of software distributed by Aider AI a perpetual,
60
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
61
+ (except as stated in this section) patent license to make, have
62
+ made, use, offer to sell, sell, import, and otherwise transfer the
63
+ Work, where such license applies only to those patent claims
64
+ licensable by You that are necessarily infringed by Your
65
+ Contribution(s) alone or by combination of Your Contribution(s)
66
+ with the Work to which such Contribution(s) was submitted. If any
67
+ entity institutes patent litigation against You or any other entity
68
+ (including a cross-claim or counterclaim in a lawsuit) alleging
69
+ that your Contribution, or the Work to which you have contributed,
70
+ constitutes direct or contributory patent infringement, then any
71
+ patent licenses granted to that entity under this Agreement for
72
+ that Contribution or Work shall terminate as of the date such
73
+ litigation is filed.
74
+
75
+ 4. You represent that you are legally entitled to grant the above
76
+ license. If your employer(s) has rights to intellectual property
77
+ that you create that includes your Contributions, you represent
78
+ that you have received permission to make Contributions on behalf
79
+ of that employer, that your employer has waived such rights for
80
+ your Contributions to Aider AI, or that your employer has
81
+ executed a separate Corporate CLA with Aider AI.
82
+
83
+ 5. You represent that each of Your Contributions is Your original
84
+ creation (see section 7 for submissions on behalf of others). You
85
+ represent that Your Contribution submissions include complete
86
+ details of any third-party license or other restriction (including,
87
+ but not limited to, related patents and trademarks) of which you
88
+ are personally aware and which are associated with any part of Your
89
+ Contributions.
90
+
91
+ 6. You are not expected to provide support for Your Contributions,
92
+ except to the extent You desire to provide support. You may provide
93
+ support for free, for a fee, or not at all. Unless required by
94
+ applicable law or agreed to in writing, You provide Your
95
+ Contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
96
+ OF ANY KIND, either express or implied, including, without
97
+ limitation, any warranties or conditions of TITLE, NON-
98
+ INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.
99
+
100
+ 7. Should You wish to submit work that is not Your original creation,
101
+ You may submit it to Aider AI separately from any
102
+ Contribution, identifying the complete details of its source and of
103
+ any license or other restriction (including, but not limited to,
104
+ related patents, trademarks, and license agreements) of which you
105
+ are personally aware, and conspicuously marking the work as
106
+ "Submitted on behalf of a third-party: [named here]".
107
+
108
+ 8. You agree to notify Aider AI of any facts or circumstances of
109
+ which you become aware that would make these representations
110
+ inaccurate in any respect.
111
+
@@ -0,0 +1,104 @@
1
+ ---
2
+ parent: More info
3
+ nav_order: 500
4
+ ---
5
+
6
+ # Privacy policy
7
+
8
+ [Aider AI LLC](/docs/faq.html#what-is-aider-ai-llc)
9
+ (“Aider,” “we,” “our,” and/or “us”) values the privacy of individuals who use our website, programming tools, and related services (collectively, our “Services”). This privacy policy (the “Privacy Policy”) explains how we collect, use, and disclose information from users of our Services. By using our Services, you agree to the collection, use, disclosure, and procedures this Privacy Policy describes.
10
+
11
+ ### Information We Collect
12
+
13
+ We may collect a variety of information from or about you or your devices from various sources, as described below.
14
+
15
+ ### A. Information You Provide to Us.
16
+
17
+ **Communications.** If you contact us directly, we may receive additional information about you, such as your name, email address, the contents of a message or attachments that you may send to us, and other information you choose to provide.
18
+
19
+ ### B. Information We Collect When You Use Our Services.
20
+
21
+ **Device Information.** We may receive information about the device and software you use to access our Services, including IP address, device type, device identifiers, web browser type and version, and operating system version.
22
+
23
+ **Usage Information.** We may automatically receive information about your interactions with our Services, like the pages or other content you view, referrer information (the website you visited before coming to our Services), and the dates and times of your visits.
24
+
25
+ **Analytics Information.** If you use our programming tools, we may receive information about your interactions with the tools, such as how often certain features or commands are used, information about exceptions and errors, and which large language models are used. This information is associated with a randomly generated identifier, not any directly identifiable user information such as your name or email address. Please see the “Your Choices” section below for information on how to disable the collection of this information.
26
+
27
+ **Information from Cookies and Other Tracking Technologies.** We and our third-party partners may collect information about your activities on our Services using cookies, pixel tags, SDKs, or other tracking technologies. Our third-party partners, such as analytics and security partners, may also use these technologies to collect information about your online activities over time and across different services.
28
+
29
+
30
+ ### How We Use the Information We Collect
31
+
32
+ We use the information we collect:
33
+
34
+ - To provide, maintain, improve, and enhance our Services;
35
+ - To understand and analyze how you use our Services and develop new products, services, features, and functionality;
36
+ - To communicate with you, provide you with updates and other information relating to our Services, provide information that you request, respond to comments and questions, and otherwise provide customer support;
37
+ - To generate anonymized or aggregate data containing only de-identified, non-personal information that we may use for any lawful purposes such as to publish reports;
38
+ - To find and prevent fraud and abuse, and respond to trust and safety issues that may arise;
39
+ - For compliance purposes, including enforcing our legal rights, or as may be required by applicable laws and regulations or requested by any judicial process or governmental agency; and
40
+ - For other purposes for which we provide specific notice at the time the information is collected.
41
+
42
+ ### How We Disclose the Information We Collect
43
+
44
+ **Affiliates.** We may disclose any information we receive to our current or future affiliates for any of the purposes described in this Privacy Policy.
45
+
46
+ **Vendors and Service Providers.** We may disclose any information we receive to vendors and service providers retained in connection with the provision of our Services.
47
+
48
+ **Analytics Partners.** We may use analytics services to collect and process certain analytics data to improve our Services, such as by improving the ability of our programming tools to work with LLMs, edit code, and complete user requests.
49
+
50
+ **As Required By Law and Similar Disclosures.** We may access, preserve, and disclose your information if we believe doing so is required or appropriate to: (a) comply with law enforcement requests and legal process, such as a court order or subpoena; (b) respond to your requests; or (c) protect your, our, or others’ rights, property, or safety. For the avoidance of doubt, the disclosure of your information may occur if you post any objectionable content on or through the Services.
51
+
52
+ **Merger, Sale, or Other Asset Transfers.** We may transfer your information to service providers, advisors, potential transactional partners, or other third parties in connection with the consideration, negotiation, or completion of a corporate transaction in which we are acquired by or merged with another company or we sell, liquidate, or transfer all or a portion of our assets. The use of your information following any of these events will be governed by the provisions of this Privacy Policy in effect at the time the applicable information was collected.
53
+
54
+ **Consent.** We may also disclose your information with your permission.
55
+
56
+ ### Your Choices
57
+
58
+ **Analytics Information.** You can turn off analytics collection when using our programming tools. Please visit this
59
+ [documentation page](/docs/more/analytics.html)
60
+ for more information about the data collected and your options.
61
+
62
+ ### Third Parties
63
+
64
+ Our Services may contain links to other websites, products, or services that we do not own or operate. We are not responsible for the privacy practices of these third parties. Please be aware that this Privacy Policy does not apply to your activities on these third-party services or any information you disclose to these third parties. We encourage you to read their privacy policies before providing any information to them.
65
+
66
+ ### Security
67
+
68
+ We make reasonable efforts to protect your information by using physical and electronic safeguards designed to improve the security of the information we maintain. However, because no electronic transmission or storage of information can be entirely secure, we can make no guarantees as to the security or privacy of your information.
69
+
70
+ ### Children’s Privacy
71
+
72
+ We do not knowingly collect, maintain, or use personal information from children under 18 years of age, and no part of our Service(s) is directed to children. If you learn that a child has provided us with personal information in violation of this Privacy Policy, then you may alert us at privacy@aider.chat.
73
+
74
+ ### International Visitors
75
+
76
+ Our Services are hosted in the United States and intended for visitors located within the United States. If you choose to use the Services from the European Union or other regions of the world with laws governing data collection and use that may differ from U.S. law, then please note that you are transferring your personal information outside of those regions to the U.S. for storage and processing. We may also transfer your data from the U.S. to other countries or regions in connection with storage and processing of data, fulfilling your requests, and operating the Services. By providing any information, including personal information, on or to the Services, you consent to such transfer, storage, and processing.
77
+
78
+
79
+ ### Changes to this Privacy Policy
80
+
81
+ We will post any adjustments to the Privacy Policy on this page, and the revised version will be effective when it is posted. If we materially change the ways in which we use or disclose personal information previously collected from you through the Services, we will notify you through the Services, by email, or other communication.
82
+
83
+ ### Contact Information
84
+
85
+ If you have any questions, comments, or concerns about our processing activities, please email us at privacy@aider.chat.
86
+
87
+ ----
88
+
89
+ <p class="post-date">
90
+ Last updated
91
+ <!--[[[cog
92
+ import subprocess
93
+ import datetime
94
+
95
+ result = subprocess.run(['git', 'log', '-1', '--format=%ct', 'aider/website/docs/legal/privacy.md'], capture_output=True, text=True)
96
+ if result.returncode == 0:
97
+ timestamp = int(result.stdout.strip())
98
+ date = datetime.datetime.fromtimestamp(timestamp)
99
+ cog.out(f"{date.strftime('%B %d, %Y.')}")
100
+ ]]]-->
101
+ April 12, 2025.
102
+ <!--[[[end]]]-->
103
+
104
+ </p>
@@ -0,0 +1,77 @@
1
+ ---
2
+ parent: Connecting to LLMs
3
+ nav_order: 200
4
+ ---
5
+
6
+ # Anthropic
7
+
8
+ To work with Anthropic's models, you need to provide your
9
+ [Anthropic API key](https://docs.anthropic.com/claude/reference/getting-started-with-the-api)
10
+ either in the `ANTHROPIC_API_KEY` environment variable or
11
+ via the `--anthropic-api-key` command line switch.
12
+
13
+ First, install aider:
14
+
15
+ {% include install.md %}
16
+
17
+ Then configure your API keys:
18
+
19
+ ```
20
+ export ANTHROPIC_API_KEY=<key> # Mac/Linux
21
+ setx ANTHROPIC_API_KEY <key> # Windows, restart shell after setx
22
+ ```
23
+
24
+ Start working with aider and Anthropic on your codebase:
25
+
26
+ ```bash
27
+ # Change directory into your codebase
28
+ cd /to/your/project
29
+
30
+ # Aider uses Claude 3.7 Sonnet by default
31
+ aider
32
+
33
+ # List models available from Anthropic
34
+ aider --list-models anthropic/
35
+ ```
36
+
37
+ {: .tip }
38
+ Anthropic has very low rate limits.
39
+ You can access all the Anthropic models via
40
+ [OpenRouter](openrouter.md)
41
+ or [Google Vertex AI](vertex.md)
42
+ with more generous rate limits.
43
+
44
+ You can use `aider --model <model-name>` to use any other Anthropic model.
45
+ For example, if you want to use a specific version of Opus
46
+ you could do `aider --model claude-3-opus-20240229`.
47
+
48
+ ## Thinking tokens
49
+
50
+ Aider can work with Sonnet 3.7's new thinking tokens, but does not ask Sonnet to use
51
+ thinking tokens by default.
52
+
53
+ Enabling thinking currently requires manual configuration.
54
+ You need to add the following to your `.aider.model.settings.yml`
55
+ [model settings file](/docs/config/adv-model-settings.html#model-settings).
56
+ Adjust the `budget_tokens` value to change the target number of thinking tokens.
57
+
58
+ ```yaml
59
+ - name: anthropic/claude-3-7-sonnet-20250219
60
+ edit_format: diff
61
+ weak_model_name: anthropic/claude-3-5-haiku-20241022
62
+ use_repo_map: true
63
+ examples_as_sys_msg: true
64
+ use_temperature: false
65
+ extra_params:
66
+ extra_headers:
67
+ anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19
68
+ max_tokens: 64000
69
+ thinking:
70
+ type: enabled
71
+ budget_tokens: 32000 # Adjust this number
72
+ cache_control: true
73
+ editor_model_name: anthropic/claude-3-7-sonnet-20250219
74
+ editor_edit_format: editor-diff
75
+ ```
76
+
77
+ More streamlined support will be coming soon.
@@ -0,0 +1,48 @@
1
+ ---
2
+ parent: Connecting to LLMs
3
+ nav_order: 500
4
+ ---
5
+
6
+ # Azure
7
+
8
+ Aider can connect to the OpenAI models on Azure.
9
+
10
+ First, install aider:
11
+
12
+ {% include install.md %}
13
+
14
+ Then configure your API keys and endpoint:
15
+
16
+ ```
17
+ # Mac/Linux:
18
+ export AZURE_API_KEY=<key>
19
+ export AZURE_API_VERSION=2024-12-01-preview
20
+ export AZURE_API_BASE=https://myendpt.openai.azure.com
21
+
22
+ # Windows
23
+ setx AZURE_API_KEY <key>
24
+ setx AZURE_API_VERSION 2024-12-01-preview
25
+ setx AZURE_API_BASE https://myendpt.openai.azure.com
26
+ # ... restart your shell after setx commands
27
+ ```
28
+
29
+ Start working with aider and Azure on your codebase:
30
+
31
+ ```bash
32
+ # Change directory into your codebase
33
+ cd /to/your/project
34
+
35
+ aider --model azure/<your_model_deployment_name>
36
+
37
+ # List models available from Azure
38
+ aider --list-models azure/
39
+ ```
40
+
41
+ Note that aider will also use environment variables
42
+ like `AZURE_OPENAI_API_xxx`.
43
+
44
+ The `aider --list-models azure/` command will list all models that aider supports through Azure, not the models that are available for the provided endpoint.
45
+
46
+ When setting the model to use with `--model azure/<your_model_deployment_name>`, `<your_model_deployment_name>` is likely just the name of the model you have deployed to the endpoint for example `o3-mini` or `gpt-4o`. The screenshow below shows `o3-mini` and `gpt-4o` deployments in the Azure portal done under the `myendpt` resource.
47
+
48
+ ![example azure deployment](/assets/azure-deployment.png)