codex-agent-framework 0.1.39__tar.gz → 0.1.40__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 (151) hide show
  1. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/CHANGELOG.md +8 -0
  2. {codex_agent_framework-0.1.39/codex_agent_framework.egg-info → codex_agent_framework-0.1.40}/PKG-INFO +1 -1
  3. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/plugin.py +24 -5
  4. codex_agent_framework-0.1.40/codex_agent/version.py +1 -0
  5. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40/codex_agent_framework.egg-info}/PKG-INFO +1 -1
  6. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/pyproject.toml +1 -1
  7. codex_agent_framework-0.1.39/codex_agent/version.py +0 -1
  8. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/LICENSE +0 -0
  9. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/MANIFEST.in +0 -0
  10. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/README.md +0 -0
  11. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/__init__.py +0 -0
  12. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/__main__.py +0 -0
  13. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/agent.py +0 -0
  14. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/agent_runtime.py +0 -0
  15. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/ai.py +0 -0
  16. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/browser.py +0 -0
  17. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_commands.py +0 -0
  18. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/__init__.py +0 -0
  19. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/bash/__init__.py +0 -0
  20. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/bash/requirements.txt +0 -0
  21. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/browser/__init__.py +0 -0
  22. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/browser/requirements.txt +0 -0
  23. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/content/__init__.py +0 -0
  24. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/content/requirements.txt +0 -0
  25. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/content/system.py +0 -0
  26. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/content/vision.py +0 -0
  27. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/context/__init__.py +0 -0
  28. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/desktop/__init__.py +0 -0
  29. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/desktop/requirements.txt +0 -0
  30. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/environment/__init__.py +0 -0
  31. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/environment/requirements.txt +0 -0
  32. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/files/__init__.py +0 -0
  33. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/files/requirements.txt +0 -0
  34. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/files/tools.py +0 -0
  35. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/image_generation/__init__.py +0 -0
  36. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/image_generation/image_generation_system_prompt.txt +0 -0
  37. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/image_generation/requirements.txt +0 -0
  38. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/interface/__init__.py +0 -0
  39. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/interface/requirements.txt +0 -0
  40. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/memory/__init__.py +0 -0
  41. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/memory/requirements.txt +0 -0
  42. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/planner/__init__.py +0 -0
  43. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/planner/requirements.txt +0 -0
  44. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/python/__init__.py +0 -0
  45. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/python/requirements.txt +0 -0
  46. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/realtime/__init__.py +0 -0
  47. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/realtime/audio.py +0 -0
  48. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/realtime/bridge.py +0 -0
  49. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/realtime/manager.py +0 -0
  50. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/realtime/requirements.txt +0 -0
  51. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/realtime/session.py +0 -0
  52. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/scheduler/__init__.py +0 -0
  53. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/scheduler/requirements.txt +0 -0
  54. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/subagents/__init__.py +0 -0
  55. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/subagents/profiles/explorer.json +0 -0
  56. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/subagents/requirements.txt +0 -0
  57. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/tts/__init__.py +0 -0
  58. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/builtin_plugins/tts/requirements.txt +0 -0
  59. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/cli/__init__.py +0 -0
  60. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/cli/headless.py +0 -0
  61. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/cli/main.py +0 -0
  62. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/cli/output.py +0 -0
  63. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/cli/root.py +0 -0
  64. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/cli/runner.py +0 -0
  65. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/client.py +0 -0
  66. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/command.py +0 -0
  67. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/config.py +0 -0
  68. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/context.py +0 -0
  69. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/desktop.py +0 -0
  70. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/event.py +0 -0
  71. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/get_text/__init__.py +0 -0
  72. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/get_text/default_gitignore +0 -0
  73. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/get_text/get_text.py +0 -0
  74. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/get_text/simpler_get_text.py +0 -0
  75. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/hooks.py +0 -0
  76. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/image.py +0 -0
  77. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/latex.py +0 -0
  78. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/mainloop.py +0 -0
  79. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/message.py +0 -0
  80. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/prompts/system_prompt.txt +0 -0
  81. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/provider.py +0 -0
  82. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/runtime.py +0 -0
  83. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/scheduler.py +0 -0
  84. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/scripts/install-system-dependencies.sh +0 -0
  85. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/server/__init__.py +0 -0
  86. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/server/app.py +0 -0
  87. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/server/core.py +0 -0
  88. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/service.py +0 -0
  89. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/sessions.py +0 -0
  90. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/status.py +0 -0
  91. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/stream.py +0 -0
  92. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/stream_utils.py +0 -0
  93. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tool.py +0 -0
  94. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tray.py +0 -0
  95. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/__init__.py +0 -0
  96. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/app.py +0 -0
  97. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/chat.py +0 -0
  98. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/lifecycle.py +0 -0
  99. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/log.py +0 -0
  100. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/state.py +0 -0
  101. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/status_bar.py +0 -0
  102. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/style.py +0 -0
  103. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/tui/transcript.py +0 -0
  104. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/utils.py +0 -0
  105. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent/worker.py +0 -0
  106. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent_framework.egg-info/SOURCES.txt +0 -0
  107. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent_framework.egg-info/dependency_links.txt +0 -0
  108. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent_framework.egg-info/entry_points.txt +0 -0
  109. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent_framework.egg-info/requires.txt +0 -0
  110. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/codex_agent_framework.egg-info/top_level.txt +0 -0
  111. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/dependencies.txt +0 -0
  112. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/setup.cfg +0 -0
  113. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent.py +0 -0
  114. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_audio_hooks.py +0 -0
  115. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_commands.py +0 -0
  116. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_context.py +0 -0
  117. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_desktop.py +0 -0
  118. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_environment.py +0 -0
  119. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_image_generation.py +0 -0
  120. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_observe.py +0 -0
  121. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_plugins.py +0 -0
  122. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_providers_config.py +0 -0
  123. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_realtime.py +0 -0
  124. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_response.py +0 -0
  125. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_runtime.py +0 -0
  126. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_sessions.py +0 -0
  127. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_subagents.py +0 -0
  128. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_tools.py +0 -0
  129. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_agent_turns.py +0 -0
  130. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_ai.py +0 -0
  131. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_browser.py +0 -0
  132. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_builtin_config.py +0 -0
  133. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_chat.py +0 -0
  134. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_cli.py +0 -0
  135. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_cli_headless.py +0 -0
  136. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_cli_root.py +0 -0
  137. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_client.py +0 -0
  138. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_events.py +0 -0
  139. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_get_text_browser.py +0 -0
  140. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_hooks.py +0 -0
  141. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_image_message.py +0 -0
  142. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_local_desktop.py +0 -0
  143. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_memory.py +0 -0
  144. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_messages.py +0 -0
  145. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_planner.py +0 -0
  146. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_scheduler.py +0 -0
  147. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_server.py +0 -0
  148. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_service.py +0 -0
  149. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_tui.py +0 -0
  150. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_utils.py +0 -0
  151. {codex_agent_framework-0.1.39 → codex_agent_framework-0.1.40}/tests/test_worker.py +0 -0
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  This project loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and uses semantic versioning where practical.
6
6
 
