feat: Add optional analytics tracking

This commit is contained in:
Paul Gauthier 2024-08-12 16:10:20 -07:00 committed by Paul Gauthier (aider)
parent 474ac62391
commit b11c17dbd4
3 changed files with 16 additions and 1 deletions

View file

@ -6,7 +6,12 @@ from mixpanel import Mixpanel
class Analytics:
def __init__(self, project_token="3f9ad6b9d7b7e8e5a1a5a9a7b0b0b0b0"):
def __init__(self, track):
if not track:
self.mp = None
return
project_token = "3f9ad6b9d7b7e8e5a1a5a9a7b0b0b0b0"
self.mp = Mixpanel(project_token) if project_token else None
self.user_id = self.get_or_create_uuid()

View file

@ -547,6 +547,12 @@ def get_parser(default_config_files, git_root):
help="Run aider in your browser",
default=False,
)
group.add_argument(
"--analytics",
action=argparse.BooleanOptionalAction,
default=False,
help="Enable/disable analytics tracking (default: True)",
)
return parser

View file

@ -10,6 +10,7 @@ from dotenv import load_dotenv
from prompt_toolkit.enums import EditingMode
from aider import __version__, models, utils
from aider.analytics import Analytics
from aider.args import get_parser
from aider.coders import Coder
from aider.commands import Commands, SwitchCoder
@ -496,6 +497,8 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
args.max_chat_history_tokens or main_model.max_chat_history_tokens,
)
analytics = Analytics(args.analytics)
try:
coder = Coder.create(
main_model=main_model,
@ -521,6 +524,7 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
test_cmd=args.test_cmd,
commands=commands,
summarizer=summarizer,
analytics=analytics,
)
except ValueError as err: