Skip to main content

Tongflow plugin package (node contracts, deploy scan, ABI helpers)

Project description

tongflow (PyPI)

pip install tongflow installs the Python import name tongflow (plugin contracts, deploy.py scan, node slot metadata).

Install

pip install tongflow

Use

from tongflow.slots import node_slot
from tongflow.node_slots import NodeSlots
from tongflow import current_app

In this monorepo, Modal impl.py / stub deploy.py images pin tongflow==0.0.5 (PyPI). Bump the version string in those files when you publish a new release.

Plugin identity

Plugin Python source is the single source of truth. The scanner derives plugin runtime configuration from code and AST; do not add per-plugin JSON manifests.

For every plugin repository, these names must be identical:

  • directory name
  • pluginId
  • Modal app name
  • git repository name

Use tongflow-modal-<semantic-name> for Modal plugins and tongflow-llm-<semantic-name> for LLM plugins, such as tongflow-modal-docling, tongflow-modal-qwen3asr, or tongflow-llm-openai. Do not encode hardware details in the name, such as gpu or cpu.

Runner detection is prefix-based and validated against the entry files:

  • tongflow-modal-* with deploy.py: Modal plugin
  • tongflow-llm-* with entry.py: LLM plugin
  • both files or neither file: scanner error

Modal plugins should derive their app from the directory name:

from tongflow import current_app

app = current_app(__file__)

Future plugin-level metadata must be declared as top-level UPPER_CASE literals in deploy.py or entry.py so the scanner can extract it with AST. Do not reintroduce JSON configuration files.

Build and publish (maintainers)

From the Tongflow repo root:

export TWINE_USERNAME=__token__
export TWINE_PASSWORD=pypi-xxxxxxxx   # https://pypi.org/manage/account/token/
pnpm tongflow:publish

This runs scripts/publish-tongflow-pypi.sh (clean, python -m build, twine check, twine upload).

TestPyPI: TONGFLOW_UPLOAD_TESTPYPI=1 pnpm tongflow:publish (use a TestPyPI token).

Manual equivalent from sdk/: python -m pip install build twine && python -m build && python -m twine upload dist/*

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

tongflow-0.0.18.tar.gz (23.7 kB view details)

Uploaded Source

Built Distribution

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

tongflow-0.0.18-py3-none-any.whl (43.3 kB view details)

Uploaded Python 3

File details

Details for the file tongflow-0.0.18.tar.gz.

File metadata

  • Download URL: tongflow-0.0.18.tar.gz
  • Upload date:
  • Size: 23.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for tongflow-0.0.18.tar.gz
Algorithm Hash digest
SHA256 0734fe77cfd7e4d832c7e705382d2bd9a9c4a65b50521608b2948cf39b66e095
MD5 0ad0b43cc138b1de87595a45424fa7dc
BLAKE2b-256 41eac89574eb01d4e84c16bcb599e187cae22c693c2f8c393997e4e39d35d7ac

See more details on using hashes here.

File details

Details for the file tongflow-0.0.18-py3-none-any.whl.

File metadata

  • Download URL: tongflow-0.0.18-py3-none-any.whl
  • Upload date:
  • Size: 43.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for tongflow-0.0.18-py3-none-any.whl
Algorithm Hash digest
SHA256 b05d036f133cc3a384ebe5bcac74debff230c36891fc5387b6d6a19acf36c7cd
MD5 6df2f6f2969b659e4f26a232b711b454
BLAKE2b-256 bc6177f5c9d50d61e6b3a4da81be60ed1da9989305420b39ea92ec9d7dd6941f

See more details on using hashes here.

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