langbot-plugin 0.7.5__tar.gz → 0.7.6__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 (377) hide show
  1. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/ARCHITECTURE.md +1 -1
  2. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/PKG-INFO +1 -1
  3. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/pyproject.toml +1 -1
  4. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/__init__.py +7 -0
  5. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/runplugin.py +25 -0
  6. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/dependency_environment.py +1 -1
  7. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/worker_launcher.py +17 -1
  8. langbot_plugin-0.7.6/src/langbot_plugin/version.py +1 -0
  9. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_runplugin.py +32 -0
  10. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/packaging/test_release_metadata.py +2 -2
  11. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_exact_legacy_sdk_compat.py +4 -0
  12. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_worker_launcher.py +39 -0
  13. langbot_plugin-0.7.5/src/langbot_plugin/version.py +0 -1
  14. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/.github/workflows/cla.yml +0 -0
  15. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/.github/workflows/publish-pypi.yaml +0 -0
  16. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/.github/workflows/publish.yml +0 -0
  17. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/.github/workflows/test.yml +0 -0
  18. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/.gitignore +0 -0
  19. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/.python-version +0 -0
  20. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/AGENTS.md +0 -0
  21. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/CLAUDE.md +0 -0
  22. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/CONTRIBUTING.md +0 -0
  23. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/LICENSE +0 -0
  24. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/README.md +0 -0
  25. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/README_CN.md +0 -0
  26. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/data/.env.example +0 -0
  27. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/Message.md +0 -0
  28. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/PluginPages.md +0 -0
  29. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/agent-runner-interactions.md +0 -0
  30. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/agent-runner-pluginization/PROTOCOL_V1.md +0 -0
  31. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/agent-runner-pluginization/README.md +0 -0
  32. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/agent-runner-pluginization/SDK_RUNTIME_PLAN.md +0 -0
  33. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/certified-plugins.md +0 -0
  34. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/communication/apis/lb2rt.md +0 -0
  35. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/communication/runtime_plugin.md +0 -0
  36. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/dependency-management.md +0 -0
  37. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/langbot-plugin-social.png +0 -0
  38. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/runner.md +0 -0
  39. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/docs/stateless-components.md +0 -0
  40. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/local_e2e/acceptance.json +0 -0
  41. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/local_e2e/registration_fanin.py +0 -0
  42. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/local_e2e/run_acceptance.py +0 -0
  43. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/mypy.ini +0 -0
  44. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/scripts/check_action_consistency.py +0 -0
  45. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/scripts/runtime_resource_probe.py +0 -0
  46. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/__init__.py +0 -0
  47. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/__init__.py +0 -0
  48. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/__init__.py +0 -0
  49. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/asset_gateway.py +0 -0
  50. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/daemon.py +0 -0
  51. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/decorators.py +0 -0
  52. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/external_tools.py +0 -0
  53. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/mcp_access.py +0 -0
  54. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/mcp_bridge.py +0 -0
  55. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/mcp_config.py +0 -0
  56. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/mcp_protocol.py +0 -0
  57. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/agent_tools/mcp_stdio.py +0 -0
  58. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/__init__.py +0 -0
  59. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/abstract/__init__.py +0 -0
  60. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/abstract/platform/__init__.py +0 -0
  61. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/abstract/platform/adapter.py +0 -0
  62. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/abstract/platform/event_logger.py +0 -0
  63. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/__init__.py +0 -0
  64. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/base.py +0 -0
  65. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/command/__init__.py +0 -0
  66. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/command/command.py +0 -0
  67. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/common/__init__.py +0 -0
  68. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/common/event_listener.py +0 -0
  69. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/knowledge_engine/__init__.py +0 -0
  70. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/knowledge_engine/engine.py +0 -0
  71. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/manifest.py +0 -0
  72. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/page/__init__.py +0 -0
  73. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/parser/__init__.py +0 -0
  74. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/parser/parser.py +0 -0
  75. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/runner/__init__.py +0 -0
  76. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/runner/runner.py +0 -0
  77. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/tool/__init__.py +0 -0
  78. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/components/tool/tool.py +0 -0
  79. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/definition/plugin.py +0 -0
  80. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/__init__.py +0 -0
  81. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/__init__.py +0 -0
  82. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/command/__init__.py +0 -0
  83. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/command/context.py +0 -0
  84. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/command/errors.py +0 -0
  85. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/pipeline/__init__.py +0 -0
  86. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/pipeline/query.py +0 -0
  87. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/platform/__init__.py +0 -0
  88. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/platform/entities.py +0 -0
  89. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/platform/errors.py +0 -0
  90. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/platform/events.py +0 -0
  91. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/platform/logger.py +0 -0
  92. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/platform/message.py +0 -0
  93. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/provider/__init__.py +0 -0
  94. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/provider/message.py +0 -0
  95. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/provider/prompt.py +0 -0
  96. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/provider/reasoning.py +0 -0
  97. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/provider/session.py +0 -0
  98. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/rag/__init__.py +0 -0
  99. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/rag/context.py +0 -0
  100. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/rag/enums.py +0 -0
  101. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/rag/errors.py +0 -0
  102. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/rag/models.py +0 -0
  103. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/resource/__init__.py +0 -0
  104. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/resource/tool.py +0 -0
  105. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/__init__.py +0 -0
  106. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/box.py +0 -0
  107. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/capabilities.py +0 -0
  108. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/compat.py +0 -0
  109. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/context.py +0 -0
  110. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/context_access.py +0 -0
  111. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/delivery.py +0 -0
  112. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/errors.py +0 -0
  113. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/event.py +0 -0
  114. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/input.py +0 -0
  115. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/interaction.py +0 -0
  116. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/manifest.py +0 -0
  117. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/page_results.py +0 -0
  118. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/permissions.py +0 -0
  119. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/resources.py +0 -0
  120. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/result.py +0 -0
  121. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/run_ledger.py +0 -0
  122. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/runtime.py +0 -0
  123. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/runtime_registry.py +0 -0
  124. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/state.py +0 -0
  125. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/stats.py +0 -0
  126. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/steering.py +0 -0
  127. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/transcript.py +0 -0
  128. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/builtin/runner/trigger.py +0 -0
  129. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/context.py +0 -0
  130. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/events.py +0 -0
  131. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/entities/execution.py +0 -0
  132. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/__init__.py +0 -0
  133. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/base.py +0 -0
  134. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/event_context.py +0 -0
  135. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/execute_context.py +0 -0
  136. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/invocation.py +0 -0
  137. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/langbot_api.py +0 -0
  138. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/query_based_api.py +0 -0
  139. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/__init__.py +0 -0
  140. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/admin.py +0 -0
  141. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/api.py +0 -0
  142. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/box.py +0 -0
  143. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/common.py +0 -0
  144. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/context.py +0 -0
  145. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/ledger.py +0 -0
  146. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/platform.py +0 -0
  147. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/reply_stream.py +0 -0
  148. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/resources.py +0 -0
  149. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/state.py +0 -0
  150. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/api/proxies/runner/tracing.py +0 -0
  151. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/__init__.py +0 -0
  152. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/langbot-page-sdk.js +0 -0
  153. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/.env.example.example +0 -0
  154. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/.github/workflows/release.yml.example +0 -0
  155. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/.gitignore.example +0 -0
  156. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/.vscode/launch.json.example +0 -0
  157. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/README.md.example +0 -0
  158. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/__init__.py +0 -0
  159. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/assets/icon.svg.example +0 -0
  160. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/__init__.py +0 -0
  161. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/commands/__init__.py +0 -0
  162. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/commands/{cmd_name}.py.example +0 -0
  163. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/commands/{cmd_name}.yaml.example +0 -0
  164. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/event_listener/__init__.py +0 -0
  165. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/event_listener/default.py.example +0 -0
  166. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/event_listener/default.yaml.example +0 -0
  167. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/knowledge_engine/__init__.py +0 -0
  168. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/knowledge_engine/{knowledge_engine_name}.py.example +0 -0
  169. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/knowledge_engine/{knowledge_engine_name}.yaml.example +0 -0
  170. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/pages/{page_name}.html.example +0 -0
  171. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/pages/{page_name}.yaml.example +0 -0
  172. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/parser/__init__.py +0 -0
  173. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/parser/{parser_name}.py.example +0 -0
  174. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/parser/{parser_name}.yaml.example +0 -0
  175. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/runner/__init__.py +0 -0
  176. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/runner/{runner_name}.py.example +0 -0
  177. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/runner/{runner_name}.yaml.example +0 -0
  178. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/tools/__init__.py +0 -0
  179. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/tools/{tool_name}.py.example +0 -0
  180. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/components/tools/{tool_name}.yaml.example +0 -0
  181. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/main.py.example +0 -0
  182. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/manifest.yaml.example +0 -0
  183. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/readme/README_zh_Hans.md.example +0 -0
  184. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/assets/templates/requirements.txt.example +0 -0
  185. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/__init__.py +0 -0
  186. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/actions.py +0 -0
  187. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/backend.py +0 -0
  188. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/client.py +0 -0
  189. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/e2b_backend.py +0 -0
  190. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/errors.py +0 -0
  191. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/host_backend.py +0 -0
  192. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/models.py +0 -0
  193. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/nsjail_backend.py +0 -0
  194. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/runtime.py +0 -0
  195. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/security.py +0 -0
  196. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/server.py +0 -0
  197. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/skill_store.py +0 -0
  198. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/box/tenancy.py +0 -0
  199. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/certification.py +0 -0
  200. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/__main__.py +0 -0
  201. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/__init__.py +0 -0
  202. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/buildplugin.py +0 -0
  203. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/gencomponent.py +0 -0
  204. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/initplugin.py +0 -0
  205. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/login.py +0 -0
  206. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/logout.py +0 -0
  207. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/commands/publish.py +0 -0
  208. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/gen/__init__.py +0 -0
  209. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/gen/renderer.py +0 -0
  210. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/i18n.py +0 -0
  211. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/__init__.py +0 -0
  212. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/en_US.py +0 -0
  213. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/es_ES.py +0 -0
  214. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/ja_JP.py +0 -0
  215. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/th_TH.py +0 -0
  216. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/vi_VN.py +0 -0
  217. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/zh_Hans.py +0 -0
  218. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/locales/zh_Hant.py +0 -0
  219. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/run/__init__.py +0 -0
  220. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/run/controller.py +0 -0
  221. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/run/handler.py +0 -0
  222. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/run/hotreload.py +0 -0
  223. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/utils/__init__.py +0 -0
  224. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/utils/cloudsv.py +0 -0
  225. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/utils/form.py +0 -0
  226. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/cli/utils/page_components.py +0 -0
  227. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/__init__.py +0 -0
  228. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/__init__.py +0 -0
  229. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/actions/__init__.py +0 -0
  230. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/actions/enums.py +0 -0
  231. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/context.py +0 -0
  232. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/errors.py +0 -0
  233. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/req.py +0 -0
  234. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/io/resp.py +0 -0
  235. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/entities/marketplace.py +0 -0
  236. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/LICENSE +0 -0
  237. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/README.md +0 -0
  238. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/__init__.py +0 -0
  239. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/app.py +0 -0
  240. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/bounded_executor.py +0 -0
  241. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/context.py +0 -0
  242. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/event_loop_monitor.py +0 -0
  243. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/helper/__init__.py +0 -0
  244. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/helper/marketplace.py +0 -0
  245. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/helper/pkgmgr.py +0 -0
  246. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/__init__.py +0 -0
  247. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/connection.py +0 -0
  248. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/connections/__init__.py +0 -0
  249. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/connections/stdio.py +0 -0
  250. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/connections/ws.py +0 -0
  251. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controller.py +0 -0
  252. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/__init__.py +0 -0
  253. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/stdio/__init__.py +0 -0
  254. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/stdio/client.py +0 -0
  255. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/stdio/server.py +0 -0
  256. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/ws/__init__.py +0 -0
  257. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/ws/client.py +0 -0
  258. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/controllers/ws/server.py +0 -0
  259. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/handler.py +0 -0
  260. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/handlers/__init__.py +0 -0
  261. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/handlers/control.py +0 -0
  262. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/io/handlers/plugin.py +0 -0
  263. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/__init__.py +0 -0
  264. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/artifact.py +0 -0
  265. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/container.py +0 -0
  266. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/logbuffer.py +0 -0
  267. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/mgr.py +0 -0
  268. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/restart_coordinator.py +0 -0
  269. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/plugin/runner_service.py +0 -0
  270. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/security.py +0 -0
  271. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/runtime/settings.py +0 -0
  272. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/storage.py +0 -0
  273. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/__init__.py +0 -0
  274. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/deadline.py +0 -0
  275. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/discover/__init__.py +0 -0
  276. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/discover/engine.py +0 -0
  277. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/importutil.py +0 -0
  278. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/log.py +0 -0
  279. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/src/langbot_plugin/utils/platform.py +0 -0
  280. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/__init__.py +0 -0
  281. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/definition/components/test_components.py +0 -0
  282. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/definition/components/test_imports.py +0 -0
  283. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/definition/test_manifest.py +0 -0
  284. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/runner/test_context_result.py +0 -0
  285. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/runner/test_history_event_entities.py +0 -0
  286. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/runner/test_interaction.py +0 -0
  287. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/runner/test_run_ledger_entities.py +0 -0
  288. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/test_command_context.py +0 -0
  289. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/test_platform_logger.py +0 -0
  290. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/test_provider_message.py +0 -0
  291. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/builtin/test_rag_models.py +0 -0
  292. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/test_context.py +0 -0
  293. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/entities/test_events.py +0 -0
  294. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/__init__.py +0 -0
  295. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_agent_run_api_proxy.py +0 -0
  296. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_base.py +0 -0
  297. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_box_api.py +0 -0
  298. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_history_event_api_proxy.py +0 -0
  299. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_langbot_api.py +0 -0
  300. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_query_based_api.py +0 -0
  301. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/proxies/test_reasoning_parameter.py +0 -0
  302. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/test_agent_tools_mcp_bridge.py +0 -0
  303. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/test_runner_handlers.py +0 -0
  304. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/test_runner_handlers_matrix.py +0 -0
  305. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/api/test_runner_public_apis.py +0 -0
  306. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/__init__.py +0 -0
  307. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_admission.py +0 -0
  308. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_backend.py +0 -0
  309. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_backend_selection.py +0 -0
  310. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_client.py +0 -0
  311. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_e2b_backend.py +0 -0
  312. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_host_backend.py +0 -0
  313. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_nsjail_backend.py +0 -0
  314. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_runtime.py +0 -0
  315. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_server.py +0 -0
  316. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_skill_store.py +0 -0
  317. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/box/test_storage_analysis.py +0 -0
  318. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/run/test_controller.py +0 -0
  319. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/run/test_hotreload.py +0 -0
  320. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/run/test_runtime_handler.py +0 -0
  321. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_buildplugin.py +0 -0
  322. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_gencomponent.py +0 -0
  323. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_i18n_form.py +0 -0
  324. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_initplugin.py +0 -0
  325. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_login.py +0 -0
  326. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_logout_publish.py +0 -0
  327. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_page_components.py +0 -0
  328. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_renderer.py +0 -0
  329. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/cli/test_runner_usages.py +0 -0
  330. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/e2e/standalone_runtime_eba_probe.py +0 -0
  331. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/entities/io/test_dependency_errors.py +0 -0
  332. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/entities/io/test_protocol.py +0 -0
  333. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/fixtures/eba_event_probe_plugin/.gitignore +0 -0
  334. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/fixtures/eba_event_probe_plugin/assets/icon.svg +0 -0
  335. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/fixtures/eba_event_probe_plugin/components/event_listener/default.py +0 -0
  336. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/fixtures/eba_event_probe_plugin/components/event_listener/default.yaml +0 -0
  337. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/fixtures/eba_event_probe_plugin/main.py +0 -0
  338. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/fixtures/eba_event_probe_plugin/manifest.yaml +0 -0
  339. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/helpers/__init__.py +0 -0
  340. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/helpers/protocol.py +0 -0
  341. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/packaging/test_installed_cli_blackbox.py +0 -0
  342. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/helper/test_marketplace.py +0 -0
  343. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/helper/test_pkgmgr.py +0 -0
  344. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/handlers/test_control_handler.py +0 -0
  345. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/handlers/test_import_contracts.py +0 -0
  346. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/handlers/test_legacy_file_chunk.py +0 -0
  347. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/handlers/test_plugin_handler.py +0 -0
  348. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/test_action_consistency.py +0 -0
  349. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/test_connections.py +0 -0
  350. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/test_controllers.py +0 -0
  351. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/test_handler.py +0 -0
  352. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/test_heartbeat_admission.py +0 -0
  353. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/io/test_stdio_server.py +0 -0
  354. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_artifact_store.py +0 -0
  355. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_container.py +0 -0
  356. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_dependency_environment.py +0 -0
  357. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_exact_dify_real_worker.py +0 -0
  358. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_installation_manager.py +0 -0
  359. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_legacy_shadow.py +0 -0
  360. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_manager.py +0 -0
  361. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_mgr_runner.py +0 -0
  362. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_restart_coordinator.py +0 -0
  363. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_shared_worker_subprocess.py +0 -0
  364. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/plugin/test_workload_isolation.py +0 -0
  365. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/test_app.py +0 -0
  366. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/test_bounded_executor.py +0 -0
  367. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/test_event_loop_monitor.py +0 -0
  368. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/runtime/test_pull_api_handlers.py +0 -0
  369. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/test_certification.py +0 -0
  370. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/test_log.py +0 -0
  371. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/test_message.py +0 -0
  372. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/test_plugin_logbuffer.py +0 -0
  373. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/test_storage.py +0 -0
  374. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/utils/test_deadline.py +0 -0
  375. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/utils/test_discovery.py +0 -0
  376. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/utils/test_importutil.py +0 -0
  377. {langbot_plugin-0.7.5 → langbot_plugin-0.7.6}/tests/utils/test_platform.py +0 -0
