superqode 2.4.36__tar.gz → 2.4.38__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 (1164) hide show
  1. {superqode-2.4.36 → superqode-2.4.38}/CHANGELOG.md +50 -0
  2. {superqode-2.4.36 → superqode-2.4.38}/PKG-INFO +1 -1
  3. {superqode-2.4.36 → superqode-2.4.38}/pyproject.toml +1 -1
  4. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/__init__.py +1 -1
  5. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/client.py +4 -2
  6. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/client.py +3 -1
  7. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/__init__.py +8 -3
  8. superqode-2.4.38/src/superqode/app/herdr.py +108 -0
  9. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/agent_run.py +7 -3
  10. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/commands_impl.py +8 -0
  11. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/connect.py +36 -28
  12. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/dialogs.py +3 -0
  13. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/events.py +3 -0
  14. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/feedback.py +1 -1
  15. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_exit_lifecycle.py +2 -1
  16. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_interaction_mode.py +3 -0
  17. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_permissions.py +3 -0
  18. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helpers.py +8 -0
  19. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/model_catalog.py +3 -0
  20. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/slash_commands.py +10 -0
  21. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app_main.py +63 -4
  22. superqode-2.4.38/src/superqode/herdr.py +218 -0
  23. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/main.py +34 -8
  24. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/shell.py +3 -1
  25. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/connection_profiles.py +9 -3
  26. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/harness_catalog.py +3 -3
  27. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/subscription_env.py +3 -1
  28. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pure_mode.py +1 -0
  29. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/root_runtime.py +3 -0
  30. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/worker_process.py +3 -0
  31. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/antigravity_cli.py +3 -0
  32. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/claude_agent_sdk.py +5 -0
  33. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/codex_sdk.py +5 -0
  34. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/copilot_sdk.py +6 -4
  35. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/devin_cli.py +4 -0
  36. superqode-2.4.38/src/superqode/runtime/muse.py +404 -0
  37. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/registry.py +10 -0
  38. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/env_policy.py +5 -1
  39. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/shell_session.py +3 -1
  40. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/pty_shell.py +4 -1
  41. {superqode-2.4.36 → superqode-2.4.38}/src/superqode.egg-info/PKG-INFO +1 -1
  42. {superqode-2.4.36 → superqode-2.4.38}/src/superqode.egg-info/SOURCES.txt +6 -0
  43. {superqode-2.4.36 → superqode-2.4.38}/tests/test_cli_contract.py +2 -1
  44. {superqode-2.4.36 → superqode-2.4.38}/tests/test_commands_runtime.py +1 -0
  45. {superqode-2.4.36 → superqode-2.4.38}/tests/test_connect_harness_screen.py +4 -8
  46. {superqode-2.4.36 → superqode-2.4.38}/tests/test_connection_profiles.py +6 -5
  47. superqode-2.4.38/tests/test_herdr.py +239 -0
  48. superqode-2.4.38/tests/test_herdr_restore.py +266 -0
  49. {superqode-2.4.36 → superqode-2.4.38}/tests/test_integration_docs.py +1 -0
  50. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_dialog.py +1 -0
  51. superqode-2.4.38/tests/test_runtime_muse.py +180 -0
  52. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_mounted.py +99 -0
  53. {superqode-2.4.36 → superqode-2.4.38}/LICENSE +0 -0
  54. {superqode-2.4.36 → superqode-2.4.38}/MANIFEST.in +0 -0
  55. {superqode-2.4.36 → superqode-2.4.38}/NOTICE +0 -0
  56. {superqode-2.4.36 → superqode-2.4.38}/README.md +0 -0
  57. {superqode-2.4.36 → superqode-2.4.38}/examples/README.md +0 -0
  58. {superqode-2.4.36 → superqode-2.4.38}/examples/a2a/README.md +0 -0
  59. {superqode-2.4.36 → superqode-2.4.38}/examples/a2a/smoke_client.py +0 -0
  60. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/dspy-comprehension.manifest.yaml +0 -0
  61. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/dspy-comprehension.yaml +0 -0
  62. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/jev-tool-routing/README.md +0 -0
  63. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/jev-tool-routing/calc.py +0 -0
  64. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/jev-tool-routing/test_calc.py +0 -0
  65. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/spec-core.yaml +0 -0
  66. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/spec-deepagents.yaml +0 -0
  67. {superqode-2.4.36 → superqode-2.4.38}/examples/bench/spec-prime-agent.yaml +0 -0
  68. {superqode-2.4.36 → superqode-2.4.38}/examples/byok-acp-team.yaml +0 -0
  69. {superqode-2.4.36 → superqode-2.4.38}/examples/codex_sdk_quickstart.py +0 -0
  70. {superqode-2.4.36 → superqode-2.4.38}/examples/evals/omni-release.yaml +0 -0
  71. {superqode-2.4.36 → superqode-2.4.38}/examples/evals/omni-tiny.yaml +0 -0
  72. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/README.md +0 -0
  73. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/manifest-guard/context.md +0 -0
  74. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/manifest-guard/hooks.py +0 -0
  75. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/manifest-guard/tools.py +0 -0
  76. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/README.md +0 -0
  77. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/broken-extension/src/superqode_example_broken/__init__.py +0 -0
  78. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/policy-extension/src/superqode_example_policy/__init__.py +0 -0
  79. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/skill-extension/src/superqode_example_skill/SKILL.md +0 -0
  80. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/skill-extension/src/superqode_example_skill/__init__.py +0 -0
  81. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/tool-extension/src/superqode_example_tool/__init__.py +0 -0
  82. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/packages/tool-extension-v2/src/superqode_example_tool/__init__.py +0 -0
  83. {superqode-2.4.36 → superqode-2.4.38}/examples/extensions/python-package/src/superqode_example_extension/__init__.py +0 -0
  84. {superqode-2.4.36 → superqode-2.4.38}/examples/harness-packages/README.md +0 -0
  85. {superqode-2.4.36 → superqode-2.4.38}/examples/harness-packages/hello-harness/src/superqode_hello_harness/__init__.py +0 -0
  86. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/coding.yaml +0 -0
  87. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/deepagents.yaml +0 -0
  88. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/deepseek-harness.yaml +0 -0
  89. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/ds4.yaml +0 -0
  90. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/gemma4.yaml +0 -0
  91. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/google-adk.yaml +0 -0
  92. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/local-recursive-dynamic.yaml +0 -0
  93. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/mcp-docs.yaml +0 -0
  94. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/no-tool.yaml +0 -0
  95. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/omni-tiny-local.yaml +0 -0
  96. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/omnigent-multi-agent.yaml +0 -0
  97. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/openai-agents.yaml +0 -0
  98. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/prime-agent.yaml +0 -0
  99. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/pydanticai.yaml +0 -0
  100. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/rlm-code-lid.yaml +0 -0
  101. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/systemone/factory-route.yaml +0 -0
  102. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/systemone/ticket-triage.yaml +0 -0
  103. {superqode-2.4.36 → superqode-2.4.38}/examples/harnesses/systemone/tool-gate.yaml +0 -0
  104. {superqode-2.4.36 → superqode-2.4.38}/examples/local-models-team.yaml +0 -0
  105. {superqode-2.4.36 → superqode-2.4.38}/examples/mcp/local_docs_server.py +0 -0
  106. {superqode-2.4.36 → superqode-2.4.38}/examples/omnigent-multi-agent.agent.yaml +0 -0
  107. {superqode-2.4.36 → superqode-2.4.38}/examples/qm-deployment-layer/README.md +0 -0
  108. {superqode-2.4.36 → superqode-2.4.38}/examples/qm-deployment-layer/sandbox/skills/superqode-harness/SKILL.md +0 -0
  109. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/INCIDENT.md +0 -0
  110. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/README.md +0 -0
  111. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/RUNBOOK.md +0 -0
  112. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/deploy_audit/__init__.py +0 -0
  113. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/deploy_audit/parser.py +0 -0
  114. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/deploy_audit/report.py +0 -0
  115. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/rlm-docker.yaml +0 -0
  116. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/rlm-monty.yaml +0 -0
  117. {superqode-2.4.36 → superqode-2.4.38}/examples/rlm-demo/tests/test_report.py +0 -0
  118. {superqode-2.4.36 → superqode-2.4.38}/examples/simple-team.yaml +0 -0
  119. {superqode-2.4.36 → superqode-2.4.38}/examples/systemone/rubric-eval.yaml +0 -0
  120. {superqode-2.4.36 → superqode-2.4.38}/examples/systemone/ticket-triage-pack.yaml +0 -0
  121. {superqode-2.4.36 → superqode-2.4.38}/examples/tune/README.md +0 -0
  122. {superqode-2.4.36 → superqode-2.4.38}/scripts/benchmark_tui_responsiveness.py +0 -0
  123. {superqode-2.4.36 → superqode-2.4.38}/scripts/check_release_metadata.py +0 -0
  124. {superqode-2.4.36 → superqode-2.4.38}/scripts/check_tui_terminal.py +0 -0
  125. {superqode-2.4.36 → superqode-2.4.38}/setup.cfg +0 -0
  126. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/__init__.py +0 -0
  127. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/client.py +0 -0
  128. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/conformance.py +0 -0
  129. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/connection.py +0 -0
  130. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/context.py +0 -0
  131. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/inspect.py +0 -0
  132. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/keys.py +0 -0
  133. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/limits.py +0 -0
  134. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/oauth.py +0 -0
  135. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/presets.py +0 -0
  136. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/registry.py +0 -0
  137. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/reply.py +0 -0
  138. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/security.py +0 -0
  139. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/server.py +0 -0
  140. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/shortlist.py +0 -0
  141. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/skills.py +0 -0
  142. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/tools.py +0 -0
  143. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/trust.py +0 -0
  144. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/types.py +0 -0
  145. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/understand.py +0 -0
  146. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/a2a/workflows.py +0 -0
  147. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/__init__.py +0 -0
  148. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/doctor.py +0 -0
  149. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/permission_screen.py +0 -0
  150. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/permission_store.py +0 -0
  151. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/render.py +0 -0
  152. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/server.py +0 -0
  153. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/session_store.py +0 -0
  154. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/slash.py +0 -0
  155. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/tool_call_context.py +0 -0
  156. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp/types.py +0 -0
  157. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/acp_discovery.py +0 -0
  158. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/__init__.py +0 -0
  159. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/auto_memory.py +0 -0
  160. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/command_safety.py +0 -0
  161. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/compaction.py +0 -0
  162. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/context_manager.py +0 -0
  163. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/edit_strategies.py +0 -0
  164. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/exec_policy.py +0 -0
  165. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/hooks.py +0 -0
  166. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/instructions.py +0 -0
  167. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/loop.py +0 -0
  168. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/loop_guard.py +0 -0
  169. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/loop_policy.py +0 -0
  170. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/network_policy.py +0 -0
  171. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/output_handler.py +0 -0
  172. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/parallel_compare.py +0 -0
  173. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/peer_agents.py +0 -0
  174. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/plan_mode.py +0 -0
  175. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/reminders.py +0 -0
  176. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/rubric.py +0 -0
  177. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/session_manager.py +0 -0
  178. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/structured_output.py +0 -0
  179. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/summarization.py +0 -0
  180. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/system_prompts.py +0 -0
  181. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/terminal_output_limits.py +0 -0
  182. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/text_tool_calls.py +0 -0
  183. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/tool_args.py +0 -0
  184. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/tool_tracking.py +0 -0
  185. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent/utility_model.py +0 -0
  186. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent_output.py +0 -0
  187. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agent_stream.py +0 -0
  188. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/__init__.py +0 -0
  189. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/acp_registry.py +0 -0
  190. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/agent.minimax.io.toml +0 -0
  191. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/agentpool.phil65.github.io.toml +0 -0
  192. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/agoragentic.com.toml +0 -0
  193. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/ampcode.com.toml +0 -0
  194. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/antigravity.google.toml +0 -0
  195. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/augmentcode.com.toml +0 -0
  196. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/autodev.github.io.toml +0 -0
  197. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/blackbox.ai.toml +0 -0
  198. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/bub.dev.toml +0 -0
  199. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/cagent.dev.toml +0 -0
  200. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/claude.com.toml +0 -0
  201. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/cline.bot.toml +0 -0
  202. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/codeassistant.dev.toml +0 -0
  203. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/codebuddy.tencent.com.toml +0 -0
  204. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/codex.openai.com.toml +0 -0
  205. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/compassap.ai.toml +0 -0
  206. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/copilot.github.com.toml +0 -0
  207. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/cortex.snowflake.com.toml +0 -0
  208. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/corust.ai.toml +0 -0
  209. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/crow-ai.dev.toml +0 -0
  210. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/cursor.com.toml +0 -0
  211. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/deepagents-code.langchain.com.toml +0 -0
  212. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/deepagents.langchain.com.toml +0 -0
  213. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/devin.ai.toml +0 -0
  214. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/dimcode.dev.toml +0 -0
  215. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/dirac.run.toml +0 -0
  216. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/factory.ai.toml +0 -0
  217. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/fastagent.ai.toml +0 -0
  218. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/fount.dev.toml +0 -0
  219. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/fx.sh.toml +0 -0
  220. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/geminicli.com.toml +0 -0
  221. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/glm.z.ai.toml +0 -0
  222. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/goose.block.xyz.toml +0 -0
  223. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/harnlang.com.toml +0 -0
  224. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/hermes-agent.nousresearch.com.toml +0 -0
  225. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/junie.jetbrains.com.toml +0 -0
  226. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/kilo.ai.toml +0 -0
  227. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/kimchi.dev.toml +0 -0
  228. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/kimi.moonshot.cn.toml +0 -0
  229. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/kiro.dev.toml +0 -0
  230. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/llmlingagent.dev.toml +0 -0
  231. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/minioncode.dev.toml +0 -0
  232. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/mistral-vibe.mistral.ai.toml +0 -0
  233. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/omp.sh.toml +0 -0
  234. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/openclaw.ai.toml +0 -0
  235. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/opencode.ai.toml +0 -0
  236. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/openhands.dev.toml +0 -0
  237. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/pi.dev.toml +0 -0
  238. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/poolside.ai.toml +0 -0
  239. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/primeintellect.ai.toml +0 -0
  240. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/qoder.com.toml +0 -0
  241. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/qwenlm.github.io.toml +0 -0
  242. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/sigit.dev.toml +0 -0
  243. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/stakpak.dev.toml +0 -0
  244. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/stdiobus.dev.toml +0 -0
  245. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/vtcode.dev.toml +0 -0
  246. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/data/x.ai.toml +0 -0
  247. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/discovery.py +0 -0
  248. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/free_models.py +0 -0
  249. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/install_commands.py +0 -0
  250. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/messaging.py +0 -0
  251. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/official_acp.py +0 -0
  252. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/persona.py +0 -0
  253. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/registry.py +0 -0
  254. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/schema.py +0 -0
  255. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/agents/unified.py +0 -0
  256. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/async_utils.py +0 -0
  257. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/capabilities.py +0 -0
  258. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/constants.py +0 -0
  259. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/css.py +0 -0
  260. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/draft_recovery.py +0 -0
  261. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/harness_picker.py +0 -0
  262. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/inputs.py +0 -0
  263. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/__init__.py +0 -0
  264. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/actions_misc.py +0 -0
  265. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/build_harness.py +0 -0
  266. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/clickable_commands.py +0 -0
  267. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/codex.py +0 -0
  268. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/completion.py +0 -0
  269. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/explore.py +0 -0
  270. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/factory.py +0 -0
  271. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/formatting.py +0 -0
  272. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/harness_hub.py +0 -0
  273. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_clipboard.py +0 -0
  274. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_completion_helpers.py +0 -0
  275. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_diff_review.py +0 -0
  276. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_file_view.py +0 -0
  277. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_mcp_attach.py +0 -0
  278. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_message_queue.py +0 -0
  279. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_recipes_skills.py +0 -0
  280. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_share.py +0 -0
  281. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_startup.py +0 -0
  282. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_todos_plan.py +0 -0
  283. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_vim.py +0 -0
  284. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/helper_wizard.py +0 -0
  285. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/huggingface.py +0 -0
  286. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/local_models.py +0 -0
  287. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/mcp.py +0 -0
  288. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/pickers.py +0 -0
  289. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/pipy_commands.py +0 -0
  290. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/rlm_commands.py +0 -0
  291. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/sidebar.py +0 -0
  292. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/switchboard.py +0 -0
  293. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/mixins/tour.py +0 -0
  294. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/models.py +0 -0
  295. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/navigation.py +0 -0
  296. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/outcomes.py +0 -0
  297. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/progress.py +0 -0
  298. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/project_ui_state.py +0 -0
  299. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/prompt_stack.py +0 -0
  300. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/recipes.py +0 -0
  301. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/session_state.py +0 -0
  302. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/suggester.py +0 -0
  303. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/task_changes.py +0 -0
  304. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/task_review.py +0 -0
  305. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/theme_bridge.py +0 -0
  306. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/welcome.py +0 -0
  307. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app/widgets.py +0 -0
  308. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/app_enhanced.py +0 -0
  309. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/approval.py +0 -0
  310. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/atomic.py +0 -0
  311. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/auth/__init__.py +0 -0
  312. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/benchmarks.py +0 -0
  313. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/channels/__init__.py +0 -0
  314. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/channels/config.py +0 -0
  315. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/channels/discord.py +0 -0
  316. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/channels/service.py +0 -0
  317. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/channels/slack.py +0 -0
  318. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/channels/telegram.py +0 -0
  319. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/claude.py +0 -0
  320. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/code_theme.py +0 -0
  321. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/codex.py +0 -0
  322. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/__init__.py +0 -0
  323. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/a2a.py +0 -0
  324. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/a2a_connect.py +0 -0
  325. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/a2a_keys.py +0 -0
  326. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/acp.py +0 -0
  327. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/agents.py +0 -0
  328. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/auth.py +0 -0
  329. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/benchmark.py +0 -0
  330. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/config.py +0 -0
  331. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/connect.py +0 -0
  332. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/daemon.py +0 -0
  333. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/factory.py +0 -0
  334. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/gauge.py +0 -0
  335. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/__init__.py +0 -0
  336. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/_group.py +0 -0
  337. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/_helpers.py +0 -0
  338. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/bench.py +0 -0
  339. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/candidates.py +0 -0
  340. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/evaluation.py +0 -0
  341. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/evidence.py +0 -0
  342. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/inbox.py +0 -0
  343. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/lifecycle.py +0 -0
  344. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/logbook.py +0 -0
  345. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/observability.py +0 -0
  346. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/optimization.py +0 -0
  347. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/promotion.py +0 -0
  348. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/protocol.py +0 -0
  349. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/registry.py +0 -0
  350. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/replay.py +0 -0
  351. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/run_history.py +0 -0
  352. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/systemone.py +0 -0
  353. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/tune.py +0 -0
  354. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/harness/worker.py +0 -0
  355. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/hub.py +0 -0
  356. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/local.py +0 -0
  357. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/memory.py +0 -0
  358. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/models.py +0 -0
  359. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/optimize.py +0 -0
  360. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/plugins.py +0 -0
  361. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/policy.py +0 -0
  362. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/profiles.py +0 -0
  363. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/providers.py +0 -0
  364. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/runtime.py +0 -0
  365. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/sandbox.py +0 -0
  366. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/serve.py +0 -0
  367. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/sessions.py +0 -0
  368. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/share.py +0 -0
  369. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/skillopt.py +0 -0
  370. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/skills.py +0 -0
  371. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/tools.py +0 -0
  372. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/trust.py +0 -0
  373. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/uhp.py +0 -0
  374. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/update.py +0 -0
  375. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/commands/work.py +0 -0
  376. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/config/__init__.py +0 -0
  377. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/config/loader.py +0 -0
  378. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/config/schema.py +0 -0
  379. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/core/__init__.py +0 -0
  380. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/danger.py +0 -0
  381. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/eval_fixtures/ci-dynamic-root-cause.log +0 -0
  382. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/eval_fixtures/ci-root-cause.log +0 -0
  383. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/eval_packs/decision-routing.yaml +0 -0
  384. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/eval_packs/decision-tool-gate.yaml +0 -0
  385. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/eval_packs/local_dynamic_workflow_smoke.yaml +0 -0
  386. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/eval_packs/local_recursive_smoke.yaml +0 -0
  387. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/data/superqode-template.yaml +0 -0
  388. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/design_system.py +0 -0
  389. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/dialogs/__init__.py +0 -0
  390. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/dialogs/base.py +0 -0
  391. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/dialogs/model.py +0 -0
  392. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/dialogs/provider.py +0 -0
  393. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/dialogs/runtime.py +0 -0
  394. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/diff_view.py +0 -0
  395. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/enterprise.py +0 -0
  396. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/evaluation/__init__.py +0 -0
  397. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/evaluation/adapters.py +0 -0
  398. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/evaluation/behaviors.py +0 -0
  399. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/evaluation/engine.py +0 -0
  400. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/evaluation/scenarios.py +0 -0
  401. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/execution/__init__.py +0 -0
  402. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/execution/linter.py +0 -0
  403. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/execution/modes.py +0 -0
  404. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/execution/resolver.py +0 -0
  405. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/execution/runner.py +0 -0
  406. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/extensions.py +0 -0
  407. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/file_explorer.py +0 -0
  408. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/file_viewer.py +0 -0
  409. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/flash.py +0 -0
  410. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/gauge/__init__.py +0 -0
  411. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/gauge/levels.py +0 -0
  412. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/gauge/record.py +0 -0
  413. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/gauge/sources.py +0 -0
  414. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/governance.py +0 -0
  415. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/__init__.py +0 -0
  416. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/accelerator.py +0 -0
  417. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/agent_importer.py +0 -0
  418. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/approval_memory.py +0 -0
  419. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/__init__.py +0 -0
  420. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/base.py +0 -0
  421. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/deepagents.py +0 -0
  422. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/dsh.py +0 -0
  423. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/managed.py +0 -0
  424. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/pipy.py +0 -0
  425. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/prime_agent.py +0 -0
  426. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/pydanticai.py +0 -0
  427. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/registry.py +0 -0
  428. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/rlm.py +0 -0
  429. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/rlm_code.py +0 -0
  430. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/runtime.py +0 -0
  431. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/systemone.py +0 -0
  432. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/tau.py +0 -0
  433. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/backends/uhp.py +0 -0
  434. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/bench.py +0 -0
  435. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/catalog.py +0 -0
  436. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/compiler.py +0 -0
  437. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/conformance.py +0 -0
  438. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/context_handles.py +0 -0
  439. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/diagnostics.py +0 -0
  440. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/discovery.py +0 -0
  441. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/drift.py +0 -0
  442. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/eval.py +0 -0
  443. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/evaluators.py +0 -0
  444. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/events.py +0 -0
  445. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/explain.py +0 -0
  446. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/hooks.py +0 -0
  447. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/hub.py +0 -0
  448. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/kernel.py +0 -0
  449. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/loader.py +0 -0
  450. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/mcp_bridge.py +0 -0
  451. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/model_policy.py +0 -0
  452. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/model_routes.py +0 -0
  453. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/observability.py +0 -0
  454. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/omni.py +0 -0
  455. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/omnigent_importer.py +0 -0
  456. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/optimize.py +0 -0
  457. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/output.py +0 -0
  458. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/permissions.py +0 -0
  459. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/pipy_adapter.py +0 -0
  460. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/pipy_extensions.py +0 -0
  461. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/promotion.py +0 -0
  462. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/protocol.py +0 -0
  463. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/protocol_adapters.py +0 -0
  464. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/protocol_controller.py +0 -0
  465. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/registry.py +0 -0
  466. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/rlm_adapter.py +0 -0
  467. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/rlm_code_adapter.py +0 -0
  468. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/sandbox.py +0 -0
  469. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/self_improve.py +0 -0
  470. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/spec.py +0 -0
  471. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/store.py +0 -0
  472. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/tau_adapter.py +0 -0
  473. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/tau_management.py +0 -0
  474. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/templates.py +0 -0
  475. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/testing.py +0 -0
  476. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/uhp_adapter.py +0 -0
  477. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/uhp_client.py +0 -0
  478. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/uhp_server.py +0 -0
  479. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/wizard.py +0 -0
  480. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/workflow.py +0 -0
  481. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/harness/workflow_presets.py +0 -0
  482. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/headless.py +0 -0
  483. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/history.py +0 -0
  484. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/image_input.py +0 -0
  485. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/jev_tools/__init__.py +0 -0
  486. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/jev_tools/codex.py +0 -0
  487. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/jev_tools/sdk.py +0 -0
  488. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/jev_tools/service.py +0 -0
  489. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/__init__.py +0 -0
  490. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/airplane.py +0 -0
  491. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/bench.py +0 -0
  492. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/build.py +0 -0
  493. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/code_index.py +0 -0
  494. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/devstral.yaml +0 -0
  495. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/ds4.yaml +0 -0
  496. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/gemma4.yaml +0 -0
  497. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/glm.yaml +0 -0
  498. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/gpt-oss.yaml +0 -0
  499. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/kimi.yaml +0 -0
  500. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/laguna.yaml +0 -0
  501. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/minimax.yaml +0 -0
  502. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/qwen-coder.yaml +0 -0
  503. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/model-packs/qwen3.yaml +0 -0
  504. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/data/stack_matrix.yaml +0 -0
  505. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/doctor.py +0 -0
  506. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/engines.py +0 -0
  507. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/guardrails.py +0 -0
  508. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/hardware.py +0 -0
  509. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/install.py +0 -0
  510. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/inventory.py +0 -0
  511. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/labs.py +0 -0
  512. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/laguna.py +0 -0
  513. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/matrix.py +0 -0
  514. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/migrate.py +0 -0
  515. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/optimize.py +0 -0
  516. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/packs.py +0 -0
  517. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/repo.py +0 -0
  518. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/servers.py +0 -0
  519. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/setup.py +0 -0
  520. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/local/smoke.py +0 -0
  521. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/logging/__init__.py +0 -0
  522. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/logging/adapters.py +0 -0
  523. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/logging/formatter.py +0 -0
  524. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/logging/integration.py +0 -0
  525. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/logging/sinks.py +0 -0
  526. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/logging/unified_log.py +0 -0
  527. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/lsp/__init__.py +0 -0
  528. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/lsp/client.py +0 -0
  529. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/__init__.py +0 -0
  530. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/auth_storage.py +0 -0
  531. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/client.py +0 -0
  532. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/config.py +0 -0
  533. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/elicitation.py +0 -0
  534. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/harness_server.py +0 -0
  535. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/hf_auth.py +0 -0
  536. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/integration.py +0 -0
  537. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/jev_router_server.py +0 -0
  538. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/oauth.py +0 -0
  539. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/oauth_callback.py +0 -0
  540. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/sampling.py +0 -0
  541. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/search.py +0 -0
  542. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/mcp/types.py +0 -0
  543. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/memory/__init__.py +0 -0
  544. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/memory/config.py +0 -0
  545. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/memory/providers.py +0 -0
  546. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/memory/types.py +0 -0
  547. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/notifications.py +0 -0
  548. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/optimize/__init__.py +0 -0
  549. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/optimize/launchers.py +0 -0
  550. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/optimize/profiles.py +0 -0
  551. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/permissions/__init__.py +0 -0
  552. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/permissions/rules.py +0 -0
  553. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/__init__.py +0 -0
  554. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/ai/__init__.py +0 -0
  555. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/ai/fake.py +0 -0
  556. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/ai/gateway.py +0 -0
  557. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/ai/models.py +0 -0
  558. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/ai/transform.py +0 -0
  559. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/coding_session.py +0 -0
  560. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/compaction.py +0 -0
  561. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/config.py +0 -0
  562. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/event_stream.py +0 -0
  563. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/events.py +0 -0
  564. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/harness.py +0 -0
  565. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/harness_events.py +0 -0
  566. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/loop.py +0 -0
  567. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/messages.py +0 -0
  568. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/permissions.py +0 -0
  569. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/prompt_templates.py +0 -0
  570. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/provider_events.py +0 -0
  571. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/resources.py +0 -0
  572. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/__init__.py +0 -0
  573. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/codec.py +0 -0
  574. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/entries.py +0 -0
  575. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/jsonl.py +0 -0
  576. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/memory.py +0 -0
  577. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/repository.py +0 -0
  578. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/session.py +0 -0
  579. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/session/storage.py +0 -0
  580. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/signals.py +0 -0
  581. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/skills.py +0 -0
  582. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/stream.py +0 -0
  583. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/system_prompt.py +0 -0
  584. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/__init__.py +0 -0
  585. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/base.py +0 -0
  586. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/edit_diff.py +0 -0
  587. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/files.py +0 -0
  588. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/paths.py +0 -0
  589. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/registry.py +0 -0
  590. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/search.py +0 -0
  591. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/tools/truncate.py +0 -0
  592. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/types.py +0 -0
  593. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/pipy/validation.py +0 -0
  594. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/plan.py +0 -0
  595. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/platform_locks.py +0 -0
  596. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/plugins.py +0 -0
  597. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/project_trust.py +0 -0
  598. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/__init__.py +0 -0
  599. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/_builtin_profiles.py +0 -0
  600. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/acp_free_models.py +0 -0
  601. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/acp_models.py +0 -0
  602. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/acp_registry.py +0 -0
  603. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/apple_fm.py +0 -0
  604. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/catalog.py +0 -0
  605. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/connection_diagnostics.py +0 -0
  606. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/copilot_auth.py +0 -0
  607. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/credentials.py +0 -0
  608. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/dynamic.py +0 -0
  609. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/env_introspect.py +0 -0
  610. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/free_inference.py +0 -0
  611. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/gateway/__init__.py +0 -0
  612. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/gateway/base.py +0 -0
  613. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/gateway/litellm_gateway.py +0 -0
  614. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/gateway/openresponses_gateway.py +0 -0
  615. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/gateway/synthetic.py +0 -0
  616. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/grok_cli_auth.py +0 -0
  617. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/health.py +0 -0
  618. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/__init__.py +0 -0
  619. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/convert.py +0 -0
  620. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/downloader.py +0 -0
  621. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/endpoints.py +0 -0
  622. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/fetch.py +0 -0
  623. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/hub.py +0 -0
  624. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/inference.py +0 -0
  625. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/huggingface/transformers_runner.py +0 -0
  626. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/live_models.py +0 -0
  627. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/__init__.py +0 -0
  628. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/_mlx_worker.py +0 -0
  629. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/base.py +0 -0
  630. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/capabilities.py +0 -0
  631. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/context_probe.py +0 -0
  632. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/discovery.py +0 -0
  633. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/ds4.py +0 -0
  634. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/lmstudio.py +0 -0
  635. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/mlx.py +0 -0
  636. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/mlx_engine.py +0 -0
  637. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/mlx_tools.py +0 -0
  638. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/ollama.py +0 -0
  639. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/sglang.py +0 -0
  640. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/smoke.py +0 -0
  641. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/tgi.py +0 -0
  642. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/tool_support.py +0 -0
  643. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local/vllm.py +0 -0
  644. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/local_order.py +0 -0
  645. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/manager.py +0 -0
  646. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/model_specs.py +0 -0
  647. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/models.py +0 -0
  648. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/models_dev.py +0 -0
  649. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/opencode_models.py +0 -0
  650. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/__init__.py +0 -0
  651. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/converters/__init__.py +0 -0
  652. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/converters/messages.py +0 -0
  653. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/converters/tools.py +0 -0
  654. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/schema/__init__.py +0 -0
  655. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/schema/models.py +0 -0
  656. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/streaming/__init__.py +0 -0
  657. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/streaming/parser.py +0 -0
  658. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/tools/__init__.py +0 -0
  659. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/tools/apply_patch.py +0 -0
  660. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/tools/code_interpreter.py +0 -0
  661. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/tools/file_search.py +0 -0
  662. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/openresponses/tools/mcp_adapter.py +0 -0
  663. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/prime_agent.py +0 -0
  664. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/profiles.py +0 -0
  665. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/recommendations.py +0 -0
  666. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/registry.py +0 -0
  667. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/subscription_login.py +0 -0
  668. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/uhp.py +0 -0
  669. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/providers/usage.py +0 -0
  670. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/py.typed +0 -0
  671. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rendering/__init__.py +0 -0
  672. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rendering/html_export.py +0 -0
  673. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rendering/markdown.py +0 -0
  674. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rendering/systemone.py +0 -0
  675. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rendering/transcript_export.py +0 -0
  676. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/__init__.py +0 -0
  677. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/coding_session.py +0 -0
  678. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/config.py +0 -0
  679. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/context.py +0 -0
  680. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/identity.py +0 -0
  681. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/kernel.py +0 -0
  682. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/kernel_backend.py +0 -0
  683. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/kernel_docker.py +0 -0
  684. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/kernel_monty.py +0 -0
  685. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/kernel_server.py +0 -0
  686. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/policy.py +0 -0
  687. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/root_worker.py +0 -0
  688. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/sandbox.py +0 -0
  689. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/subcalls.py +0 -0
  690. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/supervisor.py +0 -0
  691. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/rlm/worker.py +0 -0
  692. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/__init__.py +0 -0
  693. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/adk.py +0 -0
  694. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/antigravity_managed.py +0 -0
  695. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/antigravity_sdk.py +0 -0
  696. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/antigravity_status.py +0 -0
  697. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/base.py +0 -0
  698. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/builtin.py +0 -0
  699. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/devin_status.py +0 -0
  700. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/errors.py +0 -0
  701. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/openai_agents.py +0 -0
  702. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/openai_sandbox.py +0 -0
  703. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/openai_session.py +0 -0
  704. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/pydanticai.py +0 -0
  705. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/tool_bridge.py +0 -0
  706. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/tool_bridge_openai.py +0 -0
  707. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/tool_bridge_pydanticai.py +0 -0
  708. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/runtime/vendor_cli.py +0 -0
  709. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/safety/__init__.py +0 -0
  710. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/safety/sandbox.py +0 -0
  711. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/safety/warnings.py +0 -0
  712. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/sandbox/__init__.py +0 -0
  713. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/sandbox/backends.py +0 -0
  714. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/sandbox/execution.py +0 -0
  715. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/sandbox/local_sandbox.py +0 -0
  716. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/search_registry.py +0 -0
  717. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/server/__init__.py +0 -0
  718. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/server/api.py +0 -0
  719. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/server/web.py +0 -0
  720. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/__init__.py +0 -0
  721. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/factory.py +0 -0
  722. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/harness_bridge.py +0 -0
  723. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/persistence.py +0 -0
  724. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/share_artifacts.py +0 -0
  725. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/sharing.py +0 -0
  726. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session/switchboard.py +0 -0
  727. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/session.py +0 -0
  728. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/sidebar.py +0 -0
  729. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/skillopt.py +0 -0
  730. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/skills.py +0 -0
  731. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/stream_view.py +0 -0
  732. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/styles/__init__.py +0 -0
  733. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/__init__.py +0 -0
  734. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/audit.py +0 -0
  735. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/client.py +0 -0
  736. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/compose.py +0 -0
  737. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/config.py +0 -0
  738. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/context_prune.py +0 -0
  739. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/decision.py +0 -0
  740. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/live.py +0 -0
  741. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/pack.py +0 -0
  742. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/packs/context_prune.yaml +0 -0
  743. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/packs/factory_route.yaml +0 -0
  744. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/packs/rubric.yaml +0 -0
  745. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/packs/tool_gate.yaml +0 -0
  746. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/runtime.py +0 -0
  747. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/state.py +0 -0
  748. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/tool_router.py +0 -0
  749. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/tool_search.py +0 -0
  750. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/tune.py +0 -0
  751. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/systemone/types.py +0 -0
  752. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tool_call.py +0 -0
  753. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tool_gateway/__init__.py +0 -0
  754. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tool_gateway/app.py +0 -0
  755. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tool_gateway/routing.py +0 -0
  756. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/__init__.py +0 -0
  757. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/agent_tools.py +0 -0
  758. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/apply_patch.py +0 -0
  759. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/base.py +0 -0
  760. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/batch_tool.py +0 -0
  761. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/compact_tool.py +0 -0
  762. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/context_handle.py +0 -0
  763. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/context_tools.py +0 -0
  764. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/core_tools.py +0 -0
  765. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/diagnostics.py +0 -0
  766. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/diff_utils.py +0 -0
  767. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/discovery.py +0 -0
  768. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/display.py +0 -0
  769. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/dynamic_workflow.py +0 -0
  770. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/edit_tools.py +0 -0
  771. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/enhanced_base.py +0 -0
  772. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/file_tools.py +0 -0
  773. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/file_tracking.py +0 -0
  774. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/governed.py +0 -0
  775. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/harness_agent_session.py +0 -0
  776. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/image_tools.py +0 -0
  777. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/lsp_tools.py +0 -0
  778. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/mcp_tools.py +0 -0
  779. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/monty_tool.py +0 -0
  780. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/network_tools.py +0 -0
  781. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/output_spill.py +0 -0
  782. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/peer_agent_tools.py +0 -0
  783. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/permissions.py +0 -0
  784. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/post_edit.py +0 -0
  785. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/question_tool.py +0 -0
  786. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/request_permissions_tool.py +0 -0
  787. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/search_tools.py +0 -0
  788. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/semantic_search.py +0 -0
  789. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/shell_tools.py +0 -0
  790. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/skill_tools.py +0 -0
  791. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/spawn_harness.py +0 -0
  792. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/todo_tools.py +0 -0
  793. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/tool_search.py +0 -0
  794. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/validation.py +0 -0
  795. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tools/web_tools.py +0 -0
  796. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tui_integration.py +0 -0
  797. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tui_widgets/__init__.py +0 -0
  798. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tui_widgets/widgets/__init__.py +0 -0
  799. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tui_widgets/widgets/progress.py +0 -0
  800. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/tui_widgets/widgets/tool_display.py +0 -0
  801. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/undo_manager.py +0 -0
  802. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/utils/__init__.py +0 -0
  803. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/utils/error_handling.py +0 -0
  804. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/utils/fuzzy.py +0 -0
  805. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/__init__.py +0 -0
  806. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/a2a_connect.py +0 -0
  807. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/agent_store.py +0 -0
  808. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/agent_switcher.py +0 -0
  809. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/animation_manager.py +0 -0
  810. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/code_context.py +0 -0
  811. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/command_palette.py +0 -0
  812. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/connection_browser.py +0 -0
  813. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/connection_status.py +0 -0
  814. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/context_preview.py +0 -0
  815. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/conversation_history.py +0 -0
  816. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/diff_indicator.py +0 -0
  817. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/enhanced_status_bar.py +0 -0
  818. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/enhanced_toast.py +0 -0
  819. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/file_browser.py +0 -0
  820. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/file_editor.py +0 -0
  821. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/file_reference.py +0 -0
  822. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/harness_hub.py +0 -0
  823. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/history_search.py +0 -0
  824. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/leader_key.py +0 -0
  825. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/mode_switcher.py +0 -0
  826. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/model_picker.py +0 -0
  827. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/outcome_screen.py +0 -0
  828. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/panel_shortcuts.py +0 -0
  829. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/permission_preview.py +0 -0
  830. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/prompt.py +0 -0
  831. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/provider_connect.py +0 -0
  832. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/resizable_sidebar.py +0 -0
  833. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/response_changes.py +0 -0
  834. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/response_display.py +0 -0
  835. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/rewind_overlay.py +0 -0
  836. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/rich_tool_display.py +0 -0
  837. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/session_browser.py +0 -0
  838. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/sidebar_panels.py +0 -0
  839. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/slash_commands.py +0 -0
  840. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/slash_complete.py +0 -0
  841. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/split_view.py +0 -0
  842. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/status_bar.py +0 -0
  843. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/superqode_display.py +0 -0
  844. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/systemone_tune.py +0 -0
  845. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/theme_picker.py +0 -0
  846. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/thinking.py +0 -0
  847. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/thinking_display.py +0 -0
  848. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/throbber.py +0 -0
  849. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/toast.py +0 -0
  850. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/uhp_connect.py +0 -0
  851. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/widgets/unified_output.py +0 -0
  852. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/__init__.py +0 -0
  853. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/cockpit.py +0 -0
  854. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/integration.py +0 -0
  855. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/models.py +0 -0
  856. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/runner.py +0 -0
  857. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/store.py +0 -0
  858. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/usage.py +0 -0
  859. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workorders/worker.py +0 -0
  860. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/__init__.py +0 -0
  861. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/artifacts.py +0 -0
  862. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/change_summary.py +0 -0
  863. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/coordinator.py +0 -0
  864. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/diff_tracker.py +0 -0
  865. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/git_guard.py +0 -0
  866. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/git_snapshot.py +0 -0
  867. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/manager.py +0 -0
  868. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/snapshot.py +0 -0
  869. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/watcher.py +0 -0
  870. {superqode-2.4.36 → superqode-2.4.38}/src/superqode/workspace/worktree.py +0 -0
  871. {superqode-2.4.36 → superqode-2.4.38}/src/superqode.egg-info/dependency_links.txt +0 -0
  872. {superqode-2.4.36 → superqode-2.4.38}/src/superqode.egg-info/entry_points.txt +0 -0
  873. {superqode-2.4.36 → superqode-2.4.38}/src/superqode.egg-info/requires.txt +0 -0
  874. {superqode-2.4.36 → superqode-2.4.38}/src/superqode.egg-info/top_level.txt +0 -0
  875. {superqode-2.4.36 → superqode-2.4.38}/tests/fixtures/gauge-release-policy.json +0 -0
  876. {superqode-2.4.36 → superqode-2.4.38}/tests/test_030_candidate.py +0 -0
  877. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_bridge.py +0 -0
  878. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_conformance.py +0 -0
  879. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_connect.py +0 -0
  880. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_context.py +0 -0
  881. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_keys.py +0 -0
  882. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_limits.py +0 -0
  883. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_oauth.py +0 -0
  884. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_registry.py +0 -0
  885. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_security.py +0 -0
  886. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_shortlist.py +0 -0
  887. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_trust.py +0 -0
  888. {superqode-2.4.36 → superqode-2.4.38}/tests/test_a2a_understand.py +0 -0
  889. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_agent_dispatch.py +0 -0
  890. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_client.py +0 -0
  891. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_free_models.py +0 -0
  892. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_parent_tool_linking.py +0 -0
  893. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_permission_store.py +0 -0
  894. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_registry.py +0 -0
  895. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_render.py +0 -0
  896. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_server.py +0 -0
  897. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_session_store.py +0 -0
  898. {superqode-2.4.36 → superqode-2.4.38}/tests/test_acp_slash.py +0 -0
  899. {superqode-2.4.36 → superqode-2.4.38}/tests/test_adaptive_compaction.py +0 -0
  900. {superqode-2.4.36 → superqode-2.4.38}/tests/test_agent_importer.py +0 -0
  901. {superqode-2.4.36 → superqode-2.4.38}/tests/test_agent_install_commands.py +0 -0
  902. {superqode-2.4.36 → superqode-2.4.38}/tests/test_agent_loop_harness.py +0 -0
  903. {superqode-2.4.36 → superqode-2.4.38}/tests/test_agent_memory.py +0 -0
  904. {superqode-2.4.36 → superqode-2.4.38}/tests/test_agents_md_compat.py +0 -0
  905. {superqode-2.4.36 → superqode-2.4.38}/tests/test_agy_tui_commands.py +0 -0
  906. {superqode-2.4.36 → superqode-2.4.38}/tests/test_app_main_contract.py +0 -0
  907. {superqode-2.4.36 → superqode-2.4.38}/tests/test_apply_patch.py +0 -0
  908. {superqode-2.4.36 → superqode-2.4.38}/tests/test_auth.py +0 -0
  909. {superqode-2.4.36 → superqode-2.4.38}/tests/test_bash_spill.py +0 -0
  910. {superqode-2.4.36 → superqode-2.4.38}/tests/test_benchmarks.py +0 -0
  911. {superqode-2.4.36 → superqode-2.4.38}/tests/test_catalog_freshness.py +0 -0
  912. {superqode-2.4.36 → superqode-2.4.38}/tests/test_change_summary.py +0 -0
  913. {superqode-2.4.36 → superqode-2.4.38}/tests/test_channels.py +0 -0
  914. {superqode-2.4.36 → superqode-2.4.38}/tests/test_cli_commands.py +0 -0
  915. {superqode-2.4.36 → superqode-2.4.38}/tests/test_cli_connect.py +0 -0
  916. {superqode-2.4.36 → superqode-2.4.38}/tests/test_cli_reference_coverage.py +0 -0
  917. {superqode-2.4.36 → superqode-2.4.38}/tests/test_clickable_commands.py +0 -0
  918. {superqode-2.4.36 → superqode-2.4.38}/tests/test_command_safety.py +0 -0
  919. {superqode-2.4.36 → superqode-2.4.38}/tests/test_compaction.py +0 -0
  920. {superqode-2.4.36 → superqode-2.4.38}/tests/test_conditional_instructions.py +0 -0
  921. {superqode-2.4.36 → superqode-2.4.38}/tests/test_config_loader.py +0 -0
  922. {superqode-2.4.36 → superqode-2.4.38}/tests/test_config_runtime.py +0 -0
  923. {superqode-2.4.36 → superqode-2.4.38}/tests/test_connect_setup.py +0 -0
  924. {superqode-2.4.36 → superqode-2.4.38}/tests/test_connect_subscription_routes.py +0 -0
  925. {superqode-2.4.36 → superqode-2.4.38}/tests/test_connection_experience.py +0 -0
  926. {superqode-2.4.36 → superqode-2.4.38}/tests/test_connection_live.py +0 -0
  927. {superqode-2.4.36 → superqode-2.4.38}/tests/test_context_handles.py +0 -0
  928. {superqode-2.4.36 → superqode-2.4.38}/tests/test_context_probe.py +0 -0
  929. {superqode-2.4.36 → superqode-2.4.38}/tests/test_context_prune.py +0 -0
  930. {superqode-2.4.36 → superqode-2.4.38}/tests/test_context_remaining.py +0 -0
  931. {superqode-2.4.36 → superqode-2.4.38}/tests/test_copilot_login_ux.py +0 -0
  932. {superqode-2.4.36 → superqode-2.4.38}/tests/test_copilot_tui_commands.py +0 -0
  933. {superqode-2.4.36 → superqode-2.4.38}/tests/test_core_tool_history.py +0 -0
  934. {superqode-2.4.36 → superqode-2.4.38}/tests/test_create_skill_tool.py +0 -0
  935. {superqode-2.4.36 → superqode-2.4.38}/tests/test_decision_evaluators.py +0 -0
  936. {superqode-2.4.36 → superqode-2.4.38}/tests/test_deepagents_model_spec.py +0 -0
  937. {superqode-2.4.36 → superqode-2.4.38}/tests/test_deferred_tools.py +0 -0
  938. {superqode-2.4.36 → superqode-2.4.38}/tests/test_design_system_contrast.py +0 -0
  939. {superqode-2.4.36 → superqode-2.4.38}/tests/test_developer_workflow_docs.py +0 -0
  940. {superqode-2.4.36 → superqode-2.4.38}/tests/test_ds4_local_client.py +0 -0
  941. {superqode-2.4.36 → superqode-2.4.38}/tests/test_dsh_harness.py +0 -0
  942. {superqode-2.4.36 → superqode-2.4.38}/tests/test_dx_enhancements.py +0 -0
  943. {superqode-2.4.36 → superqode-2.4.38}/tests/test_dynamic_workflow_tool.py +0 -0
  944. {superqode-2.4.36 → superqode-2.4.38}/tests/test_edit_line_number_strip.py +0 -0
  945. {superqode-2.4.36 → superqode-2.4.38}/tests/test_env_introspect.py +0 -0
  946. {superqode-2.4.36 → superqode-2.4.38}/tests/test_execution_resolver.py +0 -0
  947. {superqode-2.4.36 → superqode-2.4.38}/tests/test_extensions.py +0 -0
  948. {superqode-2.4.36 → superqode-2.4.38}/tests/test_final_parity_wave.py +0 -0
  949. {superqode-2.4.36 → superqode-2.4.38}/tests/test_free_models.py +0 -0
  950. {superqode-2.4.36 → superqode-2.4.38}/tests/test_gauge_release_policy.py +0 -0
  951. {superqode-2.4.36 → superqode-2.4.38}/tests/test_governance.py +0 -0
  952. {superqode-2.4.36 → superqode-2.4.38}/tests/test_grok_cli_auth.py +0 -0
  953. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_agent_session.py +0 -0
  954. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_backends.py +0 -0
  955. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_bench.py +0 -0
  956. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_bench_paths.py +0 -0
  957. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_catalog.py +0 -0
  958. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_connect_catalog.py +0 -0
  959. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_drift.py +0 -0
  960. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_eval_splits.py +0 -0
  961. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_examples.py +0 -0
  962. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_explain.py +0 -0
  963. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_hooks.py +0 -0
  964. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_hub_catalog.py +0 -0
  965. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_hub_screen.py +0 -0
  966. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_kernel.py +0 -0
  967. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_mcp_server.py +0 -0
  968. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_model_policy.py +0 -0
  969. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_observability.py +0 -0
  970. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_omni.py +0 -0
  971. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_output.py +0 -0
  972. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_permissions.py +0 -0
  973. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_promotion.py +0 -0
  974. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_protocol.py +0 -0
  975. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_sandbox.py +0 -0
  976. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_seesaw_dimensions.py +0 -0
  977. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_self_improve.py +0 -0
  978. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_session_bridge.py +0 -0
  979. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_spec.py +0 -0
  980. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_store.py +0 -0
  981. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_usage.py +0 -0
  982. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_wizard.py +0 -0
  983. {superqode-2.4.36 → superqode-2.4.38}/tests/test_harness_workflow.py +0 -0
  984. {superqode-2.4.36 → superqode-2.4.38}/tests/test_headless.py +0 -0
  985. {superqode-2.4.36 → superqode-2.4.38}/tests/test_hf_fetch.py +0 -0
  986. {superqode-2.4.36 → superqode-2.4.38}/tests/test_hooks.py +0 -0
  987. {superqode-2.4.36 → superqode-2.4.38}/tests/test_install_script.py +0 -0
  988. {superqode-2.4.36 → superqode-2.4.38}/tests/test_jev_tools_sdk.py +0 -0
  989. {superqode-2.4.36 → superqode-2.4.38}/tests/test_kimi_k3_provider.py +0 -0
  990. {superqode-2.4.36 → superqode-2.4.38}/tests/test_kimi_k3_routes.py +0 -0
  991. {superqode-2.4.36 → superqode-2.4.38}/tests/test_linter_runner.py +0 -0
  992. {superqode-2.4.36 → superqode-2.4.38}/tests/test_litellm_gateway.py +0 -0
  993. {superqode-2.4.36 → superqode-2.4.38}/tests/test_live_acp_registry.py +0 -0
  994. {superqode-2.4.36 → superqode-2.4.38}/tests/test_live_models.py +0 -0
  995. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_airplane.py +0 -0
  996. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_build.py +0 -0
  997. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_code_index.py +0 -0
  998. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_install.py +0 -0
  999. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_labs.py +0 -0
  1000. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_migrate.py +0 -0
  1001. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_model_optimizations.py +0 -0
  1002. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_packs.py +0 -0
  1003. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_sandbox.py +0 -0
  1004. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_search.py +0 -0
  1005. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_servers.py +0 -0
  1006. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_setup.py +0 -0
  1007. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_smoke.py +0 -0
  1008. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_stack.py +0 -0
  1009. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_tool_capabilities.py +0 -0
  1010. {superqode-2.4.36 → superqode-2.4.38}/tests/test_local_tool_support.py +0 -0
  1011. {superqode-2.4.36 → superqode-2.4.38}/tests/test_login_api.py +0 -0
  1012. {superqode-2.4.36 → superqode-2.4.38}/tests/test_loop_guard.py +0 -0
  1013. {superqode-2.4.36 → superqode-2.4.38}/tests/test_managed_harness_backend.py +0 -0
  1014. {superqode-2.4.36 → superqode-2.4.38}/tests/test_markdown_render.py +0 -0
  1015. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp.py +0 -0
  1016. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp_example_server.py +0 -0
  1017. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp_integration.py +0 -0
  1018. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp_live.py +0 -0
  1019. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp_oauth_generalized.py +0 -0
  1020. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp_tools_runtime.py +0 -0
  1021. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mcp_two_way.py +0 -0
  1022. {superqode-2.4.36 → superqode-2.4.38}/tests/test_memory_recall.py +0 -0
  1023. {superqode-2.4.36 → superqode-2.4.38}/tests/test_mlx_tools.py +0 -0
  1024. {superqode-2.4.36 → superqode-2.4.38}/tests/test_model_profiles.py +0 -0
  1025. {superqode-2.4.36 → superqode-2.4.38}/tests/test_model_specs.py +0 -0
  1026. {superqode-2.4.36 → superqode-2.4.38}/tests/test_models_dev.py +0 -0
  1027. {superqode-2.4.36 → superqode-2.4.38}/tests/test_monty_tool.py +0 -0
  1028. {superqode-2.4.36 → superqode-2.4.38}/tests/test_navigation_history.py +0 -0
  1029. {superqode-2.4.36 → superqode-2.4.38}/tests/test_network_policy.py +0 -0
  1030. {superqode-2.4.36 → superqode-2.4.38}/tests/test_ollama_client.py +0 -0
  1031. {superqode-2.4.36 → superqode-2.4.38}/tests/test_omnigent_agent_session_smoke.py +0 -0
  1032. {superqode-2.4.36 → superqode-2.4.38}/tests/test_omnigent_importer.py +0 -0
  1033. {superqode-2.4.36 → superqode-2.4.38}/tests/test_openai_session.py +0 -0
  1034. {superqode-2.4.36 → superqode-2.4.38}/tests/test_optimize_harnesses.py +0 -0
  1035. {superqode-2.4.36 → superqode-2.4.38}/tests/test_output_spill.py +0 -0
  1036. {superqode-2.4.36 → superqode-2.4.38}/tests/test_parallel_compare.py +0 -0
  1037. {superqode-2.4.36 → superqode-2.4.38}/tests/test_peer_agents.py +0 -0
  1038. {superqode-2.4.36 → superqode-2.4.38}/tests/test_plugin_hook_wiring.py +0 -0
  1039. {superqode-2.4.36 → superqode-2.4.38}/tests/test_plugins.py +0 -0
  1040. {superqode-2.4.36 → superqode-2.4.38}/tests/test_policies_and_turndiff.py +0 -0
  1041. {superqode-2.4.36 → superqode-2.4.38}/tests/test_post_edit_verify.py +0 -0
  1042. {superqode-2.4.36 → superqode-2.4.38}/tests/test_prime_agent_client.py +0 -0
  1043. {superqode-2.4.36 → superqode-2.4.38}/tests/test_prime_agent_harness.py +0 -0
  1044. {superqode-2.4.36 → superqode-2.4.38}/tests/test_prime_agent_provider.py +0 -0
  1045. {superqode-2.4.36 → superqode-2.4.38}/tests/test_prime_command_surface.py +0 -0
  1046. {superqode-2.4.36 → superqode-2.4.38}/tests/test_prime_tui_rpc.py +0 -0
  1047. {superqode-2.4.36 → superqode-2.4.38}/tests/test_progressive_discovery.py +0 -0
  1048. {superqode-2.4.36 → superqode-2.4.38}/tests/test_progressive_reveals.py +0 -0
  1049. {superqode-2.4.36 → superqode-2.4.38}/tests/test_project_trust.py +0 -0
  1050. {superqode-2.4.36 → superqode-2.4.38}/tests/test_prompt_stack.py +0 -0
  1051. {superqode-2.4.36 → superqode-2.4.38}/tests/test_provider_catalog.py +0 -0
  1052. {superqode-2.4.36 → superqode-2.4.38}/tests/test_provider_dynamic.py +0 -0
  1053. {superqode-2.4.36 → superqode-2.4.38}/tests/test_provider_models.py +0 -0
  1054. {superqode-2.4.36 → superqode-2.4.38}/tests/test_provider_recommendations.py +0 -0
  1055. {superqode-2.4.36 → superqode-2.4.38}/tests/test_published_agent_card.py +0 -0
  1056. {superqode-2.4.36 → superqode-2.4.38}/tests/test_pure_mode_sessions.py +0 -0
  1057. {superqode-2.4.36 → superqode-2.4.38}/tests/test_qm_deployment_layer.py +0 -0
  1058. {superqode-2.4.36 → superqode-2.4.38}/tests/test_rate_limit_retry.py +0 -0
  1059. {superqode-2.4.36 → superqode-2.4.38}/tests/test_read_tool_limits.py +0 -0
  1060. {superqode-2.4.36 → superqode-2.4.38}/tests/test_reasoning_and_budget.py +0 -0
  1061. {superqode-2.4.36 → superqode-2.4.38}/tests/test_recursive_eval_packs.py +0 -0
  1062. {superqode-2.4.36 → superqode-2.4.38}/tests/test_release_metadata.py +0 -0
  1063. {superqode-2.4.36 → superqode-2.4.38}/tests/test_rlm_code_integration.py +0 -0
  1064. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_adk.py +0 -0
  1065. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_antigravity_cli.py +0 -0
  1066. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_antigravity_managed.py +0 -0
  1067. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_antigravity_sdk.py +0 -0
  1068. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_builtin.py +0 -0
  1069. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_claude_agent_sdk.py +0 -0
  1070. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_codex_sdk.py +0 -0
  1071. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_copilot_sdk.py +0 -0
  1072. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_devin_cli.py +0 -0
  1073. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_openai_agents.py +0 -0
  1074. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_openai_events.py +0 -0
  1075. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_openai_hitl.py +0 -0
  1076. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_openai_sandbox.py +0 -0
  1077. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_protocol.py +0 -0
  1078. {superqode-2.4.36 → superqode-2.4.38}/tests/test_runtime_pydanticai.py +0 -0
  1079. {superqode-2.4.36 → superqode-2.4.38}/tests/test_sandbox_backends.py +0 -0
  1080. {superqode-2.4.36 → superqode-2.4.38}/tests/test_sandbox_execution.py +0 -0
  1081. {superqode-2.4.36 → superqode-2.4.38}/tests/test_search_roots.py +0 -0
  1082. {superqode-2.4.36 → superqode-2.4.38}/tests/test_semantic_search.py +0 -0
  1083. {superqode-2.4.36 → superqode-2.4.38}/tests/test_session_browser.py +0 -0
  1084. {superqode-2.4.36 → superqode-2.4.38}/tests/test_session_switchboard.py +0 -0
  1085. {superqode-2.4.36 → superqode-2.4.38}/tests/test_shell_session.py +0 -0
  1086. {superqode-2.4.36 → superqode-2.4.38}/tests/test_simple_login.py +0 -0
  1087. {superqode-2.4.36 → superqode-2.4.38}/tests/test_simple_query_fastpath.py +0 -0
  1088. {superqode-2.4.36 → superqode-2.4.38}/tests/test_skillopt.py +0 -0
  1089. {superqode-2.4.36 → superqode-2.4.38}/tests/test_slash_runtime.py +0 -0
  1090. {superqode-2.4.36 → superqode-2.4.38}/tests/test_spawn_harness_tool.py +0 -0
  1091. {superqode-2.4.36 → superqode-2.4.38}/tests/test_status_bar_layout.py +0 -0
  1092. {superqode-2.4.36 → superqode-2.4.38}/tests/test_steering_continue_reminders.py +0 -0
  1093. {superqode-2.4.36 → superqode-2.4.38}/tests/test_streaming_tool_calls.py +0 -0
  1094. {superqode-2.4.36 → superqode-2.4.38}/tests/test_subscription_billing_policy.py +0 -0
  1095. {superqode-2.4.36 → superqode-2.4.38}/tests/test_subscription_login.py +0 -0
  1096. {superqode-2.4.36 → superqode-2.4.38}/tests/test_subscription_login_consent.py +0 -0
  1097. {superqode-2.4.36 → superqode-2.4.38}/tests/test_synthetic_gateways.py +0 -0
  1098. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_audit.py +0 -0
  1099. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_decision.py +0 -0
  1100. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_discovery.py +0 -0
  1101. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_general.py +0 -0
  1102. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_live.py +0 -0
  1103. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_live_recorded.py +0 -0
  1104. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_loop.py +0 -0
  1105. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_regressions.py +0 -0
  1106. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_state.py +0 -0
  1107. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_stub.py +0 -0
  1108. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_tool_gate.py +0 -0
  1109. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_tool_router.py +0 -0
  1110. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_tune.py +0 -0
  1111. {superqode-2.4.36 → superqode-2.4.38}/tests/test_systemone_types.py +0 -0
  1112. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tau_harness_adapter.py +0 -0
  1113. {superqode-2.4.36 → superqode-2.4.38}/tests/test_terminal_output_limits.py +0 -0
  1114. {superqode-2.4.36 → superqode-2.4.38}/tests/test_theme_contrast.py +0 -0
  1115. {superqode-2.4.36 → superqode-2.4.38}/tests/test_theme_picker.py +0 -0
  1116. {superqode-2.4.36 → superqode-2.4.38}/tests/test_theme_repaint.py +0 -0
  1117. {superqode-2.4.36 → superqode-2.4.38}/tests/test_todo_tools.py +0 -0
  1118. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_args_repair.py +0 -0
  1119. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_batch_safety.py +0 -0
  1120. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_bridge.py +0 -0
  1121. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_bridge_openai.py +0 -0
  1122. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_call_repair.py +0 -0
  1123. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_discovery_pipeline.py +0 -0
  1124. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_gateway.py +0 -0
  1125. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_output_pruning.py +0 -0
  1126. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tool_tracking.py +0 -0
  1127. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tools.py +0 -0
  1128. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_animation_bursts.py +0 -0
  1129. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_background_io.py +0 -0
  1130. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_change_summary.py +0 -0
  1131. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_chat_mode.py +0 -0
  1132. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_developer_experience.py +0 -0
  1133. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_diagnostics.py +0 -0
  1134. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_draft_recovery.py +0 -0
  1135. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_exit.py +0 -0
  1136. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_feedback.py +0 -0
  1137. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_image_voice.py +0 -0
  1138. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_launch_performance.py +0 -0
  1139. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_llamacpp_connect.py +0 -0
  1140. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_local_latency.py +0 -0
  1141. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_markdown_cleanup.py +0 -0
  1142. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_mlx_connect.py +0 -0
  1143. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_navigation.py +0 -0
  1144. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_next_enhancements.py +0 -0
  1145. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_onboarding.py +0 -0
  1146. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_productivity.py +0 -0
  1147. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_regressions.py +0 -0
  1148. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_smoke.py +0 -0
  1149. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_tool_display.py +0 -0
  1150. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tui_workspace_reliability.py +0 -0
  1151. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tune_credentials.py +0 -0
  1152. {superqode-2.4.36 → superqode-2.4.38}/tests/test_tune_preferences.py +0 -0
  1153. {superqode-2.4.36 → superqode-2.4.38}/tests/test_uhp_backend.py +0 -0
  1154. {superqode-2.4.36 → superqode-2.4.38}/tests/test_uhp_client.py +0 -0
  1155. {superqode-2.4.36 → superqode-2.4.38}/tests/test_uhp_connect.py +0 -0
  1156. {superqode-2.4.36 → superqode-2.4.38}/tests/test_uhp_server.py +0 -0
  1157. {superqode-2.4.36 → superqode-2.4.38}/tests/test_update_command.py +0 -0
  1158. {superqode-2.4.36 → superqode-2.4.38}/tests/test_vendor_cli_runtime.py +0 -0
  1159. {superqode-2.4.36 → superqode-2.4.38}/tests/test_version.py +0 -0
  1160. {superqode-2.4.36 → superqode-2.4.38}/tests/test_view_image.py +0 -0
  1161. {superqode-2.4.36 → superqode-2.4.38}/tests/test_web_server_auth.py +0 -0
  1162. {superqode-2.4.36 → superqode-2.4.38}/tests/test_workorders.py +0 -0
  1163. {superqode-2.4.36 → superqode-2.4.38}/tests/test_workspace.py +0 -0
  1164. {superqode-2.4.36 → superqode-2.4.38}/tests/test_zai_provider.py +0 -0
