From a5f4cba72fb1deab83e85f0f3d3d1ee7be47b85f Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 27 Nov 2024 08:53:41 -0800 Subject: [PATCH 001/100] wip --- aider/repomap.py | 39 +++++++++++++++++++++------------------ 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/aider/repomap.py b/aider/repomap.py index 8313992f2..1751d677b 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -21,7 +21,7 @@ from aider.utils import Spinner # tree_sitter is throwing a FutureWarning warnings.simplefilter("ignore", category=FutureWarning) -from tree_sitter_languages import get_language, get_parser # noqa: E402 +from tree_sitter_language_pack import get_language, get_parser # noqa: E402 Tag = namedtuple("Tag", "rel_fname fname line name kind".split()) @@ -216,28 +216,31 @@ class RepoMap: query = language.query(query_scm) captures = query.captures(tree.root_node) - captures = list(captures) + dump(fname) + dump(captures) + dump(captures.keys()) saw = set() - for node, tag in captures: - if tag.startswith("name.definition."): - kind = "def" - elif tag.startswith("name.reference."): - kind = "ref" - else: - continue + for tag, nodes in captures.items(): + for node in nodes: + if tag.startswith("name.definition."): + kind = "def" + elif tag.startswith("name.reference."): + kind = "ref" + else: + continue - saw.add(kind) + saw.add(kind) - result = Tag( - rel_fname=rel_fname, - fname=fname, - name=node.text.decode("utf-8"), - kind=kind, - line=node.start_point[0], - ) + result = Tag( + rel_fname=rel_fname, + fname=fname, + name=node.text.decode("utf-8"), + kind=kind, + line=node.start_point[0], + ) - yield result + yield result if "ref" in saw: return From b0aa4ef4c896b13721bd9c2bd7c90402015ddb82 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 11:34:33 -0800 Subject: [PATCH 002/100] wip --- requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index b1933f406..98e3824bf 100644 --- a/requirements.txt +++ b/requirements.txt @@ -225,11 +225,11 @@ tqdm==4.67.1 # via # huggingface-hub # openai -tree-sitter==0.21.3 +#tree-sitter==0.21.3 # via # -r requirements/requirements.in # tree-sitter-languages -tree-sitter-languages==1.10.2 +tree-sitter-language-pack # via grep-ast typing-extensions==4.12.2 # via From 17993ef9ff4a7f2fa9b05830b8486dab937a0884 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 14:26:59 -0800 Subject: [PATCH 003/100] works --- aider/linter.py | 2 +- aider/queries/tree-sitter-javascript-tags.scm | 10 +++++----- aider/repomap.py | 14 ++++++++++---- requirements.txt | 2 +- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/aider/linter.py b/aider/linter.py index 77d9b5eb2..4e38f1767 100644 --- a/aider/linter.py +++ b/aider/linter.py @@ -8,7 +8,7 @@ from dataclasses import dataclass from pathlib import Path from grep_ast import TreeContext, filename_to_lang -from tree_sitter_languages import get_parser # noqa: E402 +from tree_sitter_language_pack import get_parser # noqa: E402 from aider.dump import dump # noqa: F401 from aider.run_cmd import run_cmd_subprocess # noqa: F401 diff --git a/aider/queries/tree-sitter-javascript-tags.scm b/aider/queries/tree-sitter-javascript-tags.scm index 3bc55c5c5..c143e3efd 100644 --- a/aider/queries/tree-sitter-javascript-tags.scm +++ b/aider/queries/tree-sitter-javascript-tags.scm @@ -25,7 +25,7 @@ (comment)* @doc . [ - (function + (function_expression name: (identifier) @name.definition.function) (function_declaration name: (identifier) @name.definition.function) @@ -44,7 +44,7 @@ (lexical_declaration (variable_declarator name: (identifier) @name.definition.function - value: [(arrow_function) (function)]) @definition.function) + value: [(arrow_function) (function_expression)]) @definition.function) (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") (#select-adjacent! @doc @definition.function) ) @@ -55,7 +55,7 @@ (variable_declaration (variable_declarator name: (identifier) @name.definition.function - value: [(arrow_function) (function)]) @definition.function) + value: [(arrow_function) (function_expression)]) @definition.function) (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") (#select-adjacent! @doc @definition.function) ) @@ -66,12 +66,12 @@ (member_expression property: (property_identifier) @name.definition.function) ] - right: [(arrow_function) (function)] + right: [(arrow_function) (function_expression)] ) @definition.function (pair key: (property_identifier) @name.definition.function - value: [(arrow_function) (function)]) @definition.function + value: [(arrow_function) (function_expression)]) @definition.function ( (call_expression diff --git a/aider/repomap.py b/aider/repomap.py index cfc20f9a1..789891866 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -11,6 +11,7 @@ from collections import Counter, defaultdict, namedtuple from importlib import resources from pathlib import Path +import tree_sitter from diskcache import Cache from grep_ast import TreeContext, filename_to_lang from pygments.lexers import guess_lexer_for_filename @@ -279,12 +280,17 @@ class RepoMap: tree = parser.parse(bytes(code, "utf-8")) # Run the tags queries - query = language.query(query_scm) + try: + query = language.query(query_scm) + except tree_sitter.QueryError as err: + dump(fname, err) + return + captures = query.captures(tree.root_node) - dump(fname) - dump(captures) - dump(captures.keys()) + # dump(fname) + # dump(captures) + # dump(captures.keys()) saw = set() for tag, nodes in captures.items(): diff --git a/requirements.txt b/requirements.txt index 98e3824bf..586b9048f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -63,7 +63,7 @@ gitdb==4.0.12 # via gitpython gitpython==3.1.44 # via -r requirements/requirements.in -grep-ast==0.5.0 +#grep-ast==0.5.0 # via -r requirements/requirements.in h11==0.14.0 # via httpcore From 71caea32e788a16647eed760c9ee2a09bed0a9aa Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 15:11:21 -0800 Subject: [PATCH 004/100] cleanup --- requirements.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements.txt b/requirements.txt index 586b9048f..e3c5b6d47 100644 --- a/requirements.txt +++ b/requirements.txt @@ -63,7 +63,7 @@ gitdb==4.0.12 # via gitpython gitpython==3.1.44 # via -r requirements/requirements.in -#grep-ast==0.5.0 +grep-ast==0.6.0 # via -r requirements/requirements.in h11==0.14.0 # via httpcore @@ -225,11 +225,11 @@ tqdm==4.67.1 # via # huggingface-hub # openai -#tree-sitter==0.21.3 +tree-sitter==0.21.3 # via # -r requirements/requirements.in # tree-sitter-languages -tree-sitter-language-pack +tree-sitter-languages==1.10.2 # via grep-ast typing-extensions==4.12.2 # via From 64a8d56725487b8c07e976eac30aa4b923954efb Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 15:17:59 -0800 Subject: [PATCH 005/100] reorg scm files --- aider/linter.py | 2 +- .../tree-sitter-javascript-tags.scm | 0 .../{ => tree-sitter-languages}/README.md | 0 .../tree-sitter-c-tags.scm | 0 .../tree-sitter-c_sharp-tags.scm | 0 .../tree-sitter-cpp-tags.scm | 0 .../tree-sitter-dart-tags.scm | 0 .../tree-sitter-elisp-tags.scm | 0 .../tree-sitter-elixir-tags.scm | 0 .../tree-sitter-elm-tags.scm | 0 .../tree-sitter-go-tags.scm | 0 .../tree-sitter-hcl-tags.scm | 0 .../tree-sitter-java-tags.scm | 0 .../tree-sitter-javascript-tags.scm | 88 +++++++++++++++++++ .../tree-sitter-kotlin-tags.scm | 0 .../tree-sitter-ocaml-tags.scm | 0 .../tree-sitter-php-tags.scm | 0 .../tree-sitter-python-tags.scm | 0 .../tree-sitter-ql-tags.scm | 0 .../tree-sitter-ruby-tags.scm | 0 .../tree-sitter-rust-tags.scm | 0 .../tree-sitter-typescript-tags.scm | 0 aider/repomap.py | 16 +--- 23 files changed, 93 insertions(+), 13 deletions(-) rename aider/queries/{ => tree-sitter-language-pack}/tree-sitter-javascript-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/README.md (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-c-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-c_sharp-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-cpp-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-dart-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-elisp-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-elixir-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-elm-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-go-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-hcl-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-java-tags.scm (100%) create mode 100644 aider/queries/tree-sitter-languages/tree-sitter-javascript-tags.scm rename aider/queries/{ => tree-sitter-languages}/tree-sitter-kotlin-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-ocaml-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-php-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-python-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-ql-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-ruby-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-rust-tags.scm (100%) rename aider/queries/{ => tree-sitter-languages}/tree-sitter-typescript-tags.scm (100%) diff --git a/aider/linter.py b/aider/linter.py index 4e38f1767..9b9ef24f7 100644 --- a/aider/linter.py +++ b/aider/linter.py @@ -8,7 +8,7 @@ from dataclasses import dataclass from pathlib import Path from grep_ast import TreeContext, filename_to_lang -from tree_sitter_language_pack import get_parser # noqa: E402 +from grep_ast.tsl import get_parser # noqa: E402 from aider.dump import dump # noqa: F401 from aider.run_cmd import run_cmd_subprocess # noqa: F401 diff --git a/aider/queries/tree-sitter-javascript-tags.scm b/aider/queries/tree-sitter-language-pack/tree-sitter-javascript-tags.scm similarity index 100% rename from aider/queries/tree-sitter-javascript-tags.scm rename to aider/queries/tree-sitter-language-pack/tree-sitter-javascript-tags.scm diff --git a/aider/queries/README.md b/aider/queries/tree-sitter-languages/README.md similarity index 100% rename from aider/queries/README.md rename to aider/queries/tree-sitter-languages/README.md diff --git a/aider/queries/tree-sitter-c-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-c-tags.scm similarity index 100% rename from aider/queries/tree-sitter-c-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-c-tags.scm diff --git a/aider/queries/tree-sitter-c_sharp-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-c_sharp-tags.scm similarity index 100% rename from aider/queries/tree-sitter-c_sharp-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-c_sharp-tags.scm diff --git a/aider/queries/tree-sitter-cpp-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-cpp-tags.scm similarity index 100% rename from aider/queries/tree-sitter-cpp-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-cpp-tags.scm diff --git a/aider/queries/tree-sitter-dart-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-dart-tags.scm similarity index 100% rename from aider/queries/tree-sitter-dart-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-dart-tags.scm diff --git a/aider/queries/tree-sitter-elisp-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-elisp-tags.scm similarity index 100% rename from aider/queries/tree-sitter-elisp-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-elisp-tags.scm diff --git a/aider/queries/tree-sitter-elixir-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-elixir-tags.scm similarity index 100% rename from aider/queries/tree-sitter-elixir-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-elixir-tags.scm diff --git a/aider/queries/tree-sitter-elm-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-elm-tags.scm similarity index 100% rename from aider/queries/tree-sitter-elm-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-elm-tags.scm diff --git a/aider/queries/tree-sitter-go-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-go-tags.scm similarity index 100% rename from aider/queries/tree-sitter-go-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-go-tags.scm diff --git a/aider/queries/tree-sitter-hcl-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-hcl-tags.scm similarity index 100% rename from aider/queries/tree-sitter-hcl-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-hcl-tags.scm diff --git a/aider/queries/tree-sitter-java-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-java-tags.scm similarity index 100% rename from aider/queries/tree-sitter-java-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-java-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-javascript-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-javascript-tags.scm new file mode 100644 index 000000000..3bc55c5c5 --- /dev/null +++ b/aider/queries/tree-sitter-languages/tree-sitter-javascript-tags.scm @@ -0,0 +1,88 @@ +( + (comment)* @doc + . + (method_definition + name: (property_identifier) @name.definition.method) @definition.method + (#not-eq? @name.definition.method "constructor") + (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") + (#select-adjacent! @doc @definition.method) +) + +( + (comment)* @doc + . + [ + (class + name: (_) @name.definition.class) + (class_declaration + name: (_) @name.definition.class) + ] @definition.class + (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") + (#select-adjacent! @doc @definition.class) +) + +( + (comment)* @doc + . + [ + (function + name: (identifier) @name.definition.function) + (function_declaration + name: (identifier) @name.definition.function) + (generator_function + name: (identifier) @name.definition.function) + (generator_function_declaration + name: (identifier) @name.definition.function) + ] @definition.function + (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") + (#select-adjacent! @doc @definition.function) +) + +( + (comment)* @doc + . + (lexical_declaration + (variable_declarator + name: (identifier) @name.definition.function + value: [(arrow_function) (function)]) @definition.function) + (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") + (#select-adjacent! @doc @definition.function) +) + +( + (comment)* @doc + . + (variable_declaration + (variable_declarator + name: (identifier) @name.definition.function + value: [(arrow_function) (function)]) @definition.function) + (#strip! @doc "^[\\s\\*/]+|^[\\s\\*/]$") + (#select-adjacent! @doc @definition.function) +) + +(assignment_expression + left: [ + (identifier) @name.definition.function + (member_expression + property: (property_identifier) @name.definition.function) + ] + right: [(arrow_function) (function)] +) @definition.function + +(pair + key: (property_identifier) @name.definition.function + value: [(arrow_function) (function)]) @definition.function + +( + (call_expression + function: (identifier) @name.reference.call) @reference.call + (#not-match? @name.reference.call "^(require)$") +) + +(call_expression + function: (member_expression + property: (property_identifier) @name.reference.call) + arguments: (_) @reference.call) + +(new_expression + constructor: (_) @name.reference.class) @reference.class diff --git a/aider/queries/tree-sitter-kotlin-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-kotlin-tags.scm similarity index 100% rename from aider/queries/tree-sitter-kotlin-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-kotlin-tags.scm diff --git a/aider/queries/tree-sitter-ocaml-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-ocaml-tags.scm similarity index 100% rename from aider/queries/tree-sitter-ocaml-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-ocaml-tags.scm diff --git a/aider/queries/tree-sitter-php-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-php-tags.scm similarity index 100% rename from aider/queries/tree-sitter-php-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-php-tags.scm diff --git a/aider/queries/tree-sitter-python-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-python-tags.scm similarity index 100% rename from aider/queries/tree-sitter-python-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-python-tags.scm diff --git a/aider/queries/tree-sitter-ql-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-ql-tags.scm similarity index 100% rename from aider/queries/tree-sitter-ql-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-ql-tags.scm diff --git a/aider/queries/tree-sitter-ruby-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-ruby-tags.scm similarity index 100% rename from aider/queries/tree-sitter-ruby-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-ruby-tags.scm diff --git a/aider/queries/tree-sitter-rust-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-rust-tags.scm similarity index 100% rename from aider/queries/tree-sitter-rust-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-rust-tags.scm diff --git a/aider/queries/tree-sitter-typescript-tags.scm b/aider/queries/tree-sitter-languages/tree-sitter-typescript-tags.scm similarity index 100% rename from aider/queries/tree-sitter-typescript-tags.scm rename to aider/queries/tree-sitter-languages/tree-sitter-typescript-tags.scm diff --git a/aider/repomap.py b/aider/repomap.py index 789891866..2a202253a 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -11,7 +11,6 @@ from collections import Counter, defaultdict, namedtuple from importlib import resources from pathlib import Path -import tree_sitter from diskcache import Cache from grep_ast import TreeContext, filename_to_lang from pygments.lexers import guess_lexer_for_filename @@ -24,7 +23,9 @@ from aider.utils import Spinner # tree_sitter is throwing a FutureWarning warnings.simplefilter("ignore", category=FutureWarning) -from tree_sitter_language_pack import get_language, get_parser # noqa: E402 +from grep_ast.tsl import USING_TSL_PACK, get_language, get_parser # noqa: E402 + +dump(USING_TSL_PACK) Tag = namedtuple("Tag", "rel_fname fname line name kind".split()) @@ -280,18 +281,9 @@ class RepoMap: tree = parser.parse(bytes(code, "utf-8")) # Run the tags queries - try: - query = language.query(query_scm) - except tree_sitter.QueryError as err: - dump(fname, err) - return - + query = language.query(query_scm) captures = query.captures(tree.root_node) - # dump(fname) - # dump(captures) - # dump(captures.keys()) - saw = set() for tag, nodes in captures.items(): for node in nodes: From f6a2ec15d7882e6c3ad85973d9f61a3fca1826b3 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 15:23:48 -0800 Subject: [PATCH 006/100] refactor: Update get_scm_fname to support multiple query subdirectories --- aider/repomap.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/aider/repomap.py b/aider/repomap.py index 2a202253a..b184b6566 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -733,8 +733,19 @@ def get_random_color(): def get_scm_fname(lang): # Load the tags queries + if USING_TSL_PACK: + subdir = "tree-sitter-language-pack" + # check this subdir first, if file exists, return it otherwise check the other. ai! + else: + subdir = "tree-sitter-languages" + + try: - return resources.files(__package__).joinpath("queries", f"tree-sitter-{lang}-tags.scm") + return resources.files(__package__).joinpath( + "queries", + subdir, + f"tree-sitter-{lang}-tags.scm", + ) except KeyError: return From 5d1f50117b7be4503a251747798e76bed70b5e31 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Fri, 7 Feb 2025 15:23:50 -0800 Subject: [PATCH 007/100] refactor: Improve file lookup logic in get_scm_fname --- aider/repomap.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/aider/repomap.py b/aider/repomap.py index b184b6566..cdf047936 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -735,11 +735,19 @@ def get_scm_fname(lang): # Load the tags queries if USING_TSL_PACK: subdir = "tree-sitter-language-pack" - # check this subdir first, if file exists, return it otherwise check the other. ai! - else: - subdir = "tree-sitter-languages" - + try: + path = resources.files(__package__).joinpath( + "queries", + subdir, + f"tree-sitter-{lang}-tags.scm", + ) + if path.exists(): + return path + except KeyError: + pass + # Fall back to tree-sitter-languages + subdir = "tree-sitter-languages" try: return resources.files(__package__).joinpath( "queries", From e3d5eaf388ae8da925fbd0d3577adbc07fdae16d Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 15:29:28 -0800 Subject: [PATCH 008/100] reorg scm files --- .../{tree-sitter-javascript-tags.scm => javascript-tags.scm} | 0 .../{tree-sitter-c-tags.scm => c-tags.scm} | 0 .../{tree-sitter-c_sharp-tags.scm => c_sharp-tags.scm} | 0 .../{tree-sitter-cpp-tags.scm => cpp-tags.scm} | 0 .../{tree-sitter-dart-tags.scm => dart-tags.scm} | 0 .../{tree-sitter-elisp-tags.scm => elisp-tags.scm} | 0 .../{tree-sitter-elixir-tags.scm => elixir-tags.scm} | 0 .../{tree-sitter-elm-tags.scm => elm-tags.scm} | 0 .../{tree-sitter-go-tags.scm => go-tags.scm} | 0 .../{tree-sitter-hcl-tags.scm => hcl-tags.scm} | 0 .../{tree-sitter-java-tags.scm => java-tags.scm} | 0 .../{tree-sitter-javascript-tags.scm => javascript-tags.scm} | 0 .../{tree-sitter-kotlin-tags.scm => kotlin-tags.scm} | 0 .../{tree-sitter-ocaml-tags.scm => ocaml-tags.scm} | 0 .../{tree-sitter-php-tags.scm => php-tags.scm} | 0 .../{tree-sitter-python-tags.scm => python-tags.scm} | 0 .../{tree-sitter-ql-tags.scm => ql-tags.scm} | 0 .../{tree-sitter-ruby-tags.scm => ruby-tags.scm} | 0 .../{tree-sitter-rust-tags.scm => rust-tags.scm} | 0 .../{tree-sitter-typescript-tags.scm => typescript-tags.scm} | 0 aider/repomap.py | 4 ++-- 21 files changed, 2 insertions(+), 2 deletions(-) rename aider/queries/tree-sitter-language-pack/{tree-sitter-javascript-tags.scm => javascript-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-c-tags.scm => c-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-c_sharp-tags.scm => c_sharp-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-cpp-tags.scm => cpp-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-dart-tags.scm => dart-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-elisp-tags.scm => elisp-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-elixir-tags.scm => elixir-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-elm-tags.scm => elm-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-go-tags.scm => go-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-hcl-tags.scm => hcl-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-java-tags.scm => java-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-javascript-tags.scm => javascript-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-kotlin-tags.scm => kotlin-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-ocaml-tags.scm => ocaml-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-php-tags.scm => php-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-python-tags.scm => python-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-ql-tags.scm => ql-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-ruby-tags.scm => ruby-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-rust-tags.scm => rust-tags.scm} (100%) rename aider/queries/tree-sitter-languages/{tree-sitter-typescript-tags.scm => typescript-tags.scm} (100%) diff --git a/aider/queries/tree-sitter-language-pack/tree-sitter-javascript-tags.scm b/aider/queries/tree-sitter-language-pack/javascript-tags.scm similarity index 100% rename from aider/queries/tree-sitter-language-pack/tree-sitter-javascript-tags.scm rename to aider/queries/tree-sitter-language-pack/javascript-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-c-tags.scm b/aider/queries/tree-sitter-languages/c-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-c-tags.scm rename to aider/queries/tree-sitter-languages/c-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-c_sharp-tags.scm b/aider/queries/tree-sitter-languages/c_sharp-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-c_sharp-tags.scm rename to aider/queries/tree-sitter-languages/c_sharp-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-cpp-tags.scm b/aider/queries/tree-sitter-languages/cpp-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-cpp-tags.scm rename to aider/queries/tree-sitter-languages/cpp-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-dart-tags.scm b/aider/queries/tree-sitter-languages/dart-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-dart-tags.scm rename to aider/queries/tree-sitter-languages/dart-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-elisp-tags.scm b/aider/queries/tree-sitter-languages/elisp-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-elisp-tags.scm rename to aider/queries/tree-sitter-languages/elisp-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-elixir-tags.scm b/aider/queries/tree-sitter-languages/elixir-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-elixir-tags.scm rename to aider/queries/tree-sitter-languages/elixir-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-elm-tags.scm b/aider/queries/tree-sitter-languages/elm-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-elm-tags.scm rename to aider/queries/tree-sitter-languages/elm-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-go-tags.scm b/aider/queries/tree-sitter-languages/go-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-go-tags.scm rename to aider/queries/tree-sitter-languages/go-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-hcl-tags.scm b/aider/queries/tree-sitter-languages/hcl-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-hcl-tags.scm rename to aider/queries/tree-sitter-languages/hcl-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-java-tags.scm b/aider/queries/tree-sitter-languages/java-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-java-tags.scm rename to aider/queries/tree-sitter-languages/java-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-javascript-tags.scm b/aider/queries/tree-sitter-languages/javascript-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-javascript-tags.scm rename to aider/queries/tree-sitter-languages/javascript-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-kotlin-tags.scm b/aider/queries/tree-sitter-languages/kotlin-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-kotlin-tags.scm rename to aider/queries/tree-sitter-languages/kotlin-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-ocaml-tags.scm b/aider/queries/tree-sitter-languages/ocaml-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-ocaml-tags.scm rename to aider/queries/tree-sitter-languages/ocaml-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-php-tags.scm b/aider/queries/tree-sitter-languages/php-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-php-tags.scm rename to aider/queries/tree-sitter-languages/php-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-python-tags.scm b/aider/queries/tree-sitter-languages/python-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-python-tags.scm rename to aider/queries/tree-sitter-languages/python-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-ql-tags.scm b/aider/queries/tree-sitter-languages/ql-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-ql-tags.scm rename to aider/queries/tree-sitter-languages/ql-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-ruby-tags.scm b/aider/queries/tree-sitter-languages/ruby-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-ruby-tags.scm rename to aider/queries/tree-sitter-languages/ruby-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-rust-tags.scm b/aider/queries/tree-sitter-languages/rust-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-rust-tags.scm rename to aider/queries/tree-sitter-languages/rust-tags.scm diff --git a/aider/queries/tree-sitter-languages/tree-sitter-typescript-tags.scm b/aider/queries/tree-sitter-languages/typescript-tags.scm similarity index 100% rename from aider/queries/tree-sitter-languages/tree-sitter-typescript-tags.scm rename to aider/queries/tree-sitter-languages/typescript-tags.scm diff --git a/aider/repomap.py b/aider/repomap.py index cdf047936..4379cc0af 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -739,7 +739,7 @@ def get_scm_fname(lang): path = resources.files(__package__).joinpath( "queries", subdir, - f"tree-sitter-{lang}-tags.scm", + f"{lang}-tags.scm", ) if path.exists(): return path @@ -752,7 +752,7 @@ def get_scm_fname(lang): return resources.files(__package__).joinpath( "queries", subdir, - f"tree-sitter-{lang}-tags.scm", + f"{lang}-tags.scm", ) except KeyError: return From 2a56d892d772c5d846925585a30e081154596502 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Fri, 7 Feb 2025 16:18:09 -0800 Subject: [PATCH 009/100] works with both tsl and tsl-pack --- aider/repomap.py | 40 +++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/aider/repomap.py b/aider/repomap.py index 4379cc0af..4d903004b 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -285,26 +285,32 @@ class RepoMap: captures = query.captures(tree.root_node) saw = set() - for tag, nodes in captures.items(): - for node in nodes: - if tag.startswith("name.definition."): - kind = "def" - elif tag.startswith("name.reference."): - kind = "ref" - else: - continue + if USING_TSL_PACK: + all_nodes = [] + for tag, nodes in captures.items(): + all_nodes += [(node, tag) for node in nodes] + else: + all_nodes = list(captures) - saw.add(kind) + for node, tag in all_nodes: + if tag.startswith("name.definition."): + kind = "def" + elif tag.startswith("name.reference."): + kind = "ref" + else: + continue - result = Tag( - rel_fname=rel_fname, - fname=fname, - name=node.text.decode("utf-8"), - kind=kind, - line=node.start_point[0], - ) + saw.add(kind) - yield result + result = Tag( + rel_fname=rel_fname, + fname=fname, + name=node.text.decode("utf-8"), + kind=kind, + line=node.start_point[0], + ) + + yield result if "ref" in saw: return From e2dbfdc537f91a51ad77cfc882adc26a93ab5a07 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 9 Feb 2025 15:22:19 -0800 Subject: [PATCH 010/100] feat: Add configurable cache keepalive delay and pings option --- aider/coders/base_coder.py | 1 + aider/main.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/aider/coders/base_coder.py b/aider/coders/base_coder.py index 7e228dd5f..d377979be 100755 --- a/aider/coders/base_coder.py +++ b/aider/coders/base_coder.py @@ -1207,6 +1207,7 @@ class Coder: return delay = 5 * 60 - 5 + delay = float(os.environ.get("AIDER_CACHE_KEEPALIVE_DELAY", delay)) self.next_cache_warm = time.time() + delay self.warming_pings_left = self.num_cache_warming_pings self.cache_warming_chunks = chunks diff --git a/aider/main.py b/aider/main.py index 398737079..e44961258 100644 --- a/aider/main.py +++ b/aider/main.py @@ -1060,7 +1060,7 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F while True: try: - coder.ok_to_warm_cache = True + coder.ok_to_warm_cache = bool(args.cache_keepalive_pings) coder.run() analytics.event("exit", reason="Completed main CLI coder.run") return From 7c30086d78c1a491792788b482f5b7728b20cb70 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 9 Feb 2025 15:25:49 -0800 Subject: [PATCH 011/100] copy --- HISTORY.md | 6 ++ aider/website/HISTORY.md | 6 ++ aider/website/assets/sample-analytics.jsonl | 76 ++++++++++----------- aider/website/docs/faq.md | 12 ++-- 4 files changed, 56 insertions(+), 44 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index b2e99c033..b01216913 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,11 @@ # Release history +### Aider v0.74.2 + +- Prevent more than one cache warming thread from becoming active. +- Fixed continuation prompt ". " for multiline input. +- Added HCL (Terraform) syntax support, by Warren Krewenki. + ### Aider v0.74.1 - Have o1 & o3-mini generate markdown by sending the magic "Formatting re-enabled." string. diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 219fd67e0..53549b4ec 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,6 +23,12 @@ cog.out(text) ]]]--> +### Aider v0.74.2 + +- Prevent more than one cache warming thread from becoming active. +- Fixed continuation prompt ". " for multiline input. +- Added HCL (Terraform) syntax support, by Warren Krewenki. + ### Aider v0.74.1 - Have o1 & o3-mini generate markdown by sending the magic "Formatting re-enabled." string. diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index 8f2466f08..ee6fae19f 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,41 +1,3 @@ -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717794} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717795} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717795} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717797} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717797} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717798} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717804} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717806} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717806} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717806} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717806} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717808} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717808} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738717809} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787320} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787322} -{"event": "cli session", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787322} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787323} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787340} -{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787340} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787414} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 8828, "completion_tokens": 285, "total_tokens": 9113, "cost": 0.0109648, "total_cost": 0.0109648}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787446} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787609} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 9152, "completion_tokens": 444, "total_tokens": 9596, "cost": 0.0120208, "total_cost": 0.022985600000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787649} -{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787685} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787877} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 9672, "completion_tokens": 552, "total_tokens": 10224, "cost": 0.013068, "total_cost": 0.036053600000000005}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738787902} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788233} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788234} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788234} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788388} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788555} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788555} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788555} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788875} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788876} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738788876} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789047} {"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789048} {"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789048} {"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789051} @@ -998,3 +960,41 @@ {"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738980564} {"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738980627} {"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738980627} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143173} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143174} +{"event": "cli session", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143174} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143175} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143205} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143206} +{"event": "cli session", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143206} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143206} +{"event": "message_send", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff", "prompt_tokens": 9802, "completion_tokens": 31, "total_tokens": 9833, "cost": 0.009957, "total_cost": 0.009957}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143213} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143214} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143243} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143244} +{"event": "cli session", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143244} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143245} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143267} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143267} +{"event": "cli session", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143267} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143269} +{"event": "message_send", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff", "prompt_tokens": 9935, "completion_tokens": 40, "total_tokens": 9975, "cost": 0.010135, "total_cost": 0.010135}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143273} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143295} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143302} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143302} +{"event": "cli session", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143302} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143303} +{"event": "message_send", "properties": {"main_model": "claude-3-5-haiku-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-haiku-20241022", "edit_format": "diff", "prompt_tokens": 9935, "completion_tokens": 30, "total_tokens": 9965, "cost": 0.010085, "total_cost": 0.010085}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143308} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143326} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143326} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143334} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143334} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143340} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143470} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143470} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143470} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143483} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143484} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143484} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7990, "completion_tokens": 177, "total_tokens": 8167, "cost": 0.026625000000000003, "total_cost": 0.026625000000000003}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143492} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143492} diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index b6634c224..59ff577e8 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,12 +249,12 @@ tr:hover { background-color: #f5f5f5; } - - - - - - + + + + + +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022938,56962.9%
fireworks_ai/accounts/fireworks/models/deepseek-v3273,00518.3%
deepseek/deepseek-chat97,7456.6%
o3-mini75,4005.1%
fireworks_ai/accounts/fireworks/models/deepseek-r165,2514.4%
claude-3-5-haiku-2024102239,4302.6%
claude-3-5-sonnet-20241022946,73663.1%
fireworks_ai/accounts/fireworks/models/deepseek-v3273,00518.2%
deepseek/deepseek-chat97,7456.5%
claude-3-5-haiku-2024102269,2034.6%
fireworks_ai/accounts/fireworks/models/deepseek-r165,2514.3%
o3-mini46,4673.1%
gemini/REDACTED1,8590.1%
ollama_chat/REDACTED3090.0%
From 49dcd11813707f07bf00c9be1cceeca9fad62068 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 9 Feb 2025 15:26:05 -0800 Subject: [PATCH 012/100] version bump to 0.74.2 --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index cb071ae73..6dc0a3bad 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.74.2.dev" +__version__ = "0.74.2" safe_version = __version__ try: From 22ed9d8d7c23071493c210132883cc7e73c6dfb9 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 9 Feb 2025 15:27:49 -0800 Subject: [PATCH 013/100] set version to 0.74.3.dev --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index 6dc0a3bad..9a2ef5ab0 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.74.2" +__version__ = "0.74.3.dev" safe_version = __version__ try: From 42237ced800f6fd5e1d9ce4474eddf307faa1a37 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 9 Feb 2025 17:19:19 -0800 Subject: [PATCH 014/100] feat: Add CLI option to install tree-sitter language pack --- aider/args.py | 6 ++++++ aider/main.py | 14 ++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/aider/args.py b/aider/args.py index e20d99db4..554931fa8 100644 --- a/aider/args.py +++ b/aider/args.py @@ -823,6 +823,12 @@ def get_parser(default_config_files, git_root): "--editor", help="Specify which editor to use for the /editor command", ) + group.add_argument( + "--install-tree-sitter-language-pack", + action="store_true", + help="Install the tree_sitter_language_pack (experimental)", + default=False, + ) return parser diff --git a/aider/main.py b/aider/main.py index e44961258..6c0468689 100644 --- a/aider/main.py +++ b/aider/main.py @@ -214,6 +214,15 @@ def check_streamlit_install(io): ) +def install_tree_sitter_language_pack(io): + return utils.check_pip_install_extra( + io, + "tree_sitter_language_pack", + "Install tree_sitter_language_pack?", + ["tree-sitter-language-pack", "tree-sitter"], + ) + + def write_streamlit_credentials(): from streamlit.file_util import get_streamlit_file_path @@ -706,6 +715,11 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F analytics.event("exit", reason="Upgrade completed") return 0 if success else 1 + if args.install_tree_sitter_language_pack: + success = install_tree_sitter_language_pack(io) + analytics.event("exit", reason="Install TSLP completed") + return 0 if success else 1 + if args.check_update: check_version(io, verbose=args.verbose) From 17919d7503cd5bee8e63c259427682cc419d97dd Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 10 Feb 2025 11:37:30 -0800 Subject: [PATCH 015/100] refactor: Add priority label check to prevent bot actions on priority issues --- scripts/issues.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/scripts/issues.py b/scripts/issues.py index b474d6f42..0603317de 100755 --- a/scripts/issues.py +++ b/scripts/issues.py @@ -126,6 +126,11 @@ def find_oldest_issue(subject, all_issues): def comment_and_close_duplicate(issue, oldest_issue): + # Skip if issue is labeled as priority + if "priority" in [label["name"] for label in issue["labels"]]: + print(f" - Skipping priority issue #{issue['number']}") + return + comment_url = ( f"{GITHUB_API_URL}/repos/{REPO_OWNER}/{REPO_NAME}/issues/{issue['number']}/comments" ) @@ -168,7 +173,10 @@ def find_unlabeled_with_paul_comments(issues): def handle_unlabeled_issues(all_issues, auto_yes): print("\nFinding unlabeled issues with paul-gauthier comments...") - unlabeled_issues = find_unlabeled_with_paul_comments(all_issues) + unlabeled_issues = [ + issue for issue in find_unlabeled_with_paul_comments(all_issues) + if "priority" not in [label["name"] for label in issue["labels"]] + ] if not unlabeled_issues: print("No unlabeled issues with paul-gauthier comments found.") @@ -197,10 +205,12 @@ def handle_stale_issues(all_issues, auto_yes): for issue in all_issues: # Skip if not open, not a question, already stale, or has been reopened + labels = [label["name"] for label in issue["labels"]] if ( issue["state"] != "open" - or "question" not in [label["name"] for label in issue["labels"]] - or "stale" in [label["name"] for label in issue["labels"]] + or "question" not in labels + or "stale" in labels + or "priority" in labels or has_been_reopened(issue["number"]) ): continue @@ -239,8 +249,9 @@ def handle_stale_closing(all_issues, auto_yes): print("\nChecking for issues to close or unstale...") for issue in all_issues: - # Skip if not open or not stale - if issue["state"] != "open" or "stale" not in [label["name"] for label in issue["labels"]]: + # Skip if not open, not stale, or is priority + labels = [label["name"] for label in issue["labels"]] + if issue["state"] != "open" or "stale" not in labels or "priority" in labels: continue # Get the timeline to find when the stale label was last added @@ -324,9 +335,9 @@ def handle_fixed_issues(all_issues, auto_yes): print("\nChecking for fixed enhancement and bug issues to close...") for issue in all_issues: - # Skip if not open or doesn't have fixed label + # Skip if not open, doesn't have fixed label, or is priority labels = [label["name"] for label in issue["labels"]] - if issue["state"] != "open" or "fixed" not in labels: + if issue["state"] != "open" or "fixed" not in labels or "priority" in labels: continue # Check if it's an enhancement or bug From 30332c2ba5db6d08b190be78f9741ba2a0fee730 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 10 Feb 2025 11:37:35 -0800 Subject: [PATCH 016/100] style: Apply linter formatting to issues.py script --- scripts/issues.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/issues.py b/scripts/issues.py index 0603317de..17e381706 100755 --- a/scripts/issues.py +++ b/scripts/issues.py @@ -174,7 +174,8 @@ def find_unlabeled_with_paul_comments(issues): def handle_unlabeled_issues(all_issues, auto_yes): print("\nFinding unlabeled issues with paul-gauthier comments...") unlabeled_issues = [ - issue for issue in find_unlabeled_with_paul_comments(all_issues) + issue + for issue in find_unlabeled_with_paul_comments(all_issues) if "priority" not in [label["name"] for label in issue["labels"]] ] From bca6507f11ebec4a968792407acbd75a4e235cb1 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 10 Feb 2025 11:48:19 -0800 Subject: [PATCH 017/100] bump deps --- requirements.txt | 4 ++-- requirements/requirements-browser.txt | 2 +- requirements/requirements-dev.txt | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/requirements.txt b/requirements.txt index b1933f406..7f6caaea4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -99,7 +99,7 @@ jsonschema==4.23.0 # litellm jsonschema-specifications==2024.10.1 # via jsonschema -litellm==1.60.6 +litellm==1.60.8 # via -r requirements/requirements.in markdown-it-py==3.0.0 # via rich @@ -254,5 +254,5 @@ zipp==3.21.0 # via importlib-metadata # The following packages are considered to be unsafe in a requirements file: -pip==25.0 +pip==25.0.1 # via -r requirements/requirements.in diff --git a/requirements/requirements-browser.txt b/requirements/requirements-browser.txt index 00e165273..f50bb66d4 100644 --- a/requirements/requirements-browser.txt +++ b/requirements/requirements-browser.txt @@ -92,7 +92,7 @@ mdurl==0.1.2 # -c requirements.txt # -c requirements/requirements-dev.txt # markdown-it-py -narwhals==1.25.2 +narwhals==1.26.0 # via altair numpy==1.26.4 # via diff --git a/requirements/requirements-dev.txt b/requirements/requirements-dev.txt index 5234c9175..402dda963 100644 --- a/requirements/requirements-dev.txt +++ b/requirements/requirements-dev.txt @@ -53,7 +53,7 @@ filelock==3.17.0 # virtualenv fonttools==4.56.0 # via matplotlib -identify==2.6.6 +identify==2.6.7 # via pre-commit idna==3.10 # via @@ -218,13 +218,13 @@ urllib3==2.3.0 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # requests -virtualenv==20.29.1 +virtualenv==20.29.2 # via pre-commit wheel==0.45.1 # via pip-tools # The following packages are considered to be unsafe in a requirements file: -pip==25.0 +pip==25.0.1 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt From 44b1acd3856c07acd6f64ded60177c8c9db88358 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 10 Feb 2025 14:25:42 -0800 Subject: [PATCH 018/100] feat: Add tree-sitter language pack configuration and version pinning --- aider/main.py | 5 +- aider/repomap.py | 8 +- aider/website/assets/sample-analytics.jsonl | 160 ++++++++++---------- aider/website/assets/sample.aider.conf.yml | 3 + aider/website/assets/sample.env | 3 + aider/website/docs/config/aider_conf.md | 3 + aider/website/docs/config/dotenv.md | 3 + aider/website/docs/config/options.md | 6 + aider/website/docs/faq.md | 11 +- 9 files changed, 112 insertions(+), 90 deletions(-) diff --git a/aider/main.py b/aider/main.py index 6c0468689..76c9da478 100644 --- a/aider/main.py +++ b/aider/main.py @@ -219,7 +219,10 @@ def install_tree_sitter_language_pack(io): io, "tree_sitter_language_pack", "Install tree_sitter_language_pack?", - ["tree-sitter-language-pack", "tree-sitter"], + [ + "tree-sitter-language-pack==0.4.0", + "tree-sitter==0.24.0", + ], ) diff --git a/aider/repomap.py b/aider/repomap.py index 4d903004b..750bd6529 100644 --- a/aider/repomap.py +++ b/aider/repomap.py @@ -25,16 +25,18 @@ from aider.utils import Spinner warnings.simplefilter("ignore", category=FutureWarning) from grep_ast.tsl import USING_TSL_PACK, get_language, get_parser # noqa: E402 -dump(USING_TSL_PACK) - Tag = namedtuple("Tag", "rel_fname fname line name kind".split()) SQLITE_ERRORS = (sqlite3.OperationalError, sqlite3.DatabaseError, OSError) +CACHE_VERSION = 3 +if USING_TSL_PACK: + CACHE_VERSION = 4 + + class RepoMap: - CACHE_VERSION = 3 TAGS_CACHE_DIR = f".aider.tags.cache.v{CACHE_VERSION}" warned_files = set() diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index ee6fae19f..8719d9ec8 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,83 +1,3 @@ -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789048} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789048} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789051} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789055} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789055} -{"event": "exit", "properties": {"reason": "Showed prompts"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789058} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789075} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789075} -{"event": "exit", "properties": {"reason": "Showed prompts"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789078} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789101} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789102} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789102} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789114} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789116} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789117} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789117} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789124} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789142} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789220} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789221} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789221} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789224} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789224} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789224} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789232} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789243} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 22069, "completion_tokens": 225, "total_tokens": 22294, "cost": 0.069582, "total_cost": 0.069582}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738789255} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738791922} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738791927} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792251} -{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792253} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792268} -{"event": "model warning", "properties": {"main_model": "gemini/REDACTED", "weak_model": "gemini/REDACTED", "editor_model": "gemini/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792269} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792272} -{"event": "cli session", "properties": {"main_model": "gemini/REDACTED", "weak_model": "gemini/REDACTED", "editor_model": "gemini/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792272} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792273} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792277} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738792277} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797794} -{"event": "model warning", "properties": {"main_model": "vertex_ai/REDACTED", "weak_model": "vertex_ai/REDACTED", "editor_model": "vertex_ai/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797796} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797798} -{"event": "cli session", "properties": {"main_model": "vertex_ai/REDACTED", "weak_model": "vertex_ai/REDACTED", "editor_model": "vertex_ai/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797798} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797799} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797810} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797810} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797841} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797841} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797844} -{"event": "model warning", "properties": {"main_model": "vertex_ai/REDACTED", "weak_model": "vertex_ai/REDACTED", "editor_model": "vertex_ai/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797846} -{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797848} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797851} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797853} -{"event": "cli session", "properties": {"main_model": "vertex_ai/REDACTED", "weak_model": "vertex_ai/REDACTED", "editor_model": "vertex_ai/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797853} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797854} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797864} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797864} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797870} -{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797872} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797886} -{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797888} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797894} -{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797895} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797912} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797913} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738797913} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798659} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798661} -{"event": "cli session", "properties": {"main_model": "gemini/REDACTED", "weak_model": "gemini/REDACTED", "editor_model": "gemini/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798661} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798663} -{"event": "message_send", "properties": {"main_model": "gemini/REDACTED", "weak_model": "gemini/REDACTED", "editor_model": "gemini/REDACTED", "edit_format": "whole", "prompt_tokens": 1844, "completion_tokens": 15, "total_tokens": 1859, "cost": 0, "total_cost": 0.0}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798664} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798686} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738798686} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738799240} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738799240} -{"event": "exit", "properties": {"reason": "Showed prompts"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738799243} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738799276} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738799276} -{"event": "exit", "properties": {"reason": "Showed prompts"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738799279} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857004} -{"event": "model warning", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857006} {"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857009} {"event": "cli session", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857009} {"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857012} @@ -998,3 +918,83 @@ {"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143484} {"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7990, "completion_tokens": 177, "total_tokens": 8167, "cost": 0.026625000000000003, "total_cost": 0.026625000000000003}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143492} {"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143492} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143648} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143648} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739143648} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150197} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150219} +{"event": "exit", "properties": {"reason": "Install TSLP completed"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150231} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150237} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150238} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150238} +{"event": "command_map", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150243} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150252} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150256} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150258} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150316} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150316} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150316} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150318} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150322} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150322} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150333} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150334} +{"event": "exit", "properties": {"reason": "Showed repo map"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150340} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150352} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150352} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739150359} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216211} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216212} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216212} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216233} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 11003, "completion_tokens": 765, "total_tokens": 11768, "cost": 0.044484, "total_cost": 0.044484}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216248} +{"event": "command_diff", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216258} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216362} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216362} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216747} +{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216747} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216747} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216752} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216773} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216773} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 13452, "completion_tokens": 217, "total_tokens": 13669, "cost": 0.043611000000000004, "total_cost": 0.043611000000000004}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216781} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216875} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739216875} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224786} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224786} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224786} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224789} +{"event": "command_map", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224794} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224849} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224980} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739224980} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225123} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225123} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225123} +{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225148} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225187} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225187} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 6627, "completion_tokens": 213, "total_tokens": 6840, "cost": 0.023076, "total_cost": 0.023076}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225194} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225195} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7291, "completion_tokens": 130, "total_tokens": 7421, "cost": 0.023823, "total_cost": 0.046898999999999996}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225199} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225211} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225224} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7450, "completion_tokens": 195, "total_tokens": 7645, "cost": 0.025275000000000002, "total_cost": 0.072174}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225230} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225253} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7662, "completion_tokens": 179, "total_tokens": 7841, "cost": 0.025671, "total_cost": 0.097845}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225258} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225261} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225261} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225711} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225711} +{"event": "exit", "properties": {"reason": "Showed repo map"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739225716} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226193} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226194} +{"event": "exit", "properties": {"reason": "Showed repo map"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226216} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226226} +{"event": "exit", "properties": {"reason": "Install TSLP completed"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226233} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226242} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226242} +{"event": "exit", "properties": {"reason": "Showed repo map"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226250} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226316} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226316} +{"event": "exit", "properties": {"reason": "Showed repo map"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226319} diff --git a/aider/website/assets/sample.aider.conf.yml b/aider/website/assets/sample.aider.conf.yml index 915bf8132..894719f86 100644 --- a/aider/website/assets/sample.aider.conf.yml +++ b/aider/website/assets/sample.aider.conf.yml @@ -436,3 +436,6 @@ ## Specify which editor to use for the /editor command #editor: xxx + +## Install the tree_sitter_language_pack (experimental) +#install-tree-sitter-language-pack: false diff --git a/aider/website/assets/sample.env b/aider/website/assets/sample.env index ad3752823..7846bf45c 100644 --- a/aider/website/assets/sample.env +++ b/aider/website/assets/sample.env @@ -404,3 +404,6 @@ ## Specify which editor to use for the /editor command #AIDER_EDITOR= + +## Install the tree_sitter_language_pack (experimental) +#AIDER_INSTALL_TREE_SITTER_LANGUAGE_PACK=false diff --git a/aider/website/docs/config/aider_conf.md b/aider/website/docs/config/aider_conf.md index 423c1a248..5037fd7f8 100644 --- a/aider/website/docs/config/aider_conf.md +++ b/aider/website/docs/config/aider_conf.md @@ -490,5 +490,8 @@ cog.outl("```") ## Specify which editor to use for the /editor command #editor: xxx + +## Install the tree_sitter_language_pack (experimental) +#install-tree-sitter-language-pack: false ``` diff --git a/aider/website/docs/config/dotenv.md b/aider/website/docs/config/dotenv.md index e69930792..1c36478b2 100644 --- a/aider/website/docs/config/dotenv.md +++ b/aider/website/docs/config/dotenv.md @@ -444,5 +444,8 @@ cog.outl("```") ## Specify which editor to use for the /editor command #AIDER_EDITOR= + +## Install the tree_sitter_language_pack (experimental) +#AIDER_INSTALL_TREE_SITTER_LANGUAGE_PACK=false ``` diff --git a/aider/website/docs/config/options.md b/aider/website/docs/config/options.md index af4abecaa..5aa721e7c 100644 --- a/aider/website/docs/config/options.md +++ b/aider/website/docs/config/options.md @@ -79,6 +79,7 @@ usage: aider [-h] [--model] [--opus] [--sonnet] [--haiku] [--4] [--fancy-input | --no-fancy-input] [--multiline | --no-multiline] [--detect-urls | --no-detect-urls] [--editor] + [--install-tree-sitter-language-pack] ``` @@ -761,4 +762,9 @@ Aliases: ### `--editor VALUE` Specify which editor to use for the /editor command Environment variable: `AIDER_EDITOR` + +### `--install-tree-sitter-language-pack` +Install the tree_sitter_language_pack (experimental) +Default: False +Environment variable: `AIDER_INSTALL_TREE_SITTER_LANGUAGE_PACK` diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index 59ff577e8..7208db187 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,13 +249,12 @@ tr:hover { background-color: #f5f5f5; } - - - - + + + + - - +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022946,73663.1%
fireworks_ai/accounts/fireworks/models/deepseek-v3273,00518.2%
deepseek/deepseek-chat97,7456.5%
claude-3-5-haiku-2024102269,2034.6%
claude-3-5-sonnet-20241022979,62664.0%
fireworks_ai/accounts/fireworks/models/deepseek-v3273,00517.8%
deepseek/deepseek-chat97,7456.4%
claude-3-5-haiku-2024102269,2034.5%
fireworks_ai/accounts/fireworks/models/deepseek-r165,2514.3%
o3-mini46,4673.1%
gemini/REDACTED1,8590.1%
o3-mini46,4673.0%
ollama_chat/REDACTED3090.0%
From dd857aeccf8f280622bce442ebce3753e9e0bc5c Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Thu, 13 Feb 2025 12:12:33 -0800 Subject: [PATCH 019/100] fix: Handle file reading with encoding, ignore decoding errors --- aider/io.py | 1 + 1 file changed, 1 insertion(+) diff --git a/aider/io.py b/aider/io.py index 5ab11f0d6..ce82c5bd2 100644 --- a/aider/io.py +++ b/aider/io.py @@ -368,6 +368,7 @@ class InputOutput: return self.read_image(filename) try: + # ignore decoding errors. ai! with open(str(filename), "r", encoding=self.encoding) as f: return f.read() except FileNotFoundError: From f67ea5d0100b39c4341e43e3a7dbdc1747957bc2 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Thu, 13 Feb 2025 12:12:35 -0800 Subject: [PATCH 020/100] fix: Ignore decoding errors when reading text files --- aider/io.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/aider/io.py b/aider/io.py index ce82c5bd2..0c9b87049 100644 --- a/aider/io.py +++ b/aider/io.py @@ -368,8 +368,7 @@ class InputOutput: return self.read_image(filename) try: - # ignore decoding errors. ai! - with open(str(filename), "r", encoding=self.encoding) as f: + with open(str(filename), "r", encoding=self.encoding, errors='ignore') as f: return f.read() except FileNotFoundError: if not silent: From 108ce18d5118d264c9b2f5bba06f086f2d840d84 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Thu, 13 Feb 2025 12:12:40 -0800 Subject: [PATCH 021/100] style: Fix linting issues in io.py file --- aider/io.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/io.py b/aider/io.py index 0c9b87049..3ecb7a2db 100644 --- a/aider/io.py +++ b/aider/io.py @@ -368,7 +368,7 @@ class InputOutput: return self.read_image(filename) try: - with open(str(filename), "r", encoding=self.encoding, errors='ignore') as f: + with open(str(filename), "r", encoding=self.encoding, errors="ignore") as f: return f.read() except FileNotFoundError: if not silent: From 8799cf95b4ede99b36c0cd6598d4aca92f73f7f5 Mon Sep 17 00:00:00 2001 From: Daniel de Vries Date: Fri, 14 Feb 2025 11:47:45 -0500 Subject: [PATCH 022/100] subprocess now called with shell true --- aider/editor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/editor.py b/aider/editor.py index 14473e5d2..c679db80c 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -130,7 +130,7 @@ def pipe_editor(input_data="", suffix=None, editor=None): filepath = write_temp_file(input_data, suffix) command_parts = discover_editor(editor) command_parts.append(filepath) - subprocess.call(command_parts) + subprocess.call(command_parts, shell=True) with open(filepath, "r") as f: output_data = f.read() try: From 69fcc3acd7d1cf90e55cd61ba5f5ce900767e647 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sat, 15 Feb 2025 12:00:39 -0800 Subject: [PATCH 023/100] fix: Change file reading error handling from "ignore" to "replace" --- aider/io.py | 2 +- aider/website/_data/polyglot_leaderboard.yml | 28 +++++++++++++++++++- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/aider/io.py b/aider/io.py index 3ecb7a2db..44263bdd4 100644 --- a/aider/io.py +++ b/aider/io.py @@ -368,7 +368,7 @@ class InputOutput: return self.read_image(filename) try: - with open(str(filename), "r", encoding=self.encoding, errors="ignore") as f: + with open(str(filename), "r", encoding=self.encoding, errors="replace") as f: return f.read() except FileNotFoundError: if not silent: diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 7d8bd4494..8ee7ba94b 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -543,4 +543,30 @@ date: 2025-01-21 versions: 0.72.2.dev seconds_per_case: 24.2 - total_cost: 0.0000 \ No newline at end of file + total_cost: 0.0000 + +- dirname: 2025-02-15-19-51-22--chatgpt4o-feb15-diff + test_cases: 223 + model: chatgpt-4o-latest + edit_format: diff + commit_hash: 108ce18-dirty + pass_rate_1: 9.0 + pass_rate_2: 27.1 + pass_num_1: 20 + pass_num_2: 61 + percent_cases_well_formed: 93.3 + error_outputs: 66 + num_malformed_responses: 21 + num_with_malformed_responses: 15 + user_asks: 57 + lazy_comments: 0 + syntax_errors: 0 + indentation_errors: 0 + exhausted_context_windows: 0 + test_timeouts: 2 + total_tests: 225 + command: aider --model chatgpt-4o-latest + date: 2025-02-15 + versions: 0.74.3.dev + seconds_per_case: 12.4 + total_cost: 14.3703 \ No newline at end of file From 6ffbec969a9dd866fa13d45a08ea6835e6ff3ccb Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sat, 15 Feb 2025 12:01:40 -0800 Subject: [PATCH 024/100] copy --- aider/website/_data/polyglot_leaderboard.yml | 2 +- aider/website/assets/sample-analytics.jsonl | 86 ++++++++++---------- aider/website/docs/faq.md | 12 +-- aider/website/docs/leaderboards/index.md | 2 +- 4 files changed, 51 insertions(+), 51 deletions(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 8ee7ba94b..0cdde46d6 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -547,7 +547,7 @@ - dirname: 2025-02-15-19-51-22--chatgpt4o-feb15-diff test_cases: 223 - model: chatgpt-4o-latest + model: chatgpt-4o-latest (2025-02-15) edit_format: diff commit_hash: 108ce18-dirty pass_rate_1: 9.0 diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index 8719d9ec8..ac63c79aa 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,46 +1,3 @@ -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857009} -{"event": "cli session", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857009} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857012} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857012} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857015} -{"event": "model warning", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857016} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857018} -{"event": "cli session", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857018} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857021} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857021} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857042} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857043} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857047} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857132} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857132} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738857132} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858467} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858467} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858467} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858468} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858471} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858474} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858492} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "ask", "prompt_tokens": 12098, "completion_tokens": 563, "total_tokens": 12661, "cost": 0.10128799999999999, "total_cost": 0.10128799999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858523} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858545} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "ask", "prompt_tokens": 12359, "completion_tokens": 2644, "total_tokens": 15003, "cost": 0.120024, "total_cost": 0.221312}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858682} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858692} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858692} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 15224, "completion_tokens": 1181, "total_tokens": 16405, "cost": 0.13124, "total_cost": 0.352552}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858757} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858790} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858799} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 18938, "completion_tokens": 207, "total_tokens": 19145, "cost": 0.059919, "total_cost": 0.412471}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858806} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858809} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858809} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 21531, "completion_tokens": 382, "total_tokens": 21913, "cost": 0.070323, "total_cost": 0.48279399999999995}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858833} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858869} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858878} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 27025, "completion_tokens": 295, "total_tokens": 27320, "cost": 0.0855, "total_cost": 0.568294}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858887} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858891} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858891} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 29645, "completion_tokens": 152, "total_tokens": 29797, "cost": 0.091215, "total_cost": 0.659509}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858899} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858915} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 30526, "completion_tokens": 324, "total_tokens": 30850, "cost": 0.09643800000000001, "total_cost": 0.755947}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858926} {"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858927} {"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858927} {"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 33152, "completion_tokens": 151, "total_tokens": 33303, "cost": 0.101721, "total_cost": 0.8576680000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858935} @@ -998,3 +955,46 @@ {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226316} {"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226316} {"event": "exit", "properties": {"reason": "Showed repo map"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226319} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226335} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226335} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226342} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226578} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226585} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739226585} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378013} +{"event": "repo", "properties": {"num_files": 1}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378013} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378013} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378014} +{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378039} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378040} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 3530, "completion_tokens": 1191, "total_tokens": 4721, "cost": 0.0042489, "total_cost": 0.0042489}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378106} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378197} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739378197} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471875} +{"event": "repo", "properties": {"num_files": 198}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471876} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471876} +{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471878} +{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471878} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471881} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7533, "completion_tokens": 373, "total_tokens": 7906, "cost": 0.028194, "total_cost": 0.028194}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739471894} +{"event": "command_reset", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739472931} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739472937} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7154, "completion_tokens": 69, "total_tokens": 7223, "cost": 0.022497000000000003, "total_cost": 0.050691}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739472941} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739472943} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9020, "completion_tokens": 1078, "total_tokens": 10098, "cost": 0.043230000000000005, "total_cost": 0.093921}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739472967} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477536} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477536} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477536} +{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477537} +{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477537} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477537} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 14361, "completion_tokens": 138, "total_tokens": 14499, "cost": 0.045153000000000006, "total_cost": 0.045153000000000006}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477547} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477547} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 14652, "completion_tokens": 126, "total_tokens": 14778, "cost": 0.045846000000000005, "total_cost": 0.09099900000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477551} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477600} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739477600} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739490961} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739490961} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739649634} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739649635} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739649639} diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index 7208db187..a7f4ed22a 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,12 +249,12 @@ tr:hover { background-color: #f5f5f5; } - - - - - - + + + + + +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022979,62664.0%
fireworks_ai/accounts/fireworks/models/deepseek-v3273,00517.8%
deepseek/deepseek-chat97,7456.4%
claude-3-5-haiku-2024102269,2034.5%
fireworks_ai/accounts/fireworks/models/deepseek-r165,2514.3%
o3-mini46,4673.0%
claude-3-5-sonnet-20241022905,10563.8%
fireworks_ai/accounts/fireworks/models/deepseek-v3277,72619.6%
deepseek/deepseek-chat97,7456.9%
claude-3-5-haiku-2024102269,2034.9%
o3-mini46,4673.3%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.5%
ollama_chat/REDACTED3090.0%
diff --git a/aider/website/docs/leaderboards/index.md b/aider/website/docs/leaderboards/index.md index e83088866..f98366439 100644 --- a/aider/website/docs/leaderboards/index.md +++ b/aider/website/docs/leaderboards/index.md @@ -116,6 +116,6 @@ mod_dates = [get_last_modified_date(file) for file in files] latest_mod_date = max(mod_dates) cog.out(f"{latest_mod_date.strftime('%B %d, %Y.')}") ]]]--> -January 31, 2025. +February 15, 2025.

From 235b83d02ee8c724587bd87405fe85c72fd05f33 Mon Sep 17 00:00:00 2001 From: Lucas Shadler <99682335+ffluk3@users.noreply.github.com> Date: Mon, 17 Feb 2025 06:22:43 -0800 Subject: [PATCH 025/100] fix: add build.gradle.kts to special.py Now that aider supports Kotlin syntax, this change will allow for indexing of kotlin-based gradle project files --- aider/special.py | 1 + 1 file changed, 1 insertion(+) diff --git a/aider/special.py b/aider/special.py index 9d2e92e6e..77faa58b1 100644 --- a/aider/special.py +++ b/aider/special.py @@ -41,6 +41,7 @@ ROOT_IMPORTANT_FILES = [ "composer.lock", "pom.xml", "build.gradle", + "build.gradle.kts", "build.sbt", "go.mod", "go.sum", From 6d6e25df4e2ec6bfb761f477a0c834e306a746d6 Mon Sep 17 00:00:00 2001 From: "FeepingCreature (aider)" Date: Mon, 3 Feb 2025 19:25:47 +0100 Subject: [PATCH 026/100] refactor: Sort files by token count in cmd_tokens --- aider/commands.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/aider/commands.py b/aider/commands.py index f48873049..b6ece0373 100644 --- a/aider/commands.py +++ b/aider/commands.py @@ -404,6 +404,7 @@ class Commands: fence = "`" * 3 + file_res = [] # files for fname in self.coder.abs_fnames: relative_fname = self.coder.get_rel_fname(fname) @@ -414,7 +415,7 @@ class Commands: # approximate content = f"{relative_fname}\n{fence}\n" + content + "{fence}\n" tokens = self.coder.main_model.token_count(content) - res.append((tokens, f"{relative_fname}", "/drop to remove")) + file_res.append((tokens, f"{relative_fname}", "/drop to remove")) # read-only files for fname in self.coder.abs_read_only_fnames: @@ -424,7 +425,10 @@ class Commands: # approximate content = f"{relative_fname}\n{fence}\n" + content + "{fence}\n" tokens = self.coder.main_model.token_count(content) - res.append((tokens, f"{relative_fname} (read-only)", "/drop to remove")) + file_res.append((tokens, f"{relative_fname} (read-only)", "/drop to remove")) + + file_res.sort() + res.extend(file_res) self.io.tool_output( f"Approximate context window usage for {self.coder.main_model.name}, in tokens:" From 47fc6a689dc0aad2a9e4157ab63ee0663cc59913 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 19 Feb 2025 13:18:17 -0800 Subject: [PATCH 027/100] Revert "fix: Ignore decoding errors when reading text files" This reverts commit f67ea5d0100b39c4341e43e3a7dbdc1747957bc2. --- aider/io.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/io.py b/aider/io.py index 44263bdd4..5ab11f0d6 100644 --- a/aider/io.py +++ b/aider/io.py @@ -368,7 +368,7 @@ class InputOutput: return self.read_image(filename) try: - with open(str(filename), "r", encoding=self.encoding, errors="replace") as f: + with open(str(filename), "r", encoding=self.encoding) as f: return f.read() except FileNotFoundError: if not silent: From 50fafc9ff69ce66f01391835b74e6b9adf585a80 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 19 Feb 2025 13:47:21 -0800 Subject: [PATCH 028/100] bump deps; downgrade streamlit per #3221 --- requirements.txt | 17 +++++++++-------- requirements/requirements-browser.in | 2 +- requirements/requirements-browser.txt | 6 +++--- requirements/requirements-dev.txt | 4 +++- requirements/requirements-help.txt | 6 +++--- 5 files changed, 19 insertions(+), 16 deletions(-) diff --git a/requirements.txt b/requirements.txt index a6153a532..c4b21b565 100644 --- a/requirements.txt +++ b/requirements.txt @@ -51,7 +51,7 @@ distro==1.9.0 # via openai filelock==3.17.0 # via huggingface-hub -flake8==7.1.1 +flake8==7.1.2 # via -r requirements/requirements.in frozenlist==1.5.0 # via @@ -63,7 +63,7 @@ gitdb==4.0.12 # via gitpython gitpython==3.1.44 # via -r requirements/requirements.in -grep-ast==0.6.0 +grep-ast==0.6.1 # via -r requirements/requirements.in h11==0.14.0 # via httpcore @@ -73,7 +73,7 @@ httpx==0.28.1 # via # litellm # openai -huggingface-hub==0.28.1 +huggingface-hub==0.29.0 # via tokenizers idna==3.10 # via @@ -99,7 +99,7 @@ jsonschema==4.23.0 # litellm jsonschema-specifications==2024.10.1 # via jsonschema -litellm==1.60.8 +litellm==1.61.9 # via -r requirements/requirements.in markdown-it-py==3.0.0 # via rich @@ -124,7 +124,7 @@ numpy==1.26.4 # -r requirements/requirements.in # scipy # soundfile -openai==1.61.1 +openai==1.63.2 # via litellm packaging==24.2 # via @@ -138,7 +138,7 @@ pexpect==4.9.0 # via -r requirements/requirements.in pillow==10.4.0 # via -r requirements/requirements.in -posthog==3.11.0 +posthog==3.14.1 # via -r requirements/requirements.in prompt-toolkit==3.0.50 # via -r requirements/requirements.in @@ -146,7 +146,7 @@ propcache==0.2.1 # via # aiohttp # yarl -psutil==6.1.1 +psutil==7.0.0 # via -r requirements/requirements.in ptyprocess==0.7.0 # via pexpect @@ -215,7 +215,7 @@ soundfile==0.13.1 # via -r requirements/requirements.in soupsieve==2.6 # via beautifulsoup4 -tiktoken==0.8.0 +tiktoken==0.9.0 # via litellm tokenizers==0.19.1 # via @@ -228,6 +228,7 @@ tqdm==4.67.1 tree-sitter==0.21.3 # via # -r requirements/requirements.in + # grep-ast # tree-sitter-languages tree-sitter-languages==1.10.2 # via grep-ast diff --git a/requirements/requirements-browser.in b/requirements/requirements-browser.in index de1cabe58..a42a67efa 100644 --- a/requirements/requirements-browser.in +++ b/requirements/requirements-browser.in @@ -1,4 +1,4 @@ -c ../requirements.txt -streamlit +streamlit==1.41.1 # https://github.com/Aider-AI/aider/issues/3221 watchdog<5 # docker build fails: streamlit 1.38.0 depends on watchdog<5 diff --git a/requirements/requirements-browser.txt b/requirements/requirements-browser.txt index f50bb66d4..d15c46ec6 100644 --- a/requirements/requirements-browser.txt +++ b/requirements/requirements-browser.txt @@ -92,7 +92,7 @@ mdurl==0.1.2 # -c requirements.txt # -c requirements/requirements-dev.txt # markdown-it-py -narwhals==1.26.0 +narwhals==1.27.1 # via altair numpy==1.26.4 # via @@ -124,7 +124,7 @@ pillow==10.4.0 # streamlit protobuf==5.29.3 # via streamlit -pyarrow==19.0.0 +pyarrow==19.0.1 # via streamlit pydeck==0.9.1 # via streamlit @@ -180,7 +180,7 @@ smmap==5.0.2 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # gitdb -streamlit==1.42.0 +streamlit==1.41.1 # via -r requirements/requirements-browser.in tenacity==9.0.0 # via diff --git a/requirements/requirements-dev.txt b/requirements/requirements-dev.txt index 402dda963..7b4a62e97 100644 --- a/requirements/requirements-dev.txt +++ b/requirements/requirements-dev.txt @@ -173,6 +173,8 @@ rich==13.9.4 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # typer +roman-numerals-py==3.0.0 + # via sphinx semver==3.0.4 # via -r requirements/requirements-dev.in shellingham==1.5.4 @@ -184,7 +186,7 @@ six==1.17.0 # python-dateutil snowballstemmer==2.2.0 # via sphinx -sphinx==8.1.3 +sphinx==8.2.0 # via # sphinx-rtd-theme # sphinxcontrib-jquery diff --git a/requirements/requirements-help.txt b/requirements/requirements-help.txt index f12bcf4b4..4b73e15d2 100644 --- a/requirements/requirements-help.txt +++ b/requirements/requirements-help.txt @@ -103,7 +103,7 @@ httpx==0.28.1 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # llama-index-core -huggingface-hub[inference]==0.28.1 +huggingface-hub[inference]==0.29.0 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt @@ -130,7 +130,7 @@ joblib==1.4.2 # via # nltk # scikit-learn -llama-index-core==0.12.16.post1 +llama-index-core==0.12.19 # via # -r requirements/requirements-help.in # llama-index-embeddings-huggingface @@ -255,7 +255,7 @@ tenacity==9.0.0 # via llama-index-core threadpoolctl==3.5.0 # via scikit-learn -tiktoken==0.8.0 +tiktoken==0.9.0 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt From dd94a444d244d14a822ed3565a9655a2754b3622 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 19 Feb 2025 13:51:51 -0800 Subject: [PATCH 029/100] feat: Add OpenRouter O3 Mini High model configuration to metadata and settings --- aider/resources/model-metadata.json | 16 ++++++++++++++++ aider/resources/model-settings.yml | 9 +++++++++ 2 files changed, 25 insertions(+) diff --git a/aider/resources/model-metadata.json b/aider/resources/model-metadata.json index 1057ee581..e6bcd8db7 100644 --- a/aider/resources/model-metadata.json +++ b/aider/resources/model-metadata.json @@ -97,6 +97,22 @@ "supports_system_messages": true, "supports_response_schema": true }, + "openrouter/openai/o3-mini-high": { + "max_tokens": 100000, + "max_input_tokens": 200000, + "max_output_tokens": 100000, + "input_cost_per_token": 0.0000011, + "output_cost_per_token": 0.0000044, + "cache_read_input_token_cost": 0.00000055, + "litellm_provider": "openrouter", + "mode": "chat", + "supports_function_calling": true, + "supports_parallel_function_calling": true, + "supports_vision": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_response_schema": true + }, "openrouter/openai/gpt-4o-mini": { "max_tokens": 16384, "max_input_tokens": 128000, diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index 8a314c86a..4a4771f38 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -657,6 +657,15 @@ editor_edit_format: editor-diff system_prompt_prefix: "Formatting re-enabled. " +- name: openrouter/openai/o3-mini-high + edit_format: diff + weak_model_name: openrouter/openai/gpt-4o-mini + use_repo_map: true + use_temperature: false + editor_model_name: openrouter/openai/gpt-4o + editor_edit_format: editor-diff + system_prompt_prefix: "Formatting re-enabled. " + - name: azure/o3-mini edit_format: diff weak_model_name: azure/gpt-4o-mini From 1f4a63d6db59a5c2f975ae4eac66511dee27b809 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 19 Feb 2025 14:37:48 -0800 Subject: [PATCH 030/100] add socksio dep #3048 --- requirements.txt | 2 ++ requirements/requirements.in | 1 + 2 files changed, 3 insertions(+) diff --git a/requirements.txt b/requirements.txt index c4b21b565..53154e5fb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -209,6 +209,8 @@ sniffio==1.3.1 # via # anyio # openai +socksio==1.0.0 + # via -r requirements/requirements.in sounddevice==0.5.1 # via -r requirements/requirements.in soundfile==0.13.1 diff --git a/requirements/requirements.in b/requirements/requirements.in index 6667edbfc..f20b07103 100644 --- a/requirements/requirements.in +++ b/requirements/requirements.in @@ -29,6 +29,7 @@ pexpect json5 psutil watchfiles +socksio pip # The proper dependency is networkx[default], but this brings From 3510799fcaa00ade94dda41bdbc2461021470b20 Mon Sep 17 00:00:00 2001 From: Antti Kaihola <13725+akaihola@users.noreply.github.com> Date: Sat, 22 Feb 2025 10:09:49 +0200 Subject: [PATCH 031/100] fix: test for get_environment_editor() The test for `EDITOR` preference failed to clean up any existing value of `VISUAL` which may be present in the environment pytest is run in. --- tests/basic/test_editor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index c02d1d95d..adefaf147 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -21,7 +21,7 @@ def test_get_environment_editor(): assert get_environment_editor("default") == "default" # Test EDITOR precedence - with patch.dict(os.environ, {"EDITOR": "vim"}): + with patch.dict(os.environ, {"EDITOR": "vim"}, clear=True): assert get_environment_editor() == "vim" # Test VISUAL overrides EDITOR From 908b10dae0bced2606a9788495f539ac3a00ef5d Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 23 Feb 2025 08:50:49 -0800 Subject: [PATCH 032/100] copy --- HISTORY.md | 6 + aider/website/HISTORY.md | 6 + aider/website/assets/sample-analytics.jsonl | 178 +++++++++--------- .../website/docs/config/adv-model-settings.md | 9 + aider/website/docs/faq.md | 14 +- 5 files changed, 118 insertions(+), 95 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index b01216913..c1ce1b477 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,11 @@ # Release history +### main branch + +- Added support for tree-sitter language pack. +- Added openrouter/o3-mini-high model configuration. +- Added build.gradle.kts to special files for Kotlin project support, by Lucas Shadler. + ### Aider v0.74.2 - Prevent more than one cache warming thread from becoming active. diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 53549b4ec..4c5da4465 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,6 +23,12 @@ cog.out(text) ]]]--> +### main branch + +- Added support for tree-sitter language pack. +- Added openrouter/o3-mini-high model configuration. +- Added build.gradle.kts to special files for Kotlin project support, by Lucas Shadler. + ### Aider v0.74.2 - Prevent more than one cache warming thread from becoming active. diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index ac63c79aa..2e513a5a3 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,92 +1,3 @@ -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858927} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858927} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 33152, "completion_tokens": 151, "total_tokens": 33303, "cost": 0.101721, "total_cost": 0.8576680000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858935} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858945} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858962} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 12586, "completion_tokens": 988, "total_tokens": 13574, "cost": 0.052578, "total_cost": 0.9102460000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858984} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858994} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738858994} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 15786, "completion_tokens": 726, "total_tokens": 16512, "cost": 0.05824800000000001, "total_cost": 0.9684940000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859011} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859112} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 17801, "completion_tokens": 316, "total_tokens": 18117, "cost": 0.058143, "total_cost": 1.026637}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859120} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859125} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859126} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 20395, "completion_tokens": 257, "total_tokens": 20652, "cost": 0.06504, "total_cost": 1.091677}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859135} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859139} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 20947, "completion_tokens": 274, "total_tokens": 21221, "cost": 0.06695100000000001, "total_cost": 1.158628}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859147} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859147} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 21698, "completion_tokens": 349, "total_tokens": 22047, "cost": 0.070329, "total_cost": 1.228957}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859157} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859170} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859195} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 13317, "completion_tokens": 769, "total_tokens": 14086, "cost": 0.051486000000000004, "total_cost": 1.280443}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859211} -{"event": "command_reset", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859259} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859265} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859269} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859298} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 13760, "completion_tokens": 612, "total_tokens": 14372, "cost": 0.050460000000000005, "total_cost": 1.330903}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859310} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859323} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859323} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 16668, "completion_tokens": 655, "total_tokens": 17323, "cost": 0.059829, "total_cost": 1.3907319999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859338} -{"event": "command_reset", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859358} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859362} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859366} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859371} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 13317, "completion_tokens": 860, "total_tokens": 14177, "cost": 0.052851, "total_cost": 1.4435829999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859389} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859394} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859394} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 16471, "completion_tokens": 710, "total_tokens": 17181, "cost": 0.060063, "total_cost": 1.5036459999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859413} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859447} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 19062, "completion_tokens": 157, "total_tokens": 19219, "cost": 0.059541000000000004, "total_cost": 1.5631869999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859456} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859478} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 19230, "completion_tokens": 325, "total_tokens": 19555, "cost": 0.062565, "total_cost": 1.6257519999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859487} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859716} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859755} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 13369, "completion_tokens": 579, "total_tokens": 13948, "cost": 0.048792, "total_cost": 1.6745439999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859769} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859772} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859772} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 16136, "completion_tokens": 483, "total_tokens": 16619, "cost": 0.055653, "total_cost": 1.7301969999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859783} -{"event": "command_reset", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859873} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859877} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859879} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859896} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859917} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859921} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7130, "completion_tokens": 683, "total_tokens": 7813, "cost": 0.031634999999999996, "total_cost": 1.7618319999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859936} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859941} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859941} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10357, "completion_tokens": 525, "total_tokens": 10882, "cost": 0.038946, "total_cost": 1.8007779999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859956} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859969} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 10680, "completion_tokens": 527, "total_tokens": 11207, "cost": 0.039945, "total_cost": 1.8407229999999997}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738859983} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860013} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860015} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860021} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860022} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 13549, "completion_tokens": 487, "total_tokens": 14036, "cost": 0.047952, "total_cost": 1.8886749999999997}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860034} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860054} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 13550, "completion_tokens": 509, "total_tokens": 14059, "cost": 0.048285, "total_cost": 1.9369599999999996}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860067} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860111} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860123} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7091, "completion_tokens": 886, "total_tokens": 7977, "cost": 0.034562999999999997, "total_cost": 1.9715229999999995}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860143} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860151} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860151} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10278, "completion_tokens": 1065, "total_tokens": 11343, "cost": 0.046809, "total_cost": 2.0183319999999996}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860174} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860192} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 12074, "completion_tokens": 343, "total_tokens": 12417, "cost": 0.041367, "total_cost": 2.0596989999999997}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860201} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860220} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7636, "completion_tokens": 327, "total_tokens": 7963, "cost": 0.027813, "total_cost": 2.087512}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860231} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860244} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7979, "completion_tokens": 358, "total_tokens": 8337, "cost": 0.029307, "total_cost": 2.116819}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860254} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860262} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860311} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860644} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860644} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860649} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860844} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860845} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738860845} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862537} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862950} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862950} {"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862950} {"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862958} {"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862962} @@ -998,3 +909,92 @@ {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739649634} {"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739649635} {"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739649639} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739999636} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739999637} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1739999637} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000393} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000394} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000394} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000394} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000399} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000405} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000440} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000440} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000458} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000458} +{"event": "cli session", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000458} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000460} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000461} +{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 17019, "completion_tokens": 298, "total_tokens": 17317, "cost": 0.0200321, "total_cost": 0.0200321}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740000480} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001053} +{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 17351, "completion_tokens": 460, "total_tokens": 17811, "cost": 0.021110100000000003, "total_cost": 0.041142200000000004}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001070} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001545} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001545} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001907} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001907} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740001911} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002539} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002539} +{"event": "cli session", "properties": {"main_model": "openrouter/openai/o3-mini", "weak_model": "openrouter/openai/gpt-4o-mini", "editor_model": "openrouter/openai/gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002539} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002541} +{"event": "message_send", "properties": {"main_model": "openrouter/openai/o3-mini", "weak_model": "openrouter/openai/gpt-4o-mini", "editor_model": "openrouter/openai/gpt-4o", "edit_format": "diff", "prompt_tokens": 10068, "completion_tokens": 39, "total_tokens": 10107, "cost": 0.0112464, "total_cost": 0.0112464}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002578} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002610} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740002610} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003012} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003013} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003013} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 15075, "completion_tokens": 42, "total_tokens": 15117, "cost": 0.013605299999999999, "total_cost": 0.013605299999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003019} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003019} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003058} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003058} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003058} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 14985, "completion_tokens": 81, "total_tokens": 15066, "cost": 0.013559400000000001, "total_cost": 0.013559400000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003064} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003064} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003081} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003081} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003081} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 14988, "completion_tokens": 46, "total_tokens": 15034, "cost": 0.0135306, "total_cost": 0.0135306}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003087} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003088} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003094} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003095} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003095} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 15073, "completion_tokens": 54, "total_tokens": 15127, "cost": 0.0136143, "total_cost": 0.0136143}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003100} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003100} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003113} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003114} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003114} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 15076, "completion_tokens": 68, "total_tokens": 15144, "cost": 0.0136296, "total_cost": 0.0136296}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003120} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003120} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003130} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003130} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003130} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "ask", "prompt_tokens": 12842, "completion_tokens": 53, "total_tokens": 12895, "cost": 0.0116055, "total_cost": 0.0116055}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003136} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003136} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003148} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003148} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003148} +{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "ask", "prompt_tokens": 12842, "completion_tokens": 53, "total_tokens": 12895, "cost": 0.0116055, "total_cost": 0.0116055}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003155} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003155} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003191} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003191} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003191} +{"event": "message_send", "properties": {"main_model": "gpt-4o", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 12553, "completion_tokens": 42, "total_tokens": 12595, "cost": 0.0318025, "total_cost": 0.0318025}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003196} +{"event": "exit", "properties": {"reason": "Completed --message-file"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003196} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003834} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003837} +{"event": "cli session", "properties": {"main_model": "fake-provider/my-fake-model", "weak_model": "fake-provider/my-fake-model", "editor_model": "fake-provider/my-fake-model", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003837} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003838} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003838} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003844} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003846} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003850} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003851} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003858} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740003860} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740004240} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740004242} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329360} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329360} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329360} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 19044, "completion_tokens": 210, "total_tokens": 19254, "cost": 0.060282, "total_cost": 0.060282}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329371} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329371} diff --git a/aider/website/docs/config/adv-model-settings.md b/aider/website/docs/config/adv-model-settings.md index 212bdbae5..e68460d5c 100644 --- a/aider/website/docs/config/adv-model-settings.md +++ b/aider/website/docs/config/adv-model-settings.md @@ -796,6 +796,15 @@ cog.out("```\n") editor_edit_format: editor-diff system_prompt_prefix: 'Formatting re-enabled. ' +- name: openrouter/openai/o3-mini-high + edit_format: diff + weak_model_name: openrouter/openai/gpt-4o-mini + use_repo_map: true + use_temperature: false + editor_model_name: openrouter/openai/gpt-4o + editor_edit_format: editor-diff + system_prompt_prefix: 'Formatting re-enabled. ' + - name: openrouter/qwen/qwen-2.5-coder-32b-instruct edit_format: diff weak_model_name: openrouter/qwen/qwen-2.5-coder-32b-instruct diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index a7f4ed22a..e975d9503 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,12 +249,14 @@ tr:hover { background-color: #f5f5f5; } - - - - - - + + + + + + + +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022905,10563.8%
fireworks_ai/accounts/fireworks/models/deepseek-v3277,72619.6%
deepseek/deepseek-chat97,7456.9%
claude-3-5-haiku-2024102269,2034.9%
o3-mini46,4673.3%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.5%
claude-3-5-sonnet-20241022526,41943.9%
fireworks_ai/accounts/fireworks/models/deepseek-v3379,00431.6%
deepseek/deepseek-chat97,7458.2%
o3-mini81,5956.8%
claude-3-5-haiku-2024102269,2035.8%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.8%
gpt-4o12,5951.1%
openrouter/openai/o3-mini10,1070.8%
ollama_chat/REDACTED3090.0%
From fa281d89d27c9d8d46b6346768647ade411e39ba Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 23 Feb 2025 08:52:06 -0800 Subject: [PATCH 033/100] copy --- HISTORY.md | 3 ++- aider/website/HISTORY.md | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index c1ce1b477..1377df47c 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,7 +1,8 @@ # Release history -### main branch +### Aider v0.74.3 +- Downgrade streamlit dependency to avoid threading bug. - Added support for tree-sitter language pack. - Added openrouter/o3-mini-high model configuration. - Added build.gradle.kts to special files for Kotlin project support, by Lucas Shadler. diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 4c5da4465..08bde14fb 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,8 +23,9 @@ cog.out(text) ]]]--> -### main branch +### Aider v0.74.3 +- Downgrade streamlit dependency to avoid threading bug. - Added support for tree-sitter language pack. - Added openrouter/o3-mini-high model configuration. - Added build.gradle.kts to special files for Kotlin project support, by Lucas Shadler. From 58bfcb09532c8422b985b0fb90bb22118aade19b Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 23 Feb 2025 08:52:31 -0800 Subject: [PATCH 034/100] version bump to 0.74.3 --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index 9a2ef5ab0..1cf3d1fb8 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.74.3.dev" +__version__ = "0.74.3" safe_version = __version__ try: From 0ba1e8f90435aa2c08360d152fe8e16f98efd258 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sun, 23 Feb 2025 08:54:05 -0800 Subject: [PATCH 035/100] set version to 0.74.4.dev --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index 1cf3d1fb8..8f2674a62 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.74.3" +__version__ = "0.74.4.dev" safe_version = __version__ try: From 0415de853bd3d768727c7f9806e9eeeedc780464 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 09:22:28 -0800 Subject: [PATCH 036/100] fix: Remove shell=True and add debug dump in pipe_editor --- aider/editor.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/aider/editor.py b/aider/editor.py index c679db80c..f19b2fe16 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -13,6 +13,7 @@ import platform import shlex import subprocess import tempfile +from aider.dump import dump from rich.console import Console @@ -130,7 +131,8 @@ def pipe_editor(input_data="", suffix=None, editor=None): filepath = write_temp_file(input_data, suffix) command_parts = discover_editor(editor) command_parts.append(filepath) - subprocess.call(command_parts, shell=True) + dump(command_parts) + subprocess.call(command_parts) # why does adding shell=True launch the editor without the filepath? ai? with open(filepath, "r") as f: output_data = f.read() try: From 3714d554df69e74df14546644cc495972ebfa46e Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:22:34 -0800 Subject: [PATCH 037/100] refactor: Update subprocess call to use shell=True with properly quoted command string --- aider/editor.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/aider/editor.py b/aider/editor.py index f19b2fe16..27419c436 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -131,8 +131,9 @@ def pipe_editor(input_data="", suffix=None, editor=None): filepath = write_temp_file(input_data, suffix) command_parts = discover_editor(editor) command_parts.append(filepath) - dump(command_parts) - subprocess.call(command_parts) # why does adding shell=True launch the editor without the filepath? ai? + command_str = " ".join(shlex.quote(part) for part in command_parts) + dump(command_str) + subprocess.call(command_str, shell=True) with open(filepath, "r") as f: output_data = f.read() try: From 55d7397ff55e63ea3f1f17e0e0b6c834a8e2ac17 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:22:40 -0800 Subject: [PATCH 038/100] style: Organize imports and remove unused import --- aider/editor.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/aider/editor.py b/aider/editor.py index 27419c436..61dd9bd52 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -13,10 +13,11 @@ import platform import shlex import subprocess import tempfile -from aider.dump import dump from rich.console import Console +from aider.dump import dump + DEFAULT_EDITOR_NIX = "vi" DEFAULT_EDITOR_OS_X = "vim" DEFAULT_EDITOR_WINDOWS = "notepad" From 686a32cbc025c26b91c1529bf1c1a1b07c637e0f Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 09:28:31 -0800 Subject: [PATCH 039/100] refactor: Remove debug dump call in pipe_editor function --- aider/editor.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aider/editor.py b/aider/editor.py index 61dd9bd52..a7d00601d 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -16,7 +16,7 @@ import tempfile from rich.console import Console -from aider.dump import dump +from aider.dump import dump # noqa DEFAULT_EDITOR_NIX = "vi" DEFAULT_EDITOR_OS_X = "vim" @@ -133,7 +133,7 @@ def pipe_editor(input_data="", suffix=None, editor=None): command_parts = discover_editor(editor) command_parts.append(filepath) command_str = " ".join(shlex.quote(part) for part in command_parts) - dump(command_str) + subprocess.call(command_str, shell=True) with open(filepath, "r") as f: output_data = f.read() From fe6a3c89f34abf8f0d8fd81117fa975a47766121 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 09:44:57 -0800 Subject: [PATCH 040/100] copy --- HISTORY.md | 4 + aider/website/HISTORY.md | 4 + aider/website/assets/sample-analytics.jsonl | 120 ++++++++++---------- aider/website/docs/faq.md | 14 +-- 4 files changed, 75 insertions(+), 67 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 1377df47c..204dfd88a 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,9 @@ # Release history +### Aider v0.74.4 + +- Bugfix to `/editor` command. + ### Aider v0.74.3 - Downgrade streamlit dependency to avoid threading bug. diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 08bde14fb..4a52e54fc 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,6 +23,10 @@ cog.out(text) ]]]--> +### Aider v0.74.4 + +- Bugfix to `/editor` command. + ### Aider v0.74.3 - Downgrade streamlit dependency to avoid threading bug. diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index 2e513a5a3..a9ab80671 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,63 +1,3 @@ -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862950} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862958} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862962} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738862993} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863006} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863006} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863016} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863016} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863016} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863018} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863020} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863021} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 13873, "completion_tokens": 422, "total_tokens": 14295, "cost": 0.012865499999999998, "total_cost": 0.012865499999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863060} -{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863124} -{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863128} -{"event": "command_drop", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863131} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863137} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863138} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863141} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 15975, "completion_tokens": 753, "total_tokens": 16728, "cost": 0.0150552, "total_cost": 0.0279207}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863201} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863802} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863824} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863824} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863826} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863835} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863835} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863837} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863843} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863843} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863908} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863909} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863934} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863935} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863947} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863948} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863999} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738863999} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864001} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864101} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864101} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864102} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864104} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864108} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864108} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864108} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864118} -{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864118} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864118} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864138} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864138} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864151} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864151} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864151} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864158} -{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864158} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864158} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 7236, "completion_tokens": 340, "total_tokens": 7576, "cost": 0.0068184, "total_cost": 0.0068184}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864175} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864250} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 7600, "completion_tokens": 398, "total_tokens": 7998, "cost": 0.0071982, "total_cost": 0.0140166}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864289} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864416} {"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864416} {"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864422} {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864430} @@ -998,3 +938,63 @@ {"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329360} {"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 19044, "completion_tokens": 210, "total_tokens": 19254, "cost": 0.060282, "total_cost": 0.060282}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329371} {"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329371} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329626} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329627} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740329627} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417595} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417599} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417599} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417610} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417621} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417621} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417624} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417624} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417624} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417626} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417632} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417652} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417653} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417653} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417655} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417669} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417671} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417671} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417672} +{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417700} +{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417700} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417700} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417700} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 5288, "completion_tokens": 208, "total_tokens": 5496, "cost": 0.018984, "total_cost": 0.018984}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417706} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417740} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7792, "completion_tokens": 211, "total_tokens": 8003, "cost": 0.026541000000000002, "total_cost": 0.045525}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417746} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417756} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417758} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417758} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417759} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417765} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417765} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417774} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417792} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8997, "completion_tokens": 257, "total_tokens": 9254, "cost": 0.030846000000000002, "total_cost": 0.07637100000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417799} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417845} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9424, "completion_tokens": 496, "total_tokens": 9920, "cost": 0.035712, "total_cost": 0.11208300000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417864} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417902} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10166, "completion_tokens": 138, "total_tokens": 10304, "cost": 0.032568, "total_cost": 0.14465100000000003}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417907} +{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417922} +{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417935} +{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417941} +{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417943} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417945} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8565, "completion_tokens": 333, "total_tokens": 8898, "cost": 0.03069, "total_cost": 0.17534100000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740417954} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418004} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8990, "completion_tokens": 237, "total_tokens": 9227, "cost": 0.030525, "total_cost": 0.20586600000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418010} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418041} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418097} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418097} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418098} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418105} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418106} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418111} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418207} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418207} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418207} diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index e975d9503..f1ecdd0d2 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,13 +249,13 @@ tr:hover { background-color: #f5f5f5; } - - - - - - - + + + + + + +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022526,41943.9%
fireworks_ai/accounts/fireworks/models/deepseek-v3379,00431.6%
deepseek/deepseek-chat97,7458.2%
o3-mini81,5956.8%
claude-3-5-haiku-2024102269,2035.8%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.8%
gpt-4o12,5951.1%
claude-3-5-sonnet-20241022587,52148.4%
fireworks_ai/accounts/fireworks/models/deepseek-v3332,40727.4%
deepseek/deepseek-chat97,7458.1%
o3-mini81,5956.7%
claude-3-5-haiku-2024102269,2035.7%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.7%
gpt-4o12,5951.0%
openrouter/openai/o3-mini10,1070.8%
ollama_chat/REDACTED3090.0%
From c7e9d645e51db4349f449e7e95f94d29dab8f2cc Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:46:16 -0800 Subject: [PATCH 041/100] test: Add test for pipe_editor with shell script logging arguments --- tests/basic/test_editor.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index adefaf147..24b7b20c2 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -89,6 +89,35 @@ def test_discover_editor_override(): discover_editor('vim "unclosed quote') +def test_pipe_editor_with_shell_script(): + # Create a temporary shell script that logs its arguments + import tempfile + import stat + + with tempfile.NamedTemporaryFile(mode='w', suffix='.sh', delete=False) as f: + f.write('#!/bin/bash\necho "$@" > "$0.log"\n') + script_path = f.name + + # Make the script executable + os.chmod(script_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR) + + try: + # Use the script as editor and verify it's called with .md file + result = pipe_editor("test content", suffix="md", editor=script_path) + + # Read the log file to see what arguments were passed + with open(f"{script_path}.log") as f: + called_args = f.read().strip() + + # Verify the editor was called with a .md file + assert called_args.endswith(".md") + + finally: + # Clean up + os.unlink(script_path) + if os.path.exists(f"{script_path}.log"): + os.unlink(f"{script_path}.log") + def test_pipe_editor(): # Test with default editor test_content = "Initial content" From 8be93b72c4d115fc1e42c178f8a3a157e1ebe21c Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:46:20 -0800 Subject: [PATCH 042/100] style: Format code and organize imports in test_editor.py --- tests/basic/test_editor.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 24b7b20c2..d20a02652 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -91,33 +91,34 @@ def test_discover_editor_override(): def test_pipe_editor_with_shell_script(): # Create a temporary shell script that logs its arguments - import tempfile import stat + import tempfile - with tempfile.NamedTemporaryFile(mode='w', suffix='.sh', delete=False) as f: + with tempfile.NamedTemporaryFile(mode="w", suffix=".sh", delete=False) as f: f.write('#!/bin/bash\necho "$@" > "$0.log"\n') script_path = f.name - + # Make the script executable os.chmod(script_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR) try: # Use the script as editor and verify it's called with .md file result = pipe_editor("test content", suffix="md", editor=script_path) - + # Read the log file to see what arguments were passed with open(f"{script_path}.log") as f: called_args = f.read().strip() - + # Verify the editor was called with a .md file assert called_args.endswith(".md") - + finally: # Clean up os.unlink(script_path) if os.path.exists(f"{script_path}.log"): os.unlink(f"{script_path}.log") + def test_pipe_editor(): # Test with default editor test_content = "Initial content" From 30361aa685f5dba0a8b60293eaa1b6bdbe2d0017 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:46:29 -0800 Subject: [PATCH 043/100] fix: Remove unused 'result' variable in test_pipe_editor_with_shell_script --- tests/basic/test_editor.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index d20a02652..1a29cf449 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -103,8 +103,8 @@ def test_pipe_editor_with_shell_script(): try: # Use the script as editor and verify it's called with .md file - result = pipe_editor("test content", suffix="md", editor=script_path) - + pipe_editor("test content", suffix="md", editor=script_path) + # Read the log file to see what arguments were passed with open(f"{script_path}.log") as f: called_args = f.read().strip() From 54965fdf2ec4d9f69c2cb61d7b6abf092caf8b4d Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:46:33 -0800 Subject: [PATCH 044/100] style: Fix linter warnings in test_editor.py --- tests/basic/test_editor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 1a29cf449..c66260328 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -104,7 +104,7 @@ def test_pipe_editor_with_shell_script(): try: # Use the script as editor and verify it's called with .md file pipe_editor("test content", suffix="md", editor=script_path) - + # Read the log file to see what arguments were passed with open(f"{script_path}.log") as f: called_args = f.read().strip() From c7fa57fd148cffb302ff9218387a9cc1326ad6a0 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:47:20 -0800 Subject: [PATCH 045/100] refactor: Make test_pipe_editor cross-platform using Python script --- tests/basic/test_editor.py | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index c66260328..30afc7098 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -89,21 +89,23 @@ def test_discover_editor_override(): discover_editor('vim "unclosed quote') -def test_pipe_editor_with_shell_script(): - # Create a temporary shell script that logs its arguments - import stat +def test_pipe_editor_with_fake_editor(): + # Create a temporary Python script that logs its arguments + import sys import tempfile - with tempfile.NamedTemporaryFile(mode="w", suffix=".sh", delete=False) as f: - f.write('#!/bin/bash\necho "$@" > "$0.log"\n') + with tempfile.NamedTemporaryFile(mode="w", suffix=".py", delete=False) as f: + f.write('''import sys +with open(sys.argv[0] + ".log", "w") as f: + f.write(" ".join(sys.argv[1:])) +''') script_path = f.name - # Make the script executable - os.chmod(script_path, stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR) - try: - # Use the script as editor and verify it's called with .md file - pipe_editor("test content", suffix="md", editor=script_path) + # Use the Python script as editor and verify it's called with .md file + python_exe = sys.executable + editor_cmd = f"{python_exe} {script_path}" + pipe_editor("test content", suffix="md", editor=editor_cmd) # Read the log file to see what arguments were passed with open(f"{script_path}.log") as f: From 4560572ff2d9e186ee60f24d8e3bf5fac9c4be06 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 09:47:24 -0800 Subject: [PATCH 046/100] style: Fix code formatting in test_editor.py --- tests/basic/test_editor.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 30afc7098..0423ff905 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -95,10 +95,10 @@ def test_pipe_editor_with_fake_editor(): import tempfile with tempfile.NamedTemporaryFile(mode="w", suffix=".py", delete=False) as f: - f.write('''import sys + f.write("""import sys with open(sys.argv[0] + ".log", "w") as f: f.write(" ".join(sys.argv[1:])) -''') +""") script_path = f.name try: From a8635bade20e0e44a1878aab9077f9cb7b44c942 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:11:45 -0800 Subject: [PATCH 047/100] fix: Improve test_pipe_editor_with_fake_editor reliability by using explicit log file path --- tests/basic/test_editor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 0423ff905..2c45eba6e 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -108,7 +108,7 @@ with open(sys.argv[0] + ".log", "w") as f: pipe_editor("test content", suffix="md", editor=editor_cmd) # Read the log file to see what arguments were passed - with open(f"{script_path}.log") as f: + with open(log_path) as f: called_args = f.read().strip() # Verify the editor was called with a .md file From 85189c0bde2b8266db4cee74765ac7ff7967b632 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:11:58 -0800 Subject: [PATCH 048/100] fix: Update temporary script logging to use f-string and full sys.argv --- tests/basic/test_editor.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 2c45eba6e..578ff927c 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -95,9 +95,10 @@ def test_pipe_editor_with_fake_editor(): import tempfile with tempfile.NamedTemporaryFile(mode="w", suffix=".py", delete=False) as f: - f.write("""import sys -with open(sys.argv[0] + ".log", "w") as f: - f.write(" ".join(sys.argv[1:])) + log_path = f.name + ".log" + f.write(f"""import sys +with open("{log_path}", "w") as f: + f.write(" ".join(sys.argv)) """) script_path = f.name From c8745afb3762049d23844235409d5c0a11679e2b Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:18:22 -0800 Subject: [PATCH 049/100] fix: Preserve Windows paths in editor command parsing --- aider/editor.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/aider/editor.py b/aider/editor.py index a7d00601d..1ff7aef60 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -109,7 +109,10 @@ def discover_editor(editor_override=None): else: editor = get_environment_editor(default_editor) try: - return shlex.split(editor) + if system == "Windows": + return shlex.split(editor, posix=False) + else: + return shlex.split(editor) except ValueError as e: raise RuntimeError(f"Invalid editor command format '{editor}': {e}") From 5b13105d58117ff1d73bdeea1c31199cd037de78 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:20:46 -0800 Subject: [PATCH 050/100] fix: Update tests to match string return type of discover_editor() --- tests/basic/test_editor.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 578ff927c..415798da6 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -34,17 +34,17 @@ def test_discover_editor_defaults(): # Test Windows default mock_system.return_value = "Windows" with patch.dict(os.environ, {}, clear=True): - assert discover_editor() == [DEFAULT_EDITOR_WINDOWS] + assert discover_editor() == DEFAULT_EDITOR_WINDOWS # Test macOS default mock_system.return_value = "Darwin" with patch.dict(os.environ, {}, clear=True): - assert discover_editor() == [DEFAULT_EDITOR_OS_X] + assert discover_editor() == DEFAULT_EDITOR_OS_X # Test Linux default mock_system.return_value = "Linux" with patch.dict(os.environ, {}, clear=True): - assert discover_editor() == [DEFAULT_EDITOR_NIX] + assert discover_editor() == DEFAULT_EDITOR_NIX def test_write_temp_file(): @@ -81,8 +81,8 @@ def test_print_status_message(capsys): def test_discover_editor_override(): # Test editor override - assert discover_editor("code") == ["code"] - assert discover_editor('vim -c "set noswapfile"') == ["vim", "-c", "set noswapfile"] + assert discover_editor("code") == "code" + assert discover_editor('vim -c "set noswapfile"') == 'vim -c "set noswapfile"' # Test invalid editor command with pytest.raises(RuntimeError): From d65e3f73df696ee3b4e0f0fc69afbb8d1387f18e Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 10:21:45 -0800 Subject: [PATCH 051/100] refactor: Simplify editor discovery and command handling logic --- aider/editor.py | 14 ++++---------- tests/basic/test_editor.py | 4 ---- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/aider/editor.py b/aider/editor.py index 1ff7aef60..a98781bee 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -104,18 +104,13 @@ def discover_editor(editor_override=None): default_editor = DEFAULT_EDITOR_OS_X else: default_editor = DEFAULT_EDITOR_NIX + if editor_override: editor = editor_override else: editor = get_environment_editor(default_editor) - try: - if system == "Windows": - return shlex.split(editor, posix=False) - else: - return shlex.split(editor) - except ValueError as e: - raise RuntimeError(f"Invalid editor command format '{editor}': {e}") + return editor def pipe_editor(input_data="", suffix=None, editor=None): """ @@ -133,9 +128,8 @@ def pipe_editor(input_data="", suffix=None, editor=None): :rtype: str """ filepath = write_temp_file(input_data, suffix) - command_parts = discover_editor(editor) - command_parts.append(filepath) - command_str = " ".join(shlex.quote(part) for part in command_parts) + command_str = discover_editor(editor) + command_str += " " + filepath subprocess.call(command_str, shell=True) with open(filepath, "r") as f: diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 415798da6..0522909f7 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -84,10 +84,6 @@ def test_discover_editor_override(): assert discover_editor("code") == "code" assert discover_editor('vim -c "set noswapfile"') == 'vim -c "set noswapfile"' - # Test invalid editor command - with pytest.raises(RuntimeError): - discover_editor('vim "unclosed quote') - def test_pipe_editor_with_fake_editor(): # Create a temporary Python script that logs its arguments From 757fbb01248303e8c3685fa9b778e1a65a5870c9 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:21:51 -0800 Subject: [PATCH 052/100] refactor: Remove unused pytest import in test_editor.py --- tests/basic/test_editor.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 0522909f7..933fee3e8 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -1,8 +1,6 @@ import os from unittest.mock import MagicMock, patch -import pytest - from aider.editor import ( DEFAULT_EDITOR_NIX, DEFAULT_EDITOR_OS_X, From 031e8cea6e9f8d24a5326695b27f24809ad852d9 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 10:21:59 -0800 Subject: [PATCH 053/100] feat: Add pipe_editor function for system editor interaction --- aider/editor.py | 1 + 1 file changed, 1 insertion(+) diff --git a/aider/editor.py b/aider/editor.py index a98781bee..c6af8ec43 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -112,6 +112,7 @@ def discover_editor(editor_override=None): return editor + def pipe_editor(input_data="", suffix=None, editor=None): """ Opens the system editor with optional input data and returns the edited content. From 6ecf44c87a8c5f6f7603f8f56fbdf00548005928 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:22:04 -0800 Subject: [PATCH 054/100] refactor: Remove unused shlex import from editor.py --- aider/editor.py | 1 - 1 file changed, 1 deletion(-) diff --git a/aider/editor.py b/aider/editor.py index c6af8ec43..c38e24f9d 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -10,7 +10,6 @@ This module provides functionality to: import os import platform -import shlex import subprocess import tempfile From 3fd4a2841a6b66d882d3b974f941faf1b6065ae5 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 10:39:16 -0800 Subject: [PATCH 055/100] fix: Use separate temp file for log in editor test script --- tests/basic/test_editor.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 933fee3e8..47b1fac44 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -88,8 +88,10 @@ def test_pipe_editor_with_fake_editor(): import sys import tempfile + with tempfile.NamedTemporaryFile(mode="w", suffix=".log", delete=False) as log_f: + log_path = log_f.name + with tempfile.NamedTemporaryFile(mode="w", suffix=".py", delete=False) as f: - log_path = f.name + ".log" f.write(f"""import sys with open("{log_path}", "w") as f: f.write(" ".join(sys.argv)) @@ -112,8 +114,7 @@ with open("{log_path}", "w") as f: finally: # Clean up os.unlink(script_path) - if os.path.exists(f"{script_path}.log"): - os.unlink(f"{script_path}.log") + os.unlink(log_path) def test_pipe_editor(): From ea0ee96398ab1ed469845e6f38243faae4d125ac Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 11:45:48 -0800 Subject: [PATCH 056/100] test: Add error message to editor file extension assertion --- tests/basic/test_editor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 47b1fac44..41b29e8f1 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -109,7 +109,7 @@ with open("{log_path}", "w") as f: called_args = f.read().strip() # Verify the editor was called with a .md file - assert called_args.endswith(".md") + assert called_args.endswith(".md"), called_args finally: # Clean up From 75e9ee6528993442f0d943a911eea85b81994d3e Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 11:53:07 -0800 Subject: [PATCH 057/100] added claude 37 --- aider/resources/model-metadata.json | 40 +++++++++++++++++++++++++++++ aider/resources/model-settings.yml | 13 ++++++++++ 2 files changed, 53 insertions(+) diff --git a/aider/resources/model-metadata.json b/aider/resources/model-metadata.json index e6bcd8db7..1a1c888d7 100644 --- a/aider/resources/model-metadata.json +++ b/aider/resources/model-metadata.json @@ -131,4 +131,44 @@ "supports_prompt_caching": true, "supports_system_messages": true }, + "claude-3-7-sonnet-20250219": { + "max_tokens": 8192, + "max_input_tokens": 200000, + "max_output_tokens": 8192, + "input_cost_per_token": 0.000003, + "output_cost_per_token": 0.000015, + "cache_creation_input_token_cost": 0.00000375, + "cache_read_input_token_cost": 0.0000003, + "litellm_provider": "anthropic", + "mode": "chat", + "supports_function_calling": true, + "supports_vision": true, + "tool_use_system_prompt_tokens": 159, + "supports_assistant_prefill": true, + "supports_pdf_input": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "deprecation_date": "2025-10-01", + "supports_tool_choice": true + }, + "anthropic/claude-3-7-sonnet-20250219": { + "max_tokens": 8192, + "max_input_tokens": 200000, + "max_output_tokens": 8192, + "input_cost_per_token": 0.000003, + "output_cost_per_token": 0.000015, + "cache_creation_input_token_cost": 0.00000375, + "cache_read_input_token_cost": 0.0000003, + "litellm_provider": "anthropic", + "mode": "chat", + "supports_function_calling": true, + "supports_vision": true, + "tool_use_system_prompt_tokens": 159, + "supports_assistant_prefill": true, + "supports_pdf_input": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "deprecation_date": "2025-10-01", + "supports_tool_choice": true + }, } diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index 4a4771f38..cb5ddd901 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -184,6 +184,19 @@ editor_model_name: anthropic/claude-3-5-sonnet-20241022 editor_edit_format: editor-diff +- name: anthropic/claude-3-7-sonnet-20250219 + edit_format: diff + weak_model_name: anthropic/claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25 + max_tokens: 8192 + cache_control: true + editor_model_name: anthropic/claude-3-7-sonnet-20250219 + editor_edit_format: editor-diff + - name: bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0 edit_format: diff weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 From 3c775fd5de5e70d1bf043853615c969332e5e3e5 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 12:09:26 -0800 Subject: [PATCH 058/100] fix: Resolve Windows path handling and editor command test issues --- aider/editor.py | 6 +++--- tests/basic/test_editor.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/aider/editor.py b/aider/editor.py index c38e24f9d..a7cf74134 100644 --- a/aider/editor.py +++ b/aider/editor.py @@ -88,13 +88,13 @@ def get_environment_editor(default=None): def discover_editor(editor_override=None): """ - Discovers and returns the appropriate editor command as a list of arguments. + Discovers and returns the appropriate editor command. Handles cases where the editor command includes arguments, including quoted arguments with spaces (e.g. 'vim -c "set noswapfile"'). - :return: A list of command parts ready for subprocess execution - :rtype: list[str] + :return: The editor command as a string + :rtype: str """ system = platform.system() if system == "Windows": diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index 41b29e8f1..b187d7d4b 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -109,7 +109,7 @@ with open("{log_path}", "w") as f: called_args = f.read().strip() # Verify the editor was called with a .md file - assert called_args.endswith(".md"), called_args + assert called_args.endswith(".md"), f"Called args: {called_args!r}" finally: # Clean up From 96fcc5df6b9cf39604609431901a439d49d8ee6d Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 12:09:33 -0800 Subject: [PATCH 059/100] fix: Resolve Windows path escaping issue in test_editor.py --- tests/basic/test_editor.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/basic/test_editor.py b/tests/basic/test_editor.py index b187d7d4b..2fa346def 100644 --- a/tests/basic/test_editor.py +++ b/tests/basic/test_editor.py @@ -90,10 +90,12 @@ def test_pipe_editor_with_fake_editor(): with tempfile.NamedTemporaryFile(mode="w", suffix=".log", delete=False) as log_f: log_path = log_f.name + # Convert to raw string path to avoid escape issues on Windows + log_path_escaped = log_path.replace("\\", "\\\\") with tempfile.NamedTemporaryFile(mode="w", suffix=".py", delete=False) as f: f.write(f"""import sys -with open("{log_path}", "w") as f: +with open(r"{log_path_escaped}", "w") as f: f.write(" ".join(sys.argv)) """) script_path = f.name From c156b2f817172c73bdea0145a7f379de95a483ab Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:11:49 -0800 Subject: [PATCH 060/100] feat: Update Claude Sonnet model to latest version --- aider/args.py | 2 +- aider/models.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/aider/args.py b/aider/args.py index 554931fa8..2a55b4d28 100644 --- a/aider/args.py +++ b/aider/args.py @@ -46,7 +46,7 @@ def get_parser(default_config_files, git_root): const=opus_model, help=f"Use {opus_model} model for the main chat", ) - sonnet_model = "claude-3-5-sonnet-20241022" + sonnet_model = "anthropic/claude-3-7-sonnet-20250219" group.add_argument( "--sonnet", action="store_const", diff --git a/aider/models.py b/aider/models.py index 4f4ed499b..870b6777b 100644 --- a/aider/models.py +++ b/aider/models.py @@ -76,7 +76,7 @@ ANTHROPIC_MODELS = [ln.strip() for ln in ANTHROPIC_MODELS.splitlines() if ln.str # Mapping of model aliases to their canonical names MODEL_ALIASES = { # Claude models - "sonnet": "claude-3-5-sonnet-20241022", + "sonnet": "anthropic/claude-3-7-sonnet-20250219", "haiku": "claude-3-5-haiku-20241022", "opus": "claude-3-opus-20240229", # GPT models From 27c77afafc14a8029c4cc6a0af618816b021caaa Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:13:47 -0800 Subject: [PATCH 061/100] copy --- HISTORY.md | 5 +- aider/website/HISTORY.md | 5 +- aider/website/assets/sample-analytics.jsonl | 258 +++++++++--------- aider/website/assets/sample.aider.conf.yml | 2 +- aider/website/assets/sample.env | 2 +- .../website/docs/config/adv-model-settings.md | 13 + aider/website/docs/config/aider_conf.md | 2 +- aider/website/docs/config/dotenv.md | 2 +- aider/website/docs/config/model-aliases.md | 2 +- aider/website/docs/config/options.md | 2 +- aider/website/docs/faq.md | 17 +- 11 files changed, 165 insertions(+), 145 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 204dfd88a..460b6e899 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,7 +1,10 @@ # Release history -### Aider v0.74.4 +### Aider v0.75.0 +- Basic support for Claude 3.7 Sonnet + - Use `--model sonnet` to use the new 3.7 + - Thinking support coming soon. - Bugfix to `/editor` command. ### Aider v0.74.3 diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 4a52e54fc..070ecf9bc 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,8 +23,11 @@ cog.out(text) ]]]--> -### Aider v0.74.4 +### Aider v0.75.0 +- Basic support for Claude 3.7 Sonnet + - Use `--model sonnet` to use the new 3.7 + - Thinking support coming soon. - Bugfix to `/editor` command. ### Aider v0.74.3 diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index a9ab80671..26ff08089 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,132 +1,3 @@ -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864416} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864422} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864430} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864430} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864433} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864433} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864433} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864578} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864578} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738864578} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868286} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868286} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868286} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868288} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9941, "completion_tokens": 37, "total_tokens": 9978, "cost": 0.030378000000000002, "total_cost": 0.030378000000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868292} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868297} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868297} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868304} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868304} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868304} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868305} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868437} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868437} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868484} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868484} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868485} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868509} -{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868509} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868509} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 15211, "completion_tokens": 246, "total_tokens": 15457, "cost": 0.0139113, "total_cost": 0.0139113}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868525} -{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868538} -{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868541} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868591} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868591} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868734} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868734} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868734} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff", "prompt_tokens": 9940, "completion_tokens": 43, "total_tokens": 9983, "cost": 0.00140363999999804, "total_cost": 0.00140363999999804}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868743} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868743} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868767} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868767} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868767} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868772} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868794} -{"event": "model warning", "properties": {"main_model": "ollama/REDACTED", "weak_model": "ollama/REDACTED", "editor_model": "ollama/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868796} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868798} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868798} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868805} -{"event": "model warning", "properties": {"main_model": "ollama_chat/REDACTED", "weak_model": "ollama_chat/REDACTED", "editor_model": "ollama_chat/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868807} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868810} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868810} -{"event": "message_send_exception", "properties": {"exception": "[Errno 61] Connection refused"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868811} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868811} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868817} -{"event": "model warning", "properties": {"main_model": "ollama_chat/REDACTED", "weak_model": "ollama_chat/REDACTED", "editor_model": "ollama_chat/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868819} -{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868820} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868824} -{"event": "model warning", "properties": {"main_model": "ollama_chat/REDACTED", "weak_model": "ollama_chat/REDACTED", "editor_model": "ollama_chat/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868826} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868827} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868827} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868870} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868877} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868880} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868880} -{"event": "message_send_exception", "properties": {"exception": ""}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868882} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868882} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868896} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868912} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868915} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738868915} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869100} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869267} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869273} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869274} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869274} -{"event": "message_send", "properties": {"main_model": "ollama_chat/REDACTED", "weak_model": "ollama_chat/REDACTED", "editor_model": "ollama_chat/REDACTED", "edit_format": "ask", "prompt_tokens": 79, "completion_tokens": 24, "total_tokens": 103, "cost": 0, "total_cost": 0.0}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869283} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869283} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869289} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869291} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869291} -{"event": "message_send", "properties": {"main_model": "ollama_chat/REDACTED", "weak_model": "ollama_chat/REDACTED", "editor_model": "ollama_chat/REDACTED", "edit_format": "ask", "prompt_tokens": 79, "completion_tokens": 24, "total_tokens": 103, "cost": 0, "total_cost": 0.0}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869293} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869293} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869323} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869323} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869323} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869342} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869344} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869344} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869344} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869349} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869674} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869674} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738869678} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870016} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870016} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870016} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870023} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870029} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870030} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870030} -{"event": "message_send", "properties": {"main_model": "ollama_chat/REDACTED", "weak_model": "ollama_chat/REDACTED", "editor_model": "ollama_chat/REDACTED", "edit_format": "ask", "prompt_tokens": 79, "completion_tokens": 24, "total_tokens": 103, "cost": 0, "total_cost": 0.0}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870038} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870038} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870046} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870047} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870047} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870531} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870531} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870531} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "ask", "prompt_tokens": 79, "completion_tokens": 25, "total_tokens": 104, "cost": 1.8059999998040003e-05, "total_cost": 1.8059999998040003e-05}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870538} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870538} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870556} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870556} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870556} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870568} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870569} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870575} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870652} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870653} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870653} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870654} -{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870654} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870654} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 12793, "completion_tokens": 200, "total_tokens": 12993, "cost": 0.041379000000000006, "total_cost": 0.041379000000000006}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870662} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870822} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870822} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870826} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870826} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870826} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870831} {"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870831} {"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870831} {"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "ask", "prompt_tokens": 79, "completion_tokens": 36, "total_tokens": 115, "cost": 2.1139999998040004e-05, "total_cost": 2.1139999998040004e-05}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870839} @@ -998,3 +869,132 @@ {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418207} {"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418207} {"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740418207} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419116} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419116} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419116} +{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419121} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419125} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419164} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8309, "completion_tokens": 375, "total_tokens": 8684, "cost": 0.030552000000000003, "total_cost": 0.030552000000000003}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419174} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419183} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9228, "completion_tokens": 168, "total_tokens": 9396, "cost": 0.030204, "total_cost": 0.060756000000000004}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419187} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419211} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419211} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7199, "completion_tokens": 628, "total_tokens": 7827, "cost": 0.031017000000000003, "total_cost": 0.09177300000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419222} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419228} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10167, "completion_tokens": 536, "total_tokens": 10703, "cost": 0.038541, "total_cost": 0.130314}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419238} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419248} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419307} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419307} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740419307} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420683} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420684} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420684} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420688} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420695} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8452, "completion_tokens": 332, "total_tokens": 8784, "cost": 0.030336000000000002, "total_cost": 0.030336000000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420703} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420705} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9060, "completion_tokens": 183, "total_tokens": 9243, "cost": 0.029925, "total_cost": 0.060261}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420716} +{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420897} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420899} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420899} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 5302, "completion_tokens": 437, "total_tokens": 5739, "cost": 0.022461000000000002, "total_cost": 0.082722}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420909} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420932} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420932} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 5634, "completion_tokens": 390, "total_tokens": 6024, "cost": 0.022752, "total_cost": 0.10547400000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420940} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420963} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420968} +{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420969} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420975} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420975} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 6241, "completion_tokens": 419, "total_tokens": 6660, "cost": 0.025008, "total_cost": 0.13048200000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740420984} +{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421014} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421020} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421020} +{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 6872, "completion_tokens": 447, "total_tokens": 7319, "cost": 0.009526, "total_cost": 0.14000800000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421037} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421079} +{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "gpt-4o", "edit_format": "diff", "prompt_tokens": 9645, "completion_tokens": 100, "total_tokens": 9745, "cost": 0.0110495, "total_cost": 0.1510575}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421097} +{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421189} +{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421192} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421209} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421219} +{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421230} +{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421232} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421235} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8509, "completion_tokens": 419, "total_tokens": 8928, "cost": 0.031812, "total_cost": 0.18286950000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421244} +{"event": "command_diff", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421249} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421297} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421297} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421305} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7667, "completion_tokens": 118, "total_tokens": 7785, "cost": 0.024771, "total_cost": 0.024771}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421309} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421320} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7812, "completion_tokens": 93, "total_tokens": 7905, "cost": 0.024831000000000002, "total_cost": 0.04960200000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421323} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740421327} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422343} +{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8968, "completion_tokens": 528, "total_tokens": 9496, "cost": 0.034824, "total_cost": 0.2176935}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422353} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422387} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422387} +{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422387} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422389} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422395} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740422395} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426335} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426335} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426344} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426344} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426348} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426518} +{"event": "model warning", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426519} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426524} +{"event": "cli session", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426524} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426524} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426529} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426539} +{"event": "model warning", "properties": {"main_model": "anthropic/REDACTED", "weak_model": "anthropic/REDACTED", "editor_model": "anthropic/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426541} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426553} +{"event": "cli session", "properties": {"main_model": "anthropic/REDACTED", "weak_model": "anthropic/REDACTED", "editor_model": "anthropic/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426553} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426554} +{"event": "message_send", "properties": {"main_model": "anthropic/REDACTED", "weak_model": "anthropic/REDACTED", "editor_model": "anthropic/REDACTED", "edit_format": "whole", "prompt_tokens": 1897, "completion_tokens": 102, "total_tokens": 1999, "cost": 0, "total_cost": 0.0}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426558} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426665} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426665} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426669} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426670} +{"event": "cli session", "properties": {"main_model": "claude-3-7-sonnet-20250219", "weak_model": "claude-3-7-sonnet-20250219", "editor_model": "claude-3-7-sonnet-20250219", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426671} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426671} +{"event": "exit", "properties": {"reason": "Completed main CLI coder.run"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426675} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426693} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426693} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-7-sonnet-20250219", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426693} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426694} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-7-sonnet-20250219", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "whole", "prompt_tokens": 8253, "completion_tokens": 86, "total_tokens": 8339, "cost": 0.026049, "total_cost": 0.026049}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426699} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426703} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426703} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426758} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426758} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426758} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 10016, "completion_tokens": 49, "total_tokens": 10065, "cost": 0.030783, "total_cost": 0.030783}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426764} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740426764} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427723} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427723} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427723} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427729} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427745} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427746} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 8921, "completion_tokens": 732, "total_tokens": 9653, "cost": 0.037743, "total_cost": 0.037743}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427763} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427766} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 10000, "completion_tokens": 248, "total_tokens": 10248, "cost": 0.03372, "total_cost": 0.071463}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427771} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427871} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427871} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427871} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427895} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427895} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427899} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427899} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427899} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427901} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427901} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427904} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427904} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427909} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740428002} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740428002} diff --git a/aider/website/assets/sample.aider.conf.yml b/aider/website/assets/sample.aider.conf.yml index 894719f86..f14860e26 100644 --- a/aider/website/assets/sample.aider.conf.yml +++ b/aider/website/assets/sample.aider.conf.yml @@ -23,7 +23,7 @@ ## Use claude-3-opus-20240229 model for the main chat #opus: false -## Use claude-3-5-sonnet-20241022 model for the main chat +## Use anthropic/claude-3-7-sonnet-20250219 model for the main chat #sonnet: false ## Use claude-3-5-haiku-20241022 model for the main chat diff --git a/aider/website/assets/sample.env b/aider/website/assets/sample.env index 7846bf45c..61b852798 100644 --- a/aider/website/assets/sample.env +++ b/aider/website/assets/sample.env @@ -27,7 +27,7 @@ ## Use claude-3-opus-20240229 model for the main chat #AIDER_OPUS= -## Use claude-3-5-sonnet-20241022 model for the main chat +## Use anthropic/claude-3-7-sonnet-20250219 model for the main chat #AIDER_SONNET= ## Use claude-3-5-haiku-20241022 model for the main chat diff --git a/aider/website/docs/config/adv-model-settings.md b/aider/website/docs/config/adv-model-settings.md index e68460d5c..aba55b2b1 100644 --- a/aider/website/docs/config/adv-model-settings.md +++ b/aider/website/docs/config/adv-model-settings.md @@ -223,6 +223,19 @@ cog.out("```\n") editor_model_name: anthropic/claude-3-5-sonnet-20241022 editor_edit_format: editor-diff +- name: anthropic/claude-3-7-sonnet-20250219 + edit_format: diff + weak_model_name: anthropic/claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25 + max_tokens: 8192 + cache_control: true + editor_model_name: anthropic/claude-3-7-sonnet-20250219 + editor_edit_format: editor-diff + - name: anthropic/claude-3-haiku-20240307 weak_model_name: anthropic/claude-3-haiku-20240307 examples_as_sys_msg: true diff --git a/aider/website/docs/config/aider_conf.md b/aider/website/docs/config/aider_conf.md index 5037fd7f8..356026a7a 100644 --- a/aider/website/docs/config/aider_conf.md +++ b/aider/website/docs/config/aider_conf.md @@ -77,7 +77,7 @@ cog.outl("```") ## Use claude-3-opus-20240229 model for the main chat #opus: false -## Use claude-3-5-sonnet-20241022 model for the main chat +## Use anthropic/claude-3-7-sonnet-20250219 model for the main chat #sonnet: false ## Use claude-3-5-haiku-20241022 model for the main chat diff --git a/aider/website/docs/config/dotenv.md b/aider/website/docs/config/dotenv.md index 1c36478b2..3a18d6433 100644 --- a/aider/website/docs/config/dotenv.md +++ b/aider/website/docs/config/dotenv.md @@ -67,7 +67,7 @@ cog.outl("```") ## Use claude-3-opus-20240229 model for the main chat #AIDER_OPUS= -## Use claude-3-5-sonnet-20241022 model for the main chat +## Use anthropic/claude-3-7-sonnet-20250219 model for the main chat #AIDER_SONNET= ## Use claude-3-5-haiku-20241022 model for the main chat diff --git a/aider/website/docs/config/model-aliases.md b/aider/website/docs/config/model-aliases.md index 471005c39..abffe3f61 100644 --- a/aider/website/docs/config/model-aliases.md +++ b/aider/website/docs/config/model-aliases.md @@ -60,7 +60,7 @@ for alias, model in sorted(MODEL_ALIASES.items()): - `haiku`: claude-3-5-haiku-20241022 - `opus`: claude-3-opus-20240229 - `r1`: deepseek/deepseek-reasoner -- `sonnet`: claude-3-5-sonnet-20241022 +- `sonnet`: anthropic/claude-3-7-sonnet-20250219 ## Priority diff --git a/aider/website/docs/config/options.md b/aider/website/docs/config/options.md index 5aa721e7c..31547a357 100644 --- a/aider/website/docs/config/options.md +++ b/aider/website/docs/config/options.md @@ -102,7 +102,7 @@ Use claude-3-opus-20240229 model for the main chat Environment variable: `AIDER_OPUS` ### `--sonnet` -Use claude-3-5-sonnet-20241022 model for the main chat +Use anthropic/claude-3-7-sonnet-20250219 model for the main chat Environment variable: `AIDER_SONNET` ### `--haiku` diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index f1ecdd0d2..fd1f69e41 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,15 +249,16 @@ tr:hover { background-color: #f5f5f5; } - - - - - - - + + + + + + + + - +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022587,52148.4%
fireworks_ai/accounts/fireworks/models/deepseek-v3332,40727.4%
deepseek/deepseek-chat97,7458.1%
o3-mini81,5956.7%
claude-3-5-haiku-2024102269,2035.7%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.7%
gpt-4o12,5951.0%
claude-3-5-sonnet-20241022671,72450.6%
fireworks_ai/accounts/fireworks/models/deepseek-v3316,95023.9%
o3-mini98,6597.4%
deepseek/deepseek-chat87,6586.6%
claude-3-5-haiku-2024102269,2035.2%
anthropic/claude-3-7-sonnet-2025021938,3052.9%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.6%
gpt-4o12,5950.9%
openrouter/openai/o3-mini10,1070.8%
ollama_chat/REDACTED3090.0%
anthropic/REDACTED1,9990.2%
{: .note :} From eed9be5a9e3b32273aeea2670bc5c90a5de9ed27 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:16:14 -0800 Subject: [PATCH 062/100] added sonnet 37 to leaderboard --- aider/website/_data/polyglot_leaderboard.yml | 28 +++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 0cdde46d6..758d52d5e 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -569,4 +569,30 @@ date: 2025-02-15 versions: 0.74.3.dev seconds_per_case: 12.4 - total_cost: 14.3703 \ No newline at end of file + total_cost: 14.3703 + +- dirname: 2025-02-24-19-54-07--sonnet37-diff + test_cases: 225 + model: claude-3-7-sonnet-20250219 + edit_format: diff + commit_hash: 75e9ee6 + pass_rate_1: 24.4 + pass_rate_2: 60.4 + pass_num_1: 55 + pass_num_2: 136 + percent_cases_well_formed: 93.3 + error_outputs: 16 + num_malformed_responses: 16 + num_with_malformed_responses: 15 + user_asks: 12 + lazy_comments: 0 + syntax_errors: 0 + indentation_errors: 0 + exhausted_context_windows: 0 + test_timeouts: 0 + total_tests: 225 + command: aider --model sonnet + date: 2025-02-24 + versions: 0.74.4.dev + seconds_per_case: 28.3 + total_cost: 17.7191 \ No newline at end of file From 846f98628d2be8eef31514d3077a259115d0de1a Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:26:25 -0800 Subject: [PATCH 063/100] copy --- aider/website/docs/leaderboards/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/website/docs/leaderboards/index.md b/aider/website/docs/leaderboards/index.md index f98366439..7484bca76 100644 --- a/aider/website/docs/leaderboards/index.md +++ b/aider/website/docs/leaderboards/index.md @@ -116,6 +116,6 @@ mod_dates = [get_last_modified_date(file) for file in files] latest_mod_date = max(mod_dates) cog.out(f"{latest_mod_date.strftime('%B %d, %Y.')}") ]]]--> -February 15, 2025. +February 24, 2025.

From 2f79b4fde7737b25f349d56a749930e46032decc Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 24 Feb 2025 12:32:47 -0800 Subject: [PATCH 064/100] test: Update sonnet model name in test_models.py --- tests/basic/test_models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/basic/test_models.py b/tests/basic/test_models.py index aa99040a1..be42f3bf4 100644 --- a/tests/basic/test_models.py +++ b/tests/basic/test_models.py @@ -123,7 +123,7 @@ class TestModels(unittest.TestCase): self.assertEqual(model.name, "gpt-3.5-turbo") model = Model("sonnet") - self.assertEqual(model.name, "claude-3-5-sonnet-20241022") + self.assertEqual(model.name, "anthropic/claude-3-7-sonnet-20250219") model = Model("haiku") self.assertEqual(model.name, "claude-3-5-haiku-20241022") From 506280d645736d56b56ec6c054a70d72432fb59a Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:33:23 -0800 Subject: [PATCH 065/100] version bump to 0.75.0 --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index 8f2674a62..e67f63cfd 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.74.4.dev" +__version__ = "0.75.0" safe_version = __version__ try: From a5cf0b6ef5f08ac6f325afcfaa6294258de2956a Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:34:55 -0800 Subject: [PATCH 066/100] set version to 0.75.1.dev --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index e67f63cfd..1e93136a9 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.75.0" +__version__ = "0.75.1.dev" safe_version = __version__ try: From 75bd94d757284f4d73b67eea81ffa476138041b3 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 12:53:46 -0800 Subject: [PATCH 067/100] updated blame --- HISTORY.md | 1 + aider/website/_data/blame.yml | 70 +++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) diff --git a/HISTORY.md b/HISTORY.md index 460b6e899..aff2d653c 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -6,6 +6,7 @@ - Use `--model sonnet` to use the new 3.7 - Thinking support coming soon. - Bugfix to `/editor` command. +- Aider wrote 46% of the code in this release. ### Aider v0.74.3 diff --git a/aider/website/_data/blame.yml b/aider/website/_data/blame.yml index 00c32ad8b..61e16cc5c 100644 --- a/aider/website/_data/blame.yml +++ b/aider/website/_data/blame.yml @@ -3844,3 +3844,73 @@ "Viktor Sz\xE9pe": 3 start_tag: v0.73.0 total_lines: 783 +- aider_percentage: 46.31 + aider_total: 163 + end_date: '2025-02-24' + end_tag: v0.75.0 + file_counts: + aider/__init__.py: + Paul Gauthier: 1 + aider/args.py: + Paul Gauthier: 7 + aider/coders/base_coder.py: + Paul Gauthier: 12 + Paul Gauthier (aider): 4 + aider/commands.py: + FeepingCreature (aider): 6 + aider/editor.py: + Paul Gauthier: 7 + Paul Gauthier (aider): 5 + aider/io.py: + Paul Gauthier: 3 + Paul Gauthier (aider): 4 + aider/linter.py: + Paul Gauthier: 1 + aider/main.py: + Paul Gauthier: 16 + aider/models.py: + Paul Gauthier: 4 + aider/queries/tree-sitter-language-pack/javascript-tags.scm: + Paul Gauthier: 5 + aider/queries/tree-sitter-languages/hcl-tags.scm: + Paul Gauthier: 3 + Warren Krewenki: 74 + aider/queries/tree-sitter-languages/javascript-tags.scm: + Paul Gauthier: 5 + aider/repomap.py: + Paul Gauthier: 43 + Paul Gauthier (aider): 11 + aider/special.py: + Lucas Shadler: 1 + aider/website/docs/leaderboards/index.md: + Paul Gauthier: 1 + benchmark/Dockerfile: + Paul Gauthier (aider): 1 + benchmark/benchmark.py: + Paul Gauthier: 4 + benchmark/cpp-test.sh: + Paul Gauthier: 1 + scripts/blame.py: + Paul Gauthier (aider): 2 + scripts/issues.py: + Paul Gauthier (aider): 17 + tests/basic/test_coder.py: + Paul Gauthier (aider): 18 + tests/basic/test_editor.py: + Antti Kaihola: 1 + Paul Gauthier (aider): 41 + tests/basic/test_models.py: + Paul Gauthier (aider): 1 + tests/basic/test_repomap.py: + Paul Gauthier (aider): 1 + tests/fixtures/languages/hcl/test.tf: + Paul Gauthier (aider): 52 + grand_total: + Antti Kaihola: 1 + FeepingCreature (aider): 6 + Lucas Shadler: 1 + Paul Gauthier: 113 + Paul Gauthier (aider): 157 + Warren Krewenki: 74 + start_tag: v0.74.0 + total_lines: 352 From 93edbda984a63eac21c219f49e4975da7453b9f4 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 13:29:22 -0800 Subject: [PATCH 068/100] copy --- aider/website/_data/polyglot_leaderboard.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 758d52d5e..a0e7f61c9 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -573,7 +573,7 @@ - dirname: 2025-02-24-19-54-07--sonnet37-diff test_cases: 225 - model: claude-3-7-sonnet-20250219 + model: claude-3-7-sonnet-20250219 (no thinking) edit_format: diff commit_hash: 75e9ee6 pass_rate_1: 24.4 From 60d11a6eba58216fd8b7b156848b75828411958c Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 13:51:21 -0800 Subject: [PATCH 069/100] use LONG_TIMEOUT --- benchmark/benchmark.py | 1 + 1 file changed, 1 insertion(+) diff --git a/benchmark/benchmark.py b/benchmark/benchmark.py index 66b187df5..f05c4b039 100755 --- a/benchmark/benchmark.py +++ b/benchmark/benchmark.py @@ -342,6 +342,7 @@ def main( LONG_TIMEOUT = 24 * 60 * 60 sendchat.RETRY_TIMEOUT = LONG_TIMEOUT base_coder.RETRY_TIMEOUT = LONG_TIMEOUT + models.RETRY_TIMEOUT = LONG_TIMEOUT if threads == 1: all_results = [] From c4fac2d17909428987dcb7e0ad0ef938663650b6 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 15:15:24 -0800 Subject: [PATCH 070/100] added sonnet 37 w/32k think --- aider/website/_data/polyglot_leaderboard.yml | 28 +++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index a0e7f61c9..6d23adec3 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -595,4 +595,30 @@ date: 2025-02-24 versions: 0.74.4.dev seconds_per_case: 28.3 - total_cost: 17.7191 \ No newline at end of file + total_cost: 17.7191 + +- dirname: 2025-02-24-21-47-23--sonnet37-diff-think-32k-64k + test_cases: 225 + model: claude-3-7-sonnet-20250219 (32k thinking tokens) + edit_format: diff + commit_hash: 60d11a6, 93edbda + pass_rate_1: 29.3 + pass_rate_2: 64.9 + pass_num_1: 66 + pass_num_2: 146 + percent_cases_well_formed: 97.8 + error_outputs: 66 + num_malformed_responses: 5 + num_with_malformed_responses: 5 + user_asks: 5 + lazy_comments: 0 + syntax_errors: 0 + indentation_errors: 0 + exhausted_context_windows: 0 + test_timeouts: 1 + total_tests: 225 + command: aider --model anthropic/claude-3-7-sonnet-20250219 + date: 2025-02-24 + versions: 0.75.1.dev + seconds_per_case: 105.2 + total_cost: 36.8343 \ No newline at end of file From 16a30004514d375ed16c14efea49ba5b0ccfe8fa Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 15:36:25 -0800 Subject: [PATCH 071/100] feat: Add OpenRouter Claude 3.7 Sonnet model configuration --- aider/resources/model-metadata.json | 20 ++++++++++++++++++++ aider/resources/model-settings.yml | 17 +++++++++++++++-- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/aider/resources/model-metadata.json b/aider/resources/model-metadata.json index 1a1c888d7..32d5f1519 100644 --- a/aider/resources/model-metadata.json +++ b/aider/resources/model-metadata.json @@ -171,4 +171,24 @@ "deprecation_date": "2025-10-01", "supports_tool_choice": true }, + "openrouter/anthropic/claude-3.7-sonnet": { + "max_tokens": 8192, + "max_input_tokens": 200000, + "max_output_tokens": 8192, + "input_cost_per_token": 0.000003, + "output_cost_per_token": 0.000015, + "cache_creation_input_token_cost": 0.00000375, + "cache_read_input_token_cost": 0.0000003, + "litellm_provider": "openrouter", + "mode": "chat", + "supports_function_calling": true, + "supports_vision": true, + "tool_use_system_prompt_tokens": 159, + "supports_assistant_prefill": true, + "supports_pdf_input": true, + "supports_prompt_caching": true, + "supports_response_schema": true, + "deprecation_date": "2025-10-01", + "supports_tool_choice": true + }, } diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index cb5ddd901..6a9b8c2be 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -191,12 +191,25 @@ examples_as_sys_msg: true extra_params: extra_headers: - anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25 - max_tokens: 8192 + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 cache_control: true editor_model_name: anthropic/claude-3-7-sonnet-20250219 editor_edit_format: editor-diff +- name: openrouter/anthropic/claude-3.7-sonnet + edit_format: diff + weak_model_name: openrouter/anthropic/claude-3-5-haiku + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: openrouter/anthropic/claude-3.7-sonnet + editor_edit_format: editor-diff + - name: bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0 edit_format: diff weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 From b357fab326e111da2126d901bc7c418629adde64 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 15:39:02 -0800 Subject: [PATCH 072/100] copy --- HISTORY.md | 4 + aider/website/HISTORY.md | 5 + aider/website/assets/sample-analytics.jsonl | 234 +++++++++--------- .../website/docs/config/adv-model-settings.md | 17 +- aider/website/docs/faq.md | 19 +- aider/website/docs/more/infinite-output.md | 2 + 6 files changed, 153 insertions(+), 128 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index aff2d653c..8c6bd31ed 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,9 @@ # Release history +### Aider v0.75.1 + +- Added support for `openrouter/anthropic/claude-3.7-sonnet` + ### Aider v0.75.0 - Basic support for Claude 3.7 Sonnet diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 070ecf9bc..9a7ea947b 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,12 +23,17 @@ cog.out(text) ]]]--> +### Aider v0.75.1 + +- Added support for `openrouter/anthropic/claude-3.7-sonnet` + ### Aider v0.75.0 - Basic support for Claude 3.7 Sonnet - Use `--model sonnet` to use the new 3.7 - Thinking support coming soon. - Bugfix to `/editor` command. +- Aider wrote 46% of the code in this release. ### Aider v0.74.3 diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index 26ff08089..1f845cfd1 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,120 +1,3 @@ -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870831} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870831} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "ask", "prompt_tokens": 79, "completion_tokens": 36, "total_tokens": 115, "cost": 2.1139999998040004e-05, "total_cost": 2.1139999998040004e-05}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870839} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870839} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870880} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870881} -{"event": "cli session", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870881} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870884} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870887} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870913} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff", "prompt_tokens": 16364, "completion_tokens": 617, "total_tokens": 16981, "cost": 0.00246371999999804, "total_cost": 0.00246371999999804}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870944} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738870982} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871002} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871053} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871054} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 17017, "completion_tokens": 617, "total_tokens": 17634, "cost": 0.0158706, "total_cost": 0.018334319999998037}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871094} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871107} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871107} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871122} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871123} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871123} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871130} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871153} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 20195, "completion_tokens": 62, "total_tokens": 20257, "cost": 0.018231300000000002, "total_cost": 0.018231300000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871160} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871167} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 19777, "completion_tokens": 445, "total_tokens": 20222, "cost": 0.018199800000000002, "total_cost": 0.03643110000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871197} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871207} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871213} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 23881, "completion_tokens": 214, "total_tokens": 24095, "cost": 0.0216855, "total_cost": 0.058116600000000004}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871226} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871234} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871237} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871245} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 16424, "completion_tokens": 561, "total_tokens": 16985, "cost": 0.015286499999999998, "total_cost": 0.0734031}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871273} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871332} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871332} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871335} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871340} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871340} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871406} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871406} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738871406} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878138} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878138} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878138} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878142} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878160} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878160} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878160} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878162} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878180} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878182} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878182} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878182} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878183} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878229} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878229} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878234} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878234} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878238} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878309} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878310} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878310} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878659} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878659} -{"event": "cli session", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878659} -{"event": "command_multiline-mode", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878664} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878665} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878689} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff", "prompt_tokens": 2399, "completion_tokens": 67, "total_tokens": 2466, "cost": 0.00035461999999804, "total_cost": 0.00035461999999804}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878695} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878807} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878814} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878814} -{"event": "cli session", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878815} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878837} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878842} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878909} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878909} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "ask", "prompt_tokens": 13955, "completion_tokens": 438, "total_tokens": 14393, "cost": 0.0020763399999980396, "total_cost": 0.0020763399999980396}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878931} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878933} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff", "prompt_tokens": 16714, "completion_tokens": 853, "total_tokens": 17567, "cost": 0.0025787999999980406, "total_cost": 0.00465513999999608}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878967} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738878993} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879021} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879046} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879046} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "ask", "prompt_tokens": 16298, "completion_tokens": 618, "total_tokens": 16916, "cost": 0.00245475999999804, "total_cost": 0.00710989999999412}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879084} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879085} -{"event": "message_send", "properties": {"main_model": "deepseek/deepseek-chat", "weak_model": "deepseek/deepseek-chat", "editor_model": "deepseek/deepseek-chat", "edit_format": "diff", "prompt_tokens": 19220, "completion_tokens": 0, "total_tokens": 19220, "cost": 0.0026907999999980403, "total_cost": 0.00980069999999216}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879147} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879243} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879269} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879276} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879277} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "deepseek/deepseek-chat", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 19249, "completion_tokens": 599, "total_tokens": 19848, "cost": 0.0178632, "total_cost": 0.027663899999992157}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879325} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879395} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879408} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879409} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879409} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879411} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879443} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879475} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879475} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879497} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 17539, "completion_tokens": 302, "total_tokens": 17841, "cost": 0.0160569, "total_cost": 0.0160569}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879512} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879521} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 18166, "completion_tokens": 383, "total_tokens": 18549, "cost": 0.0166941, "total_cost": 0.032751}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879544} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879557} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 19898, "completion_tokens": 567, "total_tokens": 20465, "cost": 0.018418499999999997, "total_cost": 0.0511695}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879594} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879604} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 21582, "completion_tokens": 811, "total_tokens": 22393, "cost": 0.020153699999999997, "total_cost": 0.0713232}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879648} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879663} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879794} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879794} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879794} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879806} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879807} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879808} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879808} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879812} {"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879814} {"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879814} {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879819} @@ -998,3 +881,120 @@ {"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740427909} {"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740428002} {"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740428002} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429083} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429085} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429100} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429100} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429100} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429150} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429150} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429150} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429152} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 10816, "completion_tokens": 135, "total_tokens": 10951, "cost": 0.034473, "total_cost": 0.034473}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429158} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429159} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 10675, "completion_tokens": 216, "total_tokens": 10891, "cost": 0.035265, "total_cost": 0.069738}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429165} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429176} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429274} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429275} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429275} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429994} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429995} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429995} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740429996} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430050} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430050} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430054} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430055} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430055} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430055} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430187} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430187} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430195} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430195} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430195} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430198} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430205} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430205} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430206} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430207} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430242} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430242} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430242} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430245} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430285} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430286} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430286} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430287} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430297} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430297} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430297} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430315} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430315} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430315} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430334} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430334} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430334} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 2356, "completion_tokens": 100, "total_tokens": 2456, "cost": 0.008568000000000001, "total_cost": 0.008568000000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430342} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740430342} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433345} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433346} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433346} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433348} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433357} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433357} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433357} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433359} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433370} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433371} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433371} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433373} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433507} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433508} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433508} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 2356, "completion_tokens": 100, "total_tokens": 2456, "cost": 0.008568000000000001, "total_cost": 0.008568000000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433514} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433514} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433518} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433519} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433519} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433521} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433536} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433536} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433536} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740433538} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740439991} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740439991} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740439991} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740439992} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 2410, "completion_tokens": 109, "total_tokens": 2519, "cost": 0.008865, "total_cost": 0.008865}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740439999} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440013} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440013} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440017} +{"event": "model warning", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440019} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440024} +{"event": "cli session", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440024} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440025} +{"event": "message_send", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 3676, "completion_tokens": 43, "total_tokens": 3719, "cost": 0, "total_cost": 0.0}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440029} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440039} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440049} +{"event": "model warning", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "openrouter/REDACTED", "editor_model": "openrouter/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440051} +{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440069} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440071} +{"event": "model warning", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "openrouter/REDACTED", "editor_model": "openrouter/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440073} +{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440074} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440083} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440083} +{"event": "cli session", "properties": {"main_model": "openrouter/anthropic/claude-3.7-sonnet", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440083} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440084} +{"event": "message_send", "properties": {"main_model": "openrouter/anthropic/claude-3.7-sonnet", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 10048, "completion_tokens": 84, "total_tokens": 10132, "cost": 0.031404, "total_cost": 0.031404}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440089} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440096} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440096} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440164} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440164} +{"event": "cli session", "properties": {"main_model": "openrouter/anthropic/claude-3.7-sonnet", "weak_model": "openrouter/anthropic/claude-3-5-haiku", "editor_model": "openrouter/anthropic/claude-3.7-sonnet", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440164} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440169} +{"event": "message_send", "properties": {"main_model": "openrouter/anthropic/claude-3.7-sonnet", "weak_model": "openrouter/anthropic/claude-3-5-haiku", "editor_model": "openrouter/anthropic/claude-3.7-sonnet", "edit_format": "diff", "prompt_tokens": 10016, "completion_tokens": 65, "total_tokens": 10081, "cost": 0.031023000000000002, "total_cost": 0.031023000000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440174} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440175} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440175} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440182} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440182} +{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440185} diff --git a/aider/website/docs/config/adv-model-settings.md b/aider/website/docs/config/adv-model-settings.md index aba55b2b1..5e1322bcf 100644 --- a/aider/website/docs/config/adv-model-settings.md +++ b/aider/website/docs/config/adv-model-settings.md @@ -230,8 +230,8 @@ cog.out("```\n") examples_as_sys_msg: true extra_params: extra_headers: - anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25 - max_tokens: 8192 + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 cache_control: true editor_model_name: anthropic/claude-3-7-sonnet-20250219 editor_edit_format: editor-diff @@ -709,6 +709,19 @@ cog.out("```\n") editor_model_name: openrouter/anthropic/claude-3.5-sonnet:beta editor_edit_format: editor-diff +- name: openrouter/anthropic/claude-3.7-sonnet + edit_format: diff + weak_model_name: openrouter/anthropic/claude-3-5-haiku + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: openrouter/anthropic/claude-3.7-sonnet + editor_edit_format: editor-diff + - name: openrouter/deepseek/deepseek-chat edit_format: diff use_repo_map: true diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index fd1f69e41..4ab03eceb 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,15 +249,16 @@ tr:hover { background-color: #f5f5f5; } - - - - - - - - - + + + + + + + + + +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022671,72450.6%
fireworks_ai/accounts/fireworks/models/deepseek-v3316,95023.9%
o3-mini98,6597.4%
deepseek/deepseek-chat87,6586.6%
claude-3-5-haiku-2024102269,2035.2%
anthropic/claude-3-7-sonnet-2025021938,3052.9%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.6%
gpt-4o12,5950.9%
openrouter/openai/o3-mini10,1070.8%
claude-3-5-sonnet-20241022671,72461.3%
fireworks_ai/accounts/fireworks/models/deepseek-v3118,66110.8%
o3-mini98,6599.0%
claude-3-5-haiku-2024102269,2036.3%
anthropic/claude-3-7-sonnet-2025021967,5786.2%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.9%
openrouter/anthropic/claude-3.7-sonnet20,2131.8%
gpt-4o12,5951.1%
openrouter/openai/o3-mini10,1070.9%
openrouter/REDACTED3,7190.3%
anthropic/REDACTED1,9990.2%
diff --git a/aider/website/docs/more/infinite-output.md b/aider/website/docs/more/infinite-output.md index 4e046fbf3..3ea413902 100644 --- a/aider/website/docs/more/infinite-output.md +++ b/aider/website/docs/more/infinite-output.md @@ -57,9 +57,11 @@ cog.out(model_list) ]]]--> - anthropic.claude-3-5-haiku-20241022-v1:0 - anthropic.claude-3-5-sonnet-20241022-v2:0 +- anthropic.claude-3-7-sonnet-20250219-v1:0 - claude-3-5-haiku-20241022 - claude-3-5-sonnet-20240620 - claude-3-5-sonnet-20241022 +- claude-3-7-sonnet-20250219 - claude-3-haiku-20240307 - claude-3-opus-20240229 - claude-3-sonnet-20240229 From a73836ca43e4224b23b7867175cbd95fec377653 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 15:39:16 -0800 Subject: [PATCH 073/100] version bump to 0.75.1 --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index 1e93136a9..9d9fb0315 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.75.1.dev" +__version__ = "0.75.1" safe_version = __version__ try: From c748c35b374b0f8be8e67e811ca569d852bb63d0 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 15:41:02 -0800 Subject: [PATCH 074/100] set version to 0.75.2.dev --- aider/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/__init__.py b/aider/__init__.py index 9d9fb0315..d569493ec 100644 --- a/aider/__init__.py +++ b/aider/__init__.py @@ -1,6 +1,6 @@ from packaging import version -__version__ = "0.75.1" +__version__ = "0.75.2.dev" safe_version = __version__ try: From 4005ced505b9551b0bb027eed2347d4e4728a81d Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 17:17:34 -0800 Subject: [PATCH 075/100] copy --- aider/website/docs/llms/anthropic.md | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/aider/website/docs/llms/anthropic.md b/aider/website/docs/llms/anthropic.md index 2a41b34e8..c19e45542 100644 --- a/aider/website/docs/llms/anthropic.md +++ b/aider/website/docs/llms/anthropic.md @@ -39,3 +39,32 @@ with more generous rate limits. You can use `aider --model ` to use any other Anthropic model. For example, if you want to use a specific version of Opus you could do `aider --model claude-3-opus-20240229`. + +## Thinking tokens + +Aider can work with Sonnet 3.7's new thinking tokens, but it currently requires manual configuration. +More streamlined support will be coming soon. + +For now, you need to add the following to your `.aider.model.settings.yml` +[model settings file](http://127.0.0.1:4000/docs/config/adv-model-settings.html#model-settings). +Adjust the `budget_tokens` value to change the target number of thinking tokens. + +```yaml +- name: anthropic/claude-3-7-sonnet-20250219 + edit_format: diff + weak_model_name: anthropic/claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + use_temperature: false + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + thinking: + type: enabled + budget_tokens: 32000 # Adjust this number + cache_control: true + editor_model_name: anthropic/claude-3-7-sonnet-20250219 + editor_edit_format: editor-diff +``` + From 347f75f804007fa293fb1b60e3275ced0e588747 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 17:23:14 -0800 Subject: [PATCH 076/100] copy --- aider/website/_data/polyglot_leaderboard.yml | 2 +- aider/website/docs/llms/anthropic.md | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 6d23adec3..93ff5e17c 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -617,7 +617,7 @@ exhausted_context_windows: 0 test_timeouts: 1 total_tests: 225 - command: aider --model anthropic/claude-3-7-sonnet-20250219 + command: aider --model anthropic/claude-3-7-sonnet-20250219 # plus yml config date: 2025-02-24 versions: 0.75.1.dev seconds_per_case: 105.2 diff --git a/aider/website/docs/llms/anthropic.md b/aider/website/docs/llms/anthropic.md index c19e45542..c4c65c981 100644 --- a/aider/website/docs/llms/anthropic.md +++ b/aider/website/docs/llms/anthropic.md @@ -42,10 +42,11 @@ you could do `aider --model claude-3-opus-20240229`. ## Thinking tokens -Aider can work with Sonnet 3.7's new thinking tokens, but it currently requires manual configuration. -More streamlined support will be coming soon. +Aider can work with Sonnet 3.7's new thinking tokens, but does not ask Sonnet to use +thinking tokens by default. -For now, you need to add the following to your `.aider.model.settings.yml` +Enabling thinking currently requires manual configuration. +You need to add the following to your `.aider.model.settings.yml` [model settings file](http://127.0.0.1:4000/docs/config/adv-model-settings.html#model-settings). Adjust the `budget_tokens` value to change the target number of thinking tokens. @@ -68,3 +69,4 @@ Adjust the `budget_tokens` value to change the target number of thinking tokens. editor_edit_format: editor-diff ``` +More streamlined support will be coming soon. From b6e46d61010e092b835c3234bbe7303483ce1ddf Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Mon, 24 Feb 2025 20:20:55 -0800 Subject: [PATCH 077/100] copy --- aider/website/_data/polyglot_leaderboard.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 93ff5e17c..788a3c465 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -617,7 +617,7 @@ exhausted_context_windows: 0 test_timeouts: 1 total_tests: 225 - command: aider --model anthropic/claude-3-7-sonnet-20250219 # plus yml config + command: "aider --model anthropic/claude-3-7-sonnet-20250219 # plus yml config" date: 2025-02-24 versions: 0.75.1.dev seconds_per_case: 105.2 From acb022d5d5b10c5e66a741184f4bf374dad10943 Mon Sep 17 00:00:00 2001 From: "Mingde (Matthew) Zeng" Date: Tue, 25 Feb 2025 02:46:29 -0500 Subject: [PATCH 078/100] Fix typo --- aider/website/docs/llms/openrouter.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aider/website/docs/llms/openrouter.md b/aider/website/docs/llms/openrouter.md index 9d561bf1c..ecf18568d 100644 --- a/aider/website/docs/llms/openrouter.md +++ b/aider/website/docs/llms/openrouter.md @@ -44,13 +44,13 @@ to allow use of all models. OpenRouter often has multiple providers serving each model. You can control which OpenRouter providers are used for your requests in two ways: -1. By "ignoring" certain providers in your +1. By "ignoring" certain providers in your [OpenRouter account settings](https://openrouter.ai/settings/preferences). This disables those named providers across all the models that you access via OpenRouter. 2. By configuring "provider routing" in a `.aider.model.settings.yml` file. -Place that file in your home directory or the root if your git project, with +Place that file in your home directory or the root of your git project, with entries like this: ```yaml From a3937e4d0d2ec2a163b57d85ac00a1139029a391 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Tue, 25 Feb 2025 06:35:35 -0800 Subject: [PATCH 079/100] copy --- aider/website/docs/llms/anthropic.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/website/docs/llms/anthropic.md b/aider/website/docs/llms/anthropic.md index c4c65c981..fcbb96ef9 100644 --- a/aider/website/docs/llms/anthropic.md +++ b/aider/website/docs/llms/anthropic.md @@ -47,7 +47,7 @@ thinking tokens by default. Enabling thinking currently requires manual configuration. You need to add the following to your `.aider.model.settings.yml` -[model settings file](http://127.0.0.1:4000/docs/config/adv-model-settings.html#model-settings). +[model settings file](/docs/config/adv-model-settings.html#model-settings). Adjust the `budget_tokens` value to change the target number of thinking tokens. ```yaml From ea972118b51515b36c94106e0faa7f77e053fb5f Mon Sep 17 00:00:00 2001 From: Josh Klina Date: Wed, 26 Feb 2025 08:59:39 -0500 Subject: [PATCH 080/100] Add clarifying instructions to LM Studio config There are a few small gotchas when configuring LM Studio to work with aider. This adds a few clarifying instructions. --- aider/website/docs/llms/lm-studio.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/aider/website/docs/llms/lm-studio.md b/aider/website/docs/llms/lm-studio.md index cff64ba45..f048ea543 100644 --- a/aider/website/docs/llms/lm-studio.md +++ b/aider/website/docs/llms/lm-studio.md @@ -10,16 +10,18 @@ To use LM Studio: ``` python -m pip install -U aider-chat +# Must set a value here even if its a dummy value export LM_STUDIO_API_KEY= # Mac/Linux setx LM_STUDIO_API_KEY # Windows, restart shell after setx +# LM Studio default server URL is http://localhost:1234/v1 export LM_STUDIO_API_BASE= # Mac/Linux setx LM_STUDIO_API_BASE # Windows, restart shell after setx aider --model lm_studio/ ``` - +**Note:** Even though LM Studio doesn't require an API Key out of the box the `LM_STUDIO_API_KEY` must have a dummy value like `dummy-api-key` set or the client request will fail trying to send an empty `Bearer` token. See the [model warnings](warnings.html) section for information on warnings which will occur From b6344951fe28a72326497fe71c93fcb6801d449f Mon Sep 17 00:00:00 2001 From: Filip Trplan <8643457+filiptrplan@users.noreply.github.com> Date: Wed, 26 Feb 2025 15:04:48 +0100 Subject: [PATCH 081/100] add gemini-2.0-pro-exp-02-05 polyglot benchmark --- aider/website/_data/polyglot_leaderboard.yml | 28 +++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 788a3c465..0e619f246 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -1,3 +1,29 @@ +- dirname: 2025-02-25-20-23-07--gemini-pro + test_cases: 225 + model: gemini/gemini-2.0-pro-exp-02-05 + edit_format: whole + commit_hash: 2fccd47 + pass_rate_1: 20.4 + pass_rate_2: 35.6 + pass_num_1: 46 + pass_num_2: 80 + percent_cases_well_formed: 100.0 + error_outputs: 430 + num_malformed_responses: 0 + num_with_malformed_responses: 0 + user_asks: 13 + lazy_comments: 0 + syntax_errors: 0 + indentation_errors: 0 + exhausted_context_windows: 0 + test_timeouts: 5 + total_tests: 225 + command: aider --model gemini/gemini-2.0-pro-exp-02-05 + date: 2025-02-25 + versions: 0.75.2.dev + seconds_per_case: 34.8 + total_cost: 0.0000 + - dirname: 2024-12-21-18-41-18--polyglot-gpt-4o-mini test_cases: 225 model: gpt-4o-mini-2024-07-18 @@ -621,4 +647,4 @@ date: 2025-02-24 versions: 0.75.1.dev seconds_per_case: 105.2 - total_cost: 36.8343 \ No newline at end of file + total_cost: 36.8343 From a1e029a82552884b0c00e468d878df59e458cb09 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 07:49:55 -0800 Subject: [PATCH 082/100] added settings for openrouter/anthropic/claude-3.7-sonnet:beta --- aider/resources/model-settings.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index 6a9b8c2be..4e71af3fa 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -210,6 +210,19 @@ editor_model_name: openrouter/anthropic/claude-3.7-sonnet editor_edit_format: editor-diff +- name: openrouter/anthropic/claude-3.7-sonnet:beta + edit_format: diff + weak_model_name: openrouter/anthropic/claude-3-5-haiku + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: openrouter/anthropic/claude-3.7-sonnet + editor_edit_format: editor-diff + - name: bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0 edit_format: diff weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 From fb5db4f6b7b40d0e9cf2394e179f59f04ca89730 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 07:50:30 -0800 Subject: [PATCH 083/100] copy --- aider/website/assets/sample-analytics.jsonl | 238 +++++++++--------- .../website/docs/config/adv-model-settings.md | 13 + aider/website/docs/faq.md | 15 +- aider/website/docs/more/infinite-output.md | 7 + 4 files changed, 146 insertions(+), 127 deletions(-) diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index 1f845cfd1..85e5213cb 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,122 +1,3 @@ -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879814} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879814} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879819} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879819} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879822} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879888} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879888} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738879888} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880039} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880039} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880039} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880045} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880048} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880048} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880089} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880089} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880109} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 22126, "completion_tokens": 87, "total_tokens": 22213, "cost": 0.06768300000000001, "total_cost": 0.06768300000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880115} -{"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880119} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880471} -{"event": "model warning", "properties": {"main_model": "ollama/REDACTED", "weak_model": "ollama/REDACTED", "editor_model": "ollama/REDACTED"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880473} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880475} -{"event": "cli session", "properties": {"main_model": "ollama/REDACTED", "weak_model": "ollama/REDACTED", "editor_model": "ollama/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880475} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880476} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880478} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880509} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880510} -{"event": "cli session", "properties": {"main_model": "ollama/REDACTED", "weak_model": "ollama/REDACTED", "editor_model": "ollama/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880510} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880512} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880514} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880524} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880524} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880524} -{"event": "message_send_exception", "properties": {"exception": "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate (_ssl.c:1000)"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880525} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738880525} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738881386} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738881386} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738881386} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884252} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884252} -{"event": "cli session", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884252} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884254} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff", "prompt_tokens": 10012, "completion_tokens": 32, "total_tokens": 10044, "cost": 0.011154, "total_cost": 0.011154}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884259} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884260} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884263} -{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884263} -{"event": "cli session", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884263} -{"event": "exit", "properties": {"reason": "Completed main CLI coder.run"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884265} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884269} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884269} -{"event": "cli session", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884269} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884280} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff", "prompt_tokens": 9985, "completion_tokens": 180, "total_tokens": 10165, "cost": 0.0117755, "total_cost": 0.0117755}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884287} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884373} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884373} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884990} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884990} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738884990} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888520} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888520} -{"event": "cli session", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888520} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888521} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888532} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "ask", "prompt_tokens": 4655, "completion_tokens": 159, "total_tokens": 4814, "cost": 0.0043326, "total_cost": 0.0043326}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888540} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888889} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888889} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 7662, "completion_tokens": 186, "total_tokens": 7848, "cost": 0.0070631999999999995, "total_cost": 0.0113958}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888903} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738888907} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889683} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889684} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889684} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889685} -{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889685} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889686} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 15460, "completion_tokens": 201, "total_tokens": 15661, "cost": 0.049395, "total_cost": 0.049395}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738889694} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738890195} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738890195} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738890350} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738890350} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738890350} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 10008, "completion_tokens": 582, "total_tokens": 10590, "cost": 0.08471999999999999, "total_cost": 0.08471999999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738890379} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738896839} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738896839} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738896839} -{"event": "message_send", "properties": {"main_model": "fireworks_ai/accounts/fireworks/models/deepseek-r1", "weak_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "editor_model": "fireworks_ai/accounts/fireworks/models/deepseek-v3", "edit_format": "diff", "prompt_tokens": 10044, "completion_tokens": 548, "total_tokens": 10592, "cost": 0.08473599999999999, "total_cost": 0.08473599999999999}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738896929} -{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738896929} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945606} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945606} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945606} -{"event": "command_multiline-mode", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945609} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945616} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945632} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945788} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945790} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945790} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945790} -{"event": "command_multiline-mode", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945792} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945826} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945828} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945828} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945828} -{"event": "command_multiline-mode", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945830} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945855} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945887} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945887} -{"event": "cli session", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945887} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945925} -{"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945925} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945925} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945925} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "ask", "prompt_tokens": 11233, "completion_tokens": 383, "total_tokens": 11616, "cost": 0.0140415, "total_cost": 0.0140415}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945944} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945955} -{"event": "message_send", "properties": {"main_model": "o3-mini", "weak_model": "gpt-4o-mini", "editor_model": "gpt-4o", "edit_format": "diff", "prompt_tokens": 14522, "completion_tokens": 120, "total_tokens": 14642, "cost": 0.0165022, "total_cost": 0.0305437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945971} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945979} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945979} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945979} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945992} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945998} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945998} {"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945998} {"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946001} {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946012} @@ -998,3 +879,122 @@ {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440182} {"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440182} {"event": "exit", "properties": {"reason": "Completed lint/test/commit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440185} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440440} +{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440440} +{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740440440} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499589} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499589} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499589} +{"event": "message_send_exception", "properties": {"exception": "'name'"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499591} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499591} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499766} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499766} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499766} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499944} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499944} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499944} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499988} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499988} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499988} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "str-replace", "prompt_tokens": 6880, "completion_tokens": 127, "total_tokens": 7007, "cost": 0.025074000000000003, "total_cost": 0.025074000000000003}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499993} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740499993} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502502} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502503} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502503} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502504} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502511} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502514} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502525} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502526} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502526} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502530} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502530} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502537} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502537} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502537} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502538} +{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502544} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502576} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "ask", "prompt_tokens": 25710, "completion_tokens": 335, "total_tokens": 26045, "cost": 0.082155, "total_cost": 0.082155}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740502613} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514526} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514527} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514527} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514596} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514596} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "ask", "prompt_tokens": 4433, "completion_tokens": 145, "total_tokens": 4578, "cost": 0.015474, "total_cost": 0.015474}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514608} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514668} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 6958, "completion_tokens": 175, "total_tokens": 7133, "cost": 0.023499, "total_cost": 0.038973}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514680} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514718} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 7161, "completion_tokens": 829, "total_tokens": 7990, "cost": 0.033918000000000004, "total_cost": 0.07289100000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514736} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514765} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 8171, "completion_tokens": 826, "total_tokens": 8997, "cost": 0.036903, "total_cost": 0.109794}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514783} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514818} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 9032, "completion_tokens": 872, "total_tokens": 9904, "cost": 0.040176, "total_cost": 0.14997}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514835} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514879} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 9963, "completion_tokens": 124, "total_tokens": 10087, "cost": 0.031749, "total_cost": 0.181719}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740514885} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515106} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515106} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515245} +{"event": "model warning", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515247} +{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515251} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515265} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515267} +{"event": "cli session", "properties": {"main_model": "None", "weak_model": "None", "editor_model": "None", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515267} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515268} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515270} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515277} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515279} +{"event": "cli session", "properties": {"main_model": "anthropic/REDACTED", "weak_model": "anthropic/REDACTED", "editor_model": "anthropic/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515279} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515289} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515289} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515292} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515294} +{"event": "cli session", "properties": {"main_model": "anthropic/REDACTED", "weak_model": "anthropic/REDACTED", "editor_model": "anthropic/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515294} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515297} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515366} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515366} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515369} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515371} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515371} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515372} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515413} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515416} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515416} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515416} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515447} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515447} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515447} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515458} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515474} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515476} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515476} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515477} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515490} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515492} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515492} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740515493} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740517756} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740517757} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740517757} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 10019, "completion_tokens": 51, "total_tokens": 10070, "cost": 0.030822000000000002, "total_cost": 0.030822000000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740517763} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740517763} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533136} +{"event": "repo", "properties": {"num_files": 201}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533136} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533136} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533152} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 5853, "completion_tokens": 298, "total_tokens": 6151, "cost": 0.022029, "total_cost": 0.022029}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533159} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533168} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533168} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533213} +{"event": "repo", "properties": {"num_files": 201}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533213} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533213} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533221} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 5963, "completion_tokens": 326, "total_tokens": 6289, "cost": 0.022779, "total_cost": 0.022779}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533230} +{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740533236} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584956} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584959} +{"event": "cli session", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "openrouter/REDACTED", "editor_model": "openrouter/REDACTED", "edit_format": "whole"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584959} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584960} +{"event": "message_send", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "openrouter/REDACTED", "editor_model": "openrouter/REDACTED", "edit_format": "whole", "prompt_tokens": 8268, "completion_tokens": 96, "total_tokens": 8364, "cost": 0.026244, "total_cost": 0.026244}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584966} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584967} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584967} diff --git a/aider/website/docs/config/adv-model-settings.md b/aider/website/docs/config/adv-model-settings.md index 5e1322bcf..295e86105 100644 --- a/aider/website/docs/config/adv-model-settings.md +++ b/aider/website/docs/config/adv-model-settings.md @@ -722,6 +722,19 @@ cog.out("```\n") editor_model_name: openrouter/anthropic/claude-3.7-sonnet editor_edit_format: editor-diff +- name: openrouter/anthropic/claude-3.7-sonnet:beta + edit_format: diff + weak_model_name: openrouter/anthropic/claude-3-5-haiku + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: openrouter/anthropic/claude-3.7-sonnet + editor_edit_format: editor-diff + - name: openrouter/deepseek/deepseek-chat edit_format: diff use_repo_map: true diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index 4ab03eceb..d4a587f04 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,16 +249,15 @@ tr:hover { background-color: #f5f5f5; } - - - + + + - - - - + + + + -
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022671,72461.3%
fireworks_ai/accounts/fireworks/models/deepseek-v3118,66110.8%
o3-mini98,6599.0%
claude-3-5-sonnet-20241022633,85058.1%
anthropic/claude-3-7-sonnet-20250219171,82915.8%
fireworks_ai/accounts/fireworks/models/deepseek-v3105,9999.7%
claude-3-5-haiku-2024102269,2036.3%
anthropic/claude-3-7-sonnet-2025021967,5786.2%
fireworks_ai/accounts/fireworks/models/deepseek-r121,1821.9%
openrouter/anthropic/claude-3.7-sonnet20,2131.8%
gpt-4o12,5951.1%
o3-mini52,1924.8%
openrouter/anthropic/claude-3.7-sonnet20,2131.9%
gpt-4o12,5951.2%
openrouter/REDACTED12,0831.1%
openrouter/openai/o3-mini10,1070.9%
openrouter/REDACTED3,7190.3%
anthropic/REDACTED1,9990.2%
diff --git a/aider/website/docs/more/infinite-output.md b/aider/website/docs/more/infinite-output.md index 3ea413902..51e1470a0 100644 --- a/aider/website/docs/more/infinite-output.md +++ b/aider/website/docs/more/infinite-output.md @@ -59,11 +59,15 @@ cog.out(model_list) - anthropic.claude-3-5-sonnet-20241022-v2:0 - anthropic.claude-3-7-sonnet-20250219-v1:0 - claude-3-5-haiku-20241022 +- claude-3-5-haiku-latest - claude-3-5-sonnet-20240620 - claude-3-5-sonnet-20241022 +- claude-3-5-sonnet-latest - claude-3-7-sonnet-20250219 +- claude-3-7-sonnet-latest - claude-3-haiku-20240307 - claude-3-opus-20240229 +- claude-3-opus-latest - claude-3-sonnet-20240229 - codestral/codestral-2405 - codestral/codestral-latest @@ -95,15 +99,18 @@ cog.out(model_list) - mistral/pixtral-large-2411 - mistral/pixtral-large-latest - openrouter/anthropic/claude-3.5-sonnet +- openrouter/anthropic/claude-3.7-sonnet - openrouter/deepseek/deepseek-r1 - us.anthropic.claude-3-5-haiku-20241022-v1:0 - us.anthropic.claude-3-5-sonnet-20241022-v2:0 +- us.anthropic.claude-3-7-sonnet-20250219-v1:0 - vertex_ai/claude-3-5-haiku - vertex_ai/claude-3-5-haiku@20241022 - vertex_ai/claude-3-5-sonnet - vertex_ai/claude-3-5-sonnet-v2 - vertex_ai/claude-3-5-sonnet-v2@20241022 - vertex_ai/claude-3-5-sonnet@20240620 +- vertex_ai/claude-3-7-sonnet@20250219 - vertex_ai/claude-3-haiku - vertex_ai/claude-3-haiku@20240307 - vertex_ai/claude-3-opus From 6c3e30f3ea2eea9827d3f6837d5eecfbca88f654 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 07:50:52 -0800 Subject: [PATCH 084/100] copy --- aider/website/docs/leaderboards/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aider/website/docs/leaderboards/index.md b/aider/website/docs/leaderboards/index.md index 7484bca76..e4ef0ff8b 100644 --- a/aider/website/docs/leaderboards/index.md +++ b/aider/website/docs/leaderboards/index.md @@ -116,6 +116,6 @@ mod_dates = [get_last_modified_date(file) for file in files] latest_mod_date = max(mod_dates) cog.out(f"{latest_mod_date.strftime('%B %d, %Y.')}") ]]]--> -February 24, 2025. +February 26, 2025.

