Skip to main content

Lark / Feishu channel plugin for Bub

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bub_lark-0.1.3.tar.gz (23.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bub_lark-0.1.3-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

File details

Details for the file bub_lark-0.1.3.tar.gz.

File metadata

  • Download URL: bub_lark-0.1.3.tar.gz
  • Upload date:
  • Size: 23.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bub_lark-0.1.3.tar.gz
Algorithm Hash digest
SHA256 f9b898397a93b988c13fbf5220a410fa3ae5d5f6f6c23db923eaae008a37e0a9
MD5 bd78880ae7628797acb8d17d07657b2f
BLAKE2b-256 92922b52c45b0042be47b461f0e9460d01644d35de6ed50d85bd3765f22a5172

See more details on using hashes here.

Provenance

The following attestation bundles were made for bub_lark-0.1.3.tar.gz:

Publisher: on-release-main.yml on ximenzun/bub-lark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bub_lark-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: bub_lark-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 20.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for bub_lark-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 debc99da90c2605a095e458c9b16461251f4078b261c544c9bd58af71e0b5e05
MD5 41caeef4b92b072f435785516fa19dbb
BLAKE2b-256 244e03651722296df2826fb575a359af97124aaa690da7ec8f4f7d23bcd68bcc

See more details on using hashes here.

Provenance

The following attestation bundles were made for bub_lark-0.1.3-py3-none-any.whl:

Publisher: on-release-main.yml on ximenzun/bub-lark

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page