meshagent-cli 0.44.4__tar.gz → 0.44.5__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 (146) hide show
  1. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/PKG-INFO +17 -17
  2. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/root_commands.py +3 -46
  3. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/root_commands_test.py +5 -192
  4. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tool_integrations.py +5 -387
  5. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tool_integrations_test.py +138 -396
  6. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/setup.py +15 -340
  7. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/setup_test.py +29 -149
  8. meshagent_cli-0.44.5/meshagent/cli/version.py +1 -0
  9. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent_cli.egg-info/PKG-INFO +17 -17
  10. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent_cli.egg-info/requires.txt +16 -16
  11. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/pyproject.toml +16 -16
  12. meshagent_cli-0.44.4/meshagent/cli/version.py +0 -1
  13. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/LICENSE +0 -0
  14. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/README.md +0 -0
  15. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/__init__.py +0 -0
  16. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/_filedrop.py +0 -0
  17. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/agent.py +0 -0
  18. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/agent_cli_options_test.py +0 -0
  19. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/agent_package_cli.py +0 -0
  20. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/agent_package_cli_test.py +0 -0
  21. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/agents.py +0 -0
  22. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/agents_test.py +0 -0
  23. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/api_keys.py +0 -0
  24. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/api_keys_test.py +0 -0
  25. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/ask.py +0 -0
  26. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/ask_test.py +0 -0
  27. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/async_typer.py +0 -0
  28. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/async_typer_test.py +0 -0
  29. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/auth.py +0 -0
  30. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/auth_async.py +0 -0
  31. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/auth_async_test.py +0 -0
  32. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/auth_test.py +0 -0
  33. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/call.py +0 -0
  34. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/chatbot.py +0 -0
  35. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/cli.py +0 -0
  36. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/cli_mcp.py +0 -0
  37. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/cli_secrets.py +0 -0
  38. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/cli_test.py +0 -0
  39. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/common_options.py +0 -0
  40. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/config.py +0 -0
  41. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/config_test.py +0 -0
  42. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/containers.py +0 -0
  43. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/containers_test.py +0 -0
  44. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/create.py +0 -0
  45. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/create_project_templates/__init__.py +0 -0
  46. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/create_project_templates/python/backend-agent/server.py +0 -0
  47. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/create_project_templates/python/contact-form/server.py +0 -0
  48. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/create_project_templates/python/webserver/server.py +0 -0
  49. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/create_test.py +0 -0
  50. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/dataset.py +0 -0
  51. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/dataset_test.py +0 -0
  52. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/developer.py +0 -0
  53. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/developer_test.py +0 -0
  54. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/doctor.py +0 -0
  55. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/doctor_dockerfiles/__init__.py +0 -0
  56. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/doctor_templates/__init__.py +0 -0
  57. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/doctor_test.py +0 -0
  58. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/feeds.py +0 -0
  59. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/helper.py +0 -0
  60. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/helper_test.py +0 -0
  61. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/helpers.py +0 -0
  62. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/host.py +0 -0
  63. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/image.py +0 -0
  64. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/image_test.py +0 -0
  65. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/launch.py +0 -0
  66. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/launch_test.py +0 -0
  67. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/llm.py +0 -0
  68. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/llm_test.py +0 -0
  69. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/local_settings.py +0 -0
  70. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/local_settings_test.py +0 -0
  71. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/mailbot.py +0 -0
  72. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/mailbot_test.py +0 -0
  73. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/mailboxes.py +0 -0
  74. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/meeting_transcriber.py +0 -0
  75. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/memory.py +0 -0
  76. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/memory_test.py +0 -0
  77. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/meshagent_images.py +0 -0
  78. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/meshagent_images_test.py +0 -0
  79. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/messaging.py +0 -0
  80. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/multi.py +0 -0
  81. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/oauth2.py +0 -0
  82. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/oauth2_test.py +0 -0
  83. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/oci_archive.py +0 -0
  84. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/oci_archive_test.py +0 -0
  85. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/participant_token.py +0 -0
  86. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/port.py +0 -0
  87. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/port_test.py +0 -0
  88. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/preamble_rules.py +0 -0
  89. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/preamble_rules_test.py +0 -0
  90. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/process.py +0 -0
  91. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/process_live_test.py +0 -0
  92. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/process_test.py +0 -0
  93. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/projects.py +0 -0
  94. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/projects_test.py +0 -0
  95. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/queue.py +0 -0
  96. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/queue_test.py +0 -0
  97. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/registry.py +0 -0
  98. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/registry_test.py +0 -0
  99. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/room.py +0 -0
  100. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/room_connect.py +0 -0
  101. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/room_connect_test.py +0 -0
  102. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/room_services.py +0 -0
  103. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/rooms.py +0 -0
  104. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/rooms_test.py +0 -0
  105. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/routes.py +0 -0
  106. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/scheduled_tasks.py +0 -0
  107. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/scheduled_tasks_test.py +0 -0
  108. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/services.py +0 -0
  109. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/services_test.py +0 -0
  110. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/sessions.py +0 -0
  111. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/sessions_test.py +0 -0
  112. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/storage.py +0 -0
  113. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/storage_test.py +0 -0
  114. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/subscriptions.py +0 -0
  115. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/sync.py +0 -0
  116. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/sync_test.py +0 -0
  117. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/task_runner.py +0 -0
  118. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/task_runner_test.py +0 -0
  119. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/test.py +0 -0
  120. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/thread_inspect.py +0 -0
  121. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/thread_inspect_test.py +0 -0
  122. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/thread_sidebar.py +0 -0
  123. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tool_call_summary.py +0 -0
  124. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tool_call_summary_test.py +0 -0
  125. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/__init__.py +0 -0
  126. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/auth_switch.py +0 -0
  127. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/auth_switch_test.py +0 -0
  128. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/create.py +0 -0
  129. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/deploy_room.py +0 -0
  130. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/deploy_room_test.py +0 -0
  131. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/project_activate.py +0 -0
  132. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/project_activate_test.py +0 -0
  133. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/tui/setup_splash_frames.py +0 -0
  134. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/version_check.py +0 -0
  135. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/version_check_test.py +0 -0
  136. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/voicebot.py +0 -0
  137. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/webhook.py +0 -0
  138. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/webserver.py +0 -0
  139. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/webserver_test.py +0 -0
  140. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/worker.py +0 -0
  141. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent/cli/worker_test.py +0 -0
  142. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent_cli.egg-info/SOURCES.txt +0 -0
  143. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent_cli.egg-info/dependency_links.txt +0 -0
  144. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent_cli.egg-info/entry_points.txt +0 -0
  145. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/meshagent_cli.egg-info/top_level.txt +0 -0
  146. {meshagent_cli-0.44.4 → meshagent_cli-0.44.5}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshagent-cli
3
- Version: 0.44.4
3
+ Version: 0.44.5
4
4
  Summary: CLI for Meshagent
5
5
  License-Expression: Apache-2.0
6
6
  Project-URL: Documentation, https://docs.meshagent.com
@@ -22,8 +22,8 @@ Requires-Dist: openpyxl~=3.1
22
22
  Requires-Dist: xlsxwriter~=3.2
23
23
  Requires-Dist: pathspec<2,>=1.0.3
24
24
  Requires-Dist: zstandard~=0.25.0
25
- Requires-Dist: meshagent-llm-proxy==0.44.4
26
- Requires-Dist: meshagent-codex==0.44.4
25
+ Requires-Dist: meshagent-llm-proxy==0.44.5
26
+ Requires-Dist: meshagent-codex==0.44.5
27
27
  Requires-Dist: rich~=14.3.0
28
28
  Requires-Dist: sounddevice~=0.5
29
29
  Requires-Dist: textual<9.0,>=8.2.3
@@ -32,23 +32,23 @@ Requires-Dist: prompt-toolkit~=3.0.52
32
32
  Requires-Dist: ascii-magic~=2.3
33
33
  Requires-Dist: pillow~=11.3.0
34
34
  Provides-Extra: all
35
- Requires-Dist: meshagent-agents[all]==0.44.4; extra == "all"
36
- Requires-Dist: meshagent-api[all]==0.44.4; extra == "all"
37
- Requires-Dist: meshagent-commoncrawl==0.44.4; extra == "all"
38
- Requires-Dist: meshagent-scrapy==0.44.4; extra == "all"
39
- Requires-Dist: meshagent-computers==0.44.4; extra == "all"
40
- Requires-Dist: meshagent-openai==0.44.4; extra == "all"
41
- Requires-Dist: meshagent-anthropic==0.44.4; extra == "all"
42
- Requires-Dist: meshagent-otel==0.44.4; extra == "all"
43
- Requires-Dist: meshagent-mcp==0.44.4; extra == "all"
44
- Requires-Dist: meshagent-tools==0.44.4; extra == "all"
35
+ Requires-Dist: meshagent-agents[all]==0.44.5; extra == "all"
36
+ Requires-Dist: meshagent-api[all]==0.44.5; extra == "all"
37
+ Requires-Dist: meshagent-commoncrawl==0.44.5; extra == "all"
38
+ Requires-Dist: meshagent-scrapy==0.44.5; extra == "all"
39
+ Requires-Dist: meshagent-computers==0.44.5; extra == "all"
40
+ Requires-Dist: meshagent-openai==0.44.5; extra == "all"
41
+ Requires-Dist: meshagent-anthropic==0.44.5; extra == "all"
42
+ Requires-Dist: meshagent-otel==0.44.5; extra == "all"
43
+ Requires-Dist: meshagent-mcp==0.44.5; extra == "all"
44
+ Requires-Dist: meshagent-tools==0.44.5; extra == "all"
45
45
  Requires-Dist: supabase-auth~=2.28.0; extra == "all"
46
46
  Requires-Dist: prompt-toolkit~=3.0.52; extra == "all"
47
47
  Provides-Extra: mcp-service
48
- Requires-Dist: meshagent-agents[all]==0.44.4; extra == "mcp-service"
49
- Requires-Dist: meshagent-api==0.44.4; extra == "mcp-service"
50
- Requires-Dist: meshagent-mcp==0.44.4; extra == "mcp-service"
51
- Requires-Dist: meshagent-tools==0.44.4; extra == "mcp-service"
48
+ Requires-Dist: meshagent-agents[all]==0.44.5; extra == "mcp-service"
49
+ Requires-Dist: meshagent-api==0.44.5; extra == "mcp-service"
50
+ Requires-Dist: meshagent-mcp==0.44.5; extra == "mcp-service"
51
+ Requires-Dist: meshagent-tools==0.44.5; extra == "mcp-service"
52
52
  Requires-Dist: supabase-auth~=2.28.0; extra == "mcp-service"
53
53
  Dynamic: license-file
54
54
 
@@ -98,18 +98,14 @@ def _setup_command(
98
98
  )
99
99
  from meshagent.cli.tool_integrations import (
100
100
  CODEX_DEFAULT_PROFILE_ID,
101
- clear_codex_default_profile_if_meshagent_project,
102
101
  configure_codex_default_integration,
103
102
  clear_claude_code_integration,
104
- configure_codex_integration,
105
103
  configure_claude_code_integration,
106
104
  find_existing_codex_profiles,
107
- find_current_codex_default_profile,
108
105
  has_claude_code_cli,
109
106
  has_codex_cli,
110
107
  inspect_claude_code_integration,
111
108
  remove_codex_integration,
112
- replace_codex_integration,
113
109
  )
114
110
  from meshagent.cli.tui.setup import (
115
111
  SetupClaudeConfiguration,
@@ -195,46 +191,16 @@ def _setup_command(
195
191
  finally:
196
192
  await client.close()
197
193
 
198
- async def configure_codex_profile(profile_id: str) -> None:
199
- configure_codex_integration(
200
- profile_id=profile_id,
201
- api_url=resolve_api_url(),
202
- meshagent_executable=current_meshagent_executable,
203
- )
204
-
205
- async def replace_codex_profile(profile_id: str) -> None:
206
- replace_codex_integration(
207
- profile_id=profile_id,
208
- api_url=resolve_api_url(),
209
- meshagent_executable=current_meshagent_executable,
210
- )
211
-
212
194
  async def remove_codex_profile(profile_id: str) -> None:
213
195
  remove_codex_integration(profile_id=profile_id)
214
196
 
215
- async def list_existing_codex_profiles(project_id: str) -> list[str]:
216
- return find_existing_codex_profiles(
217
- project_id=project_id,
218
- api_url=resolve_api_url(),
219
- )
220
-
221
- async def get_current_codex_default_profile(project_id: str) -> str | None:
222
- return find_current_codex_default_profile(
223
- project_id=project_id,
224
- api_url=resolve_api_url(),
225
- )
197
+ async def list_existing_codex_profiles() -> list[str]:
198
+ return find_existing_codex_profiles()
226
199
 
227
200
  async def configure_codex_default_profile(
228
201
  project_id: str,
229
- profile_id: str | None,
202
+ profile_id: str,
230
203
  ) -> None:
231
- if profile_id is None:
232
- clear_codex_default_profile_if_meshagent_project(
233
- project_id=project_id,
234
- api_url=resolve_api_url(),
235
- )
236
- return
237
-
238
204
  configure_codex_default_integration(
239
205
  project_id=project_id,
240
206
  provider_id=profile_id,
@@ -298,18 +264,9 @@ def _setup_command(
298
264
  list_existing_codex_profiles_operation=(
299
265
  list_existing_codex_profiles if codex_available else None
300
266
  ),
301
- configure_codex_profile_operation=(
302
- configure_codex_profile if codex_available else None
303
- ),
304
- replace_codex_profile_operation=(
305
- replace_codex_profile if codex_available else None
306
- ),
307
267
  remove_codex_profile_operation=(
308
268
  remove_codex_profile if codex_available else None
309
269
  ),
310
- get_current_codex_default_profile_operation=(
311
- get_current_codex_default_profile if codex_available else None
312
- ),
313
270
  configure_codex_default_profile_operation=(
314
271
  configure_codex_default_profile if codex_available else None
315
272
  ),
@@ -54,7 +54,6 @@ def test_version_command_prints_unavailable_server_version(
54
54
 
55
55
  def test_setup_command_launches_ask_after_success(monkeypatch) -> None:
56
56
  launched: list[dict[str, object]] = []
57
- existing_codex_profile_requests: list[str] = []
58
57
 
59
58
  async def _fake_get_active_project() -> str | None:
60
59
  return None
@@ -70,17 +69,12 @@ def test_setup_command_launches_ask_after_success(monkeypatch) -> None:
70
69
  assert kwargs["has_claude_code_cli"] is True
71
70
  assert kwargs["default_codex_profile_name"] == "meshagent"
72
71
  assert callable(kwargs["list_existing_codex_profiles_operation"])
73
- assert callable(kwargs["configure_codex_profile_operation"])
74
- assert callable(kwargs["replace_codex_profile_operation"])
75
72
  assert callable(kwargs["remove_codex_profile_operation"])
76
- assert callable(kwargs["get_current_codex_default_profile_operation"])
77
73
  assert callable(kwargs["configure_codex_default_profile_operation"])
78
74
  assert callable(kwargs["configure_claude_operation"])
79
75
  assert callable(kwargs["inspect_claude_configuration_operation"])
80
76
  assert callable(kwargs["clear_claude_operation"])
81
- assert await kwargs["list_existing_codex_profiles_operation"](
82
- "project-123"
83
- ) == ["meshagent"]
77
+ assert await kwargs["list_existing_codex_profiles_operation"]() == ["meshagent"]
84
78
  return SetupWizardResult(
85
79
  status="completed",
86
80
  message="done",
@@ -149,9 +143,7 @@ def test_setup_command_launches_ask_after_success(monkeypatch) -> None:
149
143
  )
150
144
  monkeypatch.setattr(
151
145
  "meshagent.cli.tool_integrations.find_existing_codex_profiles",
152
- lambda *, project_id=None, api_url=None, config_path=None: (
153
- existing_codex_profile_requests.append(project_id or "") or ["meshagent"]
154
- ),
146
+ lambda *, config_path=None: ["meshagent"],
155
147
  )
156
148
  monkeypatch.setattr(
157
149
  "meshagent.cli.helper.CustomMeshagentClient",
@@ -178,7 +170,6 @@ def test_setup_command_launches_ask_after_success(monkeypatch) -> None:
178
170
  "model": "gpt-5.5",
179
171
  }
180
172
  ]
181
- assert existing_codex_profile_requests == ["project-123"]
182
173
 
183
174
 
184
175
  def test_setup_command_launches_create_after_sample_selection(monkeypatch) -> None:
@@ -265,10 +256,7 @@ def test_setup_command_passes_current_cli_path_to_claude_configuration(
265
256
  assert kwargs["has_codex_cli"] is False
266
257
  assert kwargs["has_claude_code_cli"] is True
267
258
  assert kwargs["list_existing_codex_profiles_operation"] is None
268
- assert kwargs["configure_codex_profile_operation"] is None
269
- assert kwargs["replace_codex_profile_operation"] is None
270
259
  assert kwargs["remove_codex_profile_operation"] is None
271
- assert kwargs["get_current_codex_default_profile_operation"] is None
272
260
  assert kwargs["configure_codex_default_profile_operation"] is None
273
261
  assert callable(kwargs["configure_claude_operation"])
274
262
  assert callable(kwargs["inspect_claude_configuration_operation"])
@@ -341,9 +329,7 @@ def test_setup_command_passes_current_cli_path_to_claude_configuration(
341
329
  def test_setup_command_passes_codex_default_profile_operations(
342
330
  monkeypatch,
343
331
  ) -> None:
344
- current_default_requests: list[dict[str, str | None]] = []
345
332
  configured_defaults: list[dict[str, str | None]] = []
346
- cleared_defaults: list[dict[str, str | None]] = []
347
333
 
348
334
  async def _fake_get_active_project() -> str | None:
349
335
  return None
@@ -354,36 +340,14 @@ def test_setup_command_passes_codex_default_profile_operations(
354
340
  async def _fake_run_setup_wizard_tui(**kwargs) -> SetupWizardResult:
355
341
  assert kwargs["has_codex_cli"] is True
356
342
  assert kwargs["has_claude_code_cli"] is False
357
- assert callable(kwargs["replace_codex_profile_operation"])
358
343
  assert callable(kwargs["remove_codex_profile_operation"])
359
- assert callable(kwargs["get_current_codex_default_profile_operation"])
360
344
  assert callable(kwargs["configure_codex_default_profile_operation"])
361
- assert (
362
- await kwargs["get_current_codex_default_profile_operation"]("project-123")
363
- == "meshagent"
364
- )
365
345
  await kwargs["configure_codex_default_profile_operation"](
366
346
  "project-123",
367
- "meshagent-work",
347
+ "meshagent",
368
348
  )
369
- await kwargs["configure_codex_default_profile_operation"]("project-123", None)
370
349
  return SetupWizardResult(status="canceled", message="Setup canceled.")
371
350
 
372
- def _fake_find_current_codex_default_profile(
373
- *,
374
- project_id: str | None = None,
375
- api_url: str | None = None,
376
- config_path=None,
377
- ) -> str | None:
378
- current_default_requests.append(
379
- {
380
- "project_id": project_id,
381
- "api_url": api_url,
382
- "config_path": None if config_path is None else str(config_path),
383
- }
384
- )
385
- return "meshagent"
386
-
387
351
  def _fake_configure_codex_default_integration(
388
352
  *,
389
353
  project_id: str | None = None,
@@ -404,21 +368,6 @@ def test_setup_command_passes_codex_default_profile_operations(
404
368
  )
405
369
  assert kwargs == {}
406
370
 
407
- def _fake_clear_codex_default_profile_if_meshagent_project(
408
- *,
409
- project_id: str | None = None,
410
- api_url: str | None = None,
411
- config_path=None,
412
- ) -> bool:
413
- cleared_defaults.append(
414
- {
415
- "project_id": project_id,
416
- "api_url": api_url,
417
- "config_path": None if config_path is None else str(config_path),
418
- }
419
- )
420
- return True
421
-
422
371
  monkeypatch.setattr(
423
372
  "meshagent.cli.helper.get_active_project",
424
373
  _fake_get_active_project,
@@ -439,21 +388,10 @@ def test_setup_command_passes_codex_default_profile_operations(
439
388
  "meshagent.cli.tool_integrations.has_claude_code_cli",
440
389
  lambda: False,
441
390
  )
442
- monkeypatch.setattr(
443
- "meshagent.cli.tool_integrations.find_current_codex_default_profile",
444
- _fake_find_current_codex_default_profile,
445
- )
446
391
  monkeypatch.setattr(
447
392
  "meshagent.cli.tool_integrations.configure_codex_default_integration",
448
393
  _fake_configure_codex_default_integration,
449
394
  )
450
- monkeypatch.setattr(
451
- (
452
- "meshagent.cli.tool_integrations."
453
- "clear_codex_default_profile_if_meshagent_project"
454
- ),
455
- _fake_clear_codex_default_profile_if_meshagent_project,
456
- )
457
395
  monkeypatch.setattr(
458
396
  "meshagent.cli.local_settings.resolve_api_url",
459
397
  lambda *, api_url=None: "https://api.meshagent.com",
@@ -473,29 +411,15 @@ def test_setup_command_passes_codex_default_profile_operations(
473
411
  assert callback is not None
474
412
  callback()
475
413
 
476
- assert current_default_requests == [
477
- {
478
- "project_id": "project-123",
479
- "api_url": "https://api.meshagent.com",
480
- "config_path": None,
481
- }
482
- ]
483
414
  assert configured_defaults == [
484
415
  {
485
416
  "project_id": "project-123",
486
- "provider_id": "meshagent-work",
417
+ "provider_id": "meshagent",
487
418
  "api_url": "https://api.meshagent.com",
488
419
  "meshagent_executable": "/tmp/current/bin/meshagent",
489
420
  "config_path": None,
490
421
  }
491
422
  ]
492
- assert cleared_defaults == [
493
- {
494
- "project_id": "project-123",
495
- "api_url": "https://api.meshagent.com",
496
- "config_path": None,
497
- }
498
- ]
499
423
 
500
424
 
501
425
  def test_setup_command_does_not_launch_ask_when_not_completed(monkeypatch) -> None:
@@ -510,10 +434,7 @@ def test_setup_command_does_not_launch_ask_when_not_completed(monkeypatch) -> No
510
434
  assert kwargs["has_codex_cli"] is False
511
435
  assert kwargs["has_claude_code_cli"] is False
512
436
  assert kwargs["list_existing_codex_profiles_operation"] is None
513
- assert kwargs["configure_codex_profile_operation"] is None
514
- assert kwargs["replace_codex_profile_operation"] is None
515
437
  assert kwargs["remove_codex_profile_operation"] is None
516
- assert kwargs["get_current_codex_default_profile_operation"] is None
517
438
  assert kwargs["configure_codex_default_profile_operation"] is None
518
439
  assert kwargs["configure_claude_operation"] is None
519
440
  assert kwargs["inspect_claude_configuration_operation"] is None
@@ -565,85 +486,9 @@ def test_setup_command_does_not_launch_ask_when_not_completed(monkeypatch) -> No
565
486
  assert launched is False
566
487
 
567
488
 
568
- def test_setup_command_passes_current_cli_path_to_codex_configuration(
489
+ def test_setup_command_passes_codex_remove_operation(
569
490
  monkeypatch,
570
491
  ) -> None:
571
- captured: dict[str, str | None] = {}
572
-
573
- async def _fake_get_active_project() -> str | None:
574
- return None
575
-
576
- async def _fake_get_access_token() -> str | None:
577
- return None
578
-
579
- async def _fake_run_setup_wizard_tui(**kwargs) -> SetupWizardResult:
580
- assert kwargs["has_codex_cli"] is True
581
- assert callable(kwargs["configure_codex_profile_operation"])
582
- await kwargs["configure_codex_profile_operation"]("meshagent-work")
583
- return SetupWizardResult(status="canceled", message="Setup canceled.")
584
-
585
- def _fake_configure_codex_integration(
586
- *,
587
- profile_id: str,
588
- api_url: str | None = None,
589
- meshagent_executable: str | None = None,
590
- **kwargs,
591
- ) -> None:
592
- captured["profile_id"] = profile_id
593
- captured["api_url"] = api_url
594
- captured["meshagent_executable"] = meshagent_executable
595
- assert kwargs == {}
596
-
597
- monkeypatch.setattr(
598
- "meshagent.cli.helper.get_active_project",
599
- _fake_get_active_project,
600
- )
601
- monkeypatch.setattr(
602
- "meshagent.cli.tui.setup.run_setup_wizard_tui",
603
- _fake_run_setup_wizard_tui,
604
- )
605
- monkeypatch.setattr(
606
- "meshagent.cli.auth_async.get_access_token",
607
- _fake_get_access_token,
608
- )
609
- monkeypatch.setattr(
610
- "meshagent.cli.tool_integrations.has_codex_cli",
611
- lambda: True,
612
- )
613
- monkeypatch.setattr(
614
- "meshagent.cli.tool_integrations.configure_codex_integration",
615
- _fake_configure_codex_integration,
616
- )
617
- monkeypatch.setattr(
618
- "meshagent.cli.local_settings.resolve_api_url",
619
- lambda *, api_url=None: "https://api.meshagent.com",
620
- )
621
- monkeypatch.setattr(
622
- root_commands,
623
- "_current_meshagent_executable",
624
- lambda: "/tmp/current/bin/meshagent",
625
- )
626
- monkeypatch.setattr(
627
- root_commands,
628
- "_run_async",
629
- lambda coro: asyncio.run(coro),
630
- )
631
-
632
- callback = root_commands.setup_command.callback
633
- assert callback is not None
634
- callback()
635
-
636
- assert captured == {
637
- "profile_id": "meshagent-work",
638
- "api_url": "https://api.meshagent.com",
639
- "meshagent_executable": "/tmp/current/bin/meshagent",
640
- }
641
-
642
-
643
- def test_setup_command_passes_codex_replace_and_remove_operations(
644
- monkeypatch,
645
- ) -> None:
646
- replaced: list[dict[str, str | None]] = []
647
492
  removed: list[str] = []
648
493
 
649
494
  async def _fake_get_active_project() -> str | None:
@@ -654,28 +499,10 @@ def test_setup_command_passes_codex_replace_and_remove_operations(
654
499
 
655
500
  async def _fake_run_setup_wizard_tui(**kwargs) -> SetupWizardResult:
656
501
  assert kwargs["has_codex_cli"] is True
657
- assert callable(kwargs["replace_codex_profile_operation"])
658
502
  assert callable(kwargs["remove_codex_profile_operation"])
659
- await kwargs["replace_codex_profile_operation"]("meshagent")
660
503
  await kwargs["remove_codex_profile_operation"]("meshagent-work")
661
504
  return SetupWizardResult(status="canceled", message="Setup canceled.")
662
505
 
663
- def _fake_replace_codex_integration(
664
- *,
665
- profile_id: str,
666
- api_url: str | None = None,
667
- meshagent_executable: str | None = None,
668
- **kwargs,
669
- ) -> None:
670
- replaced.append(
671
- {
672
- "profile_id": profile_id,
673
- "api_url": api_url,
674
- "meshagent_executable": meshagent_executable,
675
- }
676
- )
677
- assert kwargs == {}
678
-
679
506
  def _fake_remove_codex_integration(*, profile_id: str, **kwargs) -> bool:
680
507
  removed.append(profile_id)
681
508
  assert kwargs == {}
@@ -701,10 +528,6 @@ def test_setup_command_passes_codex_replace_and_remove_operations(
701
528
  "meshagent.cli.tool_integrations.has_claude_code_cli",
702
529
  lambda: False,
703
530
  )
704
- monkeypatch.setattr(
705
- "meshagent.cli.tool_integrations.replace_codex_integration",
706
- _fake_replace_codex_integration,
707
- )
708
531
  monkeypatch.setattr(
709
532
  "meshagent.cli.tool_integrations.remove_codex_integration",
710
533
  _fake_remove_codex_integration,
@@ -728,13 +551,6 @@ def test_setup_command_passes_codex_replace_and_remove_operations(
728
551
  assert callback is not None
729
552
  callback()
730
553
 
731
- assert replaced == [
732
- {
733
- "profile_id": "meshagent",
734
- "api_url": "https://api.meshagent.com",
735
- "meshagent_executable": "/tmp/current/bin/meshagent",
736
- }
737
- ]
738
554
  assert removed == ["meshagent-work"]
739
555
 
740
556
 
@@ -836,10 +652,7 @@ def test_setup_command_passes_api_url_to_login_operation(monkeypatch) -> None:
836
652
  assert kwargs["has_codex_cli"] is False
837
653
  assert kwargs["has_claude_code_cli"] is False
838
654
  assert kwargs["list_existing_codex_profiles_operation"] is None
839
- assert kwargs["configure_codex_profile_operation"] is None
840
- assert kwargs["replace_codex_profile_operation"] is None
841
655
  assert kwargs["remove_codex_profile_operation"] is None
842
- assert kwargs["get_current_codex_default_profile_operation"] is None
843
656
  assert kwargs["configure_codex_default_profile_operation"] is None
844
657
  assert kwargs["configure_claude_operation"] is None
845
658
  assert kwargs["inspect_claude_configuration_operation"] is None