Merge branch 'main' into watch

This commit is contained in:
Paul Gauthier 2024-12-01 06:09:21 -08:00
commit 74108dd680
8 changed files with 168 additions and 138 deletions

View file

@ -33,6 +33,11 @@ jobs:
with:
python-version: ${{ matrix.python-version }}
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libportaudio2
- name: Install dependencies
run: |
python -m pip install --upgrade pip

View file

@ -6,14 +6,16 @@
- Added `--voice-input-device` to select audio input device for voice recording, by @preynal.
- Added `--timeout` option to configure API call timeouts.
- Set cwd to repo root when running shell commands.
- Added Ctrl-Up/Down keyboard shortcuts for per-message history navigation.
- Improved error handling for failed .gitignore file operations.
- Improved error handling for input history file permissions.
- Improved error handling for analytics file access.
- Removed spurious warning about disabling pretty in VSCode.
- Removed broken support for Dart.
- Bugfix when scraping URLs found in chat messages.
- Better handling of __version__ import errors.
- Improved `/drop` command to support substring matching for non-glob patterns.
- Aider wrote 79% of the code in this release.
- Aider wrote 82% of the code in this release.
### Aider v0.65.1

View file

@ -430,6 +430,16 @@ class InputOutput:
"Ignore Ctrl when pressing space bar"
event.current_buffer.insert_text(" ")
@kb.add("c-up")
def _(event):
"Navigate backward through history"
event.current_buffer.history_backward()
@kb.add("c-down")
def _(event):
"Navigate forward through history"
event.current_buffer.history_forward()
@kb.add("escape", "c-m", eager=True)
def _(event):
event.current_buffer.insert_text("\n")

View file

@ -30,14 +30,16 @@ cog.out(text)
- Added `--voice-input-device` to select audio input device for voice recording, by @preynal.
- Added `--timeout` option to configure API call timeouts.
- Set cwd to repo root when running shell commands.
- Added Ctrl-Up/Down keyboard shortcuts for per-message history navigation.
- Improved error handling for failed .gitignore file operations.
- Improved error handling for input history file permissions.
- Improved error handling for analytics file access.
- Removed spurious warning about disabling pretty in VSCode.
- Removed broken support for Dart.
- Bugfix when scraping URLs found in chat messages.
- Better handling of __version__ import errors.
- Improved `/drop` command to support substring matching for non-glob patterns.
- Aider wrote 79% of the code in this release.
- Aider wrote 82% of the code in this release.
### Aider v0.65.1

View file

@ -1,89 +1,3 @@
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9871, "completion_tokens": 390, "total_tokens": 10261, "cost": 0.035463, "total_cost": 0.9474720000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720166}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720204}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9530, "completion_tokens": 212, "total_tokens": 9742, "cost": 0.03177, "total_cost": 0.9792420000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720237}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720241}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9492, "completion_tokens": 1152, "total_tokens": 10644, "cost": 0.045756000000000005, "total_cost": 1.024998, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720303}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720351}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720395}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 7094, "completion_tokens": 285, "total_tokens": 7379, "cost": 0.025557, "total_cost": 1.0505550000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720404}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9457, "completion_tokens": 114, "total_tokens": 9571, "cost": 0.030081, "total_cost": 1.0806360000000002, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720447}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9446, "completion_tokens": 0, "total_tokens": 9446, "cost": 0.028338000000000002, "total_cost": 1.1089740000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720474}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720482}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720488}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9678, "completion_tokens": 133, "total_tokens": 9811, "cost": 0.031029, "total_cost": 1.140003, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720524}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720571}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720578}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720593}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9618, "completion_tokens": 647, "total_tokens": 10265, "cost": 0.038559, "total_cost": 1.178562, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720636}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720658}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9208, "completion_tokens": 594, "total_tokens": 9802, "cost": 0.036534, "total_cost": 1.2150960000000002, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720675}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720826}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720828}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720863}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7400, "completion_tokens": 261, "total_tokens": 7661, "cost": 0.026115, "total_cost": 1.2412110000000003, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720897}
{"event": "command_undo", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732720921}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732721914}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732721914}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722371}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7199, "completion_tokens": 0, "total_tokens": 7199, "cost": 0.021597, "total_cost": 1.2628080000000004, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722388}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722390}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722465}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722466}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722618}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722618}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722620}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722634}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722637}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 2432, "completion_tokens": 278, "total_tokens": 2710, "cost": 0.011466, "total_cost": 0.011466, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722666}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722889}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722911}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732722911}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732723217}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732723309}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732723352}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732723447}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732723470}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732723496}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732726774}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732726775}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727171}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727171}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727181}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727181}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727219}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 3228, "completion_tokens": 818, "total_tokens": 4046, "cost": 0.021954, "total_cost": 0.021954, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727236}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732727242}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728382}
{"event": "repo", "properties": {"num_files": 389, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728383}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728383}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728387}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728731}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728741}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728864}
{"event": "repo", "properties": {"num_files": 389, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728864}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 24438, "completion_tokens": 236, "total_tokens": 24674, "cost": 0.076854, "total_cost": 0.076854, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732728874}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732729035}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732729035}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732749854}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732749855}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732750523}
{"event": "model warning", "properties": {"main_model": "glhf/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "glhf/REDACTED", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732750525}
{"event": "repo", "properties": {"num_files": 389, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732750526}
{"event": "cli session", "properties": {"main_model": "glhf/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "glhf/REDACTED", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732750526}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732751693}
{"event": "repo", "properties": {"num_files": 389, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732751693}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732751693}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732751705}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732751705}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732751705}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752201}
{"event": "model warning", "properties": {"main_model": "hyperbolic/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "hyperbolic/REDACTED", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752203}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752207}
{"event": "cli session", "properties": {"main_model": "hyperbolic/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "hyperbolic/REDACTED", "edit_format": "whole", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752207}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752619}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752619}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752620}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752644}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752674}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752677}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev62+gf44e5ae5"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1732752683}
@ -998,3 +912,89 @@
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 20044, "completion_tokens": 441, "total_tokens": 20485, "cost": 0.066747, "total_cost": 0.066747, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733004111}
{"event": "exit", "properties": {"reason": "Completed --message", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733004111}
{"event": "exit", "properties": {"reason": "Completed main CLI coder.run", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733004294}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010028}
{"event": "repo", "properties": {"num_files": 389, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010028}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010029}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010052}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 4531, "completion_tokens": 906, "total_tokens": 5437, "cost": 0.027183, "total_cost": 0.027183, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010070}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010092}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 7253, "completion_tokens": 115, "total_tokens": 7368, "cost": 0.023484, "total_cost": 0.050667000000000004, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010097}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010121}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10779, "completion_tokens": 369, "total_tokens": 11148, "cost": 0.037871999999999996, "total_cost": 0.088539, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010130}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010141}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010151}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 15484, "completion_tokens": 340, "total_tokens": 15824, "cost": 0.051552, "total_cost": 0.14009100000000002, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010160}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010182}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 10547, "completion_tokens": 242, "total_tokens": 10789, "cost": 0.035271000000000004, "total_cost": 0.17536200000000002, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010188}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010194}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 5735, "completion_tokens": 82, "total_tokens": 5817, "cost": 0.018435, "total_cost": 0.19379700000000002, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010197}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010204}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010292}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010292}
{"event": "exit", "properties": {"reason": "GUI session ended", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733010292}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019525}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019525}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019525}
{"event": "command_help", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019532}
{"event": "interactive help", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019532}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019544}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "help", "prompt_tokens": 3658, "completion_tokens": 103, "total_tokens": 3761, "cost": 0.012519, "total_cost": 0.012519, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019549}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019557}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019558}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019558}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019577}
{"event": "exit", "properties": {"reason": "Completed main CLI coder.run", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019681}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019683}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019684}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019684}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019686}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019697}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9097, "completion_tokens": 303, "total_tokens": 9400, "cost": 0.031836, "total_cost": 0.031836, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019705}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019714}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019715}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019715}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019736}
{"event": "exit", "properties": {"reason": "Completed main CLI coder.run", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019737}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019772}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019773}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019773}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019782}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019796}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019797}
{"event": "exit", "properties": {"reason": "GUI session ended", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019797}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019804}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 4628, "completion_tokens": 328, "total_tokens": 4956, "cost": 0.018804, "total_cost": 0.018804, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733019812}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733020744}
{"event": "exit", "properties": {"reason": "/exit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733020745}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022859}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022859}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022859}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022864}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022864}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 3176, "completion_tokens": 905, "total_tokens": 4081, "cost": 0.023103, "total_cost": 0.023103, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022884}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022886}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 6138, "completion_tokens": 1401, "total_tokens": 7539, "cost": 0.039429, "total_cost": 0.062532, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022914}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022931}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9598, "completion_tokens": 304, "total_tokens": 9902, "cost": 0.033354, "total_cost": 0.095886, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022938}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022949}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9092, "completion_tokens": 330, "total_tokens": 9422, "cost": 0.032226000000000005, "total_cost": 0.128112, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733022957}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733023128}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733023182}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733023182}
{"event": "exit", "properties": {"reason": "GUI session ended", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733023182}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061765}
{"event": "no-repo", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061765}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061766}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 20318, "completion_tokens": 452, "total_tokens": 20770, "cost": 0.067734, "total_cost": 0.067734, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061779}
{"event": "exit", "properties": {"reason": "Completed --message", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061779}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061892}
{"event": "repo", "properties": {"num_files": 390, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061893}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061893}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061896}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061931}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061931}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 1502, "completion_tokens": 378, "total_tokens": 1880, "cost": 0.010176000000000001, "total_cost": 0.010176000000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061939}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061956}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 4057, "completion_tokens": 190, "total_tokens": 4247, "cost": 0.015021, "total_cost": 0.025197, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061961}
{"event": "command_diff", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061965}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.65.2.dev104+g295040c9.d20241130"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733061968}

View file

@ -37,7 +37,7 @@ For more info: https://aider.chat/docs/token-limits.html
Aider never *enforces* token limits, it only *reports* token limit errors
from the API provider.
You probably don't need to
[configure aider with the proper token limits](http://0.0.0.0:4000/docs/config/adv-model-settings.html#context-window-size-and-token-costs)
[configure aider with the proper token limits](https://aider.chat/docs/config/adv-model-settings.html#context-window-size-and-token-costs)
for unusual models.
## Input tokens & context window size

View file

@ -77,8 +77,10 @@ The interactive prompt is built with [prompt-toolkit](https://github.com/prompt-
### Emacs
- `Up Arrow` : Scroll back through previously sent messages.
- `Down Arrow` : Scroll forward through previously sent messages.
- `Up Arrow` : Move up one line in the current message.
- `Down Arrow` : Move down one line in the current message.
- `Ctrl-Up` : Scroll back through previously sent messages.
- `Ctrl-Down` : Scroll forward through previously sent messages.
- `Ctrl-A` : Move cursor to the start of the line.
- `Ctrl-B` : Move cursor back one character.
- `Ctrl-D` : Delete the character under the cursor.
@ -95,8 +97,10 @@ The interactive prompt is built with [prompt-toolkit](https://github.com/prompt-
To use vi/vim keybindings, run aider with the `--vim` switch.
- `Up Arrow` : Scroll back through previously sent messages.
- `Down Arrow` : Scroll forward through previously sent messages.
- `Up Arrow` : Move up one line in the current message.
- `Down Arrow` : Move down one line in the current message.
- `Ctrl-Up` : Scroll back through previously sent messages.
- `Ctrl-Down` : Scroll forward through previously sent messages.
- `Esc` : Switch to command mode.
- `i` : Switch to insert mode.
- `a` : Move cursor one character to the right and switch to insert mode.

View file

@ -1,6 +1,6 @@
import os
import queue
from unittest.mock import patch
from unittest.mock import MagicMock, patch
import numpy as np
import pytest
@ -8,19 +8,21 @@ import pytest
from aider.voice import SoundDeviceError, Voice
# Mock the entire sounddevice module
@pytest.fixture
def mock_sounddevice():
with patch("sounddevice.query_devices") as mock_query:
mock_query.return_value = [
{"name": "test_device", "max_input_channels": 2},
{"name": "another_device", "max_input_channels": 1},
]
yield mock_query
mock_sd = MagicMock()
mock_sd.query_devices.return_value = [
{"name": "test_device", "max_input_channels": 2},
{"name": "another_device", "max_input_channels": 1},
]
with patch.dict("sys.modules", {"sounddevice": mock_sd}):
yield mock_sd
@pytest.fixture
def mock_soundfile():
with patch("soundfile.SoundFile") as mock_sf:
with patch("aider.voice.sf") as mock_sf:
yield mock_sf
@ -28,11 +30,13 @@ def test_voice_init_default_device(mock_sounddevice):
voice = Voice()
assert voice.device_id is None
assert voice.audio_format == "wav"
assert voice.sd == mock_sounddevice
def test_voice_init_specific_device(mock_sounddevice):
voice = Voice(device_name="test_device")
assert voice.device_id == 0
assert voice.sd == mock_sounddevice
def test_voice_init_invalid_device(mock_sounddevice):
@ -43,54 +47,57 @@ def test_voice_init_invalid_device(mock_sounddevice):
def test_voice_init_invalid_format():
with pytest.raises(ValueError) as exc:
Voice(audio_format="invalid")
assert "Unsupported audio format" in str(exc.value)
with patch("aider.voice.sf", MagicMock()): # Need to mock sf to avoid SoundDeviceError
with pytest.raises(ValueError) as exc:
Voice(audio_format="invalid")
assert "Unsupported audio format" in str(exc.value)
def test_callback_processing():
voice = Voice()
voice.q = queue.Queue()
with patch("aider.voice.sf", MagicMock()): # Need to mock sf to avoid SoundDeviceError
voice = Voice()
voice.q = queue.Queue()
# Test with silence (low amplitude)
test_data = np.zeros((1000, 1))
voice.callback(test_data, None, None, None)
assert voice.pct == 0.5 # When range is too small (<=0.001), pct is set to 0.5
# Test with silence (low amplitude)
test_data = np.zeros((1000, 1))
voice.callback(test_data, None, None, None)
assert voice.pct == 0.5 # When range is too small (<=0.001), pct is set to 0.5
# Test with loud signal (high amplitude)
test_data = np.ones((1000, 1))
voice.callback(test_data, None, None, None)
assert voice.pct > 0.9
# Test with loud signal (high amplitude)
test_data = np.ones((1000, 1))
voice.callback(test_data, None, None, None)
assert voice.pct > 0.9
# Verify data is queued
assert not voice.q.empty()
# Verify data is queued
assert not voice.q.empty()
def test_get_prompt():
voice = Voice()
voice.start_time = voice.start_time = os.times().elapsed
voice.pct = 0.5 # 50% volume level
with patch("aider.voice.sf", MagicMock()): # Need to mock sf to avoid SoundDeviceError
voice = Voice()
voice.start_time = os.times().elapsed
voice.pct = 0.5 # 50% volume level
prompt = voice.get_prompt()
assert "Recording" in prompt
assert "sec" in prompt
assert "" in prompt # Should contain some filled blocks
assert "" in prompt # Should contain some empty blocks
prompt = voice.get_prompt()
assert "Recording" in prompt
assert "sec" in prompt
assert "" in prompt # Should contain some filled blocks
assert "" in prompt # Should contain some empty blocks
@patch("sounddevice.InputStream")
def test_record_and_transcribe_keyboard_interrupt(mock_stream):
voice = Voice()
mock_stream.side_effect = KeyboardInterrupt()
result = voice.record_and_transcribe()
assert result is None
def test_record_and_transcribe_keyboard_interrupt():
with patch("aider.voice.sf", MagicMock()):
voice = Voice()
with patch.object(voice, "raw_record_and_transcribe", side_effect=KeyboardInterrupt()):
result = voice.record_and_transcribe()
assert result is None
@patch("sounddevice.InputStream")
def test_record_and_transcribe_device_error(mock_stream):
voice = Voice()
mock_stream.side_effect = SoundDeviceError("Test error")
result = voice.record_and_transcribe()
assert result is None
def test_record_and_transcribe_device_error():
with patch("aider.voice.sf", MagicMock()):
voice = Voice()
with patch.object(
voice, "raw_record_and_transcribe", side_effect=SoundDeviceError("Test error")
):
result = voice.record_and_transcribe()
assert result is None