@@ -222,7 +222,7 @@ may select indexes or trusted hosts.
222
222
 
223
223
  The dependency admission path has one bounded historical ABI exception: nine
224
224
  explicit `langbot-team` archive identities with exact raw SHA-256 digests and
225
- `langbot-plugin==0.6.1` may use the Runtime-owned SDK **0.7.5** in `dedicated`
225
+ `langbot-plugin==0.6.1` may use the Runtime-owned SDK **0.7.6** in `dedicated`
226
226
  mode only. Artifact bytes are verified before extraction; a changed archive,
227
227
  identity, requirement, Runtime version, or shared execution mode fails normal
228
228
  SDK pin validation. This does not issue a certificate or change Core placement
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: langbot-plugin
3
- Version: 0.7.5
3
+ Version: 0.7.6
4
4
  Summary: This package contains the SDK, CLI for building plugins for LangBot, plus the runtime for hosting LangBot plugins
5
5
  Project-URL: Homepage, https://langbot.app
6
6
  Project-URL: Repository, https://github.com/langbot-app/langbot-plugin-sdk
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "langbot-plugin"
3
- version = "0.7.5"
3
+ version = "0.7.6"
4
4
  description = "This package contains the SDK, CLI for building plugins for LangBot, plus the runtime for hosting LangBot plugins"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -86,6 +86,12 @@ def main():
