multiagentos 0.4.1__tar.gz → 0.4.3__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 (254) hide show
  1. multiagentos-0.4.3/PKG-INFO +377 -0
  2. multiagentos-0.4.3/README.md +360 -0
  3. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos/cli.py +41 -0
  4. multiagentos-0.4.3/multiagentos/mcp_service.py +454 -0
  5. multiagentos-0.4.3/multiagentos/windows_launcher.py +37 -0
  6. multiagentos-0.4.3/multiagentos.egg-info/PKG-INFO +377 -0
  7. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos.egg-info/SOURCES.txt +7 -1
  8. {multiagentos-0.4.1 → multiagentos-0.4.3}/pyproject.toml +1 -1
  9. multiagentos-0.4.3/tests/test_mcp_service.py +222 -0
  10. multiagentos-0.4.3/tests/test_tunnel_installer_script.py +47 -0
  11. multiagentos-0.4.3/tests/test_tunnel_launchd_scripts.py +21 -0
  12. multiagentos-0.4.3/tests/test_windows_launcher.py +50 -0
  13. multiagentos-0.4.1/PKG-INFO +0 -270
  14. multiagentos-0.4.1/README.md +0 -253
  15. multiagentos-0.4.1/multiagentos.egg-info/PKG-INFO +0 -270
  16. {multiagentos-0.4.1 → multiagentos-0.4.3}/agents/__init__.py +0 -0
  17. {multiagentos-0.4.1 → multiagentos-0.4.3}/agents/catalog.py +0 -0
  18. {multiagentos-0.4.1 → multiagentos-0.4.3}/agents/registry.py +0 -0
  19. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/__init__.py +0 -0
  20. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/approval.py +0 -0
  21. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/artifacts.py +0 -0
  22. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/chat_agent_bridge.py +0 -0
  23. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/chat_agent_registry.py +0 -0
  24. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/chat_agent_router.py +0 -0
  25. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/chat_session.py +0 -0
  26. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/__init__.py +0 -0
  27. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/agent.py +0 -0
  28. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/agent_execution_runtime.py +0 -0
  29. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/ai.py +0 -0
  30. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/approval.py +0 -0
  31. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/capability.py +0 -0
  32. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/chat_agent.py +0 -0
  33. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/checkpoint.py +0 -0
  34. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/discovery.py +0 -0
  35. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/execution.py +0 -0
  36. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/execution_cursor.py +0 -0
  37. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/execution_limits.py +0 -0
  38. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/github.py +0 -0
  39. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/handoff.py +0 -0
  40. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/health.py +0 -0
  41. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/human_review.py +0 -0
  42. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/ide.py +0 -0
  43. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/idempotency.py +0 -0
  44. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/mcp.py +0 -0
  45. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/memory.py +0 -0
  46. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/model_runtime.py +0 -0
  47. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/planning.py +0 -0
  48. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/policy_decision.py +0 -0
  49. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/profile.py +0 -0
  50. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/quota.py +0 -0
  51. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/recovery.py +0 -0
  52. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/replay.py +0 -0
  53. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/repository.py +0 -0
  54. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/resume.py +0 -0
  55. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/runtime.py +0 -0
  56. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/streaming.py +0 -0
  57. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/tool_ledger.py +0 -0
  58. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/contracts/work_unit.py +0 -0
  59. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/delegation.py +0 -0
  60. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/execution_limits.py +0 -0
  61. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/execution_state.py +0 -0
  62. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/handoff.py +0 -0
  63. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/lifecycle.py +0 -0
  64. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/memory.py +0 -0
  65. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/multi_agent_workflow.py +0 -0
  66. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/orchestrator.py +0 -0
  67. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/planning.py +0 -0
  68. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/policy_decision.py +0 -0
  69. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/recovery_audit.py +0 -0
  70. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/registry.py +0 -0
  71. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/routing.py +0 -0
  72. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/security.py +0 -0
  73. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/state.py +0 -0
  74. {multiagentos-0.4.1 → multiagentos-0.4.3}/core/tool_ledger.py +0 -0
  75. {multiagentos-0.4.1 → multiagentos-0.4.3}/installer/__init__.py +0 -0
  76. {multiagentos-0.4.1 → multiagentos-0.4.3}/installer/init.py +0 -0
  77. {multiagentos-0.4.1 → multiagentos-0.4.3}/integrations/__init__.py +0 -0
  78. {multiagentos-0.4.1 → multiagentos-0.4.3}/integrations/github/__init__.py +0 -0
  79. {multiagentos-0.4.1 → multiagentos-0.4.3}/integrations/github/gateway.py +0 -0
  80. {multiagentos-0.4.1 → multiagentos-0.4.3}/integrations/openai/__init__.py +0 -0
  81. {multiagentos-0.4.1 → multiagentos-0.4.3}/integrations/openai/chat_agent.py +0 -0
  82. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos/__init__.py +0 -0
  83. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos.egg-info/dependency_links.txt +0 -0
  84. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos.egg-info/entry_points.txt +0 -0
  85. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos.egg-info/requires.txt +0 -0
  86. {multiagentos-0.4.1 → multiagentos-0.4.3}/multiagentos.egg-info/top_level.txt +0 -0
  87. {multiagentos-0.4.1 → multiagentos-0.4.3}/profiles/__init__.py +0 -0
  88. {multiagentos-0.4.1 → multiagentos-0.4.3}/profiles/common.py +0 -0
  89. {multiagentos-0.4.1 → multiagentos-0.4.3}/profiles/detector.py +0 -0
  90. {multiagentos-0.4.1 → multiagentos-0.4.3}/profiles/registry.py +0 -0
  91. {multiagentos-0.4.1 → multiagentos-0.4.3}/profiles/resolver.py +0 -0
  92. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/__init__.py +0 -0
  93. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/agent/__init__.py +0 -0
  94. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/agent/ide.py +0 -0
  95. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/agent/model.py +0 -0
  96. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/agent/model_backed.py +0 -0
  97. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/agent/process.py +0 -0
  98. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/agent_execution_runtime.py +0 -0
  99. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/builtin_tools.py +0 -0
  100. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/capability.py +0 -0
  101. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/chat_adapter_registry.py +0 -0
  102. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/chat_config.py +0 -0
  103. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/chat_execution.py +0 -0
  104. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/config/__init__.py +0 -0
  105. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/config/loader.py +0 -0
  106. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/discovery.py +0 -0
  107. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/execution_config.py +0 -0
  108. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/execution_registry.py +0 -0
  109. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/git.py +0 -0
  110. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/github.py +0 -0
  111. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/github_probe.py +0 -0
  112. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/harness.py +0 -0
  113. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/health.py +0 -0
  114. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/ide/__init__.py +0 -0
  115. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/ide/bridge.py +0 -0
  116. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/ide/registry.py +0 -0
  117. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/ide/runtime.py +0 -0
  118. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/__init__.py +0 -0
  119. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/filesystem.py +0 -0
  120. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/patch.py +0 -0
  121. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/path_security.py +0 -0
  122. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/permissions.py +0 -0
  123. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/process.py +0 -0
  124. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/local/shell.py +0 -0
  125. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/__init__.py +0 -0
  126. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/agent_execution_runtime_server.py +0 -0
  127. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/client.py +0 -0
  128. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/config.py +0 -0
  129. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/durable_bridge.py +0 -0
  130. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/policy.py +0 -0
  131. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/proxy.py +0 -0
  132. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/server.py +0 -0
  133. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/session.py +0 -0
  134. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/mcp/streamable_http.py +0 -0
  135. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/__init__.py +0 -0
  136. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/ai_runtime.py +0 -0
  137. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/cli.py +0 -0
  138. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/config.py +0 -0
  139. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/credentials.py +0 -0
  140. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/factory.py +0 -0
  141. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/http.py +0 -0
  142. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/invoker.py +0 -0
  143. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/materializer.py +0 -0
  144. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/native.py +0 -0
  145. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/providers.py +0 -0
  146. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/registry.py +0 -0
  147. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model/runtime_loader.py +0 -0
  148. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/model_control.py +0 -0
  149. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/multi_agent.py +0 -0
  150. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/observability.py +0 -0
  151. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/policy.py +0 -0
  152. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/process.py +0 -0
  153. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/quota.py +0 -0
  154. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/repository.py +0 -0
  155. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/repository_tools.py +0 -0
  156. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/status.py +0 -0
  157. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/streaming.py +0 -0
  158. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/tool_calling.py +0 -0
  159. {multiagentos-0.4.1 → multiagentos-0.4.3}/runtime/validation.py +0 -0
  160. {multiagentos-0.4.1 → multiagentos-0.4.3}/setup.cfg +0 -0
  161. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_agent_execution_runtime.py +0 -0
  162. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_agent_execution_runtime_api.py +0 -0
  163. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_agent_plugin.py +0 -0
  164. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_agents_and_handoff.py +0 -0
  165. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_ai_runtime.py +0 -0
  166. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_approval_boundary.py +0 -0
  167. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_builtin_tools.py +0 -0
  168. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_chat_adapter_registry.py +0 -0
  169. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_chat_agent_bridge.py +0 -0
  170. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_chat_agent_router_session.py +0 -0
  171. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_chat_agents.py +0 -0
  172. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_chat_config.py +0 -0
  173. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_chat_execution.py +0 -0
  174. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_cli.py +0 -0
  175. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_cli_providers.py +0 -0
  176. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_cli_run_resume.py +0 -0
  177. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_config_loader.py +0 -0
  178. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_configured_model_cli.py +0 -0
  179. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_core_runtime.py +0 -0
  180. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_credentials.py +0 -0
  181. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_durable_runtime_contracts.py +0 -0
  182. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_execution_config.py +0 -0
  183. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_execution_harness.py +0 -0
  184. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_execution_limits.py +0 -0
  185. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_execution_registry.py +0 -0
  186. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_git_runtime.py +0 -0
  187. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_github_contract.py +0 -0
  188. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_github_probe.py +0 -0
  189. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_github_runtime.py +0 -0
  190. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_http_model_adapter.py +0 -0
  191. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_human_review_persistence.py +0 -0
  192. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_ide_bridge.py +0 -0
  193. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_ide_runtime.py +0 -0
  194. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_ide_tool_calling.py +0 -0
  195. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_local_process.py +0 -0
  196. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_local_tool_runtime.py +0 -0
  197. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_cost_boundary.py +0 -0
  198. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_durable_execution.py +0 -0
  199. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_policy.py +0 -0
  200. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_runtime.py +0 -0
  201. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_sdk_compatibility.py +0 -0
  202. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_server.py +0 -0
  203. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_mcp_streamable_http.py +0 -0
  204. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_agent.py +0 -0
  205. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_backed_agent.py +0 -0
  206. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_capability.py +0 -0
  207. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_control.py +0 -0
  208. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_control_routing.py +0 -0
  209. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_factory.py +0 -0
  210. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_failover.py +0 -0
  211. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_health.py +0 -0
  212. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_intelligence_sync.py +0 -0
  213. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_model_runtime.py +0 -0
  214. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_multi_agent_runtime.py +0 -0
  215. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_multi_agent_workflow.py +0 -0
  216. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_native_provider_tool_calling.py +0 -0
  217. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_no_legacy_runtime_name.py +0 -0
  218. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_observability.py +0 -0
  219. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_openai_chat_agent.py +0 -0
  220. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_orchestrator.py +0 -0
  221. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_persistent_model_cli.py +0 -0
  222. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_planning_state.py +0 -0
  223. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_policy_decision_evidence.py +0 -0
  224. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_profile_contracts.py +0 -0
  225. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_profiles_installer.py +0 -0
  226. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_project_memory.py +0 -0
  227. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_project_routing.py +0 -0
  228. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_provider_config.py +0 -0
  229. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_provider_discovery.py +0 -0
  230. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_provider_materializer.py +0 -0
  231. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_provider_registry.py +0 -0
  232. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_provider_runtime_loader.py +0 -0
  233. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_quota_helpers.py +0 -0
  234. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_quota_intelligence.py +0 -0
  235. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_quota_provider_metadata.py +0 -0
  236. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_quota_routing.py +0 -0
  237. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_recovery_audit_source_guard.py +0 -0
  238. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_recovery_authorization_contract.py +0 -0
  239. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_release_security_boundaries.py +0 -0
  240. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_repository_runtime.py +0 -0
  241. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_repository_tools.py +0 -0
  242. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_routing_explainability.py +0 -0
  243. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_runtime_adapters.py +0 -0
  244. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_runtime_execution_inspection.py +0 -0
  245. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_runtime_recovery_contract.py +0 -0
  246. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_runtime_recovery_resume_gate.py +0 -0
  247. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_runtime_security_boundary.py +0 -0
  248. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_streaming_runtime.py +0 -0
  249. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_tool_calling_runtime.py +0 -0
  250. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_tool_ledger_runtime.py +0 -0
  251. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_tunnel_client_mcp_health.py +0 -0
  252. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_tunnel_client_runtime_status.py +0 -0
  253. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_unified_checkpoints.py +0 -0
  254. {multiagentos-0.4.1 → multiagentos-0.4.3}/tests/test_validation_runtime.py +0 -0
@@ -0,0 +1,377 @@
1
+ Metadata-Version: 2.4
2
+ Name: multiagentos
3
+ Version: 0.4.3
4
+ Summary: Cost-free, local-first, GitHub-native multi-agent development orchestration
5
+ Project-URL: Homepage, https://github.com/eaglesjo/MultiAgentOS
6
+ Project-URL: Repository, https://github.com/eaglesjo/MultiAgentOS
7
+ Project-URL: Documentation, https://github.com/eaglesjo/MultiAgentOS/tree/main/docs
8
+ Project-URL: Changelog, https://github.com/eaglesjo/MultiAgentOS/blob/main/CHANGELOG.md
9
+ Project-URL: Download, https://pypi.org/project/multiagentos/#files
10
+ Requires-Python: >=3.10
11
+ Description-Content-Type: text/markdown
12
+ Provides-Extra: chatgpt
13
+ Requires-Dist: openai>=1.0; extra == "chatgpt"
14
+ Provides-Extra: mcp-http
15
+ Requires-Dist: mcp<3,>=2.2; extra == "mcp-http"
16
+ Requires-Dist: uvicorn>=0.30; extra == "mcp-http"
17
+
18
+ # MultiAgentOS
19
+
20
+ > **Cost-Free Multi-Agent Development Orchestration**
21
+
22
+ MultiAgentOS is a local-first development orchestration platform built around **Agent Execution Runtime**.
23
+
24
+ The cost-free baseline does **not require a separate paid AI API key**. MultiAgentOS connects an already-available AI client with GitHub and a local project while keeping execution authority inside Agent Execution Runtime.
25
+
26
+ ## Why MultiAgentOS
27
+
28
+ MultiAgentOS separates **AI collaboration** from **execution authority**.
29
+
30
+ - **ChatGPT Web** — verified entry point for GitHub + local MCP development in the current setup
31
+ - **ChatGPT Mobile App** — verified GitHub-only development entry point in the current setup
32
+ - **ChatGPT Codex Connector** — remote GitHub repository access
33
+ - **Agent Execution Runtime MCP** — local project access
34
+ - **Orchestrator** — top-level multi-agent coordination
35
+ - **MultiAgentWorkflow** — concrete Developer → Tester → Reviewer execution
36
+ - **Agent Execution Runtime** — permission and execution authority
37
+
38
+ The same MultiAgentOS architecture can be used from ChatGPT Web for both GitHub and local MCP work. In the verified setup, the ChatGPT mobile app is limited to the GitHub path; local MCP is not available there.
39
+
40
+ Agents provide intent, plans, and results. They do not directly own filesystem, process, patch, or Git execution authority.
41
+
42
+ ## Architecture
43
+
44
+ The main architecture is rendered as a native GitHub Mermaid diagram so the repository overview is visual without maintaining a separate generated image. GitHub supports Mermaid directly in Markdown files.
45
+
46
+ ```mermaid
47
+ flowchart TB
48
+ U["Web Browser"] --> C["ChatGPT Web"]
49
+ M["ChatGPT Mobile App"] --> C2["ChatGPT Conversation"]
50
+
51
+ C --> GH["ChatGPT Codex Connector"]
52
+ C2 --> GH
53
+ GH --> G["GitHub Repository"]
54
+
55
+ C --> MCP["Agent Execution Runtime<br/>Local MCP"]
56
+ MCP --> L["Local Project"]
57
+
58
+ G --> O["MultiAgentOS"]
59
+ L --> O
60
+
61
+ O --> ORCH["Orchestrator"]
62
+ ORCH --> WF["MultiAgentWorkflow"]
63
+
64
+ WF --> DEV["Developer"]
65
+ WF --> TEST["Tester"]
66
+ WF --> REVIEW["Reviewer"]
67
+
68
+ DEV --> VERIFY["Verification"]
69
+ TEST --> VERIFY
70
+ REVIEW --> VERIFY
71
+
72
+ VERIFY --> RUNTIME["Agent Execution Runtime"]
73
+ RUNTIME --> L
74
+
75
+ classDef entry fill:#f6f8fa,stroke:#57606a,color:#24292f;
76
+ classDef boundary fill:#ddf4ff,stroke:#0969da,color:#0550ae;
77
+ classDef orchestration fill:#fff8c5,stroke:#9a6700,color:#7d4e00;
78
+ classDef agents fill:#fbefff,stroke:#8250df,color:#6639ba;
79
+ classDef execution fill:#dafbe1,stroke:#1a7f37,color:#116329;
80
+
81
+ class U,C,M,C2 entry;
82
+ class GH,MCP,G,L boundary;
83
+ class O,ORCH,WF orchestration;
84
+ class DEV,TEST,REVIEW,VERIFY agents;
85
+ class RUNTIME execution;
86
+ ```
87
+
88
+ ### Verified ChatGPT client capability
89
+
90
+ The following matrix records the capability observed in the current MultiAgentOS development environment. It is intentionally a runtime/client compatibility record, not a promise that every ChatGPT account or product configuration exposes the same integrations.
91
+
92
+ | Client | GitHub repository access | Local MCP / local project access | Verified status |
93
+ | --- | --- | --- | --- |
94
+ | **ChatGPT Web** | Yes | Yes | **Verified** |
95
+ | **ChatGPT Mobile App** | Yes | No | **Verified** |
96
+ | **ChatGPT Desktop** | Not evaluated | Not evaluated | Out of current release scope |
97
+
98
+ **Important:** ChatGPT Web is currently the full development entry point for this setup: it can work with both the remote GitHub repository and the local MultiAgentOS MCP service. The ChatGPT mobile app can use the GitHub connection, but local MCP access is not available in the verified setup.
99
+
100
+ This distinction is a client-capability boundary. It does not change the MultiAgentOS local MCP architecture or the cost-free baseline.
101
+
102
+ ### Connect the ChatGPT Codex Connector to your GitHub repository
103
+
104
+ MultiAgentOS uses the **ChatGPT Codex Connector** for the remote GitHub repository path. GitHub must be connected to the ChatGPT account, and the specific repository must be authorized for access. urlOpenAI: Connecting GitHub to ChatGPThttps://help.openai.com/en/articles/11145903-connecting-github-to-chatgpt
105
+
106
+ 1. Open **ChatGPT Settings** and open **Apps / Plugins** (the exact menu name depends on the ChatGPT client).
107
+ 2. Open the **ChatGPT Codex Connector / GitHub connection** and start the connection flow.
108
+ 3. Sign in to GitHub when prompted and authorize the ChatGPT app.
109
+ 4. In GitHub's repository access settings, select the repositories that the ChatGPT Codex Connector is allowed to access.
110
+ 5. Return to ChatGPT and open a supported conversation.
111
+ 6. Search for or select the authorized repository when using the ChatGPT Codex Connector.
112
+
113
+ > **Repository access is separate from local MCP access.** Connecting the ChatGPT Codex Connector gives ChatGPT access to the authorized remote repository. The Agent Execution Runtime MCP / Secure Tunnel is the separate path used for local project execution.
114
+
115
+ If a newly authorized repository does not appear immediately, allow a few minutes for it to become available. GitHub organization policies may also require administrator approval. urlOpenAI GitHub connection troubleshootinghttps://help.openai.com/ko-kr/articles/11145903-connecting-github-to-chatgpt
116
+
117
+ ### Responsibility boundaries
118
+
119
+ | Component | Responsibility |
120
+ | --- | --- |
121
+ | **ChatGPT Web** | Full verified user-facing development entry point: GitHub + local MCP |
122
+ | **ChatGPT Mobile App** | Verified GitHub-only user-facing entry point |
123
+ | **ChatGPT Codex Connector** | Remote GitHub repository access |
124
+ | **Agent Execution Runtime MCP** | Local project connection |
125
+ | **Secure MCP Tunnel** | Optional remote transport for clients that cannot directly reach the local MCP server |
126
+ | **MultiAgentOS** | Agent contracts, routing, state, and orchestration |
127
+ | **Orchestrator** | Overall collaboration coordination |
128
+ | **MultiAgentWorkflow** | Stage, handoff, review, and rework semantics |
129
+ | **Agent Execution Runtime** | Permission and execution authority |
130
+
131
+ ## Multi-agent workflow
132
+
133
+ ```mermaid
134
+ flowchart LR
135
+ REQUEST["Request"] --> ORCH["Orchestrator"]
136
+ ORCH --> WF["MultiAgentWorkflow"]
137
+
138
+ WF --> DEV["Developer"]
139
+ WF --> TEST["Tester"]
140
+ WF --> REVIEW["Reviewer"]
141
+
142
+ REVIEW --> DECISION{"Review passed?"}
143
+ DECISION -->|No| REWORK["Rework"]
144
+ REWORK --> DEV
145
+ DECISION -->|Yes| VERIFY["Verification"]
146
+
147
+ VERIFY --> RESULT["Completed / Failed"]
148
+
149
+ classDef flow fill:#f6f8fa,stroke:#57606a,color:#24292f;
150
+ classDef agent fill:#fbefff,stroke:#8250df,color:#6639ba;
151
+ classDef decision fill:#fff8c5,stroke:#9a6700,color:#7d4e00;
152
+ classDef result fill:#dafbe1,stroke:#1a7f37,color:#116329;
153
+
154
+ class REQUEST,ORCH,WF,REWORK flow;
155
+ class DEV,TEST,REVIEW agent;
156
+ class DECISION decision;
157
+ class VERIFY,RESULT result;
158
+ ```
159
+
160
+ `Orchestrator.run_workflow()` is the stable higher-level orchestration entry point. `MultiAgentWorkflow` owns the concrete stage, handoff, review, and rework semantics. `MultiAgentRuntime` remains an application/runtime adapter and delegates execution to the orchestration boundary.
161
+
162
+ Agent Execution Runtime remains the execution boundary for permissions, filesystem access, patch application, process execution, Git operations, and verification.
163
+
164
+ ## Connection model
165
+
166
+ ### Remote GitHub path
167
+
168
+ ```mermaid
169
+ flowchart LR
170
+ C["ChatGPT Web"] --> X["ChatGPT Codex Connector"] --> G["GitHub Repository"]
171
+ M["ChatGPT Mobile App"] --> X
172
+ ```
173
+
174
+ This path addresses the remote repository and its durable GitHub state.
175
+
176
+ ### Local project path
177
+
178
+ ```text
179
+ ChatGPT Web / Local AI client
180
+ |
181
+ v
182
+ 127.0.0.1:8000/mcp
183
+ |
184
+ v
185
+ MultiAgentOS MCP
186
+ |
187
+ v
188
+ Local Project
189
+ ```
190
+
191
+ The local Agent Execution Runtime MCP server is the default development path. In the verified setup, ChatGPT Web can reach this local MCP service while the ChatGPT mobile app cannot. Local MCP clients can also use it directly. The service runs on loopback and does not require a paid AI API key or Secure MCP Tunnel.
192
+
193
+ Secure MCP Tunnel is an optional remote-connection layer for clients that need to reach a private local MCP server from outside the machine. It is not required for the cost-free local MCP baseline.
194
+
195
+ ### Persistent local MCP service
196
+
197
+ MultiAgentOS provides OS-native lifecycle management for the local MCP server:
198
+
199
+ - macOS: per-user `launchd` service
200
+ - Windows: per-user Task Scheduler task
201
+
202
+ Use:
203
+
204
+ ```bash
205
+ multiagentos mcp install --path /absolute/path/to/project --allow-write
206
+ multiagentos mcp status
207
+ ```
208
+
209
+ On Windows, the equivalent command is:
210
+
211
+ ```powershell
212
+ multiagentos mcp install --path C:\\Users\\<you>\\Documents\\your-project --allow-write
213
+ multiagentos mcp status
214
+ ```
215
+
216
+ Each managed project gets its own OS service identity. Use a different port for each simultaneously running project:
217
+
218
+ ```bash
219
+ multiagentos mcp install --path /absolute/path/to/project1 --port 8000 --allow-write
220
+ multiagentos mcp install --path /absolute/path/to/project2 --port 8001 --allow-write
221
+ ```
222
+
223
+ Then inspect or remove a specific project service:
224
+
225
+ ```bash
226
+ multiagentos mcp status --path /absolute/path/to/project1
227
+ multiagentos mcp uninstall --path /absolute/path/to/project1
228
+ ```
229
+
230
+ The service identity is derived from the resolved project path, so multiple projects can coexist without sharing the same OS service registration. See [Windows MCP Service](docs/WINDOWS_MCP_SERVICE.md) and [macOS MCP Service](docs/MACOS_MCP_SERVICE.md) for lifecycle details.
231
+
232
+ ## Terminology
233
+
234
+ **Agent Execution Runtime** is the descriptive architectural name for the local execution and permission boundary.
235
+
236
+ ## Cost-Free baseline
237
+
238
+ The core positioning is simple:
239
+
240
+ > **No separate paid AI API key is required for the MultiAgentOS cost-free baseline.**
241
+
242
+ The baseline also does not require:
243
+
244
+ - a separate agent API subscription
245
+ - a MultiAgentOS SaaS subscription
246
+ - a second MCP server for the tunnel path
247
+
248
+ AI-client/product plan limits still apply to the AI service you choose to use. “Cost-Free” describes the MultiAgentOS runtime architecture; it does not mean unlimited AI-service usage.
249
+
250
+ ### Verified baseline capabilities
251
+
252
+ - Agent Execution Runtime MCP stdio initialization and tool discovery
253
+ - filesystem READ / WRITE
254
+ - `patch.apply`
255
+ - `shell.run`
256
+ - local MCP/runtime tests
257
+ - runtime health/readiness
258
+ - Secure MCP Tunnel readiness
259
+
260
+ See [Cost-Free Development Baseline](docs/COSTFREE_DEVELOPMENT.md) for the verification record.
261
+
262
+ ## Quick start
263
+
264
+ ### Install
265
+
266
+ For the local Streamable HTTP MCP server:
267
+
268
+ ```bash
269
+ python3 -m pip install "multiagentos[mcp-http]"
270
+ ```
271
+
272
+ This installs the MCP HTTP dependencies and the `multiagentos` CLI. No OpenAI API key is required.
273
+
274
+ **[Download files on PyPI](https://pypi.org/project/multiagentos/#files)**
275
+
276
+ ## Initialize a project
277
+
278
+ ```bash
279
+ cd your-project
280
+ multiagentos init . --component all
281
+ multiagentos status .
282
+ ```
283
+
284
+ ### Run a local task
285
+
286
+ ```bash
287
+ multiagentos run --path . --objective "run tests" -- python -m unittest discover -s tests -v
288
+ ```
289
+
290
+ ### Start a Chat Agent session
291
+
292
+ ```bash
293
+ multiagentos chat --path . --objective "inspect the current project"
294
+ ```
295
+
296
+ ### Run the local MCP server
297
+
298
+ For the local read-only baseline:
299
+
300
+ ```bash
301
+ multiagentos mcp serve-http --path .
302
+ ```
303
+
304
+ For the local read/write workflow:
305
+
306
+ ```bash
307
+ multiagentos mcp serve-http \
308
+ --path . \
309
+ --allow-write
310
+ ```
311
+
312
+ Install it once as a macOS user service so it starts at login and is restarted by `launchd` after reboot:
313
+
314
+ ```bash
315
+ multiagentos mcp install --path . --allow-write
316
+ ```
317
+
318
+ Check or remove the service with:
319
+
320
+ ```bash
321
+ multiagentos mcp status --path .
322
+ multiagentos mcp uninstall --path .
323
+ ```
324
+
325
+ For multiple projects, assign each project a different port:
326
+
327
+ ```bash
328
+ multiagentos mcp install --path /absolute/path/to/project1 --port 8000 --allow-write
329
+ multiagentos mcp install --path /absolute/path/to/project2 --port 8001 --allow-write
330
+ ```
331
+
332
+ Each managed service listens only on `127.0.0.1` and keeps its logs under that project's `.multiagentos/logs/`.
333
+
334
+ ## Configuration
335
+
336
+ Project configuration is stored under `.multiagentos/`.
337
+
338
+ The initializer can install:
339
+
340
+ - `components.json` — selected components
341
+ - `execution.json` — execution Agent/Model selection
342
+ - `chat.json` — Chat Agent selection
343
+ - `agents.json` — multi-agent catalog
344
+ - `state/` and session/checkpoint data as applicable
345
+
346
+ Credentials and provider API keys are not written to project configuration.
347
+
348
+ ## Validation
349
+
350
+ Run the local test suite:
351
+
352
+ ```bash
353
+ python -m unittest discover -s tests -v
354
+ ```
355
+
356
+ GitHub Actions validates the repository through CI.
357
+
358
+ ## Documentation
359
+
360
+ - [Getting Started](docs/GETTING_STARTED.md)
361
+ - [Cost-Free Development Baseline](docs/COSTFREE_DEVELOPMENT.md)
362
+ - [ChatGPT Client Capability Matrix](docs/CHATGPT_CLIENT_CAPABILITIES.md)
363
+ - [Agent Execution Runtime Connection Guide](docs/AGENT_EXECUTION_RUNTIME_CONNECTIONS.md)
364
+ - [Secure MCP Tunnel Setup (optional)](docs/MCP_TUNNEL.md)
365
+ - [macOS MCP Service](docs/MACOS_MCP_SERVICE.md)
366
+ - [macOS tunnel-client Service (optional)](docs/MACOS_TUNNEL_SERVICE.md)
367
+ - [Agent Execution Runtime GitHub Connection](docs/AGENT_EXECUTION_RUNTIME_GITHUB_CONNECTION.md)
368
+ - [Agent Execution Runtime MCP Architecture](docs/ARCHITECTURE_DECISIONS.md)
369
+ - [Agent Plugin Marketplace](docs/PLUGIN_MARKETPLACE.md)
370
+
371
+ The English README is the canonical technical document. Localized READMEs preserve the same architecture, terminology, and cost-free baseline.
372
+
373
+ **[한국어](README.ko.md) · [日本語](README.ja.md) · [简体中文](README.zh-CN.md)**
374
+
375
+ ## License
376
+
377
+ See [LICENSE](LICENSE).