From a95b40aac64419ab634ae12a6799381053f22611 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Wed, 26 Feb 2025 08:54:46 -0800 Subject: [PATCH 085/100] docs: Update LM Studio example commands with dummy key and default URL --- aider/website/docs/llms/lm-studio.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/aider/website/docs/llms/lm-studio.md b/aider/website/docs/llms/lm-studio.md index f048ea543..909d3afe1 100644 --- a/aider/website/docs/llms/lm-studio.md +++ b/aider/website/docs/llms/lm-studio.md @@ -11,12 +11,12 @@ To use LM Studio: python -m pip install -U aider-chat # Must set a value here even if its a dummy value -export LM_STUDIO_API_KEY= # Mac/Linux -setx LM_STUDIO_API_KEY # Windows, restart shell after setx +export LM_STUDIO_API_KEY=dummy-api-key # Mac/Linux +setx LM_STUDIO_API_KEY dummy-api-key # Windows, restart shell after setx # LM Studio default server URL is http://localhost:1234/v1 -export LM_STUDIO_API_BASE= # Mac/Linux -setx LM_STUDIO_API_BASE # Windows, restart shell after setx +export LM_STUDIO_API_BASE=http://localhost:1234/v1 # Mac/Linux +setx LM_STUDIO_API_BASE http://localhost:1234/v1 # Windows, restart shell after setx aider --model lm_studio/ ``` From 1d10e649b790f8bf6ffebae719da6ad8414f9307 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Wed, 26 Feb 2025 08:59:45 -0800 Subject: [PATCH 086/100] feat: Add Claude 3.7 Sonnet models to model-settings.yml --- aider/resources/model-settings.yml | 113 ++++++++++++++++++++++++++++- 1 file changed, 112 insertions(+), 1 deletion(-) diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index 4e71af3fa..bdcb4dd00 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -197,6 +197,117 @@ editor_model_name: anthropic/claude-3-7-sonnet-20250219 editor_edit_format: editor-diff +- name: anthropic/claude-3-7-sonnet-latest + edit_format: diff + weak_model_name: anthropic/claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: anthropic/claude-3-7-sonnet-latest + editor_edit_format: editor-diff + +- name: claude-3-7-sonnet-20250219 + edit_format: diff + weak_model_name: claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: claude-3-7-sonnet-20250219 + editor_edit_format: editor-diff + +- name: claude-3-7-sonnet-latest + edit_format: diff + weak_model_name: claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: claude-3-7-sonnet-latest + editor_edit_format: editor-diff + +- name: bedrock/anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock/anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: bedrock_converse/anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock_converse/anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: bedrock_converse/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock_converse/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: vertex_ai/claude-3-7-sonnet@20250219 + edit_format: diff + weak_model_name: vertex_ai/claude-3-5-haiku@20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + max_tokens: 64000 + editor_model_name: vertex_ai/claude-3-7-sonnet@20250219 + editor_edit_format: editor-diff + +- name: vertex_ai-anthropic_models/vertex_ai/claude-3-7-sonnet@20250219 + edit_format: diff + weak_model_name: vertex_ai/claude-3-5-haiku@20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + max_tokens: 64000 + editor_model_name: vertex_ai-anthropic_models/vertex_ai/claude-3-7-sonnet@20250219 + editor_edit_format: editor-diff + - name: openrouter/anthropic/claude-3.7-sonnet edit_format: diff weak_model_name: openrouter/anthropic/claude-3-5-haiku @@ -714,4 +825,4 @@ editor_edit_format: editor-diff system_prompt_prefix: "Formatting re-enabled. " - \ No newline at end of file + From ab9f4161eab4bbd732cd52a57aedd5c486157dc7 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Wed, 26 Feb 2025 09:03:38 -0800 Subject: [PATCH 087/100] refactor: Update weak_model_name to match main model name pattern --- aider/resources/model-settings.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index bdcb4dd00..38b39682c 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -251,7 +251,7 @@ - name: bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0 edit_format: diff - weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + weak_model_name: bedrock/us.anthropic.claude-3-5-haiku-20241022-v1:0 use_repo_map: true examples_as_sys_msg: true extra_params: @@ -264,7 +264,7 @@ - name: bedrock_converse/anthropic.claude-3-7-sonnet-20250219-v1:0 edit_format: diff - weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + weak_model_name: bedrock_converse/anthropic.claude-3-5-haiku-20241022-v1:0 use_repo_map: true examples_as_sys_msg: true extra_params: @@ -277,7 +277,7 @@ - name: bedrock_converse/us.anthropic.claude-3-7-sonnet-20250219-v1:0 edit_format: diff - weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + weak_model_name: bedrock_converse/us.anthropic.claude-3-5-haiku-20241022-v1:0 use_repo_map: true examples_as_sys_msg: true extra_params: From f239b8e26d7df6abc4c87fd29ded4bb1913059ac Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 09:03:53 -0800 Subject: [PATCH 088/100] copy --- aider/website/assets/sample-analytics.jsonl | 126 +++++++++--------- .../website/docs/config/adv-model-settings.md | 111 +++++++++++++++ aider/website/docs/faq.md | 18 +-- 3 files changed, 183 insertions(+), 72 deletions(-) diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index 85e5213cb..e97cc563a 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,66 +1,3 @@ -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738945998} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946001} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946012} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946012} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946012} -{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946018} -{"event": "command_undo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946021} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946023} -{"event": "command_model", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946135} -{"event": "command_clear", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946138} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946145} -{"event": "command_editor", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946146} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946178} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "gpt-4o-mini", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 10926, "completion_tokens": 327, "total_tokens": 11253, "cost": 0.037683, "total_cost": 0.0682267}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946189} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946203} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946203} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "gpt-4o-mini", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 13642, "completion_tokens": 208, "total_tokens": 13850, "cost": 0.044046, "total_cost": 0.1122727}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946210} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946215} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946215} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946215} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946228} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946243} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946251} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946253} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946253} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946253} -{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946259} -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946266} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946306} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946306} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946328} -{"event": "repo", "properties": {"num_files": 435}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946328} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946328} -{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946332} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946336} -{"event": "command_read-only", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946343} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946346} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946346} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946346} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946351} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 35885, "completion_tokens": 866, "total_tokens": 36751, "cost": 0.120645, "total_cost": 0.120645}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946372} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946674} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946674} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 37097, "completion_tokens": 563, "total_tokens": 37660, "cost": 0.119736, "total_cost": 0.240381}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946691} -{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946817} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946817} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 37684, "completion_tokens": 451, "total_tokens": 38135, "cost": 0.119817, "total_cost": 0.360198}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946829} -{"event": "command_code", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946831} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946831} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 40543, "completion_tokens": 770, "total_tokens": 41313, "cost": 0.133179, "total_cost": 0.493377}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738946849} -{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947046} -{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947046} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947160} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947160} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947160} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947322} -{"event": "gui session", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947323} -{"event": "exit", "properties": {"reason": "GUI session ended"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738947323} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954379} -{"event": "repo", "properties": {"num_files": 436}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954379} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954379} -{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954393} -{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10183, "completion_tokens": 527, "total_tokens": 10710, "cost": 0.038454, "total_cost": 0.038454}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954406} {"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954451} {"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954591} {"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954591} @@ -998,3 +935,66 @@ {"event": "message_send", "properties": {"main_model": "openrouter/REDACTED", "weak_model": "openrouter/REDACTED", "editor_model": "openrouter/REDACTED", "edit_format": "whole", "prompt_tokens": 8268, "completion_tokens": 96, "total_tokens": 8364, "cost": 0.026244, "total_cost": 0.026244}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584966} {"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584967} {"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740584967} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587910} +{"event": "repo", "properties": {"num_files": 201}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587910} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587910} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587915} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587915} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "ask", "prompt_tokens": 3914, "completion_tokens": 124, "total_tokens": 4038, "cost": 0.013602000000000001, "total_cost": 0.013602000000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587919} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587933} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 6328, "completion_tokens": 121, "total_tokens": 6449, "cost": 0.020799, "total_cost": 0.034401}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587936} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587940} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740587940} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588857} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588857} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588857} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588865} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588877} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 6434, "completion_tokens": 249, "total_tokens": 6683, "cost": 0.023037, "total_cost": 0.023037}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588884} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588893} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740588893} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589070} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589071} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589079} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589081} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589085} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589087} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589097} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589098} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589102} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589104} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589122} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589122} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589122} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589125} +{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589132} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589133} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589135} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589159} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 12956, "completion_tokens": 1722, "total_tokens": 14678, "cost": 0.064698, "total_cost": 0.064698}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589183} +{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589201} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589203} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589204} +{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589214} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589215} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589216} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589235} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589259} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 17079, "completion_tokens": 1597, "total_tokens": 18676, "cost": 0.07519200000000001, "total_cost": 0.13989000000000001}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589282} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589286} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589296} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589296} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589338} +{"event": "repo", "properties": {"num_files": 438}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589338} +{"event": "cli session", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589338} +{"event": "command_add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589341} +{"event": "command_run", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589344} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589346} +{"event": "exit", "properties": {"reason": "Listed models"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589348} +{"event": "command_ask", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589378} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589378} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "ask", "prompt_tokens": 12550, "completion_tokens": 550, "total_tokens": 13100, "cost": 0.0459, "total_cost": 0.0459}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589389} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589406} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 15422, "completion_tokens": 510, "total_tokens": 15932, "cost": 0.053916000000000006, "total_cost": 0.09981600000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589416} +{"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589425} +{"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589425} diff --git a/aider/website/docs/config/adv-model-settings.md b/aider/website/docs/config/adv-model-settings.md index 295e86105..bd605f4a4 100644 --- a/aider/website/docs/config/adv-model-settings.md +++ b/aider/website/docs/config/adv-model-settings.md @@ -236,6 +236,19 @@ cog.out("```\n") editor_model_name: anthropic/claude-3-7-sonnet-20250219 editor_edit_format: editor-diff +- name: anthropic/claude-3-7-sonnet-latest + edit_format: diff + weak_model_name: anthropic/claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: anthropic/claude-3-7-sonnet-latest + editor_edit_format: editor-diff + - name: anthropic/claude-3-haiku-20240307 weak_model_name: anthropic/claude-3-haiku-20240307 examples_as_sys_msg: true @@ -301,6 +314,58 @@ cog.out("```\n") editor_model_name: bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0 editor_edit_format: editor-diff +- name: bedrock/anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock/anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock/anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock/us.anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: bedrock_converse/anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock_converse/anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock_converse/anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + +- name: bedrock_converse/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + edit_format: diff + weak_model_name: bedrock_converse/us.anthropic.claude-3-5-haiku-20241022-v1:0 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: bedrock_converse/us.anthropic.claude-3-7-sonnet-20250219-v1:0 + editor_edit_format: editor-diff + - name: claude-3-5-haiku-20241022 edit_format: diff weak_model_name: claude-3-5-haiku-20241022 @@ -337,6 +402,32 @@ cog.out("```\n") editor_model_name: claude-3-5-sonnet-20241022 editor_edit_format: editor-diff +- name: claude-3-7-sonnet-20250219 + edit_format: diff + weak_model_name: claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: claude-3-7-sonnet-20250219 + editor_edit_format: editor-diff + +- name: claude-3-7-sonnet-latest + edit_format: diff + weak_model_name: claude-3-5-haiku-20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + extra_headers: + anthropic-beta: prompt-caching-2024-07-31,pdfs-2024-09-25,output-128k-2025-02-19 + max_tokens: 64000 + cache_control: true + editor_model_name: claude-3-7-sonnet-latest + editor_edit_format: editor-diff + - name: claude-3-haiku-20240307 weak_model_name: claude-3-haiku-20240307 examples_as_sys_msg: true @@ -851,6 +942,16 @@ cog.out("```\n") editor_model_name: openrouter/qwen/qwen-2.5-coder-32b-instruct editor_edit_format: editor-diff +- name: vertex_ai-anthropic_models/vertex_ai/claude-3-7-sonnet@20250219 + edit_format: diff + weak_model_name: vertex_ai/claude-3-5-haiku@20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + max_tokens: 64000 + editor_model_name: vertex_ai-anthropic_models/vertex_ai/claude-3-7-sonnet@20250219 + editor_edit_format: editor-diff + - name: vertex_ai/claude-3-5-haiku@20241022 edit_format: diff weak_model_name: vertex_ai/claude-3-5-haiku@20241022 @@ -878,6 +979,16 @@ cog.out("```\n") editor_model_name: vertex_ai/claude-3-5-sonnet@20240620 editor_edit_format: editor-diff +- name: vertex_ai/claude-3-7-sonnet@20250219 + edit_format: diff + weak_model_name: vertex_ai/claude-3-5-haiku@20241022 + use_repo_map: true + examples_as_sys_msg: true + extra_params: + max_tokens: 64000 + editor_model_name: vertex_ai/claude-3-7-sonnet@20250219 + editor_edit_format: editor-diff + - name: vertex_ai/claude-3-opus@20240229 edit_format: diff weak_model_name: vertex_ai/claude-3-5-haiku@20241022 diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index d4a587f04..be6654a1f 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,15 +249,15 @@ tr:hover { background-color: #f5f5f5; } - - - - - - - - - + + + + + + + + +
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022633,85058.1%
anthropic/claude-3-7-sonnet-20250219171,82915.8%
fireworks_ai/accounts/fireworks/models/deepseek-v3105,9999.7%
claude-3-5-haiku-2024102269,2036.3%
o3-mini52,1924.8%
openrouter/anthropic/claude-3.7-sonnet20,2131.9%
gpt-4o12,5951.2%
openrouter/REDACTED12,0831.1%
openrouter/openai/o3-mini10,1070.9%
claude-3-5-sonnet-20241022444,17845.3%
anthropic/claude-3-7-sonnet-20250219251,38525.7%
fireworks_ai/accounts/fireworks/models/deepseek-v3105,99910.8%
claude-3-5-haiku-2024102269,2037.1%
o3-mini52,1925.3%
openrouter/anthropic/claude-3.7-sonnet20,2132.1%
gpt-4o12,5951.3%
openrouter/REDACTED12,0831.2%
openrouter/openai/o3-mini10,1071.0%
anthropic/REDACTED1,9990.2%
From 51cf241dae62017351e7be83640a0e6d0fe1a501 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 09:05:16 -0800 Subject: [PATCH 089/100] copy --- HISTORY.md | 7 +++++++ aider/website/HISTORY.md | 7 +++++++ aider/website/assets/sample-analytics.jsonl | 10 +++++----- aider/website/docs/faq.md | 10 +++++----- scripts/blame.py | 1 + 5 files changed, 25 insertions(+), 10 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 8c6bd31ed..afc4a9179 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,12 @@ # Release history +### main branch + +- Added support for `openrouter/anthropic/claude-3.7-sonnet:beta`. +- Added support for Claude 3.7 Sonnet models on Bedrock and Vertex AI. +- Fixed weak model names for Bedrock Claude models to match main model name patterns. +- Aider wrote 47% of the code in this release. + ### Aider v0.75.1 - Added support for `openrouter/anthropic/claude-3.7-sonnet` diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 9a7ea947b..28b7b8499 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -23,6 +23,13 @@ cog.out(text) ]]]--> +### main branch + +- Added support for `openrouter/anthropic/claude-3.7-sonnet:beta`. +- Added support for Claude 3.7 Sonnet models on Bedrock and Vertex AI. +- Fixed weak model names for Bedrock Claude models to match main model name patterns. +- Aider wrote 0% of the code in this release. + ### Aider v0.75.1 - Added support for `openrouter/anthropic/claude-3.7-sonnet` diff --git a/aider/website/assets/sample-analytics.jsonl b/aider/website/assets/sample-analytics.jsonl index e97cc563a..65f548b20 100644 --- a/aider/website/assets/sample-analytics.jsonl +++ b/aider/website/assets/sample-analytics.jsonl @@ -1,8 +1,3 @@ -{"event": "exit", "properties": {"reason": "Control-C"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954451} -{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954591} -{"event": "repo", "properties": {"num_files": 437}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954591} -{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954591} -{"event": "ai-comments file-add", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954592} {"event": "ai-comments execute", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954592} {"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954593} {"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-haiku-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 8713, "completion_tokens": 237, "total_tokens": 8950, "cost": 0.029693999999999998, "total_cost": 0.029693999999999998}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1738954602} @@ -998,3 +993,8 @@ {"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 15422, "completion_tokens": 510, "total_tokens": 15932, "cost": 0.053916000000000006, "total_cost": 0.09981600000000002}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589416} {"event": "command_exit", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589425} {"event": "exit", "properties": {"reason": "/exit"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589425} +{"event": "launched", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589447} +{"event": "no-repo", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589448} +{"event": "message_send_starting", "properties": {}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589448} +{"event": "message_send", "properties": {"main_model": "anthropic/claude-3-7-sonnet-20250219", "weak_model": "anthropic/claude-3-5-haiku-20241022", "editor_model": "anthropic/claude-3-7-sonnet-20250219", "edit_format": "diff", "prompt_tokens": 6679, "completion_tokens": 333, "total_tokens": 7012, "cost": 0.025032, "total_cost": 0.025032}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589457} +{"event": "exit", "properties": {"reason": "Completed --message"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1740589457} diff --git a/aider/website/docs/faq.md b/aider/website/docs/faq.md index be6654a1f..1e23ec88c 100644 --- a/aider/website/docs/faq.md +++ b/aider/website/docs/faq.md @@ -249,12 +249,12 @@ tr:hover { background-color: #f5f5f5; } - - - - + + + + - + diff --git a/scripts/blame.py b/scripts/blame.py index 2257442d9..6c395a293 100755 --- a/scripts/blame.py +++ b/scripts/blame.py @@ -38,6 +38,7 @@ def blame(start_tag, end_tag=None): for f in files if f.endswith((".js", ".py", ".scm", ".sh", "Dockerfile", "Gemfile")) or (f.startswith(".github/workflows/") and f.endswith(".yml")) + or (f.startswith("aider/resources/") and f.endswith(".yml")) or f in website_files or f in test_files ] From ac2ed9aa87c4d949b750325c572cc2997d04e177 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 09:05:46 -0800 Subject: [PATCH 090/100] copy --- HISTORY.md | 4 +--- aider/website/HISTORY.md | 6 ++---- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index afc4a9179..a4c224abb 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,9 +2,7 @@ ### main branch -- Added support for `openrouter/anthropic/claude-3.7-sonnet:beta`. -- Added support for Claude 3.7 Sonnet models on Bedrock and Vertex AI. -- Fixed weak model names for Bedrock Claude models to match main model name patterns. +- Added support for Claude 3.7 Sonnet models on OpenRouter, Bedrock and Vertex AI. - Aider wrote 47% of the code in this release. ### Aider v0.75.1 diff --git a/aider/website/HISTORY.md b/aider/website/HISTORY.md index 28b7b8499..fdb24da25 100644 --- a/aider/website/HISTORY.md +++ b/aider/website/HISTORY.md @@ -25,10 +25,8 @@ cog.out(text) ### main branch -- Added support for `openrouter/anthropic/claude-3.7-sonnet:beta`. -- Added support for Claude 3.7 Sonnet models on Bedrock and Vertex AI. -- Fixed weak model names for Bedrock Claude models to match main model name patterns. -- Aider wrote 0% of the code in this release. +- Added support for Claude 3.7 Sonnet models on OpenRouter, Bedrock and Vertex AI. +- Aider wrote 47% of the code in this release. ### Aider v0.75.1 From 4a9447d344847f1deb59746771753129629df18a Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 26 Feb 2025 09:07:15 -0800 Subject: [PATCH 091/100] bump deps --- requirements.txt | 18 ++++++++++-------- requirements/requirements-browser.in | 2 +- requirements/requirements-browser.txt | 8 ++++---- requirements/requirements-dev.txt | 8 ++++---- requirements/requirements-help.txt | 12 ++++++------ 5 files changed, 25 insertions(+), 23 deletions(-) diff --git a/requirements.txt b/requirements.txt index 53154e5fb..f4b51e164 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ # aiohappyeyeballs==2.4.6 # via aiohttp -aiohttp==3.11.12 +aiohttp==3.11.13 # via litellm aiosignal==1.3.2 # via aiohttp @@ -48,7 +48,9 @@ diff-match-patch==20241021 diskcache==5.6.3 # via -r requirements/requirements.in distro==1.9.0 - # via openai + # via + # openai + # posthog filelock==3.17.0 # via huggingface-hub flake8==7.1.2 @@ -73,7 +75,7 @@ httpx==0.28.1 # via # litellm # openai -huggingface-hub==0.29.0 +huggingface-hub==0.29.1 # via tokenizers idna==3.10 # via @@ -99,7 +101,7 @@ jsonschema==4.23.0 # litellm jsonschema-specifications==2024.10.1 # via jsonschema -litellm==1.61.9 +litellm==1.61.16 # via -r requirements/requirements.in markdown-it-py==3.0.0 # via rich @@ -124,7 +126,7 @@ numpy==1.26.4 # -r requirements/requirements.in # scipy # soundfile -openai==1.63.2 +openai==1.64.0 # via litellm packaging==24.2 # via @@ -138,11 +140,11 @@ pexpect==4.9.0 # via -r requirements/requirements.in pillow==10.4.0 # via -r requirements/requirements.in -posthog==3.14.1 +posthog==3.16.0 # via -r requirements/requirements.in prompt-toolkit==3.0.50 # via -r requirements/requirements.in -propcache==0.2.1 +propcache==0.3.0 # via # aiohttp # yarl @@ -192,7 +194,7 @@ requests==2.32.3 # tiktoken rich==13.9.4 # via -r requirements/requirements.in -rpds-py==0.22.3 +rpds-py==0.23.1 # via # jsonschema # referencing diff --git a/requirements/requirements-browser.in b/requirements/requirements-browser.in index a42a67efa..de1cabe58 100644 --- a/requirements/requirements-browser.in +++ b/requirements/requirements-browser.in @@ -1,4 +1,4 @@ -c ../requirements.txt -streamlit==1.41.1 # https://github.com/Aider-AI/aider/issues/3221 +streamlit watchdog<5 # docker build fails: streamlit 1.38.0 depends on watchdog<5 diff --git a/requirements/requirements-browser.txt b/requirements/requirements-browser.txt index d15c46ec6..7a2223d8f 100644 --- a/requirements/requirements-browser.txt +++ b/requirements/requirements-browser.txt @@ -15,7 +15,7 @@ attrs==25.1.0 # referencing blinker==1.9.0 # via streamlit -cachetools==5.5.1 +cachetools==5.5.2 # via streamlit certifi==2025.1.31 # via @@ -92,7 +92,7 @@ mdurl==0.1.2 # -c requirements.txt # -c requirements/requirements-dev.txt # markdown-it-py -narwhals==1.27.1 +narwhals==1.28.0 # via altair numpy==1.26.4 # via @@ -163,7 +163,7 @@ rich==13.9.4 # -c requirements.txt # -c requirements/requirements-dev.txt # streamlit -rpds-py==0.22.3 +rpds-py==0.23.1 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt @@ -180,7 +180,7 @@ smmap==5.0.2 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # gitdb -streamlit==1.41.1 +streamlit==1.42.2 # via -r requirements/requirements-browser.in tenacity==9.0.0 # via diff --git a/requirements/requirements-dev.txt b/requirements/requirements-dev.txt index 7b4a62e97..f770aedfa 100644 --- a/requirements/requirements-dev.txt +++ b/requirements/requirements-dev.txt @@ -53,7 +53,7 @@ filelock==3.17.0 # virtualenv fonttools==4.56.0 # via matplotlib -identify==2.6.7 +identify==2.6.8 # via pre-commit idna==3.10 # via @@ -173,7 +173,7 @@ rich==13.9.4 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # typer -roman-numerals-py==3.0.0 +roman-numerals-py==3.1.0 # via sphinx semver==3.0.4 # via -r requirements/requirements-dev.in @@ -186,7 +186,7 @@ six==1.17.0 # python-dateutil snowballstemmer==2.2.0 # via sphinx -sphinx==8.2.0 +sphinx==8.2.1 # via # sphinx-rtd-theme # sphinxcontrib-jquery @@ -231,5 +231,5 @@ pip==25.0.1 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # pip-tools -setuptools==75.8.0 +setuptools==75.8.1 # via pip-tools diff --git a/requirements/requirements-help.txt b/requirements/requirements-help.txt index 4b73e15d2..9b138aed2 100644 --- a/requirements/requirements-help.txt +++ b/requirements/requirements-help.txt @@ -9,7 +9,7 @@ aiohappyeyeballs==2.4.6 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # aiohttp -aiohttp==3.11.12 +aiohttp==3.11.13 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt @@ -103,7 +103,7 @@ httpx==0.28.1 # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt # llama-index-core -huggingface-hub[inference]==0.29.0 +huggingface-hub[inference]==0.29.1 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt @@ -130,11 +130,11 @@ joblib==1.4.2 # via # nltk # scikit-learn -llama-index-core==0.12.19 +llama-index-core==0.12.20 # via # -r requirements/requirements-help.in # llama-index-embeddings-huggingface -llama-index-embeddings-huggingface==0.5.1 +llama-index-embeddings-huggingface==0.5.2 # via -r requirements/requirements-help.in markupsafe==3.0.2 # via @@ -188,7 +188,7 @@ pillow==10.4.0 # -c requirements/requirements-dev.txt # llama-index-core # sentence-transformers -propcache==0.2.1 +propcache==0.3.0 # via # -c /Users/gauthier/Projects/aider/requirements.txt # -c requirements.txt @@ -228,7 +228,7 @@ requests==2.32.3 # llama-index-core # tiktoken # transformers -safetensors==0.5.2 +safetensors==0.5.3 # via transformers scikit-learn==1.6.1 # via sentence-transformers From 976722c1295fc1561dd320b1b4e17f5d222a51e9 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Thu, 27 Feb 2025 08:56:54 -0800 Subject: [PATCH 092/100] refactor: Update problem_stats.py to use polyglot_leaderboard.yml --- benchmark/problem_stats.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/benchmark/problem_stats.py b/benchmark/problem_stats.py index 2ee8a0890..202942f13 100755 --- a/benchmark/problem_stats.py +++ b/benchmark/problem_stats.py @@ -15,7 +15,7 @@ HARD_SET_NUM = 3 # Number of models that defines the hard set threshold def get_dirs_from_leaderboard(): # Load the leaderboard data - with open("aider/website/_data/edit_leaderboard.yml") as f: + with open("aider/website/_data/polyglot_leaderboard.yml") as f: leaderboard = yaml.safe_load(f) return [(entry["dirname"], entry["model"]) for entry in leaderboard] @@ -92,7 +92,7 @@ def analyze_exercise_solutions(dirs=None, topn=None, copy_hard_set=False): ( entry["pass_rate_2"] for entry in yaml.safe_load( - open("aider/website/_data/edit_leaderboard.yml") + open("aider/website/_data/polyglot_leaderboard.yml") ) if entry["dirname"] == dirname ), From 8d44a572006c6328caf36f91513948a0cb0e8130 Mon Sep 17 00:00:00 2001 From: Trevor Sullivan Date: Thu, 27 Feb 2025 10:33:06 -0700 Subject: [PATCH 093/100] =?UTF-8?q?Update=20Aider=20documentation=20for=20?= =?UTF-8?q?Amazon=20Bedrock=20=F0=9F=93=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aider/website/docs/llms/bedrock.md | 36 ++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/aider/website/docs/llms/bedrock.md b/aider/website/docs/llms/bedrock.md index 64a95c8dd..c7705918f 100644 --- a/aider/website/docs/llms/bedrock.md +++ b/aider/website/docs/llms/bedrock.md @@ -11,6 +11,32 @@ You will need to have an AWS account with access to the Bedrock service. To configure Aider to use the Amazon Bedrock API, you need to set up your AWS credentials. This can be done using the AWS CLI or by setting environment variables. +## Select a Model from Amazon Bedrock + +Before you can use a model through Amazon Bedrock, you must "enable" the model under the **Model +Access** screen in the AWS Management Console. +To find the `Model ID`, open the **Model Catalog** area in the Bedrock console, select the model +you want to use, and the find the `modelId` property under the "Usage" heading. + +### Bedrock Inference Profiles + +Amazon Bedrock has added support for a new feature called [cross-region "inference profiles."](https://aws.amazon.com/about-aws/whats-new/2024/09/amazon-bedrock-knowledge-bases-cross-region-inference/) +Some models hosted in Bedrock _only_ support these inference profiles. +If you're using one of these models, then you will need to use the `Inference Profile ID` +instead of the `Model ID` from the **Model Catalog** screen, in the AWS Management Console. +For example, the Claude Sonnet 3.7 model, release in February 2025, exclusively supports +inference through inference profiles. To use this model, you would use the +`us.anthropic.claude-3-7-sonnet-20250219-v1:0` Inference Profile ID. +In the Amazon Bedrock console, go to Inference and Assessment ➡️ Cross-region Inference +to find the `Inference Profile ID` value. + +If you attempt to use a `Model ID` for a model that exclusively supports the Inference Profile +feature, you will receive an error message like the following: + +> litellm.BadRequestError: BedrockException - b'{"message":"Invocation of model ID +anthropic.claude-3-7-sonnet-20250219-v1:0 with on-demand throughput isn\xe2\x80\x99t supported. Retry your +request with the ID or ARN of an inference profile that contains this model."}' + ## AWS CLI Configuration If you haven't already, install the [AWS CLI](https://aws.amazon.com/cli/) and configure it with your credentials: @@ -39,6 +65,16 @@ export AWS_PROFILE=your-profile You can add these to your [.env file](/docs/config/dotenv.html). +### Set Environment Variables with PowerShell + +If you're using PowerShell on MacOS, Linux, or Windows, you can set the same AWS configuration environment variables with these commands. + +```pwsh +$env:AWS_ACCESS_KEY_ID = 'your_access_key' +$env:AWS_SECRET_ACCESS_KEY = 'your_secret_key' +$env:AWS_REGION = 'us-west-2' # Put whichever AWS region that you'd like, that the Bedrock service supports. +``` + ## Install boto3 The AWS Bedrock provider requires the `boto3` package in order to function correctly: From b462e55799c6980d481cbf6d399e0a21f9597383 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Thu, 27 Feb 2025 12:20:15 -0800 Subject: [PATCH 094/100] feat: Add gpt-4.5-preview model metadata and settings --- aider/resources/model-metadata.json | 17 +++++++++++++++++ aider/resources/model-settings.yml | 9 ++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/aider/resources/model-metadata.json b/aider/resources/model-metadata.json index 32d5f1519..460b26840 100644 --- a/aider/resources/model-metadata.json +++ b/aider/resources/model-metadata.json @@ -191,4 +191,21 @@ "deprecation_date": "2025-10-01", "supports_tool_choice": true }, + "gpt-4.5-preview": { + "max_tokens": 16384, + "max_input_tokens": 128000, + "max_output_tokens": 16384, + "input_cost_per_token": 0.000075, + "output_cost_per_token": 0.00015, + "cache_read_input_token_cost": 0.0000375, + "litellm_provider": "openai", + "mode": "chat", + "supports_function_calling": true, + "supports_parallel_function_calling": true, + "supports_response_schema": true, + "supports_vision": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, } diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index 38b39682c..d27d63038 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -825,4 +825,11 @@ editor_edit_format: editor-diff system_prompt_prefix: "Formatting re-enabled. " - +- name: gpt-4.5-preview + edit_format: diff + weak_model_name: gpt-4o-mini + use_repo_map: true + lazy: true + reminder: sys + examples_as_sys_msg: true + \ No newline at end of file From 2f1384840c6e829f1f6b6df3ff133dc2fdd536b2 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Thu, 27 Feb 2025 13:01:52 -0800 Subject: [PATCH 095/100] feat: Add metadata and settings for GPT-4.5-preview and GPT-4o models --- aider/resources/model-metadata.json | 17 +++++++++++++++++ aider/resources/model-settings.yml | 12 ++++++++++++ aider/website/_data/polyglot_leaderboard.yml | 1 + 3 files changed, 30 insertions(+) diff --git a/aider/resources/model-metadata.json b/aider/resources/model-metadata.json index 460b26840..13585282f 100644 --- a/aider/resources/model-metadata.json +++ b/aider/resources/model-metadata.json @@ -208,4 +208,21 @@ "supports_system_messages": true, "supports_tool_choice": true }, + "openai/gpt-4.5-preview": { + "max_tokens": 16384, + "max_input_tokens": 128000, + "max_output_tokens": 16384, + "input_cost_per_token": 0.000075, + "output_cost_per_token": 0.00015, + "cache_read_input_token_cost": 0.0000375, + "litellm_provider": "openai", + "mode": "chat", + "supports_function_calling": true, + "supports_parallel_function_calling": true, + "supports_response_schema": true, + "supports_vision": true, + "supports_prompt_caching": true, + "supports_system_messages": true, + "supports_tool_choice": true + }, } diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index d27d63038..378ef047d 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -832,4 +832,16 @@ lazy: true reminder: sys examples_as_sys_msg: true + editor_model_name: gpt-4o + editor_edit_format: editor-diff + +- name: openai/gpt-4.5-preview + edit_format: diff + weak_model_name: gpt-4o-mini + use_repo_map: true + lazy: true + reminder: sys + examples_as_sys_msg: true + editor_model_name: openai/gpt-4o + editor_edit_format: editor-diff \ No newline at end of file diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 0e619f246..6be21853a 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -648,3 +648,4 @@ versions: 0.75.1.dev seconds_per_case: 105.2 total_cost: 36.8343 + From 9a9c34aa18362642e1115b7aab30970753b36182 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Thu, 27 Feb 2025 13:06:58 -0800 Subject: [PATCH 096/100] add gpt-4.5 to leaderboard --- aider/website/_data/polyglot_leaderboard.yml | 25 ++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/aider/website/_data/polyglot_leaderboard.yml b/aider/website/_data/polyglot_leaderboard.yml index 6be21853a..c81e50510 100644 --- a/aider/website/_data/polyglot_leaderboard.yml +++ b/aider/website/_data/polyglot_leaderboard.yml @@ -649,3 +649,28 @@ seconds_per_case: 105.2 total_cost: 36.8343 +- dirname: 2025-02-27-20-26-15--gpt45-diff3 + test_cases: 224 + model: gpt-4.5-preview + edit_format: diff + commit_hash: b462e55-dirty + pass_rate_1: 22.3 + pass_rate_2: 44.9 + pass_num_1: 50 + pass_num_2: 101 + percent_cases_well_formed: 97.3 + error_outputs: 10 + num_malformed_responses: 8 + num_with_malformed_responses: 6 + user_asks: 15 + lazy_comments: 0 + syntax_errors: 0 + indentation_errors: 0 + exhausted_context_windows: 1 + test_timeouts: 2 + total_tests: 225 + command: aider --model openai/gpt-4.5-preview + date: 2025-02-27 + versions: 0.75.2.dev + seconds_per_case: 113.5 + total_cost: 183.1802 \ No newline at end of file From e7dc3e6062ac0cd06847095854d9ef1e6d24d94a Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Thu, 27 Feb 2025 13:43:30 -0800 Subject: [PATCH 097/100] feat: Add line plot of total costs with right y-axis scale --- aider/website/_includes/leaderboard.js | 47 +++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/aider/website/_includes/leaderboard.js b/aider/website/_includes/leaderboard.js index f43dee7f9..d42a58c52 100644 --- a/aider/website/_includes/leaderboard.js +++ b/aider/website/_includes/leaderboard.js @@ -23,6 +23,17 @@ document.addEventListener('DOMContentLoaded', function () { return (label && label.includes(HIGHLIGHT_MODEL)) ? 'rgba(255, 99, 132, 1)' : 'rgba(54, 162, 235, 1)'; }, borderWidth: 1 + }, { + label: 'Total Cost ($)', + data: [], + type: 'line', + yAxisID: 'y1', + fill: false, + borderColor: 'rgba(153, 102, 255, 1)', + borderWidth: 2, + pointBackgroundColor: 'rgba(153, 102, 255, 1)', + pointBorderColor: '#fff', + pointRadius: 4 }] }; @@ -32,7 +43,8 @@ document.addEventListener('DOMContentLoaded', function () { model: '{{ row.model }}', pass_rate: {{ row[pass_rate_field] }}, percent_cases_well_formed: {{ row.percent_cases_well_formed }}, - edit_format: '{{ row.edit_format | default: "diff" }}' + edit_format: '{{ row.edit_format | default: "diff" }}', + total_cost: {{ row.total_cost | default: 0 }} }); {% endfor %} @@ -43,6 +55,7 @@ document.addEventListener('DOMContentLoaded', function () { displayedData = []; leaderboardData.labels = []; leaderboardData.datasets[0].data = []; + leaderboardData.datasets[1].data = []; allData.forEach(function(row, index) { var rowElement = document.getElementById('edit-row-' + index); @@ -53,6 +66,7 @@ document.addEventListener('DOMContentLoaded', function () { displayedData.push(row); leaderboardData.labels.push(row.model); leaderboardData.datasets[0].data.push(row.pass_rate); + leaderboardData.datasets[1].data.push(row.total_cost); } }); @@ -111,10 +125,28 @@ document.addEventListener('DOMContentLoaded', function () { fillStyle: blueDiagonalPattern, strokeStyle: 'rgba(54, 162, 235, 1)', lineWidth: 1 + }, + { + text: 'Total Cost ($)', + fillStyle: 'rgba(0, 0, 0, 0)', + strokeStyle: 'rgba(153, 102, 255, 1)', + lineWidth: 2 } ]; } } + }, + tooltip: { + callbacks: { + label: function(context) { + const datasetLabel = context.dataset.label || ''; + const value = context.parsed.y; + if (datasetLabel === 'Total Cost ($)') { + return datasetLabel + ': $' + value.toFixed(2); + } + return datasetLabel + ': ' + value.toFixed(1) + '%'; + } + } } }, scales: { @@ -125,6 +157,17 @@ document.addEventListener('DOMContentLoaded', function () { text: 'Percent completed correctly' } }, + y1: { + beginAtZero: true, + position: 'right', + grid: { + drawOnChartArea: false + }, + title: { + display: true, + text: 'Total Cost ($)' + } + }, x: { ticks: { callback: function(value, index) { @@ -173,6 +216,7 @@ document.addEventListener('DOMContentLoaded', function () { displayedData = []; leaderboardData.labels = []; leaderboardData.datasets[0].data = []; + leaderboardData.datasets[1].data = []; for (var i = 0; i < rows.length; i++) { var rowText = rows[i].textContent; @@ -181,6 +225,7 @@ document.addEventListener('DOMContentLoaded', function () { displayedData.push(allData[i]); leaderboardData.labels.push(allData[i].model); leaderboardData.datasets[0].data.push(allData[i].pass_rate); + leaderboardData.datasets[1].data.push(allData[i].total_cost); } else { rows[i].style.display = 'none'; } From 4f9b907b4d5a64f62835f3c771b2b0843ed7b67d Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Thu, 27 Feb 2025 14:12:59 -0800 Subject: [PATCH 098/100] feat: Conditionally plot cost data only when non-zero --- aider/website/_includes/leaderboard.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/aider/website/_includes/leaderboard.js b/aider/website/_includes/leaderboard.js index d42a58c52..aa388bdda 100644 --- a/aider/website/_includes/leaderboard.js +++ b/aider/website/_includes/leaderboard.js @@ -66,7 +66,8 @@ document.addEventListener('DOMContentLoaded', function () { displayedData.push(row); leaderboardData.labels.push(row.model); leaderboardData.datasets[0].data.push(row.pass_rate); - leaderboardData.datasets[1].data.push(row.total_cost); + // Only include cost if it's not zero (placeholder for unknown) + leaderboardData.datasets[1].data.push(row.total_cost > 0 ? row.total_cost : null); } }); @@ -225,7 +226,8 @@ document.addEventListener('DOMContentLoaded', function () { displayedData.push(allData[i]); leaderboardData.labels.push(allData[i].model); leaderboardData.datasets[0].data.push(allData[i].pass_rate); - leaderboardData.datasets[1].data.push(allData[i].total_cost); + // Only include cost if it's not zero (placeholder for unknown) + leaderboardData.datasets[1].data.push(allData[i].total_cost > 0 ? allData[i].total_cost : null); } else { rows[i].style.display = 'none'; } From 088dd99ec1b6941228b4627c0addfdfda858b541 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Thu, 27 Feb 2025 14:15:23 -0800 Subject: [PATCH 099/100] refactor: Change cost chart to scatter plot with markers --- aider/website/_includes/leaderboard.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/aider/website/_includes/leaderboard.js b/aider/website/_includes/leaderboard.js index aa388bdda..7ee4e303b 100644 --- a/aider/website/_includes/leaderboard.js +++ b/aider/website/_includes/leaderboard.js @@ -26,14 +26,13 @@ document.addEventListener('DOMContentLoaded', function () { }, { label: 'Total Cost ($)', data: [], - type: 'line', + type: 'scatter', yAxisID: 'y1', - fill: false, - borderColor: 'rgba(153, 102, 255, 1)', - borderWidth: 2, - pointBackgroundColor: 'rgba(153, 102, 255, 1)', - pointBorderColor: '#fff', - pointRadius: 4 + backgroundColor: 'rgba(153, 102, 255, 1)', + borderColor: '#fff', + borderWidth: 1, + pointRadius: 5, + pointHoverRadius: 7 }] }; @@ -129,9 +128,10 @@ document.addEventListener('DOMContentLoaded', function () { }, { text: 'Total Cost ($)', - fillStyle: 'rgba(0, 0, 0, 0)', - strokeStyle: 'rgba(153, 102, 255, 1)', - lineWidth: 2 + fillStyle: 'rgba(153, 102, 255, 1)', + strokeStyle: '#fff', + lineWidth: 1, + pointStyle: 'circle' } ]; } From a94c4b4ce46549b3f45343cf1d2676225250dd14 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Thu, 27 Feb 2025 14:34:47 -0800 Subject: [PATCH 100/100] pricing --- aider/website/docs/leaderboards/notes.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/aider/website/docs/leaderboards/notes.md b/aider/website/docs/leaderboards/notes.md index 01264a76e..30c015ca6 100644 --- a/aider/website/docs/leaderboards/notes.md +++ b/aider/website/docs/leaderboards/notes.md @@ -5,6 +5,15 @@ nav_order: 800 # Benchmark notes +## Notes on pricing + +All pricing information is the cost to run the benchmark at the time it was +run. +Providers change their pricing, and every benchmark run ends up with a slightly +different cost. +Pricing is provided on a *best efforts* basis, and may not always be current +or fully accurate. + ## Notes on benchmarking results The key benchmarking results are:
Model NameTotal TokensPercent
claude-3-5-sonnet-20241022444,17845.3%
anthropic/claude-3-7-sonnet-20250219251,38525.7%
fireworks_ai/accounts/fireworks/models/deepseek-v3105,99910.8%
claude-3-5-haiku-2024102269,2037.1%
claude-3-5-sonnet-20241022444,17845.0%
anthropic/claude-3-7-sonnet-20250219258,39726.2%
fireworks_ai/accounts/fireworks/models/deepseek-v3105,99910.7%
claude-3-5-haiku-2024102269,2037.0%
o3-mini52,1925.3%
openrouter/anthropic/claude-3.7-sonnet20,2132.1%
openrouter/anthropic/claude-3.7-sonnet20,2132.0%
gpt-4o12,5951.3%
openrouter/REDACTED12,0831.2%
openrouter/openai/o3-mini10,1071.0%