7
+ ## [0.1.40] - 2026-05-16
8
+ ### Changed
9
+ - Share decorated-plugin option lookup across event handlers, hooks, and stream processors.
10
+ - Reflow plugin load/unload runtime-state events for readability.
11
+
12
+ ### Tests
13
+ - Validate with plugin coverage and the 553-test offline CI suite.
14
+
7
15
  ## [0.1.39] - 2026-05-16
8
16
  ### Changed
9
17
  - Reflow `Tool` and `ToolsManager` helper signatures and runtime-state events for readability.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codex-agent-framework
3
- Version: 0.1.39
3
+ Version: 0.1.40
4
4
  Summary: A lightweight event-driven Codex agent runtime.
5
5
  Author: Baptiste
6
6
  License-Expression: MIT
@@ -30,8 +30,13 @@ def event_handler(event):
30
30
  return decorator
31
31
 
32
32
 
33
+ def _decorated_option(func, attr):
34
+ bound_func = getattr(func, "__func__", None)
35
+ return getattr(func, attr, getattr(bound_func, attr, None))
36
+
37
+
33
38
  def event_handler_options(func):
34
- return getattr(func, "_codex_event_handler", getattr(getattr(func, "__func__", None), "_codex_event_handler", None))
39
+ return _decorated_option(func, "_codex_event_handler")
35
40
 
36
41
 
37
42
  def hook_handler(name):
@@ -46,7 +51,7 @@ def hook_handler(name):
46
51
 
47
52
 
48
53
  def hook_handler_options(func):
49
- return getattr(func, "_codex_hook_handler", getattr(getattr(func, "__func__", None), "_codex_hook_handler", None))
54
+ return _decorated_option(func, "_codex_hook_handler")
50
55
 
51
56
 
52
57
  def stream_processor(key):
@@ -61,7 +66,7 @@ def stream_processor(key):
61
66
 
62
67
 
63
68
  def stream_processor_options(func):
64
- return getattr(func, "_codex_stream_processor", getattr(getattr(func, "__func__", None), "_codex_stream_processor", None))
69
+ return _decorated_option(func, "_codex_stream_processor")
65
70
 
66
71
 
67
72
  class Plugin:
@@ -473,7 +478,14 @@ class PluginsManager:
473
478
  self.plugins[plugin_name] = plugin
474
479
  plugin.apply_config_defaults()
475
480
  self.add_plugin_members(plugin)
476
- self.agent.emit(RuntimeStateChangedEvent, reason="plugin_loaded", namespace="plugins", name=plugin_name, owner=plugin_name, details=plugin)
481
+ self.agent.emit(
482
+ RuntimeStateChangedEvent,
483
+ reason="plugin_loaded",
484
+ namespace="plugins",
485
+ name=plugin_name,
486
+ owner=plugin_name,
487
+ details=plugin,
488
+ )
477
489
  return plugin
478
490
 
479
491
  def remove_plugin_members(self, plugin_or_name):
@@ -495,7 +507,14 @@ class PluginsManager:
495
507
  plugin.stop(timeout=timeout)
496
508
  removed = self.remove_plugin_members(plugin_name)
497
509
  self.plugins.pop(plugin_name, None)
498
- self.agent.emit(RuntimeStateChangedEvent, reason="plugin_unloaded", namespace="plugins", name=plugin_name, owner=plugin_name, details=removed)
510
+ self.agent.emit(
511
+ RuntimeStateChangedEvent,
512
+ reason="plugin_unloaded",
513
+ namespace="plugins",
514
+ name=plugin_name,
515
+ owner=plugin_name,
516
+ details=removed,
517
+ )
499
518
  return modict(plugin=plugin, removed=removed)
500
519
 
501
520
  def reload_plugin(self, plugin_or_name, timeout=None):
@@ -0,0 +1 @@
1
+ __version__ = "0.1.40"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codex-agent-framework
3
- Version: 0.1.39
3
+ Version: 0.1.40
4
4
  Summary: A lightweight event-driven Codex agent runtime.
5
5
  Author: Baptiste
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "codex-agent-framework"
7
- version = "0.1.39"
7
+ version = "0.1.40"
8
8
  description = "A lightweight event-driven Codex agent runtime."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -1 +0,0 @@
1
- __version__ = "0.1.39"