connectonion 0.5.6__tar.gz → 0.5.7__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 (131) hide show
  1. {connectonion-0.5.6 → connectonion-0.5.7}/PKG-INFO +1 -1
  2. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/__init__.py +1 -1
  3. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/asgi.py +20 -4
  4. {connectonion-0.5.6 → connectonion-0.5.7}/pyproject.toml +1 -1
  5. {connectonion-0.5.6 → connectonion-0.5.7}/.gitignore +0 -0
  6. {connectonion-0.5.6 → connectonion-0.5.7}/README.md +0 -0
  7. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/address.py +0 -0
  8. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/agent.py +0 -0
  9. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/announce.py +0 -0
  10. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/auto_debug_exception.py +0 -0
  11. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/__init__.py +0 -0
  12. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/browser_agent/__init__.py +0 -0
  13. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/browser_agent/browser.py +0 -0
  14. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/browser_agent/prompt.md +0 -0
  15. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/__init__.py +0 -0
  16. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/auth_commands.py +0 -0
  17. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/browser_commands.py +0 -0
  18. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/create.py +0 -0
  19. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/deploy_commands.py +0 -0
  20. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/doctor_commands.py +0 -0
  21. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/init.py +0 -0
  22. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/project_cmd_lib.py +0 -0
  23. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/reset_commands.py +0 -0
  24. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/commands/status_commands.py +0 -0
  25. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/docs/co-vibecoding-principles-docs-contexts-all-in-one.md +0 -0
  26. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/docs/connectonion.md +0 -0
  27. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/docs.md +0 -0
  28. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/main.py +0 -0
  29. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/meta-agent/README.md +0 -0
  30. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/meta-agent/agent.py +0 -0
  31. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/meta-agent/prompts/answer_prompt.md +0 -0
  32. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/meta-agent/prompts/docs_retrieve_prompt.md +0 -0
  33. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/meta-agent/prompts/metagent.md +0 -0
  34. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/meta-agent/prompts/think_prompt.md +0 -0
  35. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/minimal/README.md +0 -0
  36. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/minimal/agent.py +0 -0
  37. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/playwright/README.md +0 -0
  38. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/playwright/agent.py +0 -0
  39. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/playwright/prompt.md +0 -0
  40. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/playwright/requirements.txt +0 -0
  41. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/cli/templates/web-research/agent.py +0 -0
  42. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/connect.py +0 -0
  43. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/console.py +0 -0
  44. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_agent/__init__.py +0 -0
  45. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_agent/agent.py +0 -0
  46. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_agent/prompts/debug_assistant.md +0 -0
  47. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_agent/runtime_inspector.py +0 -0
  48. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_explainer/__init__.py +0 -0
  49. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_explainer/explain_agent.py +0 -0
  50. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_explainer/explain_context.py +0 -0
  51. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_explainer/explainer_prompt.md +0 -0
  52. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debug_explainer/root_cause_analysis_prompt.md +0 -0
  53. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/debugger_ui.py +0 -0
  54. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/decorators.py +0 -0
  55. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/events.py +0 -0
  56. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/execution_analyzer/__init__.py +0 -0
  57. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/execution_analyzer/execution_analysis.py +0 -0
  58. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/execution_analyzer/execution_analysis_prompt.md +0 -0
  59. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/host.py +0 -0
  60. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/interactive_debugger.py +0 -0
  61. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/llm.py +0 -0
  62. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/llm_do.py +0 -0
  63. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/logger.py +0 -0
  64. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompt_files/__init__.py +0 -0
  65. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompt_files/analyze_contact.md +0 -0
  66. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompt_files/eval_expected.md +0 -0
  67. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompt_files/react_evaluate.md +0 -0
  68. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompt_files/react_plan.md +0 -0
  69. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompt_files/reflect.md +0 -0
  70. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/prompts.py +0 -0
  71. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/relay.py +0 -0
  72. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/static/docs.html +0 -0
  73. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tool_executor.py +0 -0
  74. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tool_factory.py +0 -0
  75. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tool_registry.py +0 -0
  76. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/trust.py +0 -0
  77. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/trust_agents.py +0 -0
  78. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/trust_functions.py +0 -0
  79. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/__init__.py +0 -0
  80. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/divider.py +0 -0
  81. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/dropdown.py +0 -0
  82. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/footer.py +0 -0
  83. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/fuzzy.py +0 -0
  84. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/input.py +0 -0
  85. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/keys.py +0 -0
  86. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/pick.py +0 -0
  87. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/providers.py +0 -0
  88. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/tui/status_bar.py +0 -0
  89. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/usage.py +0 -0
  90. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_events_handlers/__init__.py +0 -0
  91. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_events_handlers/reflect.py +0 -0
  92. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/__init__.py +0 -0
  93. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/calendar_plugin.py +0 -0
  94. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/eval.py +0 -0
  95. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/gmail_plugin.py +0 -0
  96. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/image_result_formatter.py +0 -0
  97. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/re_act.py +0 -0
  98. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_plugins/shell_approval.py +0 -0
  99. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/__init__.py +0 -0
  100. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/diff_writer.py +0 -0
  101. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/get_emails.py +0 -0
  102. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/gmail.py +0 -0
  103. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/google_calendar.py +0 -0
  104. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/memory.py +0 -0
  105. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/microsoft_calendar.py +0 -0
  106. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/outlook.py +0 -0
  107. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/send_email.py +0 -0
  108. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/shell.py +0 -0
  109. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/slash_command.py +0 -0
  110. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/terminal.py +0 -0
  111. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/todo_list.py +0 -0
  112. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/useful_tools/web_fetch.py +0 -0
  113. {connectonion-0.5.6 → connectonion-0.5.7}/connectonion/xray.py +0 -0
  114. {connectonion-0.5.6 → connectonion-0.5.7}/docs/README.md +0 -0
  115. {connectonion-0.5.6 → connectonion-0.5.7}/docs/cli/README.md +0 -0
  116. {connectonion-0.5.6 → connectonion-0.5.7}/docs/debug/README.md +0 -0
  117. {connectonion-0.5.6 → connectonion-0.5.7}/docs/integrations/README.md +0 -0
  118. {connectonion-0.5.6 → connectonion-0.5.7}/docs/network/README.md +0 -0
  119. {connectonion-0.5.6 → connectonion-0.5.7}/docs/templates/README.md +0 -0
  120. {connectonion-0.5.6 → connectonion-0.5.7}/docs/tui/README.md +0 -0
  121. {connectonion-0.5.6 → connectonion-0.5.7}/docs/useful_plugins/README.md +0 -0
  122. {connectonion-0.5.6 → connectonion-0.5.7}/docs/useful_tools/README.md +0 -0
  123. {connectonion-0.5.6 → connectonion-0.5.7}/examples/README.md +0 -0
  124. {connectonion-0.5.6 → connectonion-0.5.7}/examples/browser-agent/README.md +0 -0
  125. {connectonion-0.5.6 → connectonion-0.5.7}/examples/email-agent/README.md +0 -0
  126. {connectonion-0.5.6 → connectonion-0.5.7}/examples/simple-agent/README.md +0 -0
  127. {connectonion-0.5.6 → connectonion-0.5.7}/prompts/README.md +0 -0
  128. {connectonion-0.5.6 → connectonion-0.5.7}/prompts/formats/README.md +0 -0
  129. {connectonion-0.5.6 → connectonion-0.5.7}/tests/README.md +0 -0
  130. {connectonion-0.5.6 → connectonion-0.5.7}/tests/cli/README.md +0 -0
  131. {connectonion-0.5.6 → connectonion-0.5.7}/tests/cli/aws/README.md +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: connectonion
3
- Version: 0.5.6
3
+ Version: 0.5.7
4
4
  Summary: A simple Python framework for creating AI agents with behavior tracking
5
5
  Project-URL: Homepage, https://github.com/openonion/connectonion
6
6
  Project-URL: Documentation, https://docs.connectonion.com
@@ -1,6 +1,6 @@
1
1
  """ConnectOnion - A simple agent framework with behavior tracking."""
2
2
 
3
- __version__ = "0.5.6"
3
+ __version__ = "0.5.7"
4
4
 
5
5
  # Auto-load .env files for the entire framework
6
6
  from dotenv import load_dotenv
@@ -36,11 +36,20 @@ async def read_body(receive) -> bytes:
36
36
  return body
37
37
 
38
38
 
39
+ # CORS headers for cross-origin requests (e.g., frontend at o.openonion.ai
40
+ # calling deployed agents at *.agents.openonion.ai)
41
+ CORS_HEADERS = [
42
+ [b"access-control-allow-origin", b"*"],
43
+ [b"access-control-allow-methods", b"GET, POST, OPTIONS"],
44
+ [b"access-control-allow-headers", b"authorization, content-type"],
45
+ ]
46
+
47
+
39
48
  async def send_json(send, data: dict, status: int = 200):
40
49
  """Send JSON response via ASGI send."""
41
50
  body = json.dumps(data, default=_json_default).encode()
42
- await send({"type": "http.response.start", "status": status,
43
- "headers": [[b"content-type", b"application/json"]]})
51
+ headers = [[b"content-type", b"application/json"]] + CORS_HEADERS
52
+ await send({"type": "http.response.start", "status": status, "headers": headers})
44
53
  await send({"type": "http.response.body", "body": body})
45
54
 
46
55
 
@@ -56,8 +65,8 @@ async def send_html(send, html: bytes, status: int = 200):
56
65
 
57
66
  async def send_text(send, text: str, status: int = 200):
58
67
  """Send plain text response via ASGI send."""
59
- await send({"type": "http.response.start", "status": status,
60
- "headers": [[b"content-type", b"text/plain; charset=utf-8"]]})
68
+ headers = [[b"content-type", b"text/plain; charset=utf-8"]] + CORS_HEADERS
69
+ await send({"type": "http.response.start", "status": status, "headers": headers})
61
70
  await send({"type": "http.response.body", "body": text.encode()})
62
71
 
63
72
 
@@ -90,6 +99,13 @@ async def handle_http(
90
99
  """
91
100
  method, path = scope["method"], scope["path"]
92
101
 
102
+ # Handle CORS preflight requests
103
+ if method == "OPTIONS":
104
+ headers = CORS_HEADERS + [[b"content-length", b"0"]]
105
+ await send({"type": "http.response.start", "status": 204, "headers": headers})
106
+ await send({"type": "http.response.body", "body": b""})
107
+ return
108
+
93
109
  # Admin endpoints require API key auth
94
110
  if path.startswith("/admin"):
95
111
  headers = dict(scope.get("headers", []))
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "connectonion"
7
- version = "0.5.6"
7
+ version = "0.5.7"
8
8
  description = "A simple Python framework for creating AI agents with behavior tracking"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
File without changes
File without changes