@@ -7,6 +7,56 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.4.38] - 2026-10-01
11
+
12
+ ### Added
13
+
14
+ - Run SuperQode inside Herdr with automatic working, idle, approval and question
15
+ status reporting, plus harness, model and session details.
16
+ - Restore durable interactive conversations after a Herdr server restart,
17
+ preserving the harness, model, runtime, approval policy and plan/build mode.
18
+ Update restore commands when switching or forking sessions, and replace stale
19
+ commands with a fresh launch when the active backend cannot resume.
20
+ - Open saved conversations with `superqode --resume <session-id>` or fork them
21
+ with `superqode --fork <session-id>`. Set startup decisions with
22
+ `--approval-mode ask|auto|deny` and `--interaction-mode build|plan`.
23
+ - Document setup, status semantics, pane input, restoration and troubleshooting
24
+ in the Herdr integration guide and CLI reference. Add Herdr checks to the
25
+ Linux, macOS and Windows CI matrix.
26
+
27
+ ### Fixed
28
+
29
+ - Prevent nested coding agents, SDKs and shell tools from claiming their
30
+ parent's Herdr pane. Keep reporting bounded and release pane authority when
31
+ SuperQode exits.
32
+
33
+ ### Known limitations
34
+
35
+ - Herdr's built-in agent registry does not yet include SuperQode. Launch it
36
+ normally inside a pane and use pane input; `agent start --kind`,
37
+ `agent prompt` and `agent send-keys` require an upstream registry entry.
38
+ - Conversation restoration requires a durable SuperQode session and Herdr
39
+ 0.9.2 or later. Unsupported backends reopen a fresh TUI. Native lifecycle
40
+ and restart tests passed with Herdr 0.9.3 on macOS; Linux and Windows checks
41
+ are configured in CI.
42
+
43
+ ## [2.4.37] - 2026-10-01
44
+
45
+ ### Added
46
+
47
+ - Connect Muse Code’s native session host to the TUI prompt, including streamed responses, tool approvals, cancellation and successive prompts. Start the host on demand and show an actionable error if Muse rejects a saved login.
48
+
49
+ ### Known limitations
50
+
51
+ - Muse Code can reject a detected saved credential as “not logged in”. Refresh the login in the vendor CLI before retrying. Live authenticated model responses were not verified for this release; protocol and TUI regression tests passed.
52
+
53
+ ### Fixed
54
+
55
+ - Dismiss the welcome screen after a successful agent or model connection,
56
+ including self-contained vendor runtimes such as Antigravity CLI. Preserve
57
+ existing conversation history and prompt drafts; cancelled or failed setup
58
+ can still return to the welcome screen.
59
+
10
60
  ## [2.4.36] - 2026-10-01
11
61
 
12
62
  ### Fixed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: superqode
3
- Version: 2.4.36
3
+ Version: 2.4.38
4
4
  Summary: The harness layer for coding agents
5
5
  Author-email: Shashi Jagtap <info@super-agentic.ai>
6
6
  Maintainer-email: Shashi Jagtap <info@super-agentic.ai>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "superqode"
3
- version = "2.4.36"
3
+ version = "2.4.38"
4
4
  description = "The harness layer for coding agents"
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"
@@ -38,7 +38,7 @@ __all__ = [
38
38
  "sidebar",
39
39
  ]
40
40
 
41
- __version__ = "2.4.36"
41
+ __version__ = "2.4.38"
42
42
 
43
43
  # Stable, lightweight public extension surface. Importing this package does
44
44
  # not discover or execute third-party extensions; discovery happens only when
@@ -40,6 +40,8 @@ from superqode.acp.types import (
40
40
  AvailableCommandsResponse,
41
41
  )
42
42
 
43
+ from superqode.herdr import child_env
44
+
43
45
 
44
46
  async def cancel_prompt_with_grace(
45
47
  client, prompt_task: asyncio.Task, *, timeout: float = 2.0
@@ -342,7 +344,7 @@ class ACPClient:
342
344
  stdout=asyncio.subprocess.PIPE,
343
345
  stderr=asyncio.subprocess.STDOUT, # Merge stderr into stdout
344
346
  cwd=str(self.project_root),
345
- env=env,
347
+ env=child_env(env),
346
348
  limit=10 * 1024 * 1024, # 10MB buffer
347
349
  )
348
350
 
@@ -1656,7 +1658,7 @@ class ACPClient:
1656
1658
  stderr=asyncio.subprocess.STDOUT,
1657
1659
  stdin=asyncio.subprocess.PIPE,
1658
1660
  cwd=cwd or str(self.project_root),
1659
- env=env,
1661
+ env=child_env(env),
1660
1662
  )
1661
1663
 
1662
1664
  self._terminals[terminal_id] = {
@@ -59,6 +59,8 @@ from acp.schema import (
59
59
  WriteTextFileResponse,
60
60
  )
61
61
 
62
+ from superqode.herdr import child_env
63
+
62
64
 
63
65
  class SuperQodeACPClient(Client):
64
66
  """ACP client implementation for SuperQode."""
@@ -191,7 +193,7 @@ class ACPAgentManager:
191
193
  stdin=asyncio.subprocess.PIPE,
192
194
  stdout=asyncio.subprocess.PIPE,
193
195
  cwd=cwd or os.getcwd(),
194
- env={**os.environ, **extra_env} if extra_env else None,
196
+ env=child_env({**os.environ, **(extra_env or {})}),
195
197
  )
196
198
 
197
199
  if proc.stdin is None or proc.stdout is None:
@@ -111,15 +111,20 @@ def _print_launch_splash() -> None:
111
111
  pass
112
112
 
113
113
 
114
- def run_textual_app():
114
+ def run_textual_app(**startup):
115
115
  """Run the SuperQode Textual TUI application."""
116
116
  _print_launch_splash()
117
117
 
118
118
  # Import from parent module to avoid duplication
119
119
  from superqode.app_main import SuperQodeApp
120
120
 
121
- app = SuperQodeApp()
122
- app.run()
121
+ app = SuperQodeApp(**startup)
122
+ try:
123
+ app.run()
124
+ finally:
125
+ from superqode.app.herdr import close
126
+
127
+ close(app)
123
128
 
124
129
 
125
130
  __all__ = [
@@ -0,0 +1,108 @@
1
+ """Bridge the interactive app's shared lifecycle to Herdr."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from pathlib import Path
6
+
7
+ from superqode.herdr import HerdrReporter, launch_prefix, valid_resume_argv
8
+
9
+
10
+ def resume_command(app) -> tuple[str, tuple[str, ...]]:
11
+ """Advertise only a durable active session, never a recent-session fallback."""
12
+ approval = getattr(app, "approval_mode", "ask")
13
+ mode = "plan" if getattr(app, "_plan_mode_enabled", False) else "build"
14
+ base = (*launch_prefix(), "--tui", "--approval-mode", approval, "--interaction-mode", mode)
15
+ # Replacing a previous restore command with a fresh launch prevents Herdr
16
+ # from reopening the old conversation after disconnecting or changing to
17
+ # a backend without durable SuperQode session storage.
18
+ fresh = base if valid_resume_argv(base) else ("superqode", "--tui")
19
+ pure = getattr(app, "_pure_mode", None)
20
+ if pure is None or not getattr(getattr(pure, "session", None), "connected", False):
21
+ return "", fresh
22
+ if getattr(app, "current_agent", "") or getattr(app, "_chat_mode", False):
23
+ return "", fresh
24
+ try:
25
+ sid = pure.get_current_session_id()
26
+ manager = getattr(pure, "_session_manager", None)
27
+ meta = manager.get_session_info(sid) if sid and manager else None
28
+ if meta is None or not meta.provider or not meta.model:
29
+ return "", fresh
30
+ # Session storage and Herdr's restored pane both belong to this cwd.
31
+ if (
32
+ meta.working_directory
33
+ and Path(meta.working_directory).resolve() != Path.cwd().resolve()
34
+ ):
35
+ return "", fresh
36
+ harness = meta.harness_path or meta.harness_id or "core"
37
+ if not meta.harness_session and getattr(pure, "_agent", None) is None:
38
+ return "", fresh
39
+ argv = (
40
+ *base,
41
+ "--resume",
42
+ sid,
43
+ "--provider",
44
+ meta.provider,
45
+ "--model",
46
+ meta.model,
47
+ "--harness",
48
+ harness,
49
+ "--runtime",
50
+ pure.runtime_name,
51
+ )
52
+ if valid_resume_argv(argv):
53
+ return sid, argv
54
+ except (AttributeError, OSError, TypeError, ValueError):
55
+ pass
56
+ return "", fresh
57
+
58
+
59
+ def start(app) -> None:
60
+ app._herdr_reporter = HerdrReporter.from_env()
61
+ sync(app)
62
+
63
+
64
+ def sync(app) -> None:
65
+ reporter = getattr(app, "_herdr_reporter", None)
66
+ if reporter is None:
67
+ return
68
+ pending = []
69
+ pure = getattr(app, "_pure_mode", None)
70
+ try:
71
+ pending = pure.get_pending_approvals() if pure is not None else []
72
+ except Exception:
73
+ pass
74
+ if getattr(app, "_herdr_restore_error", "") and not getattr(
75
+ getattr(pure, "session", None), "connected", False
76
+ ):
77
+ state, message = "blocked", "Session restore failed"
78
+ elif getattr(app, "_awaiting_agent_question", False):
79
+ state, message = "blocked", "Answer needed"
80
+ elif getattr(app, "_permission_pending", False) or pending:
81
+ state, message = "blocked", "Approval needed"
82
+ else:
83
+ state = "working" if getattr(app, "is_busy", False) else "idle"
84
+ message = ""
85
+ harness = getattr(app, "current_agent", "") or getattr(app, "current_mode", "")
86
+ model = getattr(app, "current_model", "")
87
+ try:
88
+ status = app.query_one("#status-bar")
89
+ harness = getattr(status, "active_harness", "") or harness
90
+ model = getattr(status, "active_model", "") or model
91
+ except Exception:
92
+ pass
93
+ sid, argv = resume_command(app)
94
+ reporter.report(
95
+ state,
96
+ message=message,
97
+ harness=harness,
98
+ model=model,
99
+ session_id=sid,
100
+ resume_argv=argv,
101
+ )
102
+
103
+
104
+ def close(app) -> None:
105
+ reporter = getattr(app, "_herdr_reporter", None)
106
+ if reporter is not None:
107
+ app._herdr_reporter = None
108
+ reporter.close()
@@ -43,6 +43,8 @@ from superqode.app.recipes import LocalRecipe
43
43
  from superqode.app.async_utils import _AsyncLoopThread
44
44
  from superqode.app.session_state import get_session
45
45
 
46
+ from superqode.herdr import child_env
47
+
46
48
  _ACP_AGENT_SHORT_NAMES: frozenset[str] | None = None
47
49
 
48
50
 
@@ -1703,7 +1705,7 @@ class AgentRunMixin:
1703
1705
  cwd=os.getcwd(),
1704
1706
  text=True,
1705
1707
  bufsize=1,
1706
- env=env,
1708
+ env=child_env(env),
1707
1709
  )
1708
1710
 
1709
1711
  # Store process reference for cancellation
@@ -1850,6 +1852,7 @@ class AgentRunMixin:
1850
1852
  stderr=subprocess.STDOUT,
1851
1853
  text=True,
1852
1854
  bufsize=1,
1855
+ env=child_env(),
1853
1856
  )
1854
1857
  self._agent_process = process
1855
1858
 
@@ -3064,7 +3067,7 @@ class AgentRunMixin:
3064
3067
  cwd=os.getcwd(),
3065
3068
  text=True,
3066
3069
  bufsize=1,
3067
- env=env,
3070
+ env=child_env(env),
3068
3071
  )
3069
3072
  self._claude_process = process
3070
3073
  self._claude_session_id = ""
@@ -3660,7 +3663,7 @@ class AgentRunMixin:
3660
3663
  cwd=os.getcwd(),
3661
3664
  text=True,
3662
3665
  bufsize=1,
3663
- env=env,
3666
+ env=child_env(env),
3664
3667
  )
3665
3668
 
3666
3669
  # Store process reference for cancellation
@@ -4415,6 +4418,7 @@ class AgentRunMixin:
4415
4418
  if runtime_name in self._SELF_CONTAINED_RUNTIMES:
4416
4419
  friendly = {
4417
4420
  "codex-sdk": "Codex",
4421
+ "muse": "Muse Code",
4418
4422
  "copilot-sdk": "Copilot SDK",
4419
4423
  "claude-agent-sdk": "Claude Agent SDK",
4420
4424
  "antigravity-sdk": "Antigravity SDK",
@@ -2090,6 +2090,13 @@ class CommandImplMixin:
2090
2090
  log.add_info("No subscription? Use BYOK instead: :connect byok openai <model>")
2091
2091
  return
2092
2092
 
2093
+ if sub == "muse":
2094
+ from superqode.providers.connection_profiles import _muse_signed_in
2095
+
2096
+ if not _muse_signed_in():
2097
+ self._show_muse_status(log)
2098
+ return
2099
+
2093
2100
  current = resolve_runtime_name()
2094
2101
  if sub in self._SELF_CONTAINED_RUNTIMES:
2095
2102
  existing = getattr(self, "_pure_mode", None)
@@ -2148,6 +2155,7 @@ class CommandImplMixin:
2148
2155
  "antigravity-cli": "google",
2149
2156
  "antigravity-managed": "google",
2150
2157
  "devin-cli": "devin",
2158
+ "muse": "meta",
2151
2159
  }.get(sub, "openai")
2152
2160
  pure.connect(provider=provider, model="", working_directory=Path.cwd())
2153
2161
  self._announce_self_contained_connection(sub, log)
@@ -167,6 +167,19 @@ class ConnectMixin:
167
167
  self._history.clear()
168
168
  self._record_screen("conversation", "Agent", lambda: self._end_connection_view(log))
169
169
 
170
+ def _finish_successful_connection_view(self, log: ConversationLog) -> bool:
171
+ """Restore a conversation after setup, but dismiss the welcome on success."""
172
+ restored = self._end_connection_view(log)
173
+ if getattr(self, "_welcome_present", False) or getattr(self, "_welcome_active", False):
174
+ self._welcome_active = False
175
+ self._welcome_present = False
176
+ self._connection_welcome = False
177
+ if not any(role == "user" for role, *_ in getattr(log, "_messages", [])):
178
+ log.clear()
179
+ log.auto_scroll = True
180
+ self._workspace_intro_visible = True
181
+ return restored
182
+
170
183
  def _end_connection_view(self, log: ConversationLog) -> bool:
171
184
  if not isinstance(log, ConversationLog) or not log.is_mounted:
172
185
  return False
@@ -1558,7 +1571,7 @@ class ConnectMixin:
1558
1571
  def _begin_vendor_key_cli(self, profile, log: ConversationLog) -> None:
1559
1572
  """Closed key path for a harness SuperQode cannot drive over ACP.
1560
1573
 
1561
- Muse Code has no ACP server and no headless mode SuperQode consumes, so
1574
+ The dedicated Muse API-key route currently runs outside SuperQode, so
1562
1575
  the key cannot be handed to a child process here. Gate on the key, then
1563
1576
  state plainly that the user runs the vendor CLI and it reads that key.
1564
1577
  """
@@ -2242,6 +2255,9 @@ class ConnectMixin:
2242
2255
  except Exception: # noqa: BLE001 - connection works without mounted chrome
2243
2256
  pass
2244
2257
 
2258
+ finish = getattr(self, "_finish_successful_connection_view", None)
2259
+ if callable(finish):
2260
+ finish(log)
2245
2261
  log.add_success(
2246
2262
  "Prime Agent connected through prime-agent-python-client (native Python RPC)."
2247
2263
  )
@@ -2271,8 +2287,10 @@ class ConnectMixin:
2271
2287
  if not started:
2272
2288
  log.add_info("Muse Code already has a credential.")
2273
2289
  self._show_muse_connect(log)
2274
- elif action in {"connect", "status", "doctor"}:
2290
+ elif action == "connect":
2275
2291
  self._show_muse_connect(log)
2292
+ elif action in {"status", "doctor"}:
2293
+ self._show_muse_status(log)
2276
2294
  elif action in {"help", "?"}:
2277
2295
  log.add_info("Usage: :muse [connect|login|status|help]")
2278
2296
  else:
@@ -2425,14 +2443,11 @@ class ConnectMixin:
2425
2443
  self._show_muse_connect(log)
2426
2444
 
2427
2445
  def _show_muse_connect(self, log: ConversationLog) -> None:
2428
- """Report Muse Code readiness and hand the user a command to run.
2446
+ """Connect Muse Code's native session host to the main prompt."""
2447
+ self._runtime_cmd("muse", log)
2429
2448
 
2430
- Muse Code 0.1.0 exposes no ACP server, and SuperQode does not consume
2431
- its headless JSONL events yet, so this route stays honest: it reports
2432
- what is installed and signed in rather than pretending we can stream
2433
- its tool calls. The subscription billing rule still applies, because
2434
- Muse prefers META_API_KEY over the account login this route selects.
2435
- """
2449
+ def _show_muse_status(self, log: ConversationLog) -> None:
2450
+ """Report local credential presence; Muse validates it on the first call."""
2436
2451
  from superqode.providers.connection_profiles import _muse_auth_path, _muse_signed_in
2437
2452
  from superqode.providers.subscription_env import diverting_api_keys
2438
2453
 
@@ -2465,20 +2480,11 @@ class ConnectMixin:
2465
2480
  log.write(t)
2466
2481
  return
2467
2482
 
2468
- # Muse reads META_API_KEY ahead of any stored login, so a key left in
2469
- # the shell silently moves an account session onto per-token billing.
2470
- # SuperQode does not spawn Muse here, so it cannot strip the key the way
2471
- # subscription_child_env does for driven routes: say what will actually
2472
- # happen when the user runs `muse` themselves.
2473
2483
  if signed_in and diverting_api_keys("muse"):
2474
- t.append("\n META_API_KEY is set in this environment.\n", style=THEME["warning"])
2475
2484
  t.append(
2476
- " Muse Code prefers it over your account login, so this ", style=THEME["muted"]
2485
+ "\n SuperQode ignores META_API_KEY on this account route.\n", style=THEME["muted"]
2477
2486
  )
2478
- t.append("bills per token.\n", style=THEME["warning"])
2479
- t.append(" Unset it before running ", style=THEME["muted"])
2480
- t.append("muse", style=THEME["cyan"])
2481
- t.append(" to spend your Meta account session instead.\n", style=THEME["muted"])
2487
+ t.append(" Direct `muse` launches may prefer that API key.\n", style=THEME["dim"])
2482
2488
  elif env_key:
2483
2489
  t.append(
2484
2490
  "\n META_API_KEY is set, so Muse Code bills per token.\n", style=THEME["warning"]
@@ -2507,16 +2513,13 @@ class ConnectMixin:
2507
2513
  # account without billing authenticates fine and still fails on the
2508
2514
  # first model call, so never imply sign-in is sufficient.
2509
2515
  t.append(
2510
- "\n Signed in. Model calls bill to your Meta account, so a\n", style=THEME["muted"]
2511
- )
2512
- t.append(
2513
- " team without billing enabled still gets refused by Meta.\n", style=THEME["muted"]
2516
+ "\n Saved credential detected; Muse validates it on the first call.\n",
2517
+ style=THEME["muted"],
2514
2518
  )
2519
+ t.append(" Your Meta account must have billing enabled.\n", style=THEME["muted"])
2515
2520
 
2516
- t.append(
2517
- "\n SuperQode does not drive Muse Code yet. Run it directly:\n", style=THEME["muted"]
2518
- )
2519
- t.append(" muse\n", style=THEME["cyan"])
2521
+ t.append("\n Connect Muse Code to the SuperQode prompt:\n", style=THEME["muted"])
2522
+ t.append(" :connect muse\n", style=THEME["cyan"])
2520
2523
  t.append("\n Next:\n", style=THEME["muted"])
2521
2524
  t.append(" • ", style=THEME["dim"])
2522
2525
  t.append(":connect byok meta", style=THEME["cyan"])
@@ -2863,6 +2866,11 @@ class ConnectMixin:
2863
2866
  (":runtime list", "to compare available runtime routes"),
2864
2867
  ),
2865
2868
  },
2869
+ "muse": {
2870
+ "auth": "Meta account sign-in managed by Muse Code",
2871
+ "model": "managed by Muse Code",
2872
+ "commands": ((":muse status", "for installation and sign-in details"),),
2873
+ },
2866
2874
  }
2867
2875
  details = connection_details.get(
2868
2876
  runtime_name,
@@ -78,6 +78,9 @@ class DialogsMixin:
78
78
  # Mark that the log currently shows only the welcome, so resizes can
79
79
  # re-flow it responsively until the user starts interacting.
80
80
  self._welcome_active = True
81
+ # Command submission stops resize reflow, but the welcome can remain
82
+ # in the saved navigation view until a connection succeeds.
83
+ self._welcome_present = True
81
84
  # Show the first-run card until the first connection lands, and note
82
85
  # the visit for the session hint.
83
86
  self._maybe_show_onboarding(log)
@@ -134,6 +134,9 @@ class EventHandlerMixin:
134
134
  pass
135
135
 
136
136
  def on_unmount(self) -> None:
137
+ from superqode.app.herdr import close
138
+
139
+ close(self)
137
140
  self._stop_wave_bursts()
138
141
  self._flush_draft_recovery()
139
142
 
@@ -272,7 +272,7 @@ class FeedbackMixin:
272
272
  "Model ready",
273
273
  "Model selected",
274
274
  }:
275
- finish = getattr(self, "_end_connection_view", None)
275
+ finish = getattr(self, "_finish_successful_connection_view", None)
276
276
  if callable(finish) and log is not None:
277
277
  finish(log)
278
278
 
@@ -26,7 +26,7 @@ class HelperExitLifecycleMixin:
26
26
  log: The conversation log widget
27
27
  context: Optional context string (e.g., "DEV.FULLSTACK", "OPENCODE")
28
28
  """
29
- restored = self._end_connection_view(log)
29
+ restored = self._finish_successful_connection_view(log)
30
30
  self._welcome_active = False
31
31
  if not restored:
32
32
  log.clear()
@@ -55,6 +55,7 @@ class HelperExitLifecycleMixin:
55
55
 
56
56
  def _begin_conversation_transcript(self, log: ConversationLog) -> None:
57
57
  """Replace temporary connection/setup content with the first turn."""
58
+ self._welcome_present = False
58
59
  # A live conversation is the new navigation root. Stale connection
59
60
  # picker history must never replace its transcript via Back.
60
61
  try:
@@ -154,3 +154,6 @@ class HelperInteractionModeMixin:
154
154
  persist=False,
155
155
  dedupe_key=f"interaction-mode:{mode}",
156
156
  )
157
+ from superqode.app.herdr import sync
158
+
159
+ sync(self)
@@ -53,6 +53,9 @@ class HelperPermissionsMixin:
53
53
  return
54
54
  if not pending:
55
55
  return
56
+ from superqode.app.herdr import sync
57
+
58
+ sync(self)
56
59
  card = Text()
57
60
  card.append("🔐 Tool approval needed\n\n", style=f"bold {THEME['warning']}")
58
61
  card.append(f"{len(pending)} pending item(s)\n", style=THEME["text"])
@@ -166,6 +166,7 @@ class HelpersMixin(
166
166
  # must not be presented as the active harness.
167
167
  harness = {
168
168
  "codex-sdk": "codex",
169
+ "muse": "Muse Code",
169
170
  "copilot-sdk": "copilot",
170
171
  "claude-agent-sdk": "claude",
171
172
  "antigravity-sdk": "antigravity",
@@ -411,6 +412,9 @@ class HelpersMixin(
411
412
  getattr(self, "_permission_pending", False)
412
413
  or getattr(self, "_awaiting_agent_question", False)
413
414
  )
415
+ from superqode.app.herdr import sync
416
+
417
+ sync(self)
414
418
  self._set_composer_working_state(new, interactive=interactive)
415
419
  self._sync_navigation_controls()
416
420
  if not new:
@@ -762,6 +766,9 @@ class HelpersMixin(
762
766
  self.query_one("#status-bar", ColorfulStatusBar).active_runtime = display
763
767
  except Exception: # noqa: BLE001
764
768
  pass
769
+ from superqode.app.herdr import sync
770
+
771
+ sync(self)
765
772
 
766
773
  def _sync_self_contained_status(self, runtime_name: str, *, tokens: int = 0) -> None:
767
774
  """Replace stale provider state with runtime-owned identity."""
@@ -781,6 +788,7 @@ class HelpersMixin(
781
788
  status.active_model = ""
782
789
  status.active_harness = {
783
790
  "codex-sdk": "codex",
791
+ "muse": "Muse Code",
784
792
  "copilot-sdk": "copilot",
785
793
  "claude-agent-sdk": "claude",
786
794
  "antigravity-sdk": "antigravity",
@@ -1032,6 +1032,9 @@ class ModelCatalogMixin:
1032
1032
  self.query_one("#status-bar", ColorfulStatusBar).active_model = model or ""
1033
1033
  except Exception: # noqa: BLE001
1034
1034
  pass
1035
+ from superqode.app.herdr import sync
1036
+
1037
+ sync(self)
1035
1038
 
1036
1039
  def _set_acp_status(self, model: str = "") -> None:
1037
1040
  """Synchronize an ACP connection with the persistent top status bar."""
@@ -353,6 +353,9 @@ class SlashCommandMixin:
353
353
  self._set_status_runtime("systemone")
354
354
  self._set_status_model(pure.session.model)
355
355
  pack = pure._harness_spec.systemone.pack
356
+ finish = getattr(self, "_finish_successful_connection_view", None)
357
+ if callable(finish):
358
+ finish(log)
356
359
  log.add_system(
357
360
  f"Connected to decision pack {pack} with {pure.session.model}. Enter state for this pack; no coding model or tool execution is involved."
358
361
  )
@@ -1911,6 +1914,10 @@ class SlashCommandMixin:
1911
1914
  guidance="Other sessions remain saved.",
1912
1915
  dedupe_key=f"session-resume:{resolved_id}",
1913
1916
  )
1917
+ from superqode.app.herdr import sync
1918
+
1919
+ self._herdr_restore_error = ""
1920
+ sync(self)
1914
1921
  return True
1915
1922
 
1916
1923
  def _handle_fork_session(self, args: str, log: ConversationLog):
@@ -1934,6 +1941,9 @@ class SlashCommandMixin:
1934
1941
  log=log,
1935
1942
  dedupe_key=f"session-fork:{fork_id}",
1936
1943
  )
1944
+ from superqode.app.herdr import sync
1945
+
1946
+ sync(self)
1937
1947
 
1938
1948
  def _handle_compact(self, log: ConversationLog):
1939
1949
  """Compact or enable compaction for the active local provider session."""