86
86
  help="Comma-separated trusted hosts for plugin dependency installation",
87
87
  default="",
88
88
  )
89
+ run_parser.add_argument(
90
+ "--tag",
91
+ type=str,
92
+ help="Process label shown by ps/htop (for example author/plugin_name); cosmetic only",
93
+ default="",
94
+ )
89
95
 
90
96
  # login command
91
97
  login_parser = subparsers.add_parser("login", help="Login to LangBot account")
@@ -191,6 +197,7 @@ def main():
191
197
  args.plugin_debug_key,
192
198
  args.pypi_index_url,
193
199
  args.pypi_trusted_host,
200
+ tag=args.tag,
194
201
  )
195
202
  case "build":
196
203
  build_plugin_process(args.output)
@@ -2,6 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import asyncio
4
4
  import dotenv
5
+ import logging
5
6
  import os
6
7
 
7
8
  from langbot_plugin.utils.discover.engine import ComponentDiscoveryEngine
@@ -18,10 +19,32 @@ from langbot_plugin.runtime.bounded_executor import (
18
19
  )
19
20
 
20
21
 
22
+ logger = logging.getLogger(__name__)
23
+
24
+
21
25
  def should_load_artifact_dotenv(runtime_profile: str) -> bool:
22
26
  return runtime_profile != "shared"
