utim-cli 1.45.6__tar.gz → 1.45.8__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. {utim_cli-1.45.6/utim_cli.egg-info → utim_cli-1.45.8}/PKG-INFO +1 -1
  2. {utim_cli-1.45.6 → utim_cli-1.45.8}/pyproject.toml +1 -1
  3. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/auth.py +6 -1
  4. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/utim.py +8 -5
  5. {utim_cli-1.45.6 → utim_cli-1.45.8/utim_cli.egg-info}/PKG-INFO +1 -1
  6. {utim_cli-1.45.6 → utim_cli-1.45.8}/CHANGELOG.md +0 -0
  7. {utim_cli-1.45.6 → utim_cli-1.45.8}/LICENSE +0 -0
  8. {utim_cli-1.45.6 → utim_cli-1.45.8}/MANIFEST.in +0 -0
  9. {utim_cli-1.45.6 → utim_cli-1.45.8}/README.md +0 -0
  10. {utim_cli-1.45.6 → utim_cli-1.45.8}/setup.cfg +0 -0
  11. {utim_cli-1.45.6 → utim_cli-1.45.8}/setup.py +0 -0
  12. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/__init__.py +0 -0
  13. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/agent.py +0 -0
  14. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/backup.py +0 -0
  15. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/blender_agent.py +0 -0
  16. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/bootstrap.py +0 -0
  17. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/client_utils.py +0 -0
  18. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/config.py +0 -0
  19. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/constants.py +0 -0
  20. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/context_pruner.py +0 -0
  21. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/doctor.py +0 -0
  22. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/knowledge_graph.py +0 -0
  23. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/logger.py +0 -0
  24. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/mcp_clean_wrapper.py +0 -0
  25. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/mcp_client.py +0 -0
  26. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/mcp_registry.json +0 -0
  27. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/orchestrator.py +0 -0
  28. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/reflection.py +0 -0
  29. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/report.py +0 -0
  30. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/scrapy_search.py +0 -0
  31. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/__init__.py +0 -0
  32. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/auth.py +0 -0
  33. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/db.py +0 -0
  34. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/email_utils.py +0 -0
  35. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/firebase.py +0 -0
  36. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/history.py +0 -0
  37. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/logging_config.py +0 -0
  38. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/models.py +0 -0
  39. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/rate_limit.py +0 -0
  40. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/router.py +0 -0
  41. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/__init__.py +0 -0
  42. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/auth_routes.py +0 -0
  43. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/completion_routes.py +0 -0
  44. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/credit_routes.py +0 -0
  45. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/quota_routes.py +0 -0
  46. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/session_routes.py +0 -0
  47. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/routes/share_routes.py +0 -0
  48. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/server/server.py +0 -0
  49. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/share.py +0 -0
  50. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/share_tui.py +0 -0
  51. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/situational_scoring.py +0 -0
  52. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/state.py +0 -0
  53. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tools.py +0 -0
  54. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/__init__.py +0 -0
  55. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/history_dialog.py +0 -0
  56. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/mcp_dialog.py +0 -0
  57. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/model_dialog.py +0 -0
  58. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/resume_dialog.py +0 -0
  59. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/tools_dialog.py +0 -0
  60. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/tui/update_dialog.py +0 -0
  61. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/vector_memory.py +0 -0
  62. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli/workspace.py +0 -0
  63. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli.egg-info/SOURCES.txt +0 -0
  64. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli.egg-info/dependency_links.txt +0 -0
  65. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli.egg-info/entry_points.txt +0 -0
  66. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli.egg-info/requires.txt +0 -0
  67. {utim_cli-1.45.6 → utim_cli-1.45.8}/utim_cli.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: utim-cli
3
- Version: 1.45.6
3
+ Version: 1.45.8
4
4
  Summary: UTIM – Universal Terminal Intelligence Manager. A powerful agentic AI coding assistant for your terminal.
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://utim.dev
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "utim-cli"
7
- version = "1.45.6"
7
+ version = "1.45.8"
8
8
  description = "UTIM – Universal Terminal Intelligence Manager. A powerful agentic AI coding assistant for your terminal."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -114,7 +114,12 @@ def login() -> None:
114
114
  console.print(f"\n [bold {PURPLE}]Opening browser for sign-in…[/bold {PURPLE}]")
115
115
  console.print(f" [dim]If the browser doesn't open, visit:[/dim]")
116
116
  console.print(f" [bold {BLUE}]{auth_url}[/bold {BLUE}]\n")
117
- webbrowser.open(auth_url)
117
+
118
+ import sys
119
+ sys.stdout.flush()
120
+
121
+ # Run webbrowser.open in a daemon thread so it never hangs the CLI on Termux/mobile
122
+ threading.Thread(target=webbrowser.open, args=(auth_url,), daemon=True).start()
118
123
 
119
124
  # Block until the callback arrives with a 5-minute timeout
120
125
  import time
@@ -585,7 +585,7 @@ def _print_animated_banner():
585
585
  # Speed up for spaces to make it feel more like typing
586
586
  time.sleep(0.002 if char == " " else 0.005)
587
587
 
588
- console.print(f"\n [bold white]U Think I Make[/bold white] [dim]v1.45.6[/dim]")
588
+ console.print(f"\n [bold white]U Think I Make[/bold white] [dim]v1.45.8[/dim]")
589
589
  user_email = config.email
590
590
  user_type = "UTIM Community"
591
591
  api_key = config.get("api_key")
@@ -2420,7 +2420,10 @@ def _build_pt_app(orchestrator, last_sigint):
2420
2420
  if STATE["busy"]:
2421
2421
  console.print(f"\n[dim yellow]⚠ Cannot execute command {text} while agent is busy.[/dim yellow]")
2422
2422
  return
2423
- run_in_terminal(lambda: _handle_command(cmd_word, orchestrator, event.app))
2423
+ if cmd_word == "/login":
2424
+ run_in_terminal(lambda: _handle_command(cmd_word, orchestrator, event.app), in_executor=True)
2425
+ else:
2426
+ run_in_terminal(lambda: _handle_command(cmd_word, orchestrator, event.app))
2424
2427
  return
2425
2428
 
2426
2429
  # Check if the user pasted a UTIM share URL/ID
@@ -2436,7 +2439,7 @@ def _build_pt_app(orchestrator, last_sigint):
2436
2439
  auth.login()
2437
2440
  except Exception as exc:
2438
2441
  console.print(f"\n [bold red]✗ Login failed: {exc}[/bold red]\n")
2439
- run_in_terminal(run_auth_login)
2442
+ run_in_terminal(run_auth_login, in_executor=True)
2440
2443
  # Restore their prompt text so they don't have to retype it
2441
2444
  input_field.text = text
2442
2445
  return
@@ -2691,7 +2694,7 @@ def check_and_update_background():
2691
2694
  return
2692
2695
 
2693
2696
  latest_ver = resp.json().get("version", "")
2694
- current_ver = "1.45.6"
2697
+ current_ver = "1.45.8"
2695
2698
 
2696
2699
  def parse_ver(v):
2697
2700
  return [int(x) for x in v.split(".") if x.isdigit()]
@@ -2887,7 +2890,7 @@ app = typer.Typer()
2887
2890
  def version_callback(value: bool):
2888
2891
  if value:
2889
2892
  import typer
2890
- print("U Think I Make v1.45.6")
2893
+ print("U Think I Make v1.45.8")
2891
2894
  raise typer.Exit()
2892
2895
 
2893
2896
  @app.callback(invoke_without_command=True)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: utim-cli
3
- Version: 1.45.6
3
+ Version: 1.45.8
4
4
  Summary: UTIM – Universal Terminal Intelligence Manager. A powerful agentic AI coding assistant for your terminal.
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://utim.dev
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes