refactor: consolidate API key and environment variable handling

This commit is contained in:
Paul Gauthier 2024-12-07 10:55:18 -08:00
parent bdb08d7c78
commit 3efcd154f3
8 changed files with 239 additions and 208 deletions

View file

@ -34,14 +34,10 @@ def get_parser(default_config_files, git_root):
)
group.add_argument(
"--openai-api-key",
metavar="OPENAI_API_KEY",
env_var="OPENAI_API_KEY",
help="Specify the OpenAI API key",
)
group.add_argument(
"--anthropic-api-key",
metavar="ANTHROPIC_API_KEY",
env_var="ANTHROPIC_API_KEY",
help="Specify the Anthropic API key",
)
group.add_argument(
@ -153,32 +149,22 @@ def get_parser(default_config_files, git_root):
)
group.add_argument(
"--openai-api-base",
metavar="OPENAI_API_BASE",
env_var="OPENAI_API_BASE",
help="Specify the api base url",
)
group.add_argument(
"--openai-api-type",
metavar="OPENAI_API_TYPE",
env_var="OPENAI_API_TYPE",
help="Specify the api_type",
)
group.add_argument(
"--openai-api-version",
metavar="OPENAI_API_VERSION",
env_var="OPENAI_API_VERSION",
help="Specify the api_version",
)
group.add_argument(
"--openai-api-deployment-id",
metavar="OPENAI_API_DEPLOYMENT_ID",
env_var="OPENAI_API_DEPLOYMENT_ID",
help="Specify the deployment_id",
)
group.add_argument(
"--openai-organization-id",
metavar="OPENAI_ORGANIZATION_ID",
env_var="OPENAI_ORGANIZATION_ID",
help="Specify the OpenAI organization ID",
)
group.add_argument(

View file

@ -456,65 +456,9 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
# Load the .env file specified in the arguments
loaded_dotenvs = load_dotenv_files(git_root, args.env_file, args.encoding)
dump(os.environ.get("ANTHROPIC_API_KEY"))
# Parse again to include any arguments that might have been defined in .env
args = parser.parse_args(argv)
dump(os.environ.get("ANTHROPIC_API_KEY"))
# Process any environment variables set via --set-env
if args.set_env:
for env_setting in args.set_env:
try:
name, value = env_setting.split("=", 1)
os.environ[name.strip()] = value.strip()
except ValueError:
io.tool_error(f"Invalid --set-env format: {env_setting}")
io.tool_output("Format should be: ENV_VAR_NAME=value")
return 1
# Process any API keys set via --api-key
if args.api_key:
for api_setting in args.api_key:
try:
provider, key = api_setting.split("=", 1)
env_var = f"{provider.strip().upper()}_API_KEY"
os.environ[env_var] = key.strip()
dump(env_var)
except ValueError:
io.tool_error(f"Invalid --api-key format: {api_setting}")
io.tool_output("Format should be: provider=key")
return 1
dump(os.environ.get("ANTHROPIC_API_KEY"))
if args.anthropic_api_key:
io.tool_warning("--anthropic-api-key is deprecated, use --api-key anthropic=<key>")
os.environ["ANTHROPIC_API_KEY"] = args.anthropic_api_key
if args.openai_api_key:
io.tool_warning("--openai-api-key is deprecated, use --api-key openai=<key>")
os.environ["OPENAI_API_KEY"] = args.openai_api_key
if args.openai_api_base:
io.tool_warning("--openai-api-base is deprecated, use --set-env OPENAI_API_BASE=<value>")
os.environ["OPENAI_API_BASE"] = args.openai_api_base
if args.openai_api_version:
io.tool_warning(
"--openai-api-version is deprecated, use --set-env OPENAI_API_VERSION=<value>"
)
os.environ["OPENAI_API_VERSION"] = args.openai_api_version
if args.openai_api_type:
io.tool_warning("--openai-api-type is deprecated, use --set-env OPENAI_API_TYPE=<value>")
os.environ["OPENAI_API_TYPE"] = args.openai_api_type
if args.openai_organization_id:
io.tool_warning(
"--openai-organization-id is deprecated, use --set-env OPENAI_ORGANIZATION=<value>"
)
os.environ["OPENAI_ORGANIZATION"] = args.openai_organization_id
dump(os.environ.get("ANTHROPIC_API_KEY"))
if args.analytics_disable:
analytics = Analytics(permanently_disable=True)
print("Analytics have been permanently disabled.")
@ -584,6 +528,53 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
io = get_io(False)
io.tool_warning("Terminal does not support pretty output (UnicodeDecodeError)")
# Process any environment variables set via --set-env
if args.set_env:
for env_setting in args.set_env:
try:
name, value = env_setting.split("=", 1)
os.environ[name.strip()] = value.strip()
except ValueError:
io.tool_error(f"Invalid --set-env format: {env_setting}")
io.tool_output("Format should be: ENV_VAR_NAME=value")
return 1
# Process any API keys set via --api-key
if args.api_key:
for api_setting in args.api_key:
try:
provider, key = api_setting.split("=", 1)
env_var = f"{provider.strip().upper()}_API_KEY"
os.environ[env_var] = key.strip()
except ValueError:
io.tool_error(f"Invalid --api-key format: {api_setting}")
io.tool_output("Format should be: provider=key")
return 1
if args.anthropic_api_key:
os.environ["ANTHROPIC_API_KEY"] = args.anthropic_api_key
if args.openai_api_key:
os.environ["OPENAI_API_KEY"] = args.openai_api_key
if args.openai_api_base:
os.environ["OPENAI_API_BASE"] = args.openai_api_base
if args.openai_api_version:
io.tool_warning(
"--openai-api-version will be deprecated soon, use --set-env OPENAI_API_VERSION=<value>"
)
os.environ["OPENAI_API_VERSION"] = args.openai_api_version
if args.openai_api_type:
io.tool_warning(
"--openai-api-type will be deprecated soon, use --set-env OPENAI_API_TYPE=<value>"
)
os.environ["OPENAI_API_TYPE"] = args.openai_api_type
if args.openai_organization_id:
io.tool_warning(
"--openai-organization-id will be deprecated soon, use --set-env"
" OPENAI_ORGANIZATION=<value>"
)
os.environ["OPENAI_ORGANIZATION"] = args.openai_organization_id
analytics = Analytics(logfile=args.analytics_log, permanently_disable=args.analytics_disable)
if args.analytics is not False:
if analytics.need_to_ask(args.analytics):

View file

@ -1,111 +1,3 @@
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363058}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363063}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363063}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363063}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363067}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363067}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363067}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363075}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363075}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363075}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363078}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363078}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363079}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363082}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363082}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363082}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363096}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363096}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363096}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363098}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363098}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363098}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363100}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363100}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363100}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363103}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363103}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363103}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363114}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363115}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363115}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363117}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363118}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363118}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363162}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363162}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363162}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363164}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363164}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363164}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363166}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363166}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363166}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363179}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363180}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733363180}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364617}
{"event": "no-repo", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364617}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364617}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364646}
{"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": 2405, "completion_tokens": 179, "total_tokens": 2584, "cost": 0.009899999999999999, "total_cost": 0.009899999999999999, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364650}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364650}
{"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": 2777, "completion_tokens": 153, "total_tokens": 2930, "cost": 0.010626, "total_cost": 0.020526, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733364654}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733370787}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733370788}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733370788}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733370951}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733370951}
{"event": "exit", "properties": {"reason": "Completed lint/test/commit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733370956}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733371247}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733371248}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733371248}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733409990}
{"event": "no-repo", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733409990}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733409990}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410007}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410008}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410008}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410018}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410038}
{"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": 4752, "completion_tokens": 229, "total_tokens": 4981, "cost": 0.017691, "total_cost": 0.017691, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410047}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410071}
{"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": 7091, "completion_tokens": 151, "total_tokens": 7242, "cost": 0.023538, "total_cost": 0.041229, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410076}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410132}
{"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": 4868, "completion_tokens": 601, "total_tokens": 5469, "cost": 0.023619, "total_cost": 0.064848, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410148}
{"event": "command_diff", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410158}
{"event": "command_undo", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410164}
{"event": "command_undo", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410166}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410217}
{"event": "model warning", "properties": {"main_model": "github/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "github/REDACTED", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410218}
{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410222}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410230}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410232}
{"event": "exit", "properties": {"reason": "Exit flag set", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410232}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410245}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410246}
{"event": "exit", "properties": {"reason": "Completed lint/test/commit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410250}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410389}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410391}
{"event": "cli session", "properties": {"main_model": "github/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "github/REDACTED", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410391}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410391}
{"event": "message_send", "properties": {"main_model": "github/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "github/REDACTED", "edit_format": "diff", "prompt_tokens": 3396, "completion_tokens": 0, "total_tokens": 3396, "cost": 0, "total_cost": 0.0, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410392}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410445}
{"event": "exit", "properties": {"reason": "/exit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410445}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410581}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410583}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410583}
{"event": "message_send", "properties": {"main_model": "github/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "github/REDACTED", "edit_format": "diff", "prompt_tokens": 3375, "completion_tokens": 28, "total_tokens": 3403, "cost": 0, "total_cost": 0.0, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410586}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410586}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410594}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410596}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410596}
{"event": "message_send", "properties": {"main_model": "github/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "github/REDACTED", "edit_format": "whole", "prompt_tokens": 599, "completion_tokens": 0, "total_tokens": 599, "cost": 0, "total_cost": 0.0, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410597}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410597}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410680}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410682}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410682}
{"event": "message_send", "properties": {"main_model": "github/REDACTED", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "github/REDACTED", "edit_format": "whole", "prompt_tokens": 599, "completion_tokens": 0, "total_tokens": 599, "cost": 0, "total_cost": 0.0, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410683}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410683}
{"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.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410989}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411054}
@ -998,3 +890,111 @@
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733535667}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733535667}
{"event": "exit", "properties": {"reason": "Completed lint/test/commit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733535671}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733535753}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733535753}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733535753}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586825}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586826}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586826}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586847}
{"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": 5365, "completion_tokens": 394, "total_tokens": 5759, "cost": 0.022005000000000004, "total_cost": 0.022005000000000004, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586857}
{"event": "command_diff", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586873}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586943}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586943}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586943}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733586968}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587112}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587112}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587112}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587122}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587131}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587232}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587232}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587232}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587269}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587269}
{"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": 6903, "completion_tokens": 550, "total_tokens": 7453, "cost": 0.028959000000000002, "total_cost": 0.028959000000000002, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587282}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587319}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587319}
{"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": 7516, "completion_tokens": 120, "total_tokens": 7636, "cost": 0.024348, "total_cost": 0.05330700000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587324}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587369}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587408}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587411}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587413}
{"event": "command_editor", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587416}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587515}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587515}
{"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": 14337, "completion_tokens": 336, "total_tokens": 14673, "cost": 0.048051, "total_cost": 0.101358, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587524}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587546}
{"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": 17070, "completion_tokens": 383, "total_tokens": 17453, "cost": 0.056955, "total_cost": 0.158313, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587555}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587621}
{"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": 17645, "completion_tokens": 432, "total_tokens": 18077, "cost": 0.059415, "total_cost": 0.217728, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587632}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587635}
{"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": 18662, "completion_tokens": 224, "total_tokens": 18886, "cost": 0.059346, "total_cost": 0.277074, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587640}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587679}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587679}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587680}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587683}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587688}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587690}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587695}
{"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": 23892, "completion_tokens": 487, "total_tokens": 24379, "cost": 0.07898100000000001, "total_cost": 0.356055, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587708}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587710}
{"event": "command_editor", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587750}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587775}
{"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": 24809, "completion_tokens": 293, "total_tokens": 25102, "cost": 0.078822, "total_cost": 0.434877, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587784}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587867}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587867}
{"event": "exit", "properties": {"reason": "Completed lint/test/commit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733587870}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733588563}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733588563}
{"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": 23043, "completion_tokens": 930, "total_tokens": 23973, "cost": 0.083079, "total_cost": 0.517956, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733588582}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733588611}
{"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": 26114, "completion_tokens": 876, "total_tokens": 26990, "cost": 0.09148200000000001, "total_cost": 0.6094379999999999, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733588629}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594489}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594505}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594525}
{"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": 27707, "completion_tokens": 225, "total_tokens": 27932, "cost": 0.086496, "total_cost": 0.6959339999999999, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594535}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594573}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594574}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594574}
{"event": "command_exit", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594575}
{"event": "exit", "properties": {"reason": "/exit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594575}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594578}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594578}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594578}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594582}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594588}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594601}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594601}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594601}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594604}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733594609}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596794}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596885}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596894}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596905}
{"event": "model warning", "properties": {"main_model": "gpt-4o-2024-08-06", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "gpt-4o-2024-08-06", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596907}
{"event": "exit", "properties": {"reason": "Keyboard interrupt during model warnings", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596908}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596925}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596925}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733596925}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597057}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597071}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597071}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597071}
{"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.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597102}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597104}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597105}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597105}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597217}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597218}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597218}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597328}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597328}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597328}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597524}
{"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": 28175, "completion_tokens": 588, "total_tokens": 28763, "cost": 0.093345, "total_cost": 0.789279, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597536}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597693}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597693}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597694}

