The Triggerware Python SDK is an asynchronous Python client for a Triggerware server. It exposes Triggerware's tables, tools, queries, triggers, agents, connectors, runtimes, configuration, logging, cursors, and system operations as typed Python methods. Use it to communicate with Triggerware without manually constructing JSON-RPC requests. It also provides typed resource definitions and asynchronous helpers for streamed query results and trigger notifications.
-
TriggerwareClient(peer: rpc.Peer) -> NoneThis is used for creating a client around an existing JSON-RPC peer and exposing each Triggerware resource service.
-
async TriggerwareClient.connect_tcp(address: str) -> SelfThis is used for connecting to a Triggerware server over TCP and returning a ready client.
-
async TriggerwareClient.connect_ws(url: str, api_key: str) -> SelfThis is used for connecting to a Triggerware server over WebSocket, authorizing with an API key, and returning a ready client.
-
async TriggerwareClient.mcp(method: str, params: dict[str, Any] | None = None) -> AnyThis is used for forwarding an MCP method and optional parameters through Triggerware's MCP JSON-RPC endpoint.
-
async client.configuration.get() -> ConfigurationThis is used for retrieving the current Triggerware configuration without the agent API key.
-
async client.configuration.set(*, default_timeout_ms: int | None = None, default_batch_size: int | None = None, default_trigger_batch_size: int | None = None, agent_provider: str | None = None, agent_model: str | None = None, agent_api_key: str | None = None, max_log_file_size: str | None = None, secure: bool = False) -> Configuration | AuthorizationThis is used for updating supplied configuration fields or starting the secure browser configuration flow.
-
async client.configuration.refresh() -> ConfigurationThis is used for reloading Triggerware's configuration from disk and returning the refreshed values.
-
async client.agents.create(name: str | None = None, *, prompt: str | None = None, meta: AgentMetadata | None = None, instructions: str | None = None) -> AgentThis is used for creating an agent from an explicit definition or an agent-creator prompt.
-
async client.agents.get(name: str | list[str]) -> Agent | list[Agent]This is used for retrieving one or more agent definitions.
-
async client.agents.update(name: str, *, prompt: str | None = None, meta: AgentMetadata | None = None, instructions: str | None = None) -> AgentThis is used for updating an existing agent directly or through an agent-creator prompt.
-
async client.agents.list() -> list[str]This is used for listing all registered agent names.
-
async client.agents.delete(name: str | list[str]) -> NoneThis is used for deleting one or more agents.
-
async client.agents.run(name: str, data: dict[str, Any]) -> dict[str, Any]This is used for manually running an agent with input data and returning its structured result.
-
async client.agents.sync(*, agents: list[str] | None = None, connectors: list[str] | None = None) -> NoneThis is used for reconciling agent definitions on disk with the agents registered in Triggerware.
-
async client.tables.create(name: str | None = None, *, prompt: str | None = None, code: str | None = None, meta: TableMetadata | None = None, runtime: TableRuntime | None = None) -> TableThis is used for creating a table from an explicit definition or a table-creator prompt.
-
async client.tables.get(name: str | list[str]) -> Table | list[Table]This is used for retrieving one or more table definitions and their configuration status.
-
async client.tables.update(name: str, *, prompt: str | None = None, code: str | None = None, meta: TableMetadata | None = None, runtime: TableRuntime | None = None) -> TableThis is used for updating a standalone table directly or through a table-creator prompt.
-
async client.tables.list() -> list[str]This is used for listing all registered table names.
-
async client.tables.delete(name: str | list[str]) -> NoneThis is used for deleting one or more standalone tables.
-
async client.tables.sync(*, tables: list[str] | None = None, connectors: list[str] | None = None) -> NoneThis is used for reconciling table definitions on disk with the tables registered in Triggerware.
-
async client.tables.configure(name: str, config: dict[str, Any] | None = None, *, secure: bool = False) -> AuthorizationThis is used for configuring a standalone table directly or starting its secure configuration flow.
-
Cursor(peer: rpc.Peer, *, cursor: str, sql: str, signature: list[CursorColumn], rows: list[list[Any]], exhausted: bool) -> NoneThis is used for representing an open Triggerware cursor and its current buffered rows and execution state.
-
async Cursor.fetch() -> list[list[Any]]This is used for fetching the next batch of rows from an open cursor.
-
async Cursor.close() -> NoneThis is used for closing a cursor and releasing its server-side execution state.
-
Cursor.__aiter__() -> CursorThis is used for beginning asynchronous iteration over a cursor's buffered and future rows.
-
async Cursor.__anext__() -> list[Any]This is used for returning the next cursor row during asynchronous iteration.
-
async client.cursors.open(*, sql: str | None = None, prompt: str | None = None, batch_size: int | None = None, timeout_ms: int | None = None) -> CursorThis is used for opening a cursor from exactly one SQL query or natural-language prompt.
-
async client.connectors.install(*, name: str | None = None, url: str | None = None, tag: str | None = None, config: dict[str, Any] | None = None, secure: bool = False) -> AuthorizationThis is used for installing a connector from the catalog or a Git repository, with optional tagging and configuration.
-
async client.connectors.get(name: str | list[str], *, tag: str | None = None) -> Connector | list[Connector]This is used for retrieving one or more installed connectors and their tables, tools, agents, and configuration.
-
async client.connectors.list() -> list[str]This is used for listing all installed connector names.
-
async client.connectors.configure(name: str, *, tag: str | None = None, config: dict[str, Any] | None = None, secure: bool = False) -> AuthorizationThis is used for configuring an installed connector directly or starting its secure configuration flow.
-
async client.connectors.authorize(name: str, *, tag: str | None = None) -> strThis is used for starting OAuth authorization for a connector and returning its authorization URL.
-
async client.connectors.catalog() -> list[ConnectorCatalogEntry]This is used for retrieving the maintained connector catalog.
-
async client.connectors.describe(*, name: str | None = None, url: str | None = None) -> ConnectorDescriptionThis is used for inspecting a catalog connector or public Git repository without installing it.
-
async client.connectors.uninstall(name: str | list[str], *, tag: str | None = None) -> NoneThis is used for uninstalling one or more connectors and their registered resources.
-
async client.logging.set(level: LogLevel) -> NoneThis is used for changing the minimum runtime log level for new Triggerware log entries.
-
Query(peer: rpc.Peer, definition: QueryDefinition) -> NoneThis is used for representing a saved query and its local definition, buffered rows, and fetch state.
-
async Query.reset() -> NoneThis is used for resetting a saved query's server-side cursor and refreshing its local definition.
-
async Query.fetch(*, params: list[QueryParameterValue] | None = None, rows: int | None = None) -> list[list[Any]]This is used for fetching the next rows from a saved query with optional parameter values and row-count override.
-
Query.__aiter__() -> QueryThis is used for beginning asynchronous iteration over a saved query's buffered and future rows.
-
async Query.__anext__() -> list[Any]This is used for returning the next saved-query row during asynchronous iteration.
-
async client.queries.create(name: str | None = None, *, description: str | None = None, sql: str | None = None, prompt: str | None = None, params: list[QueryParameter] | None = None, batch_size: int | None = None, timeout_ms: int | None = None) -> QueryThis is used for creating a saved query from an explicit definition or a query-creator prompt.
-
async client.queries.convert(name: str, *, trigger_name: str | None = None, prompt: str | None = None, params: list[QueryParameterValue] | None = None, schedule: str | None = None, batch_size: int | None = None, timeout_ms: int | None = None, report_noops: bool | None = None, enabled: bool | None = None) -> QueryFetchThis is used for converting a saved query into a trigger without resupplying its SQL.
-
async client.queries.get(name: str | list[str]) -> Query | list[Query]This is used for retrieving one or more saved queries as stateful query objects.
-
async client.queries.delete(name: str | list[str]) -> NoneThis is used for deleting one or more saved queries.
-
async client.queries.list() -> list[str]This is used for listing all saved query names.
-
async client.runtimes.list() -> list[str]This is used for listing installed external runtimes.
-
async client.runtimes.install(name: Runtime) -> NoneThis is used for installing the selected Python or Node runtime.
-
async client.runtimes.uninstall(name: Runtime) -> NoneThis is used for uninstalling the selected external runtime.
-
async client.system.health() -> HealthThis is used for checking whether the Triggerware server is healthy enough to accept requests.
-
async client.system.update() -> SystemUpdateThis is used for updating the local Triggerware installation and reporting the replaced artifacts and restart requirement.
-
async client.system.authorize(api_key: str) -> boolThis is used for authorizing the current connection with an API key.
-
async client.system.authorized() -> boolThis is used for checking whether the current connection is authorized.
-
async client.tools.create(name: str | None = None, *, prompt: str | None = None, code: str | None = None, meta: ToolMetadata | None = None, runtime: ToolRuntime | None = None) -> ToolThis is used for creating a standalone tool from an explicit definition or a tool-creator prompt.
-
async client.tools.get(name: str | list[str]) -> Tool | list[Tool]This is used for retrieving one or more tool definitions and their configuration status.
-
async client.tools.update(name: str, *, prompt: str | None = None, code: str | None = None, meta: ToolMetadata | None = None, runtime: ToolRuntime | None = None) -> ToolThis is used for updating a standalone tool directly or through a tool-creator prompt.
-
async client.tools.list() -> list[str]This is used for listing all registered tool names.
-
async client.tools.delete(name: str | list[str]) -> NoneThis is used for deleting one or more standalone tools.
-
async client.tools.sync(*, tools: list[str] | None = None, connectors: list[str] | None = None) -> NoneThis is used for reconciling tool definitions on disk with the tools registered in Triggerware.
-
async client.tools.configure(name: str, config: dict[str, Any] | None = None, *, secure: bool = False) -> AuthorizationThis is used for configuring a standalone tool directly or starting its secure configuration flow.
-
async client.triggers.create(name: str | None = None, *, description: str | None = None, sql: str | None = None, prompt: str | None = None, schedule: str | None = None, batch_size: int | None = None, timeout_ms: int | None = None, report_noops: bool | None = None, enabled: bool | None = None) -> TriggerThis is used for creating a trigger from an explicit definition or a trigger-creator prompt.
-
async client.triggers.get(name: str | list[str]) -> Trigger | list[Trigger]This is used for retrieving one or more trigger definitions.
-
async client.triggers.update(name: str, *, description: str | None = None, sql: str | None = None, prompt: str | None = None, schedule: str | None = None, batch_size: int | None = None, timeout_ms: int | None = None, report_noops: bool | None = None, enabled: bool | None = None) -> TriggerThis is used for updating an existing trigger directly or through a trigger-creator prompt.
-
async client.triggers.list() -> list[str]This is used for listing all registered trigger names.
-
async client.triggers.delete(name: str | list[str]) -> NoneThis is used for deleting one or more triggers.
-
async client.triggers.enable(name: str) -> NoneThis is used for enabling scheduled execution for a trigger.
-
async client.triggers.disable(name: str) -> NoneThis is used for disabling scheduled execution for a trigger.
-
async client.triggers.run(name: str, *, batch_size: int | None = None, timeout_ms: int | None = None) -> TriggerDeltaThis is used for running a trigger immediately and returning its added and deleted rows.
-
async client.triggers.poll(name: str) -> list[TriggerDelta]This is used for draining and returning a trigger's cached deltas.
-
async client.triggers.watch(name: str, callback: TriggerCallback, *, resume_window_ms: int | None = None) -> strThis is used for subscribing a callback to retained and future trigger deltas and returning a resume token.
-
async client.triggers.resume(name: str, resume_token: str, callback: TriggerCallback, *, resume_window_ms: int | None = None) -> strThis is used for resuming trigger notifications from a valid token and returning the active resume token.
-
async client.triggers.unwatch(*, name: str | None = None, resume_token: str | None = None) -> NoneThis is used for stopping a trigger subscription by trigger name or resume token.
Metadata
Release files for triggerware 1.1.1
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 |
|---|---|---|---|---|
| triggerware-1.1.1.tar.gz | 8.6 kB | Without provenance | Details for triggerware-1.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| triggerware-1.1.1-py3-none-any.whl | Python 3 | none | any | Details for triggerware-1.1.1-py3-none-any.whl |
Total release size: 23.7 kB
Release files / triggerware-1.1.1.tar.gz
| Download URL | triggerware-1.1.1.tar.gz |
|---|---|
| Size | 8.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c00e4c30a9d07e75e763311118c82627b4fc117618bd991fb4e0b6d061e19fb2
|
|
BLAKE2b-256 checksum How to use checksums |
fe18af190aef78cd6979b6a52d5e7e6e783c7817f50bbc5f460ffff488b479af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / triggerware-1.1.1-py3-none-any.whl
| Download URL | triggerware-1.1.1-py3-none-any.whl |
|---|---|
| Size | 15.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
14650ab8242daf53e7b106738cbf8d73df4ff7de9b2ed72cbc81f937dc63e8e2
|
|
BLAKE2b-256 checksum How to use checksums |
42e7f32ffedf2f0f906f1bce0e9f39b8ee3eb1a19398b9e219418873da2c5467
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for triggerware 1.1.1
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.