LangBot Plugin Infra
Plugin SDK, CLI, Plugin Runtime and Box sandbox runtime for LangBot.
English / 简体中文
Overview
This repository is the shared infrastructure powering LangBot's plugin and
sandbox subsystems. It is published to PyPI as the single
langbot-plugin package and ships
three things:
- Plugin SDK & CLI (
lbp) — Python APIs, base classes and thelbpcommand for scaffolding, building, debugging and publishing plugins. - Plugin Runtime (
lbp rt) — the host process that discovers, installs and runs plugins, bridging them to LangBot over stdio or WebSocket. - Box Runtime (
lbp box) — the code-sandbox service backing LangBot's Box subsystem, executing untrusted code via Docker / nsjail / E2B backends. An explicit, non-sandboxedhostbackend is available for trusted local development only.
LangBot depends on this package as the pinned langbot-plugin==<x.y.z> in its
pyproject.toml; the canonical version lives in this repo's pyproject.toml.
The Runtime component (
src/langbot_plugin/runtime/) is licensed separately under AGPL; everything else in this repository is Apache 2.0. Seesrc/langbot_plugin/runtime/README.md.
Install
pip install langbot-plugin
# or, recommended
uv tool install langbot-plugin
lbp --help
CLI at a glance
| Command | Purpose |
|---|---|
lbp init <name> |
Scaffold a new plugin project |
lbp comp <Type> |
Generate a component (Command / Tool / EventListener / KnowledgeEngine / Parser / Page) |
lbp run |
Run / remote-debug a plugin against a running LangBot |
lbp build |
Package the plugin into a distributable zip |
lbp publish |
Publish to the LangBot Plugin Market |
lbp login / lbp logout |
Authenticate with your LangBot account |
lbp rt |
Launch a standalone Plugin Runtime (control 5400, debug 5401) |
lbp box |
Launch a standalone Box sandbox runtime (default port 5410) |
lbp ver |
Print the CLI / package version |
Component types
Plugins extend LangBot through six component types, scaffolded with
lbp comp <Type>:
- Command — user-triggered actions (e.g.
!weather tokyo) - Tool — LLM-callable functions for AI agents
- EventListener — handlers for message-pipeline events
- KnowledgeEngine — custom knowledge-base retrieval for RAG
- Parser — custom message / content parsing
- Page — custom web page embedded in the LangBot admin panel
Runner Runtime
The SDK provides Runner component definitions, protocol entities, runtime
dispatch, run-scoped Host API helpers, and low-level daemon relay primitives
used by runner/plugin packages that need an outbound user-side runtime process.
This includes run-scoped pull APIs on RunnerAPIProxy (history, events, state,
run ledger) and steering_pull for absorbing follow-up user input into an
active run when the runner declares capabilities.steering in its manifest.
The SDK does not provide a managed, generic remote Runner product: external
harness execution policy, process launch details, authentication, workspace
selection, and provider-specific behavior belong to the runner/plugin package or
a deployment-owned remote daemon or managed agent platform.
Documentation
- Plugin development tutorial — https://langbot.app/docs/zh/plugin/dev/tutor
- Debugging the Runtime / CLI / SDK — https://langbot.app/docs/zh/develop/plugin-runtime
- Dev environment setup — https://langbot.app/docs/zh/develop/dev-config
License
Apache 2.0, except the Plugin Runtime (src/langbot_plugin/runtime/) which is
AGPL. See LICENSE and the
Runtime README.
Metadata
Release files for langbot-plugin 0.7.19
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| langbot_plugin-0.7.19.tar.gz | 749.6 kB | Without provenance | Details for langbot_plugin-0.7.19.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| langbot_plugin-0.7.19-py3-none-any.whl | Python 3 | none | any | Details for langbot_plugin-0.7.19-py3-none-any.whl |
Total release size: 1.2 MB
Release files / langbot_plugin-0.7.19.tar.gz
| Download URL | langbot_plugin-0.7.19.tar.gz |
|---|---|
| Size | 749.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
62a972592e2160dee963ecbfc4276719e43178e137273ea29af1a43152b8353e
|
|
BLAKE2b-256 checksum How to use checksums |
f523ffce65a9c333a6545b47d8364bbd5083f6517292b95bdfffc7ac87b702c3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / langbot_plugin-0.7.19-py3-none-any.whl
| Download URL | langbot_plugin-0.7.19-py3-none-any.whl |
|---|---|
| Size | 474.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a94037c766e0f4bc2f108edfa0e1c075fc28d480217b6794a652d2532be5ca1f
|
|
BLAKE2b-256 checksum How to use checksums |
4c99e32e004c6869a40e63276440de3b31a8d22bf89a22a1ae1133f0233e55e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for langbot-plugin 0.7.19
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.