langbot-plugin 0.6.6__tar.gz → 0.6.8__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.
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/PKG-INFO +1 -1
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/pyproject.toml +1 -1
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/mgr.py +4 -7
- langbot_plugin-0.6.8/src/langbot_plugin/version.py +1 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/packaging/test_release_metadata.py +2 -2
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_installation_manager.py +118 -1
- langbot_plugin-0.6.6/src/langbot_plugin/version.py +0 -1
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/.github/workflows/cla.yml +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/.github/workflows/publish-pypi.yaml +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/.github/workflows/publish.yml +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/.github/workflows/test.yml +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/.gitignore +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/.python-version +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/AGENTS.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/ARCHITECTURE.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/CLAUDE.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/CONTRIBUTING.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/LICENSE +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/README.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/README_CN.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/data/.env.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/Message.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/PluginPages.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/agent-runner-interactions.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/agent-runner-pluginization/PROTOCOL_V1.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/agent-runner-pluginization/README.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/agent-runner-pluginization/SDK_RUNTIME_PLAN.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/certified-plugins.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/communication/apis/lb2rt.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/communication/runtime_plugin.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/dependency-management.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/langbot-plugin-social.png +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/runner.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/mypy.ini +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/scripts/check_action_consistency.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/scripts/runtime_resource_probe.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/asset_gateway.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/daemon.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/decorators.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/external_tools.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_access.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_bridge.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_config.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_protocol.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_stdio.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/abstract/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/abstract/platform/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/abstract/platform/adapter.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/abstract/platform/event_logger.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/base.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/command/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/command/command.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/common/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/common/event_listener.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/knowledge_engine/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/knowledge_engine/engine.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/manifest.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/page/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/parser/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/parser/parser.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/runner/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/runner/runner.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/tool/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/tool/tool.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/plugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/command/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/command/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/command/errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/pipeline/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/pipeline/query.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/platform/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/platform/entities.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/platform/errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/platform/events.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/platform/logger.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/platform/message.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/provider/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/provider/message.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/provider/prompt.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/provider/reasoning.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/provider/session.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/enums.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/models.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/resource/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/resource/tool.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/box.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/capabilities.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/compat.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/context_access.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/delivery.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/event.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/input.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/interaction.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/manifest.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/page_results.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/permissions.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/resources.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/result.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/run_ledger.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/runtime.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/runtime_registry.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/state.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/stats.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/steering.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/transcript.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/trigger.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/events.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/execution.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/base.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/event_context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/execute_context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/invocation.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/langbot_api.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/query_based_api.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/admin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/api.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/box.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/common.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/ledger.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/platform.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/reply_stream.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/resources.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/state.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/tracing.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/langbot-page-sdk.js +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/.env.example.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/.github/workflows/release.yml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/.gitignore.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/.vscode/launch.json.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/README.md.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/assets/icon.svg.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/commands/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/commands/{cmd_name}.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/commands/{cmd_name}.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/event_listener/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/event_listener/default.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/event_listener/default.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/knowledge_engine/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/knowledge_engine/{knowledge_engine_name}.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/knowledge_engine/{knowledge_engine_name}.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/pages/{page_name}.html.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/pages/{page_name}.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/parser/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/parser/{parser_name}.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/parser/{parser_name}.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/runner/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/runner/{runner_name}.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/runner/{runner_name}.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/tools/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/tools/{tool_name}.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/components/tools/{tool_name}.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/main.py.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/manifest.yaml.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/readme/README_zh_Hans.md.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/requirements.txt.example +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/actions.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/client.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/e2b_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/host_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/models.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/nsjail_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/runtime.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/security.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/server.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/skill_store.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/box/tenancy.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/certification.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/__main__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/buildplugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/gencomponent.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/initplugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/login.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/logout.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/publish.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/commands/runplugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/gen/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/gen/renderer.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/i18n.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/en_US.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/es_ES.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/ja_JP.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/th_TH.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/vi_VN.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/zh_Hans.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/locales/zh_Hant.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/run/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/run/controller.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/run/handler.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/run/hotreload.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/utils/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/utils/cloudsv.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/utils/form.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/cli/utils/page_components.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/actions/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/actions/enums.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/req.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/io/resp.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/entities/marketplace.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/LICENSE +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/README.md +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/app.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/bounded_executor.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/event_loop_monitor.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/helper/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/helper/marketplace.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/helper/pkgmgr.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/connection.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/connections/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/connections/stdio.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/connections/ws.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controller.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/stdio/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/stdio/client.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/stdio/server.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/ws/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/ws/client.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/controllers/ws/server.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/handler.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/handlers/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/handlers/control.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/io/handlers/plugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/artifact.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/container.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/dependency_environment.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/logbuffer.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/restart_coordinator.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/runner_service.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/plugin/worker_launcher.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/security.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/runtime/settings.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/storage.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/deadline.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/discover/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/discover/engine.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/importutil.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/log.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/utils/platform.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/definition/components/test_components.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/definition/components/test_imports.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/definition/test_manifest.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/runner/test_context_result.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/runner/test_history_event_entities.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/runner/test_interaction.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/runner/test_run_ledger_entities.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/test_command_context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/test_platform_logger.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/test_provider_message.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/builtin/test_rag_models.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/test_context.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/entities/test_events.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_agent_run_api_proxy.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_base.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_box_api.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_history_event_api_proxy.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_langbot_api.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_query_based_api.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/proxies/test_reasoning_parameter.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/test_agent_tools_mcp_bridge.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/test_runner_handlers.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/test_runner_handlers_matrix.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/api/test_runner_public_apis.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_admission.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_backend_selection.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_client.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_e2b_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_host_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_nsjail_backend.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_runtime.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_server.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_skill_store.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/box/test_storage_analysis.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/run/test_controller.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/run/test_hotreload.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/run/test_runtime_handler.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_buildplugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_gencomponent.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_i18n_form.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_initplugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_login.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_logout_publish.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_page_components.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_renderer.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_runner_usages.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/cli/test_runplugin.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/e2e/standalone_runtime_eba_probe.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/entities/io/test_dependency_errors.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/entities/io/test_protocol.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/fixtures/eba_event_probe_plugin/.gitignore +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/fixtures/eba_event_probe_plugin/assets/icon.svg +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/fixtures/eba_event_probe_plugin/components/event_listener/default.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/fixtures/eba_event_probe_plugin/components/event_listener/default.yaml +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/fixtures/eba_event_probe_plugin/main.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/fixtures/eba_event_probe_plugin/manifest.yaml +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/helpers/__init__.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/helpers/protocol.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/packaging/test_installed_cli_blackbox.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/helper/test_marketplace.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/helper/test_pkgmgr.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/handlers/test_control_handler.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/handlers/test_import_contracts.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/handlers/test_legacy_file_chunk.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/handlers/test_plugin_handler.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/test_action_consistency.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/test_connections.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/test_controllers.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/test_handler.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/test_heartbeat_admission.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/io/test_stdio_server.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_artifact_store.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_container.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_dependency_environment.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_legacy_shadow.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_manager.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_mgr_runner.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_restart_coordinator.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_shared_worker_subprocess.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_worker_launcher.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_workload_isolation.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/test_app.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/test_bounded_executor.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/test_event_loop_monitor.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/test_pull_api_handlers.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/test_certification.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/test_log.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/test_message.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/test_plugin_logbuffer.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/test_storage.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/utils/test_deadline.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/utils/test_discovery.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/utils/test_importutil.py +0 -0
- {langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/utils/test_platform.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: langbot-plugin
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.8
|
|
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
|
|
@@ -1997,7 +1997,6 @@ class PluginManager:
|
|
|
1997
1997
|
):
|
|
1998
1998
|
await connection.close()
|
|
1999
1999
|
return
|
|
2000
|
-
worker.plugin_handler = plugin_handler
|
|
2001
2000
|
self.plugin_handlers.append(plugin_handler)
|
|
2002
2001
|
try:
|
|
2003
2002
|
await plugin_handler.run()
|
|
@@ -2606,7 +2605,7 @@ class PluginManager:
|
|
|
2606
2605
|
raise ValueError(
|
|
2607
2606
|
"Shared plugin worker desired state is unavailable"
|
|
2608
2607
|
)
|
|
2609
|
-
|
|
2608
|
+
attach_runtimes: list[PluginInstallationRuntime] = []
|
|
2610
2609
|
async with worker.lifecycle_lock:
|
|
2611
2610
|
if (
|
|
2612
2611
|
self._shared_workers.get(registration.shared_pool_digest)
|
|
@@ -2626,12 +2625,10 @@ class PluginManager:
|
|
|
2626
2625
|
)
|
|
2627
2626
|
):
|
|
2628
2627
|
slot_runtime.plugin_handler = handler
|
|
2629
|
-
|
|
2630
|
-
if task is not None:
|
|
2631
|
-
attach_tasks.append(task)
|
|
2628
|
+
attach_runtimes.append(slot_runtime)
|
|
2632
2629
|
worker.transport_registered_event.set()
|
|
2633
|
-
|
|
2634
|
-
|
|
2630
|
+
for slot_runtime in attach_runtimes:
|
|
2631
|
+
self._schedule_shared_slot_attach(slot_runtime)
|
|
2635
2632
|
self._refresh_shared_worker_ready(worker)
|
|
2636
2633
|
return
|
|
2637
2634
|
if installation_binding is not None:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.6.8"
|
|
@@ -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.6.
|
|
15
|
-
assert source_version == '__version__ = "0.6.
|
|
14
|
+
assert project["project"]["version"] == "0.6.8"
|
|
15
|
+
assert source_version == '__version__ = "0.6.8"'
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/tests/runtime/plugin/test_installation_manager.py
RENAMED
|
@@ -144,7 +144,7 @@ async def _drain_plugin_tasks(manager: PluginManager) -> None:
|
|
|
144
144
|
tasks = tuple(task for task in manager.plugin_run_tasks if not task.done())
|
|
145
145
|
if not tasks:
|
|
146
146
|
return
|
|
147
|
-
await asyncio.gather(*tasks)
|
|
147
|
+
await asyncio.gather(*tasks, return_exceptions=True)
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
async def test_manager_indexes_same_artifact_installations_by_complete_binding(
|
|
@@ -453,6 +453,7 @@ async def test_failed_sole_shared_slot_retries_with_registered_handler(
|
|
|
453
453
|
container.model_dump(),
|
|
454
454
|
registration_capability=capability,
|
|
455
455
|
)
|
|
456
|
+
await _drain_plugin_tasks(manager)
|
|
456
457
|
|
|
457
458
|
assert runtime.state == "failed"
|
|
458
459
|
assert runtime.error_code == "slot_attach_failed"
|
|
@@ -556,6 +557,7 @@ async def test_failed_shared_slot_retry_keeps_healthy_sibling_and_worker(
|
|
|
556
557
|
container.model_dump(),
|
|
557
558
|
registration_capability=capability,
|
|
558
559
|
)
|
|
560
|
+
await _drain_plugin_tasks(manager)
|
|
559
561
|
healthy_container = runtime_a.plugin_container
|
|
560
562
|
|
|
561
563
|
assert runtime_a.state == "running"
|
|
@@ -879,6 +881,8 @@ async def test_shared_registration_waits_for_validated_slot_before_running(
|
|
|
879
881
|
)
|
|
880
882
|
await asyncio.wait_for(validation_started.wait(), timeout=1)
|
|
881
883
|
|
|
884
|
+
assert registration.done()
|
|
885
|
+
assert registration.exception() is None
|
|
882
886
|
assert runtime.state == "starting"
|
|
883
887
|
assert runtime.plugin_container is None
|
|
884
888
|
assert not runtime.ready_event.is_set()
|
|
@@ -886,6 +890,7 @@ async def test_shared_registration_waits_for_validated_slot_before_running(
|
|
|
886
890
|
|
|
887
891
|
release_validation.set()
|
|
888
892
|
await registration
|
|
893
|
+
await _drain_plugin_tasks(manager)
|
|
889
894
|
assert runtime.state == "running"
|
|
890
895
|
assert runtime.plugin_container is not None
|
|
891
896
|
assert runtime.ready_event.is_set()
|
|
@@ -980,6 +985,7 @@ async def test_shared_registration_reports_mixed_slot_attach_results(
|
|
|
980
985
|
base_container.model_dump(),
|
|
981
986
|
registration_capability=capability,
|
|
982
987
|
)
|
|
988
|
+
await _drain_plugin_tasks(manager)
|
|
983
989
|
|
|
984
990
|
runtime_a = manager.installation_runtimes[binding_a]
|
|
985
991
|
runtime_b = manager.installation_runtimes[binding_b]
|
|
@@ -1070,6 +1076,7 @@ async def test_shared_slot_uninitialized_container_is_failed(tmp_path, monkeypat
|
|
|
1070
1076
|
container.model_dump(),
|
|
1071
1077
|
registration_capability=capability,
|
|
1072
1078
|
)
|
|
1079
|
+
await _drain_plugin_tasks(manager)
|
|
1073
1080
|
|
|
1074
1081
|
assert runtime.state == "failed"
|
|
1075
1082
|
assert runtime.error_code == "slot_attach_failed"
|
|
@@ -2060,6 +2067,116 @@ async def test_installation_worker_ready_timeout_cancels_hung_process(
|
|
|
2060
2067
|
assert cancelled.is_set()
|
|
2061
2068
|
|
|
2062
2069
|
|
|
2070
|
+
async def test_shared_connection_does_not_claim_registration_before_capability_validation(
|
|
2071
|
+
tmp_path,
|
|
2072
|
+
monkeypatch,
|
|
2073
|
+
):
|
|
2074
|
+
_, manager = _manager(tmp_path)
|
|
2075
|
+
package = _package()
|
|
2076
|
+
digest = hashlib.sha256(package).hexdigest()
|
|
2077
|
+
binding = _binding("installation-a", digest, workspace_uuid="workspace-a")
|
|
2078
|
+
monkeypatch.setattr(
|
|
2079
|
+
manager.worker_launcher,
|
|
2080
|
+
"prepare_dependency_environment",
|
|
2081
|
+
_prepare_environment,
|
|
2082
|
+
)
|
|
2083
|
+
monkeypatch.setattr(manager, "_schedule_shared_worker", lambda _worker: None)
|
|
2084
|
+
await manager.apply_plugin_installation(
|
|
2085
|
+
binding,
|
|
2086
|
+
artifact_package=package,
|
|
2087
|
+
execution_mode=PluginExecutionMode.SHARED_CERTIFIED,
|
|
2088
|
+
)
|
|
2089
|
+
worker = manager.installation_runtimes[binding].shared_worker
|
|
2090
|
+
assert worker is not None
|
|
2091
|
+
|
|
2092
|
+
class FakeConnection:
|
|
2093
|
+
async def close(self):
|
|
2094
|
+
return None
|
|
2095
|
+
|
|
2096
|
+
class FakeHandler:
|
|
2097
|
+
async def run(self):
|
|
2098
|
+
await asyncio.Event().wait()
|
|
2099
|
+
|
|
2100
|
+
handler = FakeHandler()
|
|
2101
|
+
callback_started = asyncio.Event()
|
|
2102
|
+
|
|
2103
|
+
class CapturingController:
|
|
2104
|
+
process = None
|
|
2105
|
+
|
|
2106
|
+
async def run(self, callback):
|
|
2107
|
+
task = asyncio.create_task(callback(FakeConnection()))
|
|
2108
|
+
callback_started.set()
|
|
2109
|
+
try:
|
|
2110
|
+
await task
|
|
2111
|
+
finally:
|
|
2112
|
+
if not task.done():
|
|
2113
|
+
task.cancel()
|
|
2114
|
+
await asyncio.gather(task, return_exceptions=True)
|
|
2115
|
+
|
|
2116
|
+
async def close(self):
|
|
2117
|
+
return None
|
|
2118
|
+
|
|
2119
|
+
monkeypatch.setattr(
|
|
2120
|
+
manager.worker_launcher,
|
|
2121
|
+
"create_shared_pool_controller",
|
|
2122
|
+
lambda _spec: CapturingController(),
|
|
2123
|
+
)
|
|
2124
|
+
monkeypatch.setattr(
|
|
2125
|
+
manager_module.runtime_plugin_handler_cls,
|
|
2126
|
+
"PluginConnectionHandler",
|
|
2127
|
+
lambda *args, **kwargs: handler,
|
|
2128
|
+
)
|
|
2129
|
+
|
|
2130
|
+
launch = asyncio.create_task(manager._launch_shared_worker(worker))
|
|
2131
|
+
await asyncio.wait_for(callback_started.wait(), timeout=1)
|
|
2132
|
+
await asyncio.sleep(0)
|
|
2133
|
+
|
|
2134
|
+
assert worker.plugin_handler is None
|
|
2135
|
+
assert handler in manager.plugin_handlers
|
|
2136
|
+
|
|
2137
|
+
launch.cancel()
|
|
2138
|
+
await asyncio.gather(launch, return_exceptions=True)
|
|
2139
|
+
|
|
2140
|
+
|
|
2141
|
+
async def test_shared_registration_failure_does_not_clear_new_worker_handler(
|
|
2142
|
+
tmp_path,
|
|
2143
|
+
monkeypatch,
|
|
2144
|
+
):
|
|
2145
|
+
_, manager = _manager(tmp_path)
|
|
2146
|
+
package = _package()
|
|
2147
|
+
digest = hashlib.sha256(package).hexdigest()
|
|
2148
|
+
binding = _binding("installation-a", digest, workspace_uuid="workspace-a")
|
|
2149
|
+
monkeypatch.setattr(
|
|
2150
|
+
manager.worker_launcher,
|
|
2151
|
+
"prepare_dependency_environment",
|
|
2152
|
+
_prepare_environment,
|
|
2153
|
+
)
|
|
2154
|
+
monkeypatch.setattr(manager, "_schedule_shared_worker", lambda _worker: None)
|
|
2155
|
+
await manager.apply_plugin_installation(
|
|
2156
|
+
binding,
|
|
2157
|
+
artifact_package=package,
|
|
2158
|
+
execution_mode=PluginExecutionMode.SHARED_CERTIFIED,
|
|
2159
|
+
)
|
|
2160
|
+
worker = manager.installation_runtimes[binding].shared_worker
|
|
2161
|
+
assert worker is not None
|
|
2162
|
+
|
|
2163
|
+
class OldHandler:
|
|
2164
|
+
pass
|
|
2165
|
+
|
|
2166
|
+
class NewHandler:
|
|
2167
|
+
pass
|
|
2168
|
+
|
|
2169
|
+
old_handler = OldHandler()
|
|
2170
|
+
new_handler = NewHandler()
|
|
2171
|
+
worker.plugin_handler = new_handler
|
|
2172
|
+
manager.plugin_handlers.extend([old_handler, new_handler])
|
|
2173
|
+
|
|
2174
|
+
await manager.remove_plugin_handler(old_handler)
|
|
2175
|
+
|
|
2176
|
+
assert worker.plugin_handler is new_handler
|
|
2177
|
+
assert new_handler in manager.plugin_handlers
|
|
2178
|
+
|
|
2179
|
+
|
|
2063
2180
|
async def test_shared_worker_ready_timeout_cancels_hung_controller_and_records_failure(
|
|
2064
2181
|
tmp_path,
|
|
2065
2182
|
monkeypatch,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.6.6"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/agent-runner-pluginization/PROTOCOL_V1.md
RENAMED
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/docs/agent-runner-pluginization/SDK_RUNTIME_PLAN.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/__init__.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/asset_gateway.py
RENAMED
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/decorators.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/external_tools.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_access.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_bridge.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_config.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_protocol.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/agent_tools/mcp_stdio.py
RENAMED
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/abstract/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/definition/components/base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/context.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/enums.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/errors.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/rag/models.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/entities/builtin/runner/box.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/event_context.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/execute_context.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/query_based_api.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/__init__.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/admin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/common.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/context.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/ledger.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/platform.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/reply_stream.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/resources.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/state.py
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/api/proxies/runner/tracing.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/.gitignore.example
RENAMED
|
File without changes
|
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/README.md.example
RENAMED
|
File without changes
|
{langbot_plugin-0.6.6 → langbot_plugin-0.6.8}/src/langbot_plugin/assets/templates/__init__.py
RENAMED
|
File without changes
|