23
27
 
24
28
 
29
+ def apply_process_label(tag: str) -> None:
30
+ """Record the process label carried by the worker command line.
31
+
32
+ The launcher passes ``--tag author/name`` so an operator can tell which
33
+ plugin a worker belongs to from ps/htop; this helper keeps the same value in
34
+ the worker log. It makes no syscalls and changes no process attribute, so it
35
+ behaves identically on every platform.
36
+
37
+ The label is cosmetic only: it is never an identity, an authorization input
38
+ or a routing key. The Runtime owns the real installation identity, and this
39
+ value may be forged by whoever starts the process.
40
+ """
41
+
42
+ label = "".join(ch for ch in str(tag or "") if ch.isprintable()).strip()
43
+ if not label:
44
+ return
45
+ logger.info("Plugin worker process label: %s", label)
46
+
47
+
25
48
  async def arun_plugin_process(
26
49
  stdio: bool = False,
27
50
  prod_mode: bool = False,
@@ -93,8 +116,10 @@ def run_plugin_process(
93
116
  plugin_debug_key: str = "",
94
117
  pypi_index_url: str = "",
95
118
  pypi_trusted_host: str = "",
119
+ tag: str = "",
96
120
  ) -> None:
97
121
  configure_process_logging()
122
+ apply_process_label(tag)
98
123
 
99
124
  try:
100
125
  asyncio.run(
@@ -34,7 +34,7 @@ _RUNTIME_SDK_COMPATIBILITY_SERIES = (0, 6)
34
34
  # dependency ABI admission only; it never grants certification or shared slots.
35
35
  # Releases that reviewed the nine digest-pinned legacy archives below. A new
36
36
  # Runtime release re-verifies dedicated behavior before extending this set.
37
- _LEGACY_DEDICATED_SDK_RUNTIME_VERSIONS = frozenset({"0.7.4", "0.7.5"})
37
+ _LEGACY_DEDICATED_SDK_RUNTIME_VERSIONS = frozenset({"0.7.4", "0.7.5", "0.7.6"})
38
38
 
39
39
  _LEGACY_DEDICATED_SDK_061 = {
40
40
  (
@@ -258,8 +258,11 @@ class PluginWorkerLauncher:
258
258
  "-m",
259
259
  "langbot_plugin.cli.__init__",
260
260
  "run",
261
- "--prod",
262
261
  ]
262
+ process_tag = self._worker_process_tag(launch_spec)
263
+ if process_tag:
264
+ worker_args.extend(["--tag", process_tag])
265
+ worker_args.append("--prod")
263
266
  if self.platform == "win32":
264
267
  runtime_ws_url = str(launch_spec.runtime_ws_url or "").strip()
265
268
  if not runtime_ws_url:
@@ -518,6 +521,17 @@ class PluginWorkerLauncher:
518
521
  )
519
522
  return args
520
523
 
524
+ @staticmethod
525
+ def _worker_process_tag(launch_spec: PluginWorkerLaunchSpec) -> str:
526
+ """Return the cosmetic `author/name` label for the worker command line."""
527
+
528
+ artifact = launch_spec.artifact
529
+ author = str(getattr(artifact, "plugin_author", "") or "").strip()
530
+ name = str(getattr(artifact, "plugin_name", "") or "").strip()
531
+ if author and name:
532
+ return f"{author}/{name}"
533
+ return name or author
534
+
521
535
  def build_nsjail_args(self, launch_spec: PluginWorkerLaunchSpec) -> list[str]:
522
536
  policy, profile = self._require_configuration()
523
537
  if profile != "shared" or not self.nsjail_path:
@@ -594,6 +608,7 @@ class PluginWorkerLauncher:
594
608
  )
595
609
 
596
610
  self._append_policy_limits(args, policy)
611
+ process_tag = self._worker_process_tag(launch_spec)
597
612
  args.extend(
598
613
  [
599
614
  "--really_quiet",
@@ -603,6 +618,7 @@ class PluginWorkerLauncher:
603
618
  "langbot_plugin.cli.__init__",
604
619
  "run",
605
620
  "-s",
621
+ *(["--tag", process_tag] if process_tag else []),
606
622
  "--prod",
607
623
  ]
608
624
  )
@@ -0,0 +1 @@
1
+ __version__ = "0.7.6"
@@ -1,6 +1,8 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  import asyncio
4
+ import logging
5
+ import sys
4
6
 
5
7
  import pytest
6
8
 
@@ -288,3 +290,33 @@ def test_run_plugin_process_reports_keyboard_interrupt(monkeypatch):
288
290
  runplugin.run_plugin_process()
289
291
 
290
292
  assert prints == [("keyboard_interrupt",)]
293
+
294
+
295
+ def test_apply_process_label_sanitizes_and_logs_the_tag(caplog):
296
+ with caplog.at_level(logging.INFO, logger=runplugin.__name__):
297
+ runplugin.apply_process_label("langbot-team/LangRAG")
298
+ runplugin.apply_process_label(" ")
299
+ runplugin.apply_process_label("bad\nname\x00")
300
+
301
+ messages = [record.getMessage() for record in caplog.records]
302
+
303
+ assert "Plugin worker process label: langbot-team/LangRAG" in messages
304
+ assert "Plugin worker process label: badname" in messages
305
+ # A blank label records nothing.
306
+ assert len(messages) == 2
307
+
308
+
309
+ def test_cli_run_forwards_the_process_tag(monkeypatch):
310
+ from langbot_plugin import cli as cli_module
311
+
312
+ forwarded: list = []
313
+ monkeypatch.setattr(
314
+ cli_module,
315
+ "run_plugin_process",
316
+ lambda *args, **kwargs: forwarded.append(kwargs),
317
+ )
318
+ monkeypatch.setattr(sys, "argv", ["lbp", "run", "--tag", "langbot-team/LangRAG"])
319
+
320
+ cli_module.main()
321
+
322
+ assert forwarded and forwarded[0].get("tag") == "langbot-team/LangRAG"
@@ -11,5 +11,5 @@ def test_stable_release_metadata_is_consistent() -> None:
11
11
  (root / "src/langbot_plugin/version.py").read_text(encoding="utf-8").strip()
12
12
  )
