Skip to main content

bub-lark

Lark / Feishu chat channel plugin for the Bub fork.

bub-lark adds a native lark channel that can receive bot events and send replies through the Lark / Feishu Open Platform.

Features

  • inbound bot messages through event subscription
  • outbound send, reply, edit, and card update flows
  • text, post, interactive card, image, file, audio, media, and sticker-aware message parsing
  • optional webhook mode for callback delivery
  • bundled lark skill for proactive sends

Install

Note This package targets the ximenzun/bub fork. It is not an official bubbuild/bub plugin package, and compatibility with upstream Bub should not be assumed.

Once published:

uv pip install bub-lark

For local development next to the Bub repo:

cd ../bub-lark
uv sync

Usage

Configure a Feishu / Lark bot app with message receive events.

Common settings:

  • BUB_LARK_APP_ID
  • BUB_LARK_APP_SECRET
  • BUB_LARK_DOMAIN=feishu or BUB_LARK_DOMAIN=lark
  • BUB_LARK_CONNECTION_MODE=websocket or BUB_LARK_CONNECTION_MODE=webhook

Webhook mode only:

  • BUB_LARK_VERIFICATION_TOKEN
  • BUB_LARK_ENCRYPT_KEY
  • BUB_LARK_WEBHOOK_PORT
  • BUB_LARK_WEBHOOK_PATH

Start the channel:

uv run bub gateway --enable-channel lark

Notes

  • websocket mode is the default for the Feishu domain.
  • webhook mode is available for deployments where callback delivery is preferred or required.
  • Bub ordinary replies are routed through the native outbound path once the inbound message enters the framework.

Research Basis

The plugin design follows Feishu / Lark's official bot-event and message-send model plus community integrations:

Development

uv run pytest -q
uv run ruff check .
uv build

Release

Publishing is driven by GitHub Actions. Create a GitHub Release on main with a tag like v0.1.0 or 0.1.0, and the release workflow will:

  1. normalize the tag to a package version
  2. build the sdist and wheel
  3. publish to PyPI through Trusted Publishing (GitHub OIDC)

No long-lived PYPI_TOKEN secret is required when PyPI Trusted Publisher is configured for .github/workflows/on-release-main.yml.

Contributing

See CONTRIBUTING.md for the local workflow, verification commands, and pull request process.

Metadata

Release files for bub-lark 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bub-lark 0.1.3
File Size Uploaded Provenance Actions
bub_lark-0.1.3.tar.gz 23.4 kB With provenance Details for bub_lark-0.1.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for bub-lark 0.1.3
File Interpreter ABI Platform Actions
bub_lark-0.1.3-py3-none-any.whl Python 3 none any Details for bub_lark-0.1.3-py3-none-any.whl

Total release size: 43.5 kB

Release files / bub_lark-0.1.3.tar.gz

Download URL bub_lark-0.1.3.tar.gz
Size 23.4 kB
Tags Source
SHA-256 checksum
How to use checksums
f9b898397a93b988c13fbf5220a410fa3ae5d5f6f6c23db923eaae008a37e0a9
BLAKE2b-256 checksum
How to use checksums
92922b52c45b0042be47b461f0e9460d01644d35de6ed50d85bd3765f22a5172
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 13, 2026.

Transparency log

Release files / bub_lark-0.1.3-py3-none-any.whl

Download URL bub_lark-0.1.3-py3-none-any.whl
Size 20.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
debc99da90c2605a095e458c9b16461251f4078b261c544c9bd58af71e0b5e05
BLAKE2b-256 checksum
How to use checksums
244e03651722296df2826fb575a359af97124aaa690da7ec8f4f7d23bcd68bcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 13, 2026.

Transparency log

Security for bub-lark 0.1.3

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for bub_lark-0.1.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 13, 2026.

Transparency log

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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page