cli-hub analytics check, 2026-10-20 14:10 UTC+8 (cli-anything-hub 0.4.1, registry already cached in ~/.cli-hub) Source: cli_hub/analytics.py: ANALYTICS_PROVIDER = "posthog", POSTHOG_API_HOST = "https://us.i.posthog.com"; _is_enabled() is true unless CLI_HUB_NO_ANALYTICS is 1/true/yes. Events in the code: "cli-anything-hub-installed" (first run), "cli-hub call" (every invocation: command, is_agent, agent signals from env vars such as CLAUDE_CODE / CURSOR_TRACE_ID and parent process names, stdin_tty, platform), install, uninstall, launch. A random id is stored in ~/.cli-hub/.analytics_id (created 14:09 on our first command). Method: strace -f -e trace=connect,sendto,sendmmsg on "cli-hub search office". default (no opt-out): 5 traced calls; DNS query bytes contain "posthog" 1 times CLI_HUB_NO_ANALYTICS=1: 0 traced calls (no network at all) Our hub commands from 14:09:52 to about 14:10:35 (the 8 logged ones, an unlogged 'list --json' and the two default-mode trace runs) ran before we set the opt-out, so they sent events. Every later command ran with CLI_HUB_NO_ANALYTICS=1. The installed CLIs (cli-anything-libreoffice 1.0.1, cli-anything-audacity 1.0.0) contain no analytics code (grep for posthog/umami/analytics: nothing). --- strace, default --- 329687 connect(6, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) 329687 connect(6, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) 329687 connect(5, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("10.0.0.2")}, 16) = 0 329687 sendmmsg(5, [{msg_hdr={msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="I.\1\0\0\1\0\0\0\0\0\0\2us\1i\7posthog\3com\0\0\1\0\1", iov_len=34}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, msg_ 329687 connect(5, {sa_family=AF_INET, sin_port=htons(443), sin_addr=inet_addr("198.18.0.1")}, 16) = -1 EINPROGRESS (Operation now in progress)