multiagentos 0.4.0__tar.gz → 0.4.1__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 (260) hide show
  1. multiagentos-0.4.1/PKG-INFO +270 -0
  2. multiagentos-0.4.1/README.md +253 -0
  3. multiagentos-0.4.1/agents/__init__.py +1 -0
  4. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/__init__.py +1 -1
  5. multiagentos-0.4.1/core/approval.py +44 -0
  6. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/artifacts.py +1 -1
  7. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/chat_agent_bridge.py +94 -19
  8. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/chat_agent_registry.py +3 -3
  9. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/chat_session.py +1 -1
  10. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/__init__.py +6 -1
  11. multiagentos-0.4.0/core/contracts/vyrelon_runtime.py → multiagentos-0.4.1/core/contracts/agent_execution_runtime.py +6 -13
  12. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/ai.py +1 -1
  13. multiagentos-0.4.1/core/contracts/approval.py +55 -0
  14. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/capability.py +1 -1
  15. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/chat_agent.py +2 -2
  16. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/checkpoint.py +1 -1
  17. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/discovery.py +1 -1
  18. multiagentos-0.4.1/core/contracts/execution_cursor.py +20 -0
  19. multiagentos-0.4.1/core/contracts/execution_limits.py +47 -0
  20. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/handoff.py +2 -2
  21. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/health.py +1 -1
  22. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/human_review.py +1 -1
  23. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/ide.py +6 -6
  24. multiagentos-0.4.1/core/contracts/idempotency.py +26 -0
  25. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/mcp.py +2 -2
  26. multiagentos-0.4.1/core/contracts/memory.py +24 -0
  27. multiagentos-0.4.1/core/contracts/policy_decision.py +34 -0
  28. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/profile.py +2 -2
  29. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/quota.py +1 -1
  30. multiagentos-0.4.1/core/contracts/recovery.py +45 -0
  31. multiagentos-0.4.1/core/contracts/replay.py +29 -0
  32. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/repository.py +1 -1
  33. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/resume.py +1 -1
  34. multiagentos-0.4.1/core/contracts/streaming.py +59 -0
  35. multiagentos-0.4.1/core/contracts/tool_ledger.py +52 -0
  36. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/work_unit.py +1 -1
  37. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/delegation.py +1 -1
  38. multiagentos-0.4.1/core/execution_limits.py +87 -0
  39. multiagentos-0.4.1/core/execution_state.py +140 -0
  40. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/lifecycle.py +1 -1
  41. multiagentos-0.4.1/core/memory.py +74 -0
  42. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/multi_agent_workflow.py +40 -5
  43. multiagentos-0.4.1/core/orchestrator.py +176 -0
  44. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/planning.py +1 -1
  45. multiagentos-0.4.1/core/policy_decision.py +51 -0
  46. multiagentos-0.4.1/core/recovery_audit.py +45 -0
  47. multiagentos-0.4.1/core/security.py +32 -0
  48. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/state.py +41 -1
  49. multiagentos-0.4.1/core/tool_ledger.py +93 -0
  50. multiagentos-0.4.1/installer/__init__.py +1 -0
  51. {multiagentos-0.4.0 → multiagentos-0.4.1}/installer/init.py +4 -4
  52. multiagentos-0.4.1/integrations/openai/__init__.py +1 -0
  53. {multiagentos-0.4.0 → multiagentos-0.4.1}/integrations/openai/chat_agent.py +4 -4
  54. {multiagentos-0.4.0 → multiagentos-0.4.1}/multiagentos/cli.py +49 -31
  55. multiagentos-0.4.1/multiagentos.egg-info/PKG-INFO +270 -0
  56. {multiagentos-0.4.0 → multiagentos-0.4.1}/multiagentos.egg-info/SOURCES.txt +52 -4
  57. multiagentos-0.4.1/multiagentos.egg-info/requires.txt +7 -0
  58. multiagentos-0.4.1/profiles/__init__.py +1 -0
  59. {multiagentos-0.4.0 → multiagentos-0.4.1}/profiles/registry.py +1 -1
  60. {multiagentos-0.4.0 → multiagentos-0.4.1}/profiles/resolver.py +1 -1
  61. multiagentos-0.4.1/pyproject.toml +28 -0
  62. multiagentos-0.4.1/runtime/__init__.py +5 -0
  63. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/agent/ide.py +1 -1
  64. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/agent/model.py +43 -8
  65. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/agent/model_backed.py +2 -2
  66. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/agent/process.py +1 -1
  67. multiagentos-0.4.0/runtime/vyrelon.py → multiagentos-0.4.1/runtime/agent_execution_runtime.py +291 -65
  68. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/builtin_tools.py +2 -2
  69. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/chat_config.py +1 -1
  70. multiagentos-0.4.1/runtime/chat_execution.py +95 -0
  71. multiagentos-0.4.1/runtime/config/__init__.py +1 -0
  72. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/discovery.py +1 -1
  73. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/execution_config.py +2 -2
  74. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/execution_registry.py +1 -1
  75. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/git.py +12 -1
  76. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/github.py +1 -1
  77. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/github_probe.py +1 -1
  78. multiagentos-0.4.1/runtime/harness.py +107 -0
  79. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/ide/bridge.py +1 -1
  80. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/__init__.py +1 -1
  81. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/filesystem.py +1 -1
  82. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/patch.py +1 -1
  83. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/path_security.py +1 -1
  84. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/permissions.py +1 -1
  85. multiagentos-0.4.1/runtime/mcp/__init__.py +17 -0
  86. multiagentos-0.4.1/runtime/mcp/agent_execution_runtime_server.py +8 -0
  87. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/mcp/client.py +2 -2
  88. multiagentos-0.4.1/runtime/mcp/durable_bridge.py +431 -0
  89. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/mcp/policy.py +1 -1
  90. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/mcp/server.py +61 -18
  91. multiagentos-0.4.1/runtime/mcp/streamable_http.py +193 -0
  92. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/__init__.py +1 -1
  93. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/ai_runtime.py +3 -3
  94. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/config.py +1 -1
  95. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/native.py +2 -2
  96. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/providers.py +1 -1
  97. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/runtime_loader.py +1 -1
  98. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model_control.py +5 -1
  99. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/multi_agent.py +45 -60
  100. multiagentos-0.4.1/runtime/observability.py +140 -0
  101. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/policy.py +22 -2
  102. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/quota.py +1 -1
  103. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/repository.py +2 -2
  104. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/repository_tools.py +1 -1
  105. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/status.py +1 -1
  106. multiagentos-0.4.1/runtime/streaming.py +309 -0
  107. multiagentos-0.4.1/runtime/tool_calling.py +538 -0
  108. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/validation.py +3 -3
  109. multiagentos-0.4.0/tests/test_vyrelon_runtime.py → multiagentos-0.4.1/tests/test_agent_execution_runtime.py +81 -13
  110. multiagentos-0.4.1/tests/test_agent_execution_runtime_api.py +34 -0
  111. multiagentos-0.4.1/tests/test_agent_plugin.py +21 -0
  112. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_ai_runtime.py +2 -2
  113. multiagentos-0.4.1/tests/test_approval_boundary.py +77 -0
  114. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_builtin_tools.py +1 -1
  115. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_chat_agent_bridge.py +45 -7
  116. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_chat_config.py +4 -4
  117. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_chat_execution.py +6 -6
  118. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_cli.py +24 -22
  119. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_cli_run_resume.py +7 -5
  120. multiagentos-0.4.1/tests/test_durable_runtime_contracts.py +56 -0
  121. multiagentos-0.4.1/tests/test_execution_harness.py +49 -0
  122. multiagentos-0.4.1/tests/test_execution_limits.py +41 -0
  123. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_github_probe.py +1 -1
  124. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_human_review_persistence.py +3 -3
  125. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_ide_runtime.py +7 -5
  126. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_local_process.py +3 -1
  127. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_local_tool_runtime.py +3 -3
  128. multiagentos-0.4.1/tests/test_mcp_durable_execution.py +214 -0
  129. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_mcp_policy.py +1 -1
  130. multiagentos-0.4.1/tests/test_mcp_sdk_compatibility.py +123 -0
  131. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_mcp_server.py +20 -7
  132. multiagentos-0.4.1/tests/test_mcp_streamable_http.py +342 -0
  133. multiagentos-0.4.1/tests/test_model_control_routing.py +110 -0
  134. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_runtime.py +2 -1
  135. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_multi_agent_workflow.py +5 -5
  136. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_native_provider_tool_calling.py +1 -1
  137. multiagentos-0.4.1/tests/test_no_legacy_runtime_name.py +33 -0
  138. multiagentos-0.4.1/tests/test_observability.py +56 -0
  139. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_openai_chat_agent.py +3 -3
  140. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_orchestrator.py +32 -0
  141. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_persistent_model_cli.py +3 -3
  142. multiagentos-0.4.1/tests/test_policy_decision_evidence.py +67 -0
  143. multiagentos-0.4.1/tests/test_project_memory.py +36 -0
  144. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_provider_registry.py +5 -5
  145. multiagentos-0.4.1/tests/test_recovery_audit_source_guard.py +38 -0
  146. multiagentos-0.4.1/tests/test_recovery_authorization_contract.py +113 -0
  147. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_repository_tools.py +1 -1
  148. multiagentos-0.4.1/tests/test_runtime_execution_inspection.py +71 -0
  149. multiagentos-0.4.1/tests/test_runtime_recovery_contract.py +59 -0
  150. multiagentos-0.4.1/tests/test_runtime_recovery_resume_gate.py +42 -0
  151. multiagentos-0.4.1/tests/test_runtime_security_boundary.py +99 -0
  152. multiagentos-0.4.1/tests/test_streaming_runtime.py +184 -0
  153. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_tool_calling_runtime.py +12 -2
  154. multiagentos-0.4.1/tests/test_tool_ledger_runtime.py +285 -0
  155. multiagentos-0.4.1/tests/test_tunnel_client_mcp_health.py +74 -0
  156. multiagentos-0.4.1/tests/test_tunnel_client_runtime_status.py +64 -0
  157. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_unified_checkpoints.py +4 -4
  158. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_validation_runtime.py +7 -5
  159. multiagentos-0.4.0/PKG-INFO +0 -7
  160. multiagentos-0.4.0/README.md +0 -301
  161. multiagentos-0.4.0/agents/__init__.py +0 -1
  162. multiagentos-0.4.0/core/orchestrator.py +0 -51
  163. multiagentos-0.4.0/installer/__init__.py +0 -1
  164. multiagentos-0.4.0/integrations/openai/__init__.py +0 -1
  165. multiagentos-0.4.0/multiagentos.egg-info/PKG-INFO +0 -7
  166. multiagentos-0.4.0/multiagentos.egg-info/requires.txt +0 -3
  167. multiagentos-0.4.0/profiles/__init__.py +0 -1
  168. multiagentos-0.4.0/pyproject.toml +0 -19
  169. multiagentos-0.4.0/runtime/__init__.py +0 -5
  170. multiagentos-0.4.0/runtime/chat_execution.py +0 -52
  171. multiagentos-0.4.0/runtime/config/__init__.py +0 -1
  172. multiagentos-0.4.0/runtime/mcp/__init__.py +0 -7
  173. multiagentos-0.4.0/runtime/tool_calling.py +0 -134
  174. {multiagentos-0.4.0 → multiagentos-0.4.1}/agents/catalog.py +0 -0
  175. {multiagentos-0.4.0 → multiagentos-0.4.1}/agents/registry.py +0 -0
  176. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/chat_agent_router.py +0 -0
  177. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/agent.py +0 -0
  178. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/execution.py +0 -0
  179. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/github.py +0 -0
  180. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/model_runtime.py +0 -0
  181. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/planning.py +0 -0
  182. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/contracts/runtime.py +0 -0
  183. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/handoff.py +0 -0
  184. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/registry.py +0 -0
  185. {multiagentos-0.4.0 → multiagentos-0.4.1}/core/routing.py +0 -0
  186. {multiagentos-0.4.0 → multiagentos-0.4.1}/integrations/__init__.py +0 -0
  187. {multiagentos-0.4.0 → multiagentos-0.4.1}/integrations/github/__init__.py +0 -0
  188. {multiagentos-0.4.0 → multiagentos-0.4.1}/integrations/github/gateway.py +0 -0
  189. {multiagentos-0.4.0 → multiagentos-0.4.1}/multiagentos/__init__.py +0 -0
  190. {multiagentos-0.4.0 → multiagentos-0.4.1}/multiagentos.egg-info/dependency_links.txt +0 -0
  191. {multiagentos-0.4.0 → multiagentos-0.4.1}/multiagentos.egg-info/entry_points.txt +0 -0
  192. {multiagentos-0.4.0 → multiagentos-0.4.1}/multiagentos.egg-info/top_level.txt +0 -0
  193. {multiagentos-0.4.0 → multiagentos-0.4.1}/profiles/common.py +0 -0
  194. {multiagentos-0.4.0 → multiagentos-0.4.1}/profiles/detector.py +0 -0
  195. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/agent/__init__.py +0 -0
  196. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/capability.py +0 -0
  197. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/chat_adapter_registry.py +0 -0
  198. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/config/loader.py +0 -0
  199. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/health.py +0 -0
  200. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/ide/__init__.py +0 -0
  201. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/ide/registry.py +0 -0
  202. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/ide/runtime.py +0 -0
  203. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/process.py +0 -0
  204. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/local/shell.py +0 -0
  205. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/mcp/config.py +0 -0
  206. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/mcp/proxy.py +0 -0
  207. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/mcp/session.py +0 -0
  208. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/cli.py +0 -0
  209. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/credentials.py +0 -0
  210. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/factory.py +0 -0
  211. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/http.py +0 -0
  212. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/invoker.py +0 -0
  213. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/materializer.py +0 -0
  214. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/model/registry.py +0 -0
  215. {multiagentos-0.4.0 → multiagentos-0.4.1}/runtime/process.py +0 -0
  216. {multiagentos-0.4.0 → multiagentos-0.4.1}/setup.cfg +0 -0
  217. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_agents_and_handoff.py +0 -0
  218. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_chat_adapter_registry.py +0 -0
  219. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_chat_agent_router_session.py +0 -0
  220. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_chat_agents.py +0 -0
  221. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_cli_providers.py +0 -0
  222. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_config_loader.py +0 -0
  223. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_configured_model_cli.py +0 -0
  224. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_core_runtime.py +0 -0
  225. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_credentials.py +0 -0
  226. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_execution_config.py +0 -0
  227. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_execution_registry.py +0 -0
  228. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_git_runtime.py +0 -0
  229. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_github_contract.py +0 -0
  230. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_github_runtime.py +0 -0
  231. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_http_model_adapter.py +0 -0
  232. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_ide_bridge.py +0 -0
  233. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_ide_tool_calling.py +0 -0
  234. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_mcp_cost_boundary.py +0 -0
  235. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_mcp_runtime.py +0 -0
  236. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_agent.py +0 -0
  237. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_backed_agent.py +0 -0
  238. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_capability.py +0 -0
  239. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_control.py +0 -0
  240. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_factory.py +0 -0
  241. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_failover.py +0 -0
  242. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_health.py +0 -0
  243. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_model_intelligence_sync.py +0 -0
  244. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_multi_agent_runtime.py +0 -0
  245. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_planning_state.py +0 -0
  246. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_profile_contracts.py +0 -0
  247. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_profiles_installer.py +0 -0
  248. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_project_routing.py +0 -0
  249. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_provider_config.py +0 -0
  250. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_provider_discovery.py +0 -0
  251. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_provider_materializer.py +0 -0
  252. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_provider_runtime_loader.py +0 -0
  253. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_quota_helpers.py +0 -0
  254. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_quota_intelligence.py +0 -0
  255. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_quota_provider_metadata.py +0 -0
  256. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_quota_routing.py +0 -0
  257. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_release_security_boundaries.py +0 -0
  258. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_repository_runtime.py +0 -0
  259. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_routing_explainability.py +0 -0
  260. {multiagentos-0.4.0 → multiagentos-0.4.1}/tests/test_runtime_adapters.py +0 -0
@@ -0,0 +1,270 @@
1
+ Metadata-Version: 2.4
2
+ Name: multiagentos
3
+ Version: 0.4.1
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** — single user-facing entry point
31
+ - **ChatGPT Codex Connector** — remote GitHub repository access
32
+ - **Agent Execution Runtime MCP / Secure Tunnel** — local project access
33
+ - **Orchestrator** — top-level multi-agent coordination
34
+ - **MultiAgentWorkflow** — concrete Developer → Tester → Reviewer execution
35
+ - **Agent Execution Runtime** — permission and execution authority
36
+
37
+ Agents provide intent, plans, and results. They do not directly own filesystem, process, patch, or Git execution authority.
38
+
39
+ ## Architecture
40
+
41
+ ```text
42
+ Web Browser
43
+ |
44
+ v
45
+ ChatGPT Web
46
+ |
47
+ +---------+---------+
48
+ | |
49
+ v v
50
+ ChatGPT Codex Connector Agent Execution Runtime
51
+ | MCP / Secure Tunnel
52
+ v |
53
+ GitHub Repository v
54
+ Local Project
55
+ | |
56
+ +---------+---------+
57
+ |
58
+ v
59
+ MultiAgentOS
60
+ |
61
+ v
62
+ Orchestrator
63
+ |
64
+ v
65
+ MultiAgentWorkflow
66
+ / | \
67
+ Developer Tester Reviewer
68
+ |
69
+ v
70
+ Verification
71
+ |
72
+ v
73
+ Agent Execution Runtime
74
+ ```
75
+
76
+ ### Responsibility boundaries
77
+
78
+ | Component | Responsibility |
79
+ | --- | --- |
80
+ | **ChatGPT Web** | User-facing entry point |
81
+ | **ChatGPT Codex Connector** | Remote GitHub repository access |
82
+ | **Agent Execution Runtime MCP / Secure Tunnel** | Local project connection |
83
+ | **MultiAgentOS** | Agent contracts, routing, state, and orchestration |
84
+ | **Orchestrator** | Overall collaboration coordination |
85
+ | **MultiAgentWorkflow** | Stage, handoff, review, and rework semantics |
86
+ | **Agent Execution Runtime** | Permission and execution authority |
87
+
88
+ ## Multi-agent workflow
89
+
90
+ ```text
91
+ Request
92
+ |
93
+ v
94
+ Orchestrator
95
+ |
96
+ v
97
+ MultiAgentWorkflow
98
+ |
99
+ +--> Developer
100
+ |
101
+ +--> Tester
102
+ |
103
+ +--> Reviewer
104
+ |
105
+ +--> Rework when required
106
+ |
107
+ v
108
+ Verification
109
+ |
110
+ v
111
+ Completed / Failed
112
+ ```
113
+
114
+ `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.
115
+
116
+ Agent Execution Runtime remains the execution boundary for permissions, filesystem access, patch application, process execution, Git operations, and verification.
117
+
118
+ ## Connection model
119
+
120
+ ### Remote GitHub path
121
+
122
+ ```text
123
+ ChatGPT Web
124
+ |
125
+ v
126
+ ChatGPT Codex Connector
127
+ |
128
+ v
129
+ GitHub Repository
130
+ ```
131
+
132
+ This path addresses the remote repository and its durable GitHub state.
133
+
134
+ ### Local project path
135
+
136
+ ```text
137
+ ChatGPT Web
138
+ |
139
+ v
140
+ Agent Execution Runtime MCP / Secure Tunnel
141
+ |
142
+ v
143
+ Agent Execution Runtime
144
+ |
145
+ v
146
+ Local Project
147
+ ```
148
+
149
+ Agent Execution Runtime has **one MCP Server**. Secure MCP Tunnel and `tunnel-client` are transport/connection infrastructure, not another MCP server.
150
+
151
+ The local Agent Execution Runtime MCP server can be used independently without OpenAI, ChatGPT, a tunnel, or a paid AI API key.
152
+
153
+ ## Terminology
154
+
155
+ **Agent Execution Runtime** is the descriptive architectural name for the local execution and permission boundary
156
+
157
+ ## Cost-Free baseline
158
+
159
+ The core positioning is simple:
160
+
161
+ > **No separate paid AI API key is required for the MultiAgentOS cost-free baseline.**
162
+
163
+ The baseline also does not require:
164
+
165
+ - a separate agent API subscription
166
+ - a MultiAgentOS SaaS subscription
167
+ - a second MCP server for the tunnel path
168
+
169
+ 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.
170
+
171
+ ### Verified baseline capabilities
172
+
173
+ - Agent Execution Runtime MCP stdio initialization and tool discovery
174
+ - filesystem READ / WRITE
175
+ - `patch.apply`
176
+ - `shell.run`
177
+ - local MCP/runtime tests
178
+ - runtime health/readiness
179
+ - Secure MCP Tunnel readiness
180
+
181
+ See [Cost-Free Development Baseline](docs/COSTFREE_DEVELOPMENT.md) for the verification record.
182
+
183
+ ## Quick start
184
+
185
+ ### Install
186
+
187
+ ```bash
188
+ python3 -m pip install multiagentos
189
+ ```
190
+
191
+ #**[Download files on PyPI](https://pypi.org/project/multiagentos/#files)**
192
+
193
+ ## Initialize a project
194
+
195
+ ```bash
196
+ cd your-project
197
+ multiagentos init . --component all
198
+ multiagentos status .
199
+ ```
200
+
201
+ ### Run a local task
202
+
203
+ ```bash
204
+ multiagentos run --path . --objective "run tests" -- python -m unittest discover -s tests -v
205
+ ```
206
+
207
+ ### Start a Chat Agent session
208
+
209
+ ```bash
210
+ multiagentos chat --path . --objective "inspect the current project"
211
+ ```
212
+
213
+ ### Expose the Agent Execution Runtime MCP server
214
+
215
+ ```bash
216
+ multiagentos mcp serve --path .
217
+ ```
218
+
219
+ For explicit filesystem writes and process execution:
220
+
221
+ ```bash
222
+ multiagentos mcp serve \
223
+ --path . \
224
+ --allow-write \
225
+ --allow-process
226
+ ```
227
+
228
+ ## Configuration
229
+
230
+ Project configuration is stored under `.multiagentos/`.
231
+
232
+ The initializer can install:
233
+
234
+ - `components.json` — selected components
235
+ - `execution.json` — execution Agent/Model selection
236
+ - `chat.json` — Chat Agent selection
237
+ - `agents.json` — multi-agent catalog
238
+ - `state/` and session/checkpoint data as applicable
239
+
240
+ Credentials and provider API keys are not written to project configuration.
241
+
242
+ ## Validation
243
+
244
+ Run the local test suite:
245
+
246
+ ```bash
247
+ python -m unittest discover -s tests -v
248
+ ```
249
+
250
+ GitHub Actions validates the repository through CI.
251
+
252
+ ## Documentation
253
+
254
+ - [Getting Started](docs/GETTING_STARTED.md)
255
+ - [Cost-Free Development Baseline](docs/COSTFREE_DEVELOPMENT.md)
256
+ - [Agent Execution Runtime Connection Guide](docs/AGENT_EXECUTION_RUNTIME_CONNECTIONS.md)
257
+ - [Secure MCP Tunnel Setup](docs/MCP_TUNNEL.md)
258
+ - [macOS MCP Service](docs/MACOS_MCP_SERVICE.md)
259
+ - [macOS tunnel-client Service](docs/MACOS_TUNNEL_SERVICE.md)
260
+ - [Agent Execution Runtime GitHub Connection](docs/AGENT_EXECUTION_RUNTIME_GITHUB_CONNECTION.md)
261
+ - [Agent Execution Runtime MCP Architecture](docs/ARCHITECTURE_DECISIONS.md)
262
+ - [Agent Plugin Marketplace](docs/PLUGIN_MARKETPLACE.md)
263
+
264
+ The English README is the canonical technical document. Localized READMEs preserve the same architecture, terminology, and cost-free baseline.
265
+
266
+ **[한국어](README.ko.md) · [日本語](README.ja.md) · [简体中文](README.zh-CN.md)**
267
+
268
+ ## License
269
+
270
+ See [LICENSE](LICENSE).
@@ -0,0 +1,253 @@
1
+ # MultiAgentOS
2
+
3
+ > **Cost-Free Multi-Agent Development Orchestration**
4
+
5
+ MultiAgentOS is a local-first development orchestration platform built around **Agent Execution Runtime**.
6
+
7
+ 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.
8
+
9
+ ## Why MultiAgentOS
10
+
11
+ MultiAgentOS separates **AI collaboration** from **execution authority**.
12
+
13
+ - **ChatGPT Web** — single user-facing entry point
14
+ - **ChatGPT Codex Connector** — remote GitHub repository access
15
+ - **Agent Execution Runtime MCP / Secure Tunnel** — local project access
16
+ - **Orchestrator** — top-level multi-agent coordination
17
+ - **MultiAgentWorkflow** — concrete Developer → Tester → Reviewer execution
18
+ - **Agent Execution Runtime** — permission and execution authority
19
+
20
+ Agents provide intent, plans, and results. They do not directly own filesystem, process, patch, or Git execution authority.
21
+
22
+ ## Architecture
23
+
24
+ ```text
25
+ Web Browser
26
+ |
27
+ v
28
+ ChatGPT Web
29
+ |
30
+ +---------+---------+
31
+ | |
32
+ v v
33
+ ChatGPT Codex Connector Agent Execution Runtime
34
+ | MCP / Secure Tunnel
35
+ v |
36
+ GitHub Repository v
37
+ Local Project
38
+ | |
39
+ +---------+---------+
40
+ |
41
+ v
42
+ MultiAgentOS
43
+ |
44
+ v
45
+ Orchestrator
46
+ |
47
+ v
48
+ MultiAgentWorkflow
49
+ / | \
50
+ Developer Tester Reviewer
51
+ |
52
+ v
53
+ Verification
54
+ |
55
+ v
56
+ Agent Execution Runtime
57
+ ```
58
+
59
+ ### Responsibility boundaries
60
+
61
+ | Component | Responsibility |
62
+ | --- | --- |
63
+ | **ChatGPT Web** | User-facing entry point |
64
+ | **ChatGPT Codex Connector** | Remote GitHub repository access |
65
+ | **Agent Execution Runtime MCP / Secure Tunnel** | Local project connection |
66
+ | **MultiAgentOS** | Agent contracts, routing, state, and orchestration |
67
+ | **Orchestrator** | Overall collaboration coordination |
68
+ | **MultiAgentWorkflow** | Stage, handoff, review, and rework semantics |
69
+ | **Agent Execution Runtime** | Permission and execution authority |
70
+
71
+ ## Multi-agent workflow
72
+
73
+ ```text
74
+ Request
75
+ |
76
+ v
77
+ Orchestrator
78
+ |
79
+ v
80
+ MultiAgentWorkflow
81
+ |
82
+ +--> Developer
83
+ |
84
+ +--> Tester
85
+ |
86
+ +--> Reviewer
87
+ |
88
+ +--> Rework when required
89
+ |
90
+ v
91
+ Verification
92
+ |
93
+ v
94
+ Completed / Failed
95
+ ```
96
+
97
+ `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.
98
+
99
+ Agent Execution Runtime remains the execution boundary for permissions, filesystem access, patch application, process execution, Git operations, and verification.
100
+
101
+ ## Connection model
102
+
103
+ ### Remote GitHub path
104
+
105
+ ```text
106
+ ChatGPT Web
107
+ |
108
+ v
109
+ ChatGPT Codex Connector
110
+ |
111
+ v
112
+ GitHub Repository
113
+ ```
114
+
115
+ This path addresses the remote repository and its durable GitHub state.
116
+
117
+ ### Local project path
118
+
119
+ ```text
120
+ ChatGPT Web
121
+ |
122
+ v
123
+ Agent Execution Runtime MCP / Secure Tunnel
124
+ |
125
+ v
126
+ Agent Execution Runtime
127
+ |
128
+ v
129
+ Local Project
130
+ ```
131
+
132
+ Agent Execution Runtime has **one MCP Server**. Secure MCP Tunnel and `tunnel-client` are transport/connection infrastructure, not another MCP server.
133
+
134
+ The local Agent Execution Runtime MCP server can be used independently without OpenAI, ChatGPT, a tunnel, or a paid AI API key.
135
+
136
+ ## Terminology
137
+
138
+ **Agent Execution Runtime** is the descriptive architectural name for the local execution and permission boundary
139
+
140
+ ## Cost-Free baseline
141
+
142
+ The core positioning is simple:
143
+
144
+ > **No separate paid AI API key is required for the MultiAgentOS cost-free baseline.**
145
+
146
+ The baseline also does not require:
147
+
148
+ - a separate agent API subscription
149
+ - a MultiAgentOS SaaS subscription
150
+ - a second MCP server for the tunnel path
151
+
152
+ 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.
153
+
154
+ ### Verified baseline capabilities
155
+
156
+ - Agent Execution Runtime MCP stdio initialization and tool discovery
157
+ - filesystem READ / WRITE
158
+ - `patch.apply`
159
+ - `shell.run`
160
+ - local MCP/runtime tests
161
+ - runtime health/readiness
162
+ - Secure MCP Tunnel readiness
163
+
164
+ See [Cost-Free Development Baseline](docs/COSTFREE_DEVELOPMENT.md) for the verification record.
165
+
166
+ ## Quick start
167
+
168
+ ### Install
169
+
170
+ ```bash
171
+ python3 -m pip install multiagentos
172
+ ```
173
+
174
+ #**[Download files on PyPI](https://pypi.org/project/multiagentos/#files)**
175
+
176
+ ## Initialize a project
177
+
178
+ ```bash
179
+ cd your-project
180
+ multiagentos init . --component all
181
+ multiagentos status .
182
+ ```
183
+
184
+ ### Run a local task
185
+
186
+ ```bash
187
+ multiagentos run --path . --objective "run tests" -- python -m unittest discover -s tests -v
188
+ ```
189
+
190
+ ### Start a Chat Agent session
191
+
192
+ ```bash
193
+ multiagentos chat --path . --objective "inspect the current project"
194
+ ```
195
+
196
+ ### Expose the Agent Execution Runtime MCP server
197
+
198
+ ```bash
199
+ multiagentos mcp serve --path .
200
+ ```
201
+
202
+ For explicit filesystem writes and process execution:
203
+
204
+ ```bash
205
+ multiagentos mcp serve \
206
+ --path . \
207
+ --allow-write \
208
+ --allow-process
209
+ ```
210
+
211
+ ## Configuration
212
+
213
+ Project configuration is stored under `.multiagentos/`.
214
+
215
+ The initializer can install:
216
+
217
+ - `components.json` — selected components
218
+ - `execution.json` — execution Agent/Model selection
219
+ - `chat.json` — Chat Agent selection
220
+ - `agents.json` — multi-agent catalog
221
+ - `state/` and session/checkpoint data as applicable
222
+
223
+ Credentials and provider API keys are not written to project configuration.
224
+
225
+ ## Validation
226
+
227
+ Run the local test suite:
228
+
229
+ ```bash
230
+ python -m unittest discover -s tests -v
231
+ ```
232
+
233
+ GitHub Actions validates the repository through CI.
234
+
235
+ ## Documentation
236
+
237
+ - [Getting Started](docs/GETTING_STARTED.md)
238
+ - [Cost-Free Development Baseline](docs/COSTFREE_DEVELOPMENT.md)
239
+ - [Agent Execution Runtime Connection Guide](docs/AGENT_EXECUTION_RUNTIME_CONNECTIONS.md)
240
+ - [Secure MCP Tunnel Setup](docs/MCP_TUNNEL.md)
241
+ - [macOS MCP Service](docs/MACOS_MCP_SERVICE.md)
242
+ - [macOS tunnel-client Service](docs/MACOS_TUNNEL_SERVICE.md)
243
+ - [Agent Execution Runtime GitHub Connection](docs/AGENT_EXECUTION_RUNTIME_GITHUB_CONNECTION.md)
244
+ - [Agent Execution Runtime MCP Architecture](docs/ARCHITECTURE_DECISIONS.md)
245
+ - [Agent Plugin Marketplace](docs/PLUGIN_MARKETPLACE.md)
246
+
247
+ The English README is the canonical technical document. Localized READMEs preserve the same architecture, terminology, and cost-free baseline.
248
+
249
+ **[한국어](README.ko.md) · [日本語](README.ja.md) · [简体中文](README.zh-CN.md)**
250
+
251
+ ## License
252
+
253
+ See [LICENSE](LICENSE).
@@ -0,0 +1 @@
1
+ """Built-in AGENT_EXECUTION_RUNTIME agent catalog."""
@@ -1,4 +1,4 @@
1
- """VYRELON orchestration core."""
1
+ """AGENT_EXECUTION_RUNTIME orchestration core."""
2
2
 
3
3
  from core.chat_agent_bridge import ChatAgentBridge, ChatAgentExecutionResult, ChatAgentRequest, ChatAgentResponse
4
4
  from core.chat_agent_registry import ChatAgentRegistry, default_chat_agents
@@ -0,0 +1,44 @@
1
+ """Durable, redacted approval evidence."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import json
6
+ from pathlib import Path
7
+
8
+ from core.contracts.approval import ApprovalGrant, ApprovalDecision
9
+ from core.security import redact_sensitive
10
+
11
+
12
+ class ApprovalStore:
13
+ """Persist approval decisions without prompts, credentials, or raw arguments."""
14
+
15
+ def __init__(self, root: Path) -> None:
16
+ self.root = Path(root)
17
+ self.root.mkdir(parents=True, exist_ok=True)
18
+
19
+ def save(self, grant: ApprovalGrant, *, metadata: dict[str, object] | None = None) -> Path:
20
+ path = self.root / f"{grant.approval_id}.json"
21
+ payload = redact_sensitive({
22
+ "approval_id": grant.approval_id,
23
+ "decision": grant.decision.value,
24
+ "action": grant.action,
25
+ "work_unit_id": grant.work_unit_id,
26
+ "session_id": grant.session_id,
27
+ "expires_at": grant.expires_at,
28
+ "reason": grant.reason,
29
+ "metadata": dict(metadata or {}),
30
+ })
31
+ path.write_text(json.dumps(payload, ensure_ascii=False, indent=2) + "\n", encoding="utf-8")
32
+ return path
33
+
34
+ def load(self, approval_id: str) -> ApprovalGrant:
35
+ data = json.loads((self.root / f"{approval_id}.json").read_text(encoding="utf-8"))
36
+ return ApprovalGrant(
37
+ approval_id=str(data["approval_id"]),
38
+ decision=ApprovalDecision(str(data["decision"])),
39
+ action=str(data["action"]),
40
+ work_unit_id=data.get("work_unit_id"),
41
+ session_id=data.get("session_id"),
42
+ expires_at=data.get("expires_at"),
43
+ reason=str(data.get("reason", "")),
44
+ )
@@ -1,4 +1,4 @@
1
- """Persistent artifact registry for VYRELON workflows."""
1
+ """Persistent artifact registry for AGENT_EXECUTION_RUNTIME workflows."""
2
2
 
3
3
  from __future__ import annotations
4
4