meshcode 2.11.143__tar.gz → 2.11.144__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 (105) hide show
  1. {meshcode-2.11.143 → meshcode-2.11.144}/PKG-INFO +1 -1
  2. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/__init__.py +1 -1
  3. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/run_agent.py +10 -1
  4. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode.egg-info/PKG-INFO +1 -1
  5. {meshcode-2.11.143 → meshcode-2.11.144}/pyproject.toml +1 -1
  6. {meshcode-2.11.143 → meshcode-2.11.144}/README.md +0 -0
  7. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/__main__.py +0 -0
  8. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/_session_handoff_template.py +0 -0
  9. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/_stop_hook_template.py +0 -0
  10. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/ascii_art.py +0 -0
  11. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/atomic_push.py +0 -0
  12. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/claude_update.py +0 -0
  13. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/cli.py +0 -0
  14. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/comms_v4.py +0 -0
  15. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/compat.py +0 -0
  16. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/daemon.py +0 -0
  17. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/date_parse.py +0 -0
  18. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/doctor.py +0 -0
  19. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/error_hints.py +0 -0
  20. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/exceptions.py +0 -0
  21. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/helper_visuals.py +0 -0
  22. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/hooks/__init__.py +0 -0
  23. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/hooks/repo_path_lock.py +0 -0
  24. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/hostd.py +0 -0
  25. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/invites.py +0 -0
  26. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/launcher.py +0 -0
  27. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/launcher_install.py +0 -0
  28. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/__init__.py +0 -0
  29. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/__main__.py +0 -0
  30. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/backend.py +0 -0
  31. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/realtime.py +0 -0
  32. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/server.py +0 -0
  33. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/sleep_signals.py +0 -0
  34. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/swarm.py +0 -0
  35. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_backend.py +0 -0
  36. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_boot_timing.py +0 -0
  37. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_install_guard.py +0 -0
  38. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_prefs_claude_version.py +0 -0
  39. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_realtime.py +0 -0
  40. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_server_wrapper.py +0 -0
  41. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/meshcode_mcp/test_swarm.py +0 -0
  42. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/preferences.py +0 -0
  43. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/protocol_handler.py +0 -0
  44. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/protocol_v2.py +0 -0
  45. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/quickstart.py +0 -0
  46. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/rpc_allowlist.py +0 -0
  47. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/scripts/check_secrets.py +0 -0
  48. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/scripts/race_rate_harness.py +0 -0
  49. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/secrets.py +0 -0
  50. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/self_update.py +0 -0
  51. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/setup_clients.py +0 -0
  52. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/supervisor.py +0 -0
  53. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/up.py +0 -0
  54. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode/upload.py +0 -0
  55. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode.egg-info/SOURCES.txt +0 -0
  56. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode.egg-info/dependency_links.txt +0 -0
  57. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode.egg-info/entry_points.txt +0 -0
  58. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode.egg-info/requires.txt +0 -0
  59. {meshcode-2.11.143 → meshcode-2.11.144}/meshcode.egg-info/top_level.txt +0 -0
  60. {meshcode-2.11.143 → meshcode-2.11.144}/setup.cfg +0 -0
  61. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_auto_update_hardening.py +0 -0
  62. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_autonomous_closegap_1.py +0 -0
  63. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_autonomous_closegap_2.py +0 -0
  64. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_autonomous_closegap_3.py +0 -0
  65. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_autonomous_prompt_inject.py +0 -0
  66. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_boot_bug_regression.py +0 -0
  67. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_color_truecolor.py +0 -0
  68. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_core.py +0 -0
  69. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_cross_agent_messaging.py +0 -0
  70. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_date_parse.py +0 -0
  71. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_doctor.py +0 -0
  72. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_epistemic_v1_python_sdk.py +0 -0
  73. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_epistemic_v1_stop_conditions.py +0 -0
  74. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_esc_deaf_state.py +0 -0
  75. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_exceptions.py +0 -0
  76. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_file_upload.py +0 -0
  77. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_helper_visuals.py +0 -0
  78. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_hostd_zombie_sessions.py +0 -0
  79. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_init_device_code.py +0 -0
  80. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_install_guard.py +0 -0
  81. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_lease_sigterm_release.py +0 -0
  82. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_live_mesh_guard.py +0 -0
  83. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_mark_read_batch.py +0 -0
  84. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_marketplace_ratings.py +0 -0
  85. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_migration_integrity.py +0 -0
  86. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_pretrust_claude.py +0 -0
  87. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_realtime_event_freshness.py +0 -0
  88. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_rls_cross_tenant.py +0 -0
  89. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_rpc_grants.py +0 -0
  90. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_rpc_migrations.py +0 -0
  91. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_run_agent_dry_run.py +0 -0
  92. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_run_agent_no_server_import.py +0 -0
  93. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_security_regressions.py +0 -0
  94. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_self_update_user_site.py +0 -0
  95. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_sentinel.py +0 -0
  96. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_session_replay_gate.py +0 -0
  97. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_setup_path.py +0 -0
  98. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_sleep_signals.py +0 -0
  99. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_status_enum_coverage.py +0 -0
  100. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_stay_on_loop_hook.py +0 -0
  101. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_stop_ghost_terminal.py +0 -0
  102. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_swarm_events.py +0 -0
  103. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_task_progress.py +0 -0
  104. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_terminal_lifecycle.py +0 -0
  105. {meshcode-2.11.143 → meshcode-2.11.144}/tests/test_wait_open_tasks_contradiction.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshcode
3
- Version: 2.11.143
3
+ Version: 2.11.144
4
4
  Summary: Real-time communication between AI agents — Supabase-backed CLI
5
5
  Author-email: MeshCode <hello@meshcode.io>
6
6
  License: MIT
@@ -1,5 +1,5 @@
1
1
  """MeshCode — Real-time communication between AI agents."""
2
- __version__ = "2.11.143"
2
+ __version__ = "2.11.144"
3
3
 
4
4
  # Exception hierarchy — eagerly imported (lightweight, no deps)
5
5
  from meshcode.exceptions import ( # noqa: F401
@@ -1257,8 +1257,17 @@ def run(agent: str, project: Optional[str] = None, editor_override: Optional[str
1257
1257
  'chief', 'captain', 'boss', 'head agent')
1258
1258
  is_cmd = any(k in _leader_haystack for k in _LEADER_KW)
1259
1259
  agent_stats = _fetch_agent_stats(agent, resolved_project)
1260
+ # Banner must show the version the agent will ACTUALLY run — the
1261
+ # boot-env target resolved by ensure_boot_env() above (always-latest),
1262
+ # NOT the launcher's own installed __version__. The launcher's global
1263
+ # install can lag (its self-update is non-blocking → one-launch
1264
+ # behind), which made the banner read e.g. v2.11.140 while the agent
1265
+ # actually booted on .143 (Samuel 2026-06-17). _boot_env_ver is None on
1266
+ # offline / dry-run / editable installs → fall back to the launcher
1267
+ # version so the banner never goes blank.
1268
+ _banner_version = _boot_env_ver or cli_version
1260
1269
  print(render_welcome(
1261
- agent, resolved_project, ascii_art, cli_version,
1270
+ agent, resolved_project, ascii_art, _banner_version,
1262
1271
  is_commander=is_cmd, role=agent_role, stats=agent_stats,
1263
1272
  profile_color=profile_color,
1264
1273
  mascot_config=mascot_cfg,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meshcode
3
- Version: 2.11.143
3
+ Version: 2.11.144
4
4
  Summary: Real-time communication between AI agents — Supabase-backed CLI
5
5
  Author-email: MeshCode <hello@meshcode.io>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "meshcode"
7
- version = "2.11.143"
7
+ version = "2.11.144"
8
8
  description = "Real-time communication between AI agents — Supabase-backed CLI"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
File without changes
File without changes
File without changes
File without changes