13
13
 
14
- assert project["project"]["version"] == "0.7.5"
15
- assert source_version == '__version__ = "0.7.5"'
14
+ assert project["project"]["version"] == "0.7.6"
15
+ assert source_version == '__version__ = "0.7.6"'
@@ -81,6 +81,10 @@ def test_runtime_version_and_downloaded_archive_are_exact(tmp_path, monkeypatch)
81
81
  artifact, execution_mode="dedicated"
82
82
  )[0] == ("pydantic>=2.0.0", "httpx>=0.28.1")
83
83
  monkeypatch.setattr(importlib.metadata, "version", lambda name: "0.7.6")
84
+ assert PluginDependencyEnvironmentStore._read_requirements(
85
+ artifact, execution_mode="dedicated"
86
+ )[0] == ("pydantic>=2.0.0", "httpx>=0.28.1")
87
+ monkeypatch.setattr(importlib.metadata, "version", lambda name: "0.7.7")
84
88
  with pytest.raises(DependencyEnvironmentPreparationError, match="Runtime provides"):
85
89
  PluginDependencyEnvironmentStore._read_requirements(
86
90
  artifact, execution_mode="dedicated"
@@ -988,3 +988,42 @@ def test_shared_pool_worker_mounts_a_writable_tmp(tmp_path):
988
988
  # nsjail options must precede the command separator, otherwise they land in
989
989
  # the worker argv instead of the sandbox configuration.
990
990
  assert tmpfs_index < args.index("--")
991
+
992
+
993
+ def test_shared_pool_worker_carries_the_plugin_process_tag(tmp_path):
994
+ """ps/htop must show which plugin a sandboxed worker belongs to."""
995
+
996
+ launcher = PluginWorkerLauncher(
997
+ nsjail_path="/usr/bin/nsjail",
998
+ cgroup_v2_available=True,
999
+ platform="linux",
1000
+ )
1001
+ launcher.configure(_policy(), "shared")
1002
+
1003
+ args = launcher.build_shared_pool_nsjail_args(_launch_spec(tmp_path))
1004
+
1005
+ tag_index = args.index("--tag")
1006
+ assert args[tag_index + 1] == "tester/demo"
1007
+ # The worker command ends with the production flag.
1008
+ assert args.index("--prod") == tag_index + 2
1009
+
1010
+
1011
+ def test_oss_worker_carries_the_plugin_process_tag(tmp_path):
1012
+ launcher = PluginWorkerLauncher(
1013
+ nsjail_path="",
1014
+ cgroup_v2_available=False,
1015
+ platform="darwin",
1016
+ )
1017
+ launcher.configure(_policy(require_hard_limits=False), "oss_dev")
1018
+
1019
+ controller = launcher.create_controller(_launch_spec(tmp_path))
1020
+
1021
+ assert controller.args == [
1022
+ "-m",
1023
+ "langbot_plugin.cli.__init__",
1024
+ "run",
1025
+ "--tag",
1026
+ "tester/demo",
1027
+ "-s",
1028
+ "--prod",
1029
+ ]
@@ -1 +0,0 @@
1
- __version__ = "0.7.5"
File without changes
File without changes
File without changes
File without changes
File without changes