View file

@ -391,6 +391,22 @@
## Specify which editor to use for the /editor command
#editor: xxx
## Set an environment variable (can be used multiple times)
#set-env: xxx
## Specify multiple values like this:
#set-env:
# - xxx
# - yyy
# - zzz
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#api-key: xxx
## Specify multiple values like this:
#api-key:
# - xxx
# - yyy
# - zzz
#################
# Voice Settings:

View file

@ -22,10 +22,10 @@
# Main:
## Specify the OpenAI API key
#OPENAI_API_KEY=
#AIDER_OPENAI_API_KEY=
## Specify the Anthropic API key
#ANTHROPIC_API_KEY=
#AIDER_ANTHROPIC_API_KEY=
## Specify the model to use for the main chat
#AIDER_MODEL=
@ -70,19 +70,19 @@
#AIDER_LIST_MODELS=
## Specify the api base url
#OPENAI_API_BASE=
#AIDER_OPENAI_API_BASE=
## Specify the api_type
#OPENAI_API_TYPE=
#AIDER_OPENAI_API_TYPE=
## Specify the api_version
#OPENAI_API_VERSION=
#AIDER_OPENAI_API_VERSION=
## Specify the deployment_id
#OPENAI_API_DEPLOYMENT_ID=
#AIDER_OPENAI_API_DEPLOYMENT_ID=
## Specify the OpenAI organization ID
#OPENAI_ORGANIZATION_ID=
#AIDER_OPENAI_ORGANIZATION_ID=
## Specify a file with aider model settings for unknown models
#AIDER_MODEL_SETTINGS_FILE=.aider.model.settings.yml
@ -369,6 +369,12 @@
## Specify which editor to use for the /editor command
#AIDER_EDITOR=
## Set an environment variable (can be used multiple times)
#AIDER_SET_ENV=
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#AIDER_API_KEY=
#################
# Voice Settings:

View file

@ -447,6 +447,22 @@ cog.outl("```")
## Specify which editor to use for the /editor command
#editor: xxx
## Set an environment variable (can be used multiple times)
#set-env: xxx
## Specify multiple values like this:
#set-env:
# - xxx
# - yyy
# - zzz
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#api-key: xxx
## Specify multiple values like this:
#api-key:
# - xxx
# - yyy
# - zzz
#################
# Voice Settings:

View file

@ -64,10 +64,10 @@ cog.outl("```")
# Main:
## Specify the OpenAI API key
#OPENAI_API_KEY=
#AIDER_OPENAI_API_KEY=
## Specify the Anthropic API key
#ANTHROPIC_API_KEY=
#AIDER_ANTHROPIC_API_KEY=
## Specify the model to use for the main chat
#AIDER_MODEL=
@ -112,19 +112,19 @@ cog.outl("```")
#AIDER_LIST_MODELS=
## Specify the api base url
#OPENAI_API_BASE=
#AIDER_OPENAI_API_BASE=
## Specify the api_type
#OPENAI_API_TYPE=
#AIDER_OPENAI_API_TYPE=
## Specify the api_version
#OPENAI_API_VERSION=
#AIDER_OPENAI_API_VERSION=
## Specify the deployment_id
#OPENAI_API_DEPLOYMENT_ID=
#AIDER_OPENAI_API_DEPLOYMENT_ID=
## Specify the OpenAI organization ID
#OPENAI_ORGANIZATION_ID=
#AIDER_OPENAI_ORGANIZATION_ID=
## Specify a file with aider model settings for unknown models
#AIDER_MODEL_SETTINGS_FILE=.aider.model.settings.yml
@ -411,6 +411,12 @@ cog.outl("```")
## Specify which editor to use for the /editor command
#AIDER_EDITOR=
## Set an environment variable (can be used multiple times)
#AIDER_SET_ENV=
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#AIDER_API_KEY=
#################
# Voice Settings:

View file

@ -77,8 +77,8 @@ usage: aider [-h] [--openai-api-key] [--anthropic-api-key] [--model]
[--suggest-shell-commands | --no-suggest-shell-commands]
[--fancy-input | --no-fancy-input]
[--detect-urls | --no-detect-urls] [--editor]
[--voice-format] [--voice-language]
[--voice-input-device]
[--set-env] [--api-key] [--voice-format]
[--voice-language] [--voice-input-device]
```
@ -92,13 +92,13 @@ Aliases:
## Main:
### `--openai-api-key OPENAI_API_KEY`
### `--openai-api-key VALUE`
Specify the OpenAI API key
Environment variable: `OPENAI_API_KEY`
Environment variable: `AIDER_OPENAI_API_KEY`
### `--anthropic-api-key ANTHROPIC_API_KEY`
### `--anthropic-api-key VALUE`
Specify the Anthropic API key
Environment variable: `ANTHROPIC_API_KEY`
Environment variable: `AIDER_ANTHROPIC_API_KEY`
### `--model MODEL`
Specify the model to use for the main chat
@ -165,25 +165,25 @@ Aliases:
- `--list-models MODEL`
- `--models MODEL`
### `--openai-api-base OPENAI_API_BASE`
### `--openai-api-base VALUE`
Specify the api base url
Environment variable: `OPENAI_API_BASE`
Environment variable: `AIDER_OPENAI_API_BASE`
### `--openai-api-type OPENAI_API_TYPE`
### `--openai-api-type VALUE`
Specify the api_type
Environment variable: `OPENAI_API_TYPE`
Environment variable: `AIDER_OPENAI_API_TYPE`
### `--openai-api-version OPENAI_API_VERSION`
### `--openai-api-version VALUE`
Specify the api_version
Environment variable: `OPENAI_API_VERSION`
Environment variable: `AIDER_OPENAI_API_VERSION`
### `--openai-api-deployment-id OPENAI_API_DEPLOYMENT_ID`
### `--openai-api-deployment-id VALUE`
Specify the deployment_id
Environment variable: `OPENAI_API_DEPLOYMENT_ID`
Environment variable: `AIDER_OPENAI_API_DEPLOYMENT_ID`
### `--openai-organization-id OPENAI_ORGANIZATION_ID`
### `--openai-organization-id VALUE`
Specify the OpenAI organization ID
Environment variable: `OPENAI_ORGANIZATION_ID`
Environment variable: `AIDER_OPENAI_ORGANIZATION_ID`
### `--model-settings-file MODEL_SETTINGS_FILE`
Specify a file with aider model settings for unknown models
@ -713,6 +713,16 @@ Aliases:
Specify which editor to use for the /editor command
Environment variable: `AIDER_EDITOR`
### `--set-env ENV_VAR_NAME=value`
Set an environment variable (can be used multiple times)
Default: []
Environment variable: `AIDER_SET_ENV`
### `--api-key PROVIDER=KEY`
Set an API key for a provider (eg: --api-key anthropic=sk-123)
Default: []
Environment variable: `AIDER_API_KEY`
## Voice Settings:
### `--voice-format VOICE_FORMAT`