MCPcopy Create free account
hub / github.com/CommonstackAI/UncommonRoute / prompt_if_needed

Function prompt_if_needed

uncommon_route/telemetry.py:121–165  ·  view source on GitHub ↗

Show opt-in prompt if user hasn't decided yet. Returns enabled state.

()

Source from the content-addressed store, hash-verified

119
120
121def prompt_if_needed() -> bool:
122 """Show opt-in prompt if user hasn't decided yet. Returns enabled state."""
123 # Skip if already decided
124 config = _load_config()
125 if "telemetry" in config:
126 return config.get("telemetry", {}).get("enabled", False)
127
128 # Skip if non-interactive
129 if not sys.stdin.isatty() or os.environ.get("CI"):
130 return False
131
132 # Skip if env var is set
133 env = os.environ.get("UNCOMMON_ROUTE_TELEMETRY", "").strip()
134 if env:
135 return env.lower() in ("on", "true", "1", "yes")
136
137 if os.environ.get("DO_NOT_TRACK", "").strip() == "1":
138 return False
139
140 # Prompt
141 print("""
142────────────────────────────────────────────────────
143Help improve UncommonRoute's routing accuracy by
144sharing pseudonymous routing metadata?
145
146 ✓ Routing predictions, model selections, outcomes
147 ✗ NO prompts, responses, API keys, or personal info
148
149 Details: https://github.com/CommonstackAI/UncommonRoute/blob/main/TELEMETRY.md
150────────────────────────────────────────────────────""")
151 try:
152 answer = input("Share pseudonymous routing data? [y/N]: ").strip().lower()
153 except (EOFError, KeyboardInterrupt):
154 answer = "n"
155
156 enabled = answer in ("y", "yes")
157 config["telemetry"] = {"enabled": enabled}
158 _save_config(config)
159
160 if enabled:
161 print(" Telemetry enabled. Disable anytime: uncommon-route telemetry disable")
162 else:
163 print(" Telemetry disabled. Enable anytime: uncommon-route telemetry enable")
164
165 return enabled
166
167
168def enable() -> None:

Callers

nothing calls this directly

Calls 3

_load_configFunction · 0.70
_save_configFunction · 0.70
getMethod · 0.45

Tested by

no test coverage detected