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,76 @@
1
+ ---
2
+ parent: More info
3
+ nav_order: 100
4
+ description: Aider is tightly integrated with git.
5
+ ---
6
+
7
+ # Git integration
8
+
9
+ Aider works best with code that is part of a git repo.
10
+ Aider is tightly integrated with git, which makes it easy to:
11
+
12
+ - Use the `/undo` command to instantly undo any AI changes that you don't like.
13
+ - Go back in the git history to review the changes that aider made to your code
14
+ - Manage a series of aider's changes on a git branch
15
+
16
+ Aider uses git in these ways:
17
+
18
+ - It asks to create a git repo if you launch it in a directory without one.
19
+ - Whenever aider edits a file, it commits those changes with a descriptive commit message. This makes it easy to undo or review aider's changes.
20
+ - Aider takes special care before editing files that already have uncommitted changes (dirty files). Aider will first commit any preexisting changes with a descriptive commit message.
21
+ This keeps your edits separate from aider's edits, and makes sure you never lose your work if aider makes an inappropriate change.
22
+
23
+ ## In-chat commands
24
+
25
+ Aider also allows you to use
26
+ [in-chat commands](/docs/usage/commands.html)
27
+ to perform git operations:
28
+
29
+ - `/diff` will show all the file changes since the last message you sent.
30
+ - `/undo` will undo and discard the last change.
31
+ - `/commit` to commit all dirty changes with a sensible commit message.
32
+ - `/git` will let you run raw git commands to do more complex management of your git history.
33
+
34
+ You can also manage your git history outside of aider with your preferred git tools.
35
+
36
+ ## Disabling git integration
37
+
38
+ While it is not recommended, you can disable aider's use of git in a few ways:
39
+
40
+ - `--no-auto-commits` will stop aider from git committing each of its changes.
41
+ - `--no-dirty-commits` will stop aider from committing dirty files before applying its edits.
42
+ - `--no-git` will completely stop aider from using git on your files. You should ensure you are keeping sensible backups of the files you are working with.
43
+ - `--git-commit-verify` will run pre-commit hooks when making git commits. By default, aider skips pre-commit hooks by using the `--no-verify` flag (`--git-commit-verify=False`).
44
+
45
+ ## Commit messages
46
+
47
+ Aider sends the `--weak-model` a copy of the diffs and the chat history
48
+ and asks it to produce a commit message.
49
+ By default, aider creates commit messages which follow
50
+ [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/).
51
+
52
+ You can customize the
53
+ [commit prompt](https://github.com/Aider-AI/aider/blob/main/aider/prompts.py#L5)
54
+ with the `--commit-prompt` option.
55
+ You can place that on the command line, or
56
+ [configure it via a config file or environment variables](https://aider.chat/docs/config.html).
57
+
58
+
59
+ ## Commit attribution
60
+
61
+ Aider marks commits that it either authored or committed.
62
+
63
+ - If aider authored the changes in a commit, they will have "(aider)" appended to the git author and git committer name metadata.
64
+ - If aider simply committed changes (found in dirty files), the commit will have "(aider)" appended to the git committer name metadata.
65
+
66
+ You can use `--no-attribute-author` and `--no-attribute-committer` to disable
67
+ modification of the git author and committer name fields.
68
+
69
+ Additionally, you can use the following options to prefix commit messages:
70
+
71
+ - `--attribute-commit-message-author`: Prefix commit messages with 'aider: ' if aider authored the changes.
72
+ - `--attribute-commit-message-committer`: Prefix all commit messages with 'aider: ', regardless of whether aider authored the changes or not.
73
+
74
+ Finally, you can use `--attribute-co-authored-by` to have aider append a Co-authored-by trailer to the end of the commit string.
75
+ This will disable appending `(aider)` to the git author and git committer unless you have explicitly enabled those settings.
76
+
@@ -0,0 +1,47 @@
1
+ ---
2
+ nav_exclude: true
3
+ ---
4
+
5
+ # Aider Documentation
6
+
7
+ Aider is AI pair programming in your terminal. This documentation will help you get the most out of aider.
8
+
9
+ <div class="toc">
10
+ {% assign pages_list = site.html_pages | sort: "nav_order" %}
11
+
12
+ <ul>
13
+ {% for page in pages_list %}
14
+ {% if page.title and page.url != "/" and page.parent == nil and page.nav_exclude != true %}
15
+ <li>
16
+ <a href="{{ page.url | absolute_url }}">{{ page.title }}</a>{% if page.description %} <span style="font-size: 0.9em; font-style: italic;">— {{ page.description }}</span>{% endif %}
17
+
18
+ {% assign children = site.html_pages | where: "parent", page.title | sort: "nav_order" %}
19
+ {% if children.size > 0 %}
20
+ <ul>
21
+ {% for child in children %}
22
+ {% if child.title %}
23
+ <li>
24
+ <a href="{{ child.url | absolute_url }}">{{ child.title }}</a>{% if child.description %} <span style="font-size: 0.9em; font-style: italic;">— {{ child.description }}</span>{% endif %}
25
+
26
+ {% assign grandchildren = site.html_pages | where: "parent", child.title | sort: "nav_order" %}
27
+ {% if grandchildren.size > 0 %}
28
+ <ul>
29
+ {% for grandchild in grandchildren %}
30
+ {% if grandchild.title %}
31
+ <li>
32
+ <a href="{{ grandchild.url | absolute_url }}">{{ grandchild.title }}</a>{% if grandchild.description %} <span style="font-size: 0.9em; font-style: italic;">— {{ grandchild.description }}</span>{% endif %}
33
+ </li>
34
+ {% endif %}
35
+ {% endfor %}
36
+ </ul>
37
+ {% endif %}
38
+ </li>
39
+ {% endif %}
40
+ {% endfor %}
41
+ </ul>
42
+ {% endif %}
43
+ </li>
44
+ {% endif %}
45
+ {% endfor %}
46
+ </ul>
47
+ </div>
@@ -0,0 +1,39 @@
1
+ ---
2
+ title: GitHub Codespaces
3
+ parent: Installation
4
+ nav_order: 900
5
+ ---
6
+
7
+ # GitHub Codespaces
8
+
9
+ You can use aider in GitHub Codespaces via the built-in Terminal pane.
10
+ See below for an example,
11
+ but you can just follow the
12
+ [main install instructions](/docs/install.html)
13
+ inside your codespace terminal.
14
+
15
+
16
+ <div class="video-container">
17
+ <video controls poster="/assets/codespaces.jpg">
18
+ <source src="/assets/codespaces.mp4" type="video/mp4">
19
+ <a href="/assets/codespaces.mp4">Install aider in GitHub Codespaces</a>
20
+ </video>
21
+ </div>
22
+
23
+ <style>
24
+ .video-container {
25
+ position: relative;
26
+ padding-bottom: 101.89%; /* 1080 / 1060 = 1.0189 */
27
+ height: 0;
28
+ overflow: hidden;
29
+ }
30
+
31
+ .video-container video {
32
+ position: absolute;
33
+ top: 0;
34
+ left: 0;
35
+ width: 100%;
36
+ height: 100%;
37
+ }
38
+ </style>
39
+
@@ -0,0 +1,57 @@
1
+ ---
2
+ parent: Installation
3
+ nav_order: 100
4
+ ---
5
+
6
+ # Aider with docker
7
+
8
+ Aider is available as 2 docker images:
9
+
10
+ - `paulgauthier/aider` installs the aider core, a smaller image that's good to get started quickly.
11
+ - `paulgauthier/aider-full` installs aider will all the optional extras.
12
+
13
+ The full image has support for features like interactive help, the
14
+ browser GUI and support for using Playwright to scrape web pages. The
15
+ core image can still use these features, but they will need to be
16
+ installed the first time you access them. Since containers are
17
+ ephemeral, the extras will need to be reinstalled the next time you
18
+ launch the aider core container.
19
+
20
+ ### Aider core
21
+
22
+ ```
23
+ docker pull paulgauthier/aider
24
+ docker run -it --user $(id -u):$(id -g) --volume $(pwd):/app paulgauthier/aider --openai-api-key $OPENAI_API_KEY [...other aider args...]
25
+ ```
26
+
27
+ ### Full version
28
+
29
+ ```
30
+ docker pull paulgauthier/aider-full
31
+ docker run -it --user $(id -u):$(id -g) --volume $(pwd):/app paulgauthier/aider-full --openai-api-key $OPENAI_API_KEY [...other aider args...]
32
+ ```
33
+
34
+ ## How to use it
35
+
36
+ You should run the above commands from the root of your git repo,
37
+ since the `--volume` arg maps your current directory into the
38
+ docker container.
39
+ Given that, you need to be in the root of your git repo for aider to be able to
40
+ see the repo and all its files.
41
+
42
+ You should be sure your that
43
+ git repo config contains your user name and email, since the
44
+ docker container won't have your global git config.
45
+ Run these commands while in your git repo, before
46
+ you do the `docker run` command:
47
+
48
+ ```
49
+ git config user.email "you@example.com"
50
+ git config user.name "Your Name"
51
+ ```
52
+
53
+
54
+ ## Limitations
55
+
56
+ - When you use the in-chat `/run` command, it will be running shell commands *inside the docker container*. So those commands won't be running in your local environment, which may make it tricky to `/run` tests, etc for your project.
57
+ - The `/voice` command won't work unless you can figure out how to give the docker container access to your host audio device. The container has libportaudio2 installed, so it should work if you can do that.
@@ -0,0 +1,100 @@
1
+ ---
2
+ parent: Installation
3
+ nav_order: 20
4
+ ---
5
+
6
+ # Optional steps
7
+ {: .no_toc }
8
+
9
+ The steps below are completely optional.
10
+
11
+ - TOC
12
+ {:toc}
13
+
14
+ ## Install git
15
+
16
+ Aider works best if you have git installed.
17
+ Here are
18
+ [instructions for installing git in various environments](https://github.com/git-guides/install-git).
19
+
20
+ ## Setup an API key
21
+
22
+ You need an key from an API provider to work with most models:
23
+
24
+ - [OpenAI](https://help.openai.com/en/articles/4936850-where-do-i-find-my-secret-api-key) provides o1, o3-mini, gpt-4o and other models. Note that paying for an API key is different than being a "ChatGPT" subscriber.
25
+ - [Anthropic](https://docs.anthropic.com/claude/reference/getting-started-with-the-api) provides Claude 3.7 Sonnet and Haiku.
26
+ - [DeepSeek](https://platform.deepseek.com/api_keys) provides DeepSeek R1 and DeepSeek Chat V3.
27
+ - [OpenRouter](https://openrouter.ai/keys) allows you to access models from many providers using a single key.
28
+
29
+ You can [store your api keys in configuration or env files](/docs/config/api-keys.html)
30
+ and they will be loaded automatically whenever you run aider.
31
+
32
+ ## Enable Playwright
33
+
34
+ Aider supports adding web pages to the chat with the `/web <url>` command.
35
+ When you add a url to the chat, aider fetches the page and scrapes its
36
+ content.
37
+
38
+ By default, aider uses the `httpx` library to scrape web pages, but this only
39
+ works on a subset of web pages.
40
+ Some sites explicitly block requests from tools like httpx.
41
+ Others rely heavily on javascript to render the page content,
42
+ which isn't possible using only httpx.
43
+
44
+ Aider works best with all web pages if you install
45
+ Playwright's chromium browser and its dependencies:
46
+
47
+ ```
48
+ playwright install --with-deps chromium
49
+ ```
50
+
51
+ See the
52
+ [Playwright for Python documentation](https://playwright.dev/python/docs/browsers#install-system-dependencies)
53
+ for additional information.
54
+
55
+
56
+ ## Enable voice coding
57
+
58
+ Aider supports
59
+ [coding with your voice](https://aider.chat/docs/usage/voice.html)
60
+ using the in-chat `/voice` command.
61
+ Aider uses the [PortAudio](http://www.portaudio.com) library to
62
+ capture audio.
63
+ Installing PortAudio is completely optional, but can usually be accomplished like this:
64
+
65
+ - For Windows, there is no need to install PortAudio.
66
+ - For Mac, do `brew install portaudio`
67
+ - For Linux, do `sudo apt-get install libportaudio2`
68
+ - Some linux environments may also need `sudo apt install libasound2-plugins`
69
+
70
+ ## Add aider to your IDE/editor
71
+
72
+ You can use
73
+ [aider's `--watch-files` mode](https://aider.chat/docs/usage/watch.html)
74
+ to integrate with any IDE or editor.
75
+
76
+ There are a number of 3rd party aider plugins for various IDE/editors.
77
+ It's not clear how well they are tracking the latest
78
+ versions of aider,
79
+ so it may be best to just run the latest
80
+ aider in a terminal alongside your editor and use `--watch-files`.
81
+
82
+ ### NeoVim
83
+
84
+ [joshuavial](https://github.com/joshuavial) provided a NeoVim plugin for aider:
85
+
86
+ [https://github.com/joshuavial/aider.nvim](https://github.com/joshuavial/aider.nvim)
87
+
88
+ ### VS Code
89
+
90
+ You can run aider inside a VS Code terminal window.
91
+ There are a number of 3rd party
92
+ [aider plugins for VSCode](https://marketplace.visualstudio.com/search?term=aider%20-kodu&target=VSCode&category=All%20categories&sortBy=Relevance).
93
+
94
+ ### Other editors
95
+
96
+ If you are interested in creating an aider plugin for your favorite editor,
97
+ please let us know by opening a
98
+ [GitHub issue](https://github.com/Aider-AI/aider/issues).
99
+
100
+
@@ -0,0 +1,8 @@
1
+ ---
2
+ parent: Installation
3
+ nav_order: 900
4
+ ---
5
+
6
+ ### Replit
7
+
8
+ {% include replit-pipx.md %}
@@ -0,0 +1,115 @@
1
+ ---
2
+ title: Installation
3
+ has_children: true
4
+ nav_order: 20
5
+ description: How to install and get started pair programming with aider.
6
+ ---
7
+
8
+ # Installation
9
+ {: .no_toc }
10
+
11
+
12
+ ## Get started quickly with aider-install
13
+
14
+ {% include get-started.md %}
15
+
16
+ This will install aider in its own separate python environment.
17
+ If needed,
18
+ aider-install will also install a separate version of python 3.12 to use with aider.
19
+
20
+ Once aider is installed,
21
+ there are also some [optional install steps](/docs/install/optional.html).
22
+
23
+ See the [usage instructions](https://aider.chat/docs/usage.html) to start coding with aider.
24
+
25
+ ## One-liners
26
+
27
+ These one-liners will install aider, along with python 3.12 if needed.
28
+ They are based on the
29
+ [uv installers](https://docs.astral.sh/uv/getting-started/installation/).
30
+
31
+ #### Mac & Linux
32
+
33
+ Use curl to download the script and execute it with sh:
34
+
35
+ ```bash
36
+ curl -LsSf https://aider.chat/install.sh | sh
37
+ ```
38
+
39
+ If your system doesn't have curl, you can use wget:
40
+
41
+ ```bash
42
+ wget -qO- https://aider.chat/install.sh | sh
43
+ ```
44
+
45
+ #### Windows
46
+
47
+ ```powershell
48
+ powershell -ExecutionPolicy ByPass -c "irm https://aider.chat/install.ps1 | iex"
49
+ ```
50
+
51
+
52
+ ## Install with uv
53
+
54
+ You can install aider with uv:
55
+
56
+ ```bash
57
+ python -m pip install uv # If you need to install uv
58
+ uv tool install --force --python python3.12 --with pip aider-chat@latest
59
+ ```
60
+
61
+ This will install uv using your existing python version 3.8-3.13,
62
+ and use it to install aider.
63
+ If needed,
64
+ uv will automatically install a separate python 3.12 to use with aider.
65
+
66
+ Also see the
67
+ [docs on other methods for installing uv itself](https://docs.astral.sh/uv/getting-started/installation/).
68
+
69
+ ## Install with pipx
70
+
71
+ You can install aider with pipx:
72
+
73
+ ```bash
74
+ python -m pip install pipx # If you need to install pipx
75
+ pipx install aider-chat
76
+ ```
77
+
78
+ You can use pipx to install aider with python versions 3.9-3.12.
79
+
80
+ Also see the
81
+ [docs on other methods for installing pipx itself](https://pipx.pypa.io/stable/installation/).
82
+
83
+ ## Other install methods
84
+
85
+ You can install aider with the methods described below, but one of the above
86
+ methods is usually safer.
87
+
88
+ #### Install with pip
89
+
90
+ If you install with pip, you should consider
91
+ using a
92
+ [virtual environment](https://docs.python.org/3/library/venv.html)
93
+ to keep aider's dependencies separated.
94
+
95
+
96
+ You can use pip to install aider with python versions 3.9-3.12.
97
+
98
+ ```bash
99
+ python -m pip install -U --upgrade-strategy only-if-needed aider-chat
100
+ ```
101
+
102
+ {% include python-m-aider.md %}
103
+
104
+ #### Installing with package managers
105
+
106
+ It's best to install aider using one of methods
107
+ recommended above.
108
+ While aider is available in a number of system package managers,
109
+ they often install aider with incorrect dependencies.
110
+
111
+ ## Next steps...
112
+
113
+ There are some [optional install steps](/docs/install/optional.html) you could consider.
114
+ See the [usage instructions](https://aider.chat/docs/usage.html) to start coding